Made apparent by recent commit dc703151d4f4560e647649506d5b4ceb0ee11e90 "openmp: Implement discovery of implicit declare target to clauses": +FAIL: libgomp.c/target-39.c (internal compiler error) +FAIL: libgomp.c/target-39.c (test for excess errors) +UNRESOLVED: libgomp.c/target-39.c compilation failed to produce executable This is in a '--enable-offload-targets=[...],hsa' build, with '-foffload=hsa' enabled (by default). during GIMPLE pass: hsagen source-gcc/libgomp/testsuite/libgomp.c/target-39.c: In function ‘main._omp_fn.0.hsa.0’: source-gcc/libgomp/testsuite/libgomp.c/target-39.c:23:11: internal compiler error: Segmentation fault 23 | #pragma omp target map(from:err) | ^~~ [...] GDB: Program received signal SIGSEGV, Segmentation fault. fndecl_built_in_p (node=0x0, name=BUILT_IN_PREFETCH) at [...]/source-gcc/gcc/tree.h:6267 6267 return (fndecl_built_in_p (node, BUILT_IN_NORMAL) (gdb) bt #0 fndecl_built_in_p (node=0x0, name=BUILT_IN_PREFETCH) at [...]/source-gcc/gcc/tree.h:6267 #1 0x0000000000b19739 in gen_hsa_insns_for_call (stmt=stmt@entry=0x7ffff693b200, hbb=hbb@entry=0x2b152c0) at [...]/source-gcc/gcc/hsa-gen.c:5304 #2 0x0000000000b1aca7 in gen_hsa_insns_for_gimple_stmt (stmt=0x7ffff693b200, hbb=hbb@entry=0x2b152c0) at [...]/source-gcc/gcc/hsa-gen.c:5770 #3 0x0000000000b1bd21 in gen_body_from_gimple () at [...]/source-gcc/gcc/hsa-gen.c:5999 #4 0x0000000000b1dbd2 in generate_hsa (kernel=<optimized out>) at [...]/source-gcc/gcc/hsa-gen.c:6596 #5 0x0000000000b1de66 in (anonymous namespace)::pass_gen_hsail::execute (this=0x2a2aac0) at [...]/source-gcc/gcc/hsa-gen.c:6680 #6 0x0000000000d06f90 in execute_one_pass (pass=pass@entry=0x2a2aac0) at [...]/source-gcc/gcc/passes.c:2502 [...] (gdb) up #1 0x0000000000b19739 in gen_hsa_insns_for_call (stmt=stmt@entry=0x7ffff693b200, hbb=hbb@entry=0x2b152c0) at /home/thomas/tmp/source/gcc/build/track-slim-omp/source-gcc/gcc/hsa-gen.c:5304 5304 if (fndecl_built_in_p (function_decl, BUILT_IN_PREFETCH)) (gdb) print function_decl $1 = (tree) 0x0 (gdb) list 5299 if (!gimple_call_builtin_p (stmt, BUILT_IN_NORMAL)) 5300 { 5301 tree function_decl = gimple_call_fndecl (stmt); 5302 /* Prefetch pass can create type-mismatching prefetch builtin calls which 5303 fail the gimple_call_builtin_p test above. Handle them here. */ 5304 if (fndecl_built_in_p (function_decl, BUILT_IN_PREFETCH)) 5305 return; 5306 5307 if (function_decl == NULL_TREE) 5308 { The problem is present already since 2016-11-23 commit 56b1c60e (r242761) "Merge from HSA branch to trunk", and the fix obvious enough. gcc/ * hsa-gen.c (gen_hsa_insns_for_call): Move 'function_decl == NULL_TREE' check earlier. gcc/testsuite/ * c-c++-common/gomp/hsa-indirect-call-1.c: New file. (cherry picked from commit 973bce0fb50bbfd91f47238b82b99935525716ad)
Name |
Last commit
|
Last update |
---|---|---|
.. | ||
Wparentheses-1.c | Loading commit data... | |
Wparentheses-2.c | Loading commit data... | |
Wparentheses-3.c | Loading commit data... | |
Wparentheses-4.c | Loading commit data... | |
atomic-1.c | Loading commit data... | |
atomic-10.c | Loading commit data... | |
atomic-12.c | Loading commit data... | |
atomic-13.c | Loading commit data... | |
atomic-14.c | Loading commit data... | |
atomic-15.c | Loading commit data... | |
atomic-16.c | Loading commit data... | |
atomic-17.c | Loading commit data... | |
atomic-18.c | Loading commit data... | |
atomic-19.c | Loading commit data... | |
atomic-2.c | Loading commit data... | |
atomic-20.c | Loading commit data... | |
atomic-21.c | Loading commit data... | |
atomic-22.c | Loading commit data... | |
atomic-23.c | Loading commit data... | |
atomic-3.c | Loading commit data... | |
atomic-4.c | Loading commit data... | |
atomic-7.c | Loading commit data... | |
atomic-8.c | Loading commit data... | |
atomic-9.c | Loading commit data... | |
cancel-1.c | Loading commit data... | |
cancel-2.c | Loading commit data... | |
clause-dups-1.c | Loading commit data... | |
clauses-1.c | Loading commit data... | |
clauses-2.c | Loading commit data... | |
clauses-3.c | Loading commit data... | |
clauses-4.c | Loading commit data... | |
clauses-5.c | Loading commit data... | |
combined-1.c | Loading commit data... | |
combined-2.c | Loading commit data... | |
combined-3.c | Loading commit data... | |
critical-1.c | Loading commit data... | |
critical-2.c | Loading commit data... | |
declare-target-1.c | Loading commit data... | |
declare-target-2.c | Loading commit data... | |
declare-target-3.c | Loading commit data... | |
declare-target-4.c | Loading commit data... | |
declare-target-5.c | Loading commit data... | |
declare-variant-1.c | Loading commit data... | |
declare-variant-10.c | Loading commit data... | |
declare-variant-11.c | Loading commit data... | |
declare-variant-12.c | Loading commit data... | |
declare-variant-13.c | Loading commit data... | |
declare-variant-2.c | Loading commit data... | |
declare-variant-3.c | Loading commit data... | |
declare-variant-4.c | Loading commit data... | |
declare-variant-5.c | Loading commit data... | |
declare-variant-6.c | Loading commit data... | |
declare-variant-7.c | Loading commit data... | |
declare-variant-8.c | Loading commit data... | |
declare-variant-9.c | Loading commit data... | |
default-1.c | Loading commit data... | |
defaultmap-1.c | Loading commit data... | |
defaultmap-2.c | Loading commit data... | |
defaultmap-3.c | Loading commit data... | |
depend-1.c | Loading commit data... | |
depend-2.c | Loading commit data... | |
depend-3.c | Loading commit data... | |
depend-4.c | Loading commit data... | |
depend-5.c | Loading commit data... | |
depend-6.c | Loading commit data... | |
depend-iterator-1.c | Loading commit data... | |
depend-iterator-2.c | Loading commit data... | |
depobj-1.c | Loading commit data... | |
distribute-1.c | Loading commit data... | |
doacross-1.c | Loading commit data... | |
doacross-2.c | Loading commit data... | |
doacross-3.c | Loading commit data... | |
element-1.c | Loading commit data... | |
flush-1.c | Loading commit data... | |
flush-2.c | Loading commit data... | |
for-1.c | Loading commit data... | |
for-2.c | Loading commit data... | |
for-3.c | Loading commit data... | |
for-4.c | Loading commit data... | |
for-5.c | Loading commit data... | |
for-6.c | Loading commit data... | |
for-7.c | Loading commit data... | |
gridify-1.c | Loading commit data... | |
gridify-2.c | Loading commit data... | |
gridify-3.c | Loading commit data... | |
has-include-1.c | Loading commit data... | |
hsa-indirect-call-1.c | Loading commit data... | |
if-1.c | Loading commit data... | |
if-2.c | Loading commit data... | |
if-3.c | Loading commit data... | |
if-4.c | Loading commit data... | |
lastprivate-conditional-1.c | Loading commit data... | |
lastprivate-conditional-2.c | Loading commit data... | |
lastprivate-conditional-3.c | Loading commit data... | |
lastprivate-conditional-4.c | Loading commit data... | |
lastprivate-conditional-5.c | Loading commit data... | |
linear-1.c | Loading commit data... | |
loop-1.c | Loading commit data... | |
loop-2.c | Loading commit data... | |
loop-3.c | Loading commit data... | |
loop-4.c | Loading commit data... | |
loop-5.c | Loading commit data... | |
map-1.c | Loading commit data... | |
map-2.c | Loading commit data... | |
map-3.c | Loading commit data... | |
master-combined-1.c | Loading commit data... | |
master-combined-2.c | Loading commit data... | |
nesting-1.c | Loading commit data... | |
nesting-2.c | Loading commit data... | |
nesting-warn-1.c | Loading commit data... | |
nontemporal-1.c | Loading commit data... | |
nontemporal-2.c | Loading commit data... | |
order-1.c | Loading commit data... | |
order-2.c | Loading commit data... | |
order-3.c | Loading commit data... | |
order-4.c | Loading commit data... | |
ordered-1.c | Loading commit data... | |
ordered-2.c | Loading commit data... | |
ordered-3.c | Loading commit data... | |
ordered-4.c | Loading commit data... | |
pr51360.c | Loading commit data... | |
pr53580.c | Loading commit data... | |
pr54017.c | Loading commit data... | |
pr56883.c | Loading commit data... | |
pr57580.c | Loading commit data... | |
pr57824.c | Loading commit data... | |
pr58257.c | Loading commit data... | |
pr58472.c | Loading commit data... | |
pr58551.c | Loading commit data... | |
pr58703.c | Loading commit data... | |
pr58809.c | Loading commit data... | |
pr59073.c | Loading commit data... | |
pr59152.c | Loading commit data... | |
pr59467.c | Loading commit data... | |
pr59917-1.c | Loading commit data... | |
pr59917-2.c | Loading commit data... | |
pr60823-1.c | Loading commit data... | |
pr60823-2.c | Loading commit data... | |
pr60823-3.c | Loading commit data... | |
pr60823-4.c | Loading commit data... | |
pr61200.c | Loading commit data... | |
pr61486-1.c | Loading commit data... | |
pr61486-2.c | Loading commit data... | |
pr63249.c | Loading commit data... | |
pr63326.c | Loading commit data... | |
pr63328.c | Loading commit data... | |
pr64769.c | Loading commit data... | |
pr66429.c | Loading commit data... | |
pr67501.c | Loading commit data... | |
pr67502.c | Loading commit data... | |
pr67517.c | Loading commit data... | |
pr67521.c | Loading commit data... | |
pr70550-1.c | Loading commit data... | |
pr70550-2.c | Loading commit data... | |
pr71371.c | Loading commit data... | |
pr71758.c | Loading commit data... | |
pr79428-2.c | Loading commit data... | |
pr79428-5.c | Loading commit data... | |
pr79428-6.c | Loading commit data... | |
pr79429.c | Loading commit data... | |
pr79431.c | Loading commit data... | |
pr79512.c | Loading commit data... | |
pr81006.c | Loading commit data... | |
pr81887.c | Loading commit data... | |
pr83977-1.c | Loading commit data... | |
pr83977-2.c | Loading commit data... | |
pr83977-3.c | Loading commit data... | |
pr84341.c | Loading commit data... | |
pr85696.c | Loading commit data... | |
pr85956.c | Loading commit data... | |
pr86025.c | Loading commit data... | |
pr88203-1.c | Loading commit data... | |
pr88203-2.c | Loading commit data... | |
pr88203-3.c | Loading commit data... | |
pr88588.c | Loading commit data... | |
pr90954.c | Loading commit data... | |
pr91401-1.c | Loading commit data... | |
pr91401-2.c | Loading commit data... | |
pr91920.c | Loading commit data... | |
pr91987.c | Loading commit data... | |
pr93555-1.c | Loading commit data... | |
pr93555-2.c | Loading commit data... | |
priority-1.c | Loading commit data... | |
reduction-1.c | Loading commit data... | |
reduction-task-1.c | Loading commit data... | |
reduction-task-2.c | Loading commit data... | |
reduction-task-3.c | Loading commit data... | |
requires-1.c | Loading commit data... | |
requires-2.c | Loading commit data... | |
requires-3.c | Loading commit data... | |
requires-4.c | Loading commit data... | |
scan-1.c | Loading commit data... | |
scan-2.c | Loading commit data... | |
scan-3.c | Loading commit data... | |
scan-4.c | Loading commit data... | |
scan-5.c | Loading commit data... | |
schedule-1.c | Loading commit data... | |
schedule-modifiers-1.c | Loading commit data... | |
schedule-simd-1.c | Loading commit data... | |
sections1.c | Loading commit data... | |
simd-setjmp-1.c | Loading commit data... | |
simd1.c | Loading commit data... | |
simd2.c | Loading commit data... | |
simd3.c | Loading commit data... | |
simd4.c | Loading commit data... | |
simd5.c | Loading commit data... | |
simd6.c | Loading commit data... | |
simd7.c | Loading commit data... | |
simd8.c | Loading commit data... | |
single1.c | Loading commit data... | |
sink-1.c | Loading commit data... | |
sink-2.c | Loading commit data... | |
sink-3.c | Loading commit data... | |
sink-4.c | Loading commit data... | |
target-data-1.c | Loading commit data... | |
target-teams-1.c | Loading commit data... | |
taskloop-reduction-1.c | Loading commit data... | |
taskwait-depend-1.c | Loading commit data... | |
teams-1.c | Loading commit data... | |
teams-2.c | Loading commit data... | |
udr-1.c | Loading commit data... |