http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46088
Summary: [4.6 Regression] ICE: SIGSEGV in
ix86_binary_operator_ok (i386.c:15025) with -Os
-fnon-call-exceptions -fpeel-loops
Product: gcc
Version: 4.6.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: rtl-optimization
AssignedTo: [email protected]
ReportedBy: [email protected]
Created attachment 22088
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=22088
reduced testcase
Command line:
$ gcc -Os -fnon-call-exceptions -fpeel-loops pr46088.c
Related valgrind output:
$ valgrind -q --trace-children=yes gcc -Os -fnon-call-exceptions -fpeel-loops
pr46088.c
==14275== Invalid read of size 2
==14275== at 0xA7C8EC: ix86_binary_operator_ok (i386.c:15025)
==14275== by 0xDF3063: recog (i386.md:10038)
==14275== by 0xEE9313: recog_for_combine (combine.c:10480)
==14275== by 0xF16107: try_combine (combine.c:3220)
==14275== by 0xF2141D: rest_of_handle_combine (combine.c:1187)
==14275== by 0x79613E: execute_one_pass (passes.c:1562)
==14275== by 0x7963D4: execute_pass_list (passes.c:1617)
==14275== by 0x7963E6: execute_pass_list (passes.c:1618)
==14275== by 0x8E30F5: tree_rest_of_compilation (tree-optimize.c:419)
==14275== by 0xAAC341: cgraph_expand_function (cgraphunit.c:1494)
==14275== by 0xAAE909: cgraph_optimize (cgraphunit.c:1553)
==14275== by 0xAAEE69: cgraph_finalize_compilation_unit (cgraphunit.c:1016)
==14275== Address 0xabababababababab is not stack'd, malloc'd or (recently)
free'd
==14275==
pr46088.c: In function 'foo':
pr46088.c:7:1: internal compiler error: Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
Tested revisions:
r165699 - crash
r159696 - crash
r158095 - OK
4.5 r163761 - OK