http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55066
Bug #: 55066 Summary: lto integer-cst change causes ICE Classification: Unclassified Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: lto AssignedTo: unassig...@gcc.gnu.org ReportedBy: andi-...@firstfloor.org A large LTO allyes kernel build (no small test case unfortunately) recently started ICEing during the LTO phase with linux-lto-2.6/drivers/isdn/hardware/eicon/message.c:12035:0: internal compiler error: in widest_int_cst_value, at tree.c:10214 static byte mixer_request(dword Id, word Number, DIVA_CAPI_ADAPTER *a, PLCI *plci, APPL *appl, API_PARSE *msg) ^ 0x8c05f8 widest_int_cst_value(tree_node const*) ../../gcc/gcc/tree.c:10213 0x81987f find_bswap_1 ../../gcc/gcc/tree-ssa-math-opts.c:1669 0x819a23 find_bswap_1 ../../gcc/gcc/tree-ssa-math-opts.c:1733 0x81a194 find_bswap ../../gcc/gcc/tree-ssa-math-opts.c:1779 0x81a194 execute_optimize_bswap ../../gcc/gcc/tree-ssa-math-opts.c:1905 Please submit a full bug report, I bisected it down to this change from Richi: 2012-10-18 Richard Guenther <rguent...@suse.de> * lto-streamer.h (enum LTO_tags): Add LTO_integer_cst. * lto-streamer-in.c (lto_input_tree): Use it. * lto-streamer-out.c (lto_output_tree): Likewise, for !TREE_OVERFLOW integer constants only. * tree-streamer-in.c (unpack_ts_int_cst_value_fields): New function. (unpack_value_fields): Call it. (streamer_read_integer_cst): Simplify. * tree-streamer-out.c (pack_ts_int_cst_value_fields): New function. (streamer_pack_tree_bitfields): Call it. (streamer_write_integer_cst): Adjust.