http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60469
Bug ID: 60469 Summary: simple cilk plus program ICEs Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: middle-end Assignee: unassigned at gcc dot gnu.org Reporter: andi-gcc at firstfloor dot org gcc version 4.9.0 20140209 (experimental) (GCC) gcc -fcilkplus test.c cilk.c: In function 'main': tcilk.c:14:5: internal compiler error: Segmentation fault int main() ^ 0x8a5df7 crash_signal ../../gcc/gcc/toplev.c:337 0x9048e3 get_frame_type ../../gcc/gcc/tree-nested.c:234 0x9048e3 get_chain_decl ../../gcc/gcc/tree-nested.c:342 0x9056bc get_chain_decl ../../gcc/gcc/tree-nested.c:851 0x9056bc get_nonlocal_debug_decl ../../gcc/gcc/tree-nested.c:856 0x905932 convert_nonlocal_reference_op ../../gcc/gcc/tree-nested.c:934 0xa61f7c walk_tree_1(tree_node**, tree_node* (*)(tree_node**, int*, void*), void*, pointer_set_t*, tree_node* (*)(tree_node**, int*, tree_node* (*)(tree_node**, int*, void*), void*, pointer_set_t*)) ../../gcc/gcc/tree.c:10920 0x725263 walk_gimple_op(gimple_statement_base*, tree_node* (*)(tree_node**, int*, void*), walk_stmt_info*) ../../gcc/gcc/gimple-walk.c:221 0x725476 walk_gimple_stmt(gimple_stmt_iterator*, tree_node* (*)(gimple_stmt_iterator*, bool*, walk_stmt_info*), tree_node* (*)(tree_node**, int*, void*), walk_stmt_info*) ../../gcc/gcc/gimple-walk.c:535 0x725629 walk_gimple_seq_mod(gimple_statement_base**, tree_node* (*)(gimple_stmt_iterator*, bool*, walk_stmt_info*), tree_node* (*)(tree_node**, int*, void*), walk_stmt_info*) ../../gcc/gcc/gimple-walk.c:577 0x725629 walk_gimple_seq_mod(gimple_statement_base**, tree_node* (*)(gimple_stmt_iterator*, bool*, walk_stmt_info*), tree_node* (*)(tree_node**, int*, void*), walk_stmt_info*) ../../gcc/gcc/gimple-walk.c:58 0x725551 walk_gimple_stmt(gimple_stmt_iterator*, tree_node* (*)(gimple_stmt_iterator*, bool*, walk_stmt_info*), tree_node* (*)(tree_node**, int*, void*), walk_stmt_info*) ../../gcc/gcc/gimple-walk.c:577 0x725629 walk_gimple_seq_mod(gimple_statement_base**, tree_node* (*)(gimple_stmt_iterator*, bool*, walk_stmt_info*), tree_node* (*)(tree_node**, int*, void*), walk_stmt_info*) ../../gcc/gcc/gimple-walk.c:58 0x725521 walk_gimple_stmt(gimple_stmt_iterator*, tree_node* (*)(gimple_stmt_iterator*, bool*, walk_stmt_info*), tree_node* (*)(tree_node**, int*, void*), walk_stmt_info*) ../../gcc/gcc/gimple-walk.c:545 0x725629 walk_gimple_seq_mod(gimple_statement_base**, tree_node* (*)(gimple_stmt_iterator*, bool*, walk_stmt_info*), tree_node* (*)(tree_node**, int*, void*), walk_stmt_info*) ../../gcc/gcc/gimple-walk.c:58 0x904127 walk_body ../../gcc/gcc/tree-nested.c:603 0x9060ee walk_function ../../gcc/gcc/tree-nested.c:614 0x9060ee walk_all_functions ../../gcc/gcc/tree-nested.c:679 0x90739f lower_nested_functions(tree_node*) ../../gcc/gcc/tree-nested.c:2724 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <http://gcc.gnu.org/bugs.html> for instructions. test program: void foo() { asm("" ::: "memory"); } #define ALEN 1024 void f(int *a, int *b, int *c) { int i; #pragma simd for (i = 0; i < ALEN; i++) a[i] = b[i] * c[i]; } int main() { int a[ALEN], b[ALEN], c[ALEN]; b[:] = 100; c[0:ALEN:2] = 99; c[1:ALEN:2] = 101; f(a, b, c); asm("" ::: "memory"); /* Make sure a,b,c, are not optimized away */ _Cilk_spawn foo(); _Cilk_spawn foo(); _Cilk_sync; return 0; }