Bug#385306: ICE: gimplification failed, c++
Package: gcc-snapshot
Version: 20060823-1
PR28899
Works fine with gcc 4.1 and 4.2.0 20060819, but fails with 4.2
20060823 and 20060830.
> Automatic build of lcdf-typetools_2.36-1 on usurper by sbuild/amd64 0.46
...
> if /usr/lib/gcc-snapshot/bin/g++ -W -Wall -DHAVE_CONFIG_H -I. -I. -I.. -I../include -g -O2 -MT otfcmap.o -MD -MP -MF ".deps/otfcmap.Tpo" -c -o otfcmap.o otfcmap.cc; \
> then mv -f ".deps/otfcmap.Tpo" ".deps/otfcmap.Po"; else rm -f ".deps/otfcmap.Tpo"; exit 1; fi
> gimplification failed:
> {
> register unsigned int __v;
> register unsigned int __x;
>
> D.9311 = data + 4B;
> D.9312 = (const uint32_t *) D.9311;
> __x = *D.9312;
> D.9313 = __builtin_constant_p (__x);
> if (D.9313 != 0)
> {
> D.9314 = __x & 4278190080;
> D.9315 = D.9314 >> 24;
> D.9316 = __x & 16711680;
> D.9317 = D.9316 >> 8;
> D.9318 = D.9315 | D.9317;
> D.9319 = __x & 65280;
> D.9320 = D.9319 << 8;
> D.9321 = D.9318 | D.9320;
> D.9322 = __x & 255;
> D.9323 = D.9322 << 24;
> __v = D.9321 | D.9323;
> }
> else
> {
> __asm__("bswap %0":"=r" __v:"0" __x);
> }
> length = __v;
> } <bind_expr 0x2b62c0371af0
> type <void_type 0x2b62bfaac0b0 void asm_written type_6 VOID
> align 8 symtab 0 alias set -1
> pointer_to_this <pointer_type 0x2b62bfaac160>>
> side-effects tree_1
> vars <var_decl 0x2b62c02c1b00 __v
> type <integer_type 0x2b62bfa9a580 unsigned int sizes-gimplified asm_written public unsigned type_6 SI
> size <integer_cst 0x2b62bfa87bd0 constant invariant 32>
> unit size <integer_cst 0x2b62bfa876f0 constant invariant 4>
> align 32 symtab -1074790304 alias set -1 precision 32 min <integer_cst 0x2b62bfa87cc0 0> max <integer_cst 0x2b62bfa87c90 4294967295>
> pointer_to_this <pointer_type 0x2b62c0035630>>
> used tree_1 unsigned regdecl decl_5 SI file otfcmap.cc line 207 size <integer_cst 0x2b62bfa87bd0 32> unit size <integer_cst 0x2b62bfa876f0 4>
> align 32 context <function_decl 0x2b62c03221c0 check_table>
> chain <var_decl 0x2b62c02c1dc0 __x type <integer_type 0x2b62bfa9a580 unsigned int>
> used tree_1 tree_3 unsigned regdecl decl_5 SI file otfcmap.cc line 207 size <integer_cst 0x2b62bfa87bd0 32> unit size <integer_cst 0x2b62bfa876f0 4>
> align 32 context <function_decl 0x2b62c03221c0 check_table>>>
> body <statement_list 0x2b62bff337e0 type <void_type 0x2b62bfaac0b0 void>
> side-effects head 0x2b62c038c4a0 tail 0x2b62c0346760 stmts 0x2b62c038bb40 0x2b62c038bb90 0x2b62c03715f0 0x2b62c038bc30 0x2b62c038bbe0 0x2b62c0371b40
>
> stmt <modify_expr 0x2b62c038bb40 type <pointer_type 0x2b62bffb10b0>
> side-effects arg 0 <var_decl 0x2b62c038d2c0 D.9311>
> arg 1 <plus_expr 0x2b62c03715a0 type <pointer_type 0x2b62bffb10b0>
> arg 0 <var_decl 0x2b62bff5e000 data>
> arg 1 <integer_cst 0x2b62c034c720 constant invariant 4>>
> otfcmap.cc:207>
> stmt <modify_expr 0x2b62c038bb90 type <pointer_type 0x2b62c0239dc0>
> side-effects arg 0 <var_decl 0x2b62c038d370 D.9312>
> arg 1 <nop_expr 0x2b62c035be40 type <pointer_type 0x2b62c0239dc0>
> arg 0 <var_decl 0x2b62c038d2c0 D.9311>>
> otfcmap.cc:207>
> stmt <modify_expr 0x2b62c03715f0 type <integer_type 0x2b62bfa9a580 unsigned int>
> side-effects arg 0 <var_decl 0x2b62c02c1dc0 __x>
> arg 1 <indirect_ref 0x2b62c035be80 type <integer_type 0x2b62c02480b0 unsigned int>
> readonly arg 0 <var_decl 0x2b62c038d370 D.9312>>
> otfcmap.cc:207>
> stmt <modify_expr 0x2b62c038bc30 type <integer_type 0x2b62bfa9a4d0 int>
> side-effects arg 0 <var_decl 0x2b62c038d420 D.9313>
> arg 1 <call_expr 0x2b62c0371690 type <integer_type 0x2b62bfa9a4d0 int>
> nothrow
> arg 0 <addr_expr 0x2b62c035bfc0 type <pointer_type 0x2b62c00538f0>
> readonly constant invariant arg 0 <function_decl 0x2b62bfb56000 __builtin_constant_p>>
> arg 1 <tree_list 0x2b62bff3ed50 value <var_decl 0x2b62c02c1dc0 __x>>
> otfcmap.cc:207>
> otfcmap.cc:207>
> stmt <cond_expr 0x2b62c038bbe0 type <void_type 0x2b62bfaac0b0 void>
> side-effects
> arg 0 <ne_expr 0x2b62c03716e0 type <boolean_type 0x2b62bfa9a8f0 bool>
> arg 0 <var_decl 0x2b62c038d420 D.9313>
> arg 1 <integer_cst 0x2b62bfaa5870 constant invariant 0>>
> arg 1 <statement_list 0x2b62bffa46f0 type <void_type 0x2b62bfaac0b0 void>
> side-effects head 0x2b62c038c560 tail 0x2b62c038c6a0 stmts 0x2b62c038bc80 0x2b62c038bcd0 0x2b62c038bd20 0x2b62c038bd70 0x2b62c038bdc0 0x2b62c038be10 0x2b62c038be60 0x2b62c038beb0 0x2b62c038bf00 0x2b62c038bf50 0x2b62c0371aa0
>
> stmt <modify_expr 0x2b62c038bc80 type <integer_type 0x2b62bfa9a580 unsigned int>
> side-effects arg 0 <var_decl 0x2b62c038d4d0 D.9314>
> arg 1 <bit_and_expr 0x2b62c0371730 type <integer_type 0x2b62bfa9a580 unsigned int>
> arg 0 <var_decl 0x2b62c02c1dc0 __x>
> arg 1 <integer_cst 0x2b62bfc56e70 constant invariant 4278190080>>
> otfcmap.cc:207>
> stmt <modify_expr 0x2b62c038bcd0 type <integer_type 0x2b62bfa9a580 unsigned int>
> side-effects arg 0 <var_decl 0x2b62c038d580 D.9315>
> arg 1 <rshift_expr 0x2b62c0371780 type <integer_type 0x2b62bfa9a580 unsigned int>
> arg 0 <var_decl 0x2b62c038d4d0 D.9314>
> arg 1 <integer_cst 0x2b62bfef9150 constant invariant 24>>
> otfcmap.cc:207>
> stmt <modify_expr 0x2b62c038bd20 type <integer_type 0x2b62bfa9a580 unsigned int>
> side-effects arg 0 <var_decl 0x2b62c038d630 D.9316>
> arg 1 <bit_and_expr 0x2b62c03717d0 type <integer_type 0x2b62bfa9a580 unsigned int>
> arg 0 <var_decl 0x2b62c02c1dc0 __x>
> arg 1 <integer_cst 0x2b62c0350ba0 constant invariant 16711680>>
> otfcmap.cc:207>
> stmt <modify_expr 0x2b62c038bd70 type <integer_type 0x2b62bfa9a580 unsigned int>
> side-effects arg 0 <var_decl 0x2b62c038d6e0 D.9317>
> arg 1 <rshift_expr 0x2b62c0371820 type <integer_type 0x2b62bfa9a580 unsigned int>
> arg 0 <var_decl 0x2b62c038d630 D.9316>
> arg 1 <integer_cst 0x2b62bfb7bb70 constant invariant 8>>
> otfcmap.cc:207>
> stmt <modify_expr 0x2b62c038bdc0 type <integer_type 0x2b62bfa9a580 unsigned int>
> side-effects arg 0 <var_decl 0x2b62c038d790 D.9318>
> arg 1 <bit_ior_expr 0x2b62c0371870 type <integer_type 0x2b62bfa9a580 unsigned int>
> arg 0 <var_decl 0x2b62c038d580 D.9315> arg 1 <var_decl 0x2b62c038d6e0 D.9317>>
> otfcmap.cc:207>
> stmt <modify_expr 0x2b62c038be10 type <integer_type 0x2b62bfa9a580 unsigned int>
> side-effects arg 0 <var_decl 0x2b62c038d840 D.9319>
> arg 1 <bit_and_expr 0x2b62c03718c0 type <integer_type 0x2b62bfa9a580 unsigned int>
> arg 0 <var_decl 0x2b62c02c1dc0 __x>
> arg 1 <integer_cst 0x2b62c0350c60 constant invariant 65280>>
> otfcmap.cc:207>
> stmt <modify_expr 0x2b62c038be60 type <integer_type 0x2b62bfa9a580 unsigned int>
> side-effects arg 0 <var_decl 0x2b62c038d8f0 D.9320>
> arg 1 <lshift_expr 0x2b62c0371910 type <integer_type 0x2b62bfa9a580 unsigned int>
> arg 0 <var_decl 0x2b62c038d840 D.9319> arg 1 <integer_cst 0x2b62bfb7bb70 8>>
> otfcmap.cc:207>
> stmt <modify_expr 0x2b62c038beb0 type <integer_type 0x2b62bfa9a580 unsigned int>
> side-effects arg 0 <var_decl 0x2b62c038d9a0 D.9321>
> arg 1 <bit_ior_expr 0x2b62c0371960 type <integer_type 0x2b62bfa9a580 unsigned int>
> arg 0 <var_decl 0x2b62c038d790 D.9318> arg 1 <var_decl 0x2b62c038d8f0 D.9320>>
> otfcmap.cc:207>
> stmt <modify_expr 0x2b62c038bf00 type <integer_type 0x2b62bfa9a580 unsigned int>
> side-effects arg 0 <var_decl 0x2b62c038da50 D.9322>
> arg 1 <bit_and_expr 0x2b62c03719b0 type <integer_type 0x2b62bfa9a580 unsigned int>
> arg 0 <var_decl 0x2b62c02c1dc0 __x>
> arg 1 <integer_cst 0x2b62c00177e0 constant invariant 255>>
> otfcmap.cc:207>
> stmt <modify_expr 0x2b62c038bf50 type <integer_type 0x2b62bfa9a580 unsigned int>
> side-effects arg 0 <var_decl 0x2b62c038db00 D.9323>
> arg 1 <lshift_expr 0x2b62c0371a00 type <integer_type 0x2b62bfa9a580 unsigned int>
> arg 0 <var_decl 0x2b62c038da50 D.9322> arg 1 <integer_cst 0x2b62bfef9150 24>>
> otfcmap.cc:207>
> stmt <modify_expr 0x2b62c0371aa0 type <integer_type 0x2b62bfa9a580 unsigned int>
> side-effects arg 0 <var_decl 0x2b62c02c1b00 __v>
> arg 1 <bit_ior_expr 0x2b62c0371a50 type <integer_type 0x2b62bfa9a580 unsigned int>
> arg 0 <var_decl 0x2b62c038d9a0 D.9321> arg 1 <var_decl 0x2b62c038db00 D.9323>>
> otfcmap.cc:207>>
> arg 2 <statement_list 0x2b62bffa4780 type <void_type 0x2b62bfaac0b0 void>
> side-effects head 0x2b62c038c6c0 tail 0x2b62c038c6c0 stmts 0x2b62c02dfa20
>
> stmt <asm_expr 0x2b62c02dfa20 type <void_type 0x2b62bfaac0b0 void>
> side-effects
> arg 0 <string_cst 0x2b62bff3ee70 type <array_type 0x2b62c03536e0>
> readonly constant invariant static "bswap %0\000">
> arg 1 <tree_list 0x2b62bff44030
> purpose <tree_list 0x2b62bff3ef90 value <string_cst 0x2b62bff3eea0>> value <var_decl 0x2b62c02c1b00 __v>>
> arg 2 <tree_list 0x2b62bff44120
> purpose <tree_list 0x2b62bff440f0 value <string_cst 0x2b62bff44060>> value <var_decl 0x2b62c02c1dc0 __x>>
> otfcmap.cc:207>>
> otfcmap.cc:207>
> stmt <modify_expr 0x2b62c0371b40 type <integer_type 0x2b62bff06000 uint32_t>
> side-effects arg 0 <var_decl 0x2b62c003d6e0 length> arg 1 <var_decl 0x2b62c02c1b00 __v>
> otfcmap.cc:206>>
> block <block 0x2b62c0369a80 used vars <var_decl 0x2b62c02c1b00 __v>
> supercontext <block 0x2b62c0369af0 used
> supercontext <block 0x2b62c0369d90 used vars <var_decl 0x2b62c02c8b00 nGroups>
> supercontext <block 0x2b62c0369e00 used
> supercontext <block 0x2b62c0369e70 used
> supercontext <block 0x2b62c0369ee0 used vars <var_decl 0x2b62bff5e000 data> supercontext <block 0x2b62c0369f50> subblocks <block 0x2b62c02fbd90>> subblocks <block 0x2b62c0369e00>>
> subblocks <block 0x2b62c02fbee0 used supercontext <block 0x2b62c0369e00>
> subblocks <block 0x2b62c02fbe70 used vars <var_decl 0x2b62c003f8f0 __v> supercontext <block 0x2b62c02fbee0>>
> chain <block 0x2b62c02fb000 used supercontext <block 0x2b62c0369e00> subblocks <block 0x2b62c02fbf50> chain <block 0x2b62c0369230>>>> subblocks <block 0x2b62c0369af0>> subblocks <block 0x2b62c0369a80>
> chain <block 0x2b62c0369b60 used vars <var_decl 0x2b62c02d70b0 __v> supercontext <block 0x2b62c0369d90>
> chain <block 0x2b62c0369d20 used vars <var_decl 0x2b62c02db160 i> supercontext <block 0x2b62c0369d90>
> subblocks <block 0x2b62c0369cb0 used vars <var_decl 0x2b62c02db210 startCharCode> supercontext <block 0x2b62c0369d20>
> subblocks <block 0x2b62c0369bd0 used vars <var_decl 0x2b62c02db4d0 __v> supercontext <block 0x2b62c0369cb0> chain <block 0x2b62c0369c40>>>>>>>
> otfcmap.cc:207>
> otfcmap.cc: In member function 'int Efont::OpenType::Cmap::check_table(int, ErrorHandler*) const':
> otfcmap.cc:206: internal compiler error: gimplification failed
> Please submit a full bug report,
> with preprocessed source if appropriate.
> See <URL:http://gcc.gnu.org/bugs.html> for instructions.
> For Debian GNU/Linux specific bug reporting instructions,
> see <URL:file:///usr/share/doc/gcc-4.1/README.Bugs>.
> make[3]: *** [otfcmap.o] Error 1
> make[3]: Leaving directory `/build/tbm/lcdf-typetools-2.36/libefont'
--
Martin Michlmayr
http://www.cyrius.com/
Reply to: