[Bug middle-end/58723] [4.9 Regression] ICE in lto_output_edge, at lto-cgraph.c:300 for OpenMP's simd reduction
burnus at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Tue Nov 26 22:07:00 GMT 2013
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58723
--- Comment #7 from Tobias Burnus <burnus at gcc dot gnu.org> ---
(In reply to Tobias Burnus from comment #6)
> (In reply to Richard Biener from comment #5)
> > Created attachment 31299 [details]
> > Patch fixing the testcase (but otherwise untested - we don't have too many
> > internal fn testcases).
> Doesn't work for me.
If one dumps the bb, one finds a call to GOMP_SIMD_VF.
Using the following patch on top of yours fixes the issue for the reduced test
case and for the compilation to the *.o files in the real-world code:
--- a/gcc/tree-inline.c
+++ b/gcc/tree-inline.c
@@ -4066,5 +4070,5 @@ expand_call_inline (basic_block bb, gimple stmt,
copy_body_data *id)
/* From here on, we're only interested in CALL_EXPRs. */
- if (gimple_code (stmt) != GIMPLE_CALL)
+ if (gimple_code (stmt) != GIMPLE_CALL || gimple_call_internal_p (stmt))
goto egress;
* * *
Unfortunately, the lto1 phase still fails for the big code. For that one, I
get:
xpboolean.cc:3744:8: internal compiler error: in expand_GOMP_SIMD_VF, at
internal-fn.c:137
0x7b48b7 expand_GOMP_SIMD_VF
../../gcc/internal-fn.c:137
0x5fe497 expand_call_stmt
../../gcc/cfgexpand.c:2164
0x5fe497 expand_gimple_stmt_1
../../gcc/cfgexpand.c:3143
0x5fe497 expand_gimple_stmt
../../gcc/cfgexpand.c:3295
More information about the Gcc-bugs
mailing list