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.

Reply via email to