Differences between revisions 126 and 127
Revision 126 as of 2009-03-11 21:02:08
Size: 8945
Editor: ?smarenka
Comment:
Revision 127 as of 2009-03-16 03:31:04
Size: 8967
Editor: anonymous
Comment: converted to 1.6 markup
Deletions are marked like this. Additions are marked like this.
Line 4: Line 4:
This page tracks current issues with ["GCC"] for ["M68k/Porting"]. User support and buildd admins can be found at debian-68k@lists.debian.org . This page tracks current issues with [[GCC]] for [[M68k/Porting]]. User support and buildd admins can be found at debian-68k@lists.debian.org .
Line 8: Line 8:
[[Anchor(cross)]] <<Anchor(cross)>>
Line 28: Line 28:
  * [http://people.debian.org/~smarenka/m68k/bugs/testreloads.c test case]
  * gnu pr [http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37052 37052]
  * [[http://people.debian.org/~smarenka/m68k/bugs/testreloads.c|test case]]
  * gnu pr [[http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37052|37052]]
Line 85: Line 85:
  * [http://people.debian.org/~smarenka/m68k/bugs/postreload.c test case]
  * gnu pr [http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37053 37053]
  * [[http://people.debian.org/~smarenka/m68k/bugs/postreload.c|test case]]
  * gnu pr [[http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37053|37053]]
Line 186: Line 186:
 * If you find a bug not [http://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=m68k;users=m68k-build@nocrew.org; listed], please usertag it or drop us a message, see ["M68k/Porting"].  * If you find a bug not [[http://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=m68k;users=m68k-build@nocrew.org;|listed]], please usertag it or drop us a message, see [[M68k/Porting]].
Line 188: Line 188:
 * debian [http://bugs.debian.org/cgi-bin/pkgreport.cgi?src=gcc-4.3 gcc-4.3 bts]
 * debian [http://bugs.debian.org/cgi-bin/pkgreport.cgi?src=gcc-4.2 gcc-4.2 bts]
 * debian [http://bugs.debian.org/cgi-bin/pkgreport.cgi?src=gcc-4.1 gcc-4.1 bts]
 * upstream gcc [http://gcc.gnu.org/bugzilla/ bugs]
 * debian [[http://bugs.debian.org/cgi-bin/pkgreport.cgi?src=gcc-4.3|gcc-4.3 bts]]
 * debian [[http://bugs.debian.org/cgi-bin/pkgreport.cgi?src=gcc-4.2|gcc-4.2 bts]]
 * debian [[http://bugs.debian.org/cgi-bin/pkgreport.cgi?src=gcc-4.1|gcc-4.1 bts]]
 * upstream gcc [[http://gcc.gnu.org/bugzilla/|bugs]]
Line 194: Line 194:
 * [http://gcc.gnu.org/bugs.html GCC Bugs]  * [[http://gcc.gnu.org/bugs.html|GCC Bugs]]
Line 196: Line 196:
 * binNMU [http://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=binNMU;users=m68k-build@nocrew.org bugs]  * binNMU [[http://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=binNMU;users=m68k-build@nocrew.org|bugs]]

This page tracks current issues with GCC for M68k/Porting. User support and buildd admins can be found at debian-68k@lists.debian.org .

  • gcc-4.3 is now the default

Cross-Compilers

  • [optional] build a sid chroot
  • add the following to /etc/apt/sources.list: deb http://people.debian.org/~smarenka/m68k/cross-compilers ./

  • apt-get update && apt-get install gcc-4.3-m68k-linux-gnu

Building Cross-Compilers

Bugs

Gathering the bugs in gcc-4.3_4.3.1-8.

ice in find_reloads

  • hdf5
    • found in gcc 4.3.1-8
    • found in cross compiler
    • test case

    • gnu pr 37052

    • bug #

testreloads.c:207: error: unable to generate reloads for:
(insn:QI 631 629 632 41 testreloads.c:94 (parallel [
            (set (cc0)
                (compare (reg/v:DI 0 %d0 [orig:117 j ] [117])
                    (reg:DI 4 %d4 [orig:115 pretmp.69 ] [115])))
            (clobber (reg:DI 273))
        ]) 12 {*m68k.md:521} (expr_list:REG_UNUSED (reg:DI 273)
        (nil)))
testreloads.c:207: internal compiler error: in find_reloads, at reload.c:3744

related?

  • ffmpeg-debian
    • found in gcc-4.3_4.3.1-2

avidec.c:606: error: unable to generate reloads for:
(insn:QI 1388 1785 1389 174 /build/buildd/ffmpeg-debian-0.svn20080206/libavformat/avidec.c:211 (parallel [
            (set (cc0)
                (compare (reg:DI 10 %a2 [orig:62 pretmp.702 ] [62])
                    (reg:DI 4 %d4 [430])))
            (clobber (reg:DI 431))
        ]) 12 {*m68k.md:521} (expr_list:REG_UNUSED (reg:DI 431)
        (nil)))
avidec.c:606: internal compiler error: in find_reloads, at reload.c:3744
  • ffmpeg-free
    • found in gcc-4.3_4.3.0-3

avidec.c:606: error: unable to generate reloads for:
(insn:QI 1388 1785 1389 174 avidec.c:211 (parallel [
            (set (cc0)
                (compare (reg:DI 10 %a2 [orig:62 pretmp.702 ] [62])
                    (reg:DI 4 %d4 [430])))
            (clobber (reg:DI 431))
        ]) 12 {*m68k.md:521} (expr_list:REG_UNUSED (reg:DI 431)
        (nil)))
avidec.c:606: internal compiler error: in find_reloads, at reload.c:3744
  • llvm
    • found in gcc-4.3_4.3.0-3
    • different than above, although same area

InstructionCombining.cpp:9187: error: unable to generate reloads for:
(insn:QI 1193 1192 1194 210 InstructionCombining.cpp:8939 (parallel [
            (set (cc0)
                (compare (reg:DI 0 %d0)
                    (reg:DI 4 %d4 [499])))
            (clobber (reg:DI 501))
        ]) 12 {*m68k.md:521} (expr_list:REG_DEAD (reg:DI 0 %d0)
        (expr_list:REG_UNUSED (reg:DI 501)
            (nil))))
InstructionCombining.cpp:9187: internal compiler error: in find_reloads, at reload.c:3744

ice in reload_cse_simplify_operands

  • r-base
    • found in gcc-4.3_4.3.1-8
    • found in cross-compiler
    • test case

    • gnu pr 37053

    • bug #

postreload.c:886: error: insn does not satisfy its constraints:
(insn 309 2675 2677 36 postreload.c:446 (set (reg:SI 0 %d0)
        (plus:SI (mem/f:SI (reg:SI 8 %a0) [0 S4 A16])
            (reg:SI 0 %d0))) 132 {*addsi3_internal} (nil))
postreload.c:886: internal compiler error: in reload_cse_simplify_operands, at postreload.c:395
  • pymol
    • found in gcc-4.3_4.3.1-8

Selector.c:3225: error: insn does not satisfy its constraints:
(insn 276 502 504 38 layer3/Selector.c:3213 (set (reg:SI 0 %d0)
        (plus:SI (mem/f:SI (reg:SI 8 %a0) [0 S4 A16])
            (reg:SI 0 %d0))) 132 {*addsi3_internal} (nil))
layer3/Selector.c:3225: internal compiler error: in reload_cse_simplify_operands, at postreload.c:395

related?

  • gnudatalanguage
    • found in gcc-4.3_4.3.1-8

{{{convol.cpp:127: error: insn does not satisfy its constraints: (insn 1771 4339 1772 331 convol_inc1.cpp:355 (set (reg:HI 0 %d0 [orig:675+2 ] [675])

  • (mult:HI (mem:HI (reg:SI 9 %a1) [304 S2 A16])
    • (reg:HI 0 %d0 [orig:673+2 ] [673]))) 178 {mulhi3} (nil))

convol.cpp:127: internal compiler error: in reload_cse_simplify_operands, at postreload.c:395 }}}

  • meep
    • found in gcc-4.3_4.3.1-8

{{{../../../src/boundaries.cpp:441: error: insn does not satisfy its constraints: (insn 1749 3315 3317 237 ../../../src/boundaries.cpp:427 (set (reg:SI 6 %d6)

  • (plus:SI (mem/s/f:SI (reg:SI 9 %a1) [68 <variable>.P S4 A8])

    • (reg:SI 6 %d6))) 132 {*addsi3_internal} (nil))

../../../src/boundaries.cpp:441: internal compiler error: in reload_cse_simplify_operands, at postreload.c:395 Please submit a full bug report, with preprocessed source if appropriate. See <file:///usr/share/doc/gcc-4.3/README.Bugs> for instructions. }}}

  • courier
    • found in gcc-4.3_4.3.0-3
    • utf7.c:229: internal compiler error: in reload_cse_simplify_operands, at postreload.c:395

  • gnome-keyring
    • found in gcc-4.3_4.3.1-2
    • gkr-crypto.c:151: internal compiler error: in reload_cse_simplify_operands, at postreload.c:395

  • insighttoolkit
    • found in gcc-4.3_4.3.1-8
    • jdsample.c:141: internal compiler error: in reload_cse_simplify_operands, at postreload.c:395

  • osptoolkit
    • sptransapi.c:121: internal compiler error: in reload_cse_simplify_operands, at postreload.c:395

ice Segmentation fault: Reconfirm with -8

  • gnome-settings-daemon
    • found in gcc-4.3_4.3.0-3
    • gsd-xmodmap.c:397: internal compiler error: Segmentation fault

  • oolite
    • found in gcc-4.3_4.3.1-2
    • PlayerEntity Additions.m:1882: internal compiler error: Segmentation fault

  • opencv
    • found in gcc-4.3_4.3.1-2
    • cvfundam.cpp:311: internal compiler error: Segmentation fault

  • gmfsk
    • internal compiler error: Segmentation fault

  • gpc-4.1
    • rtsc.pas:430: internal compiler error: Segmentation fault

Other

  • simutrans
    • found in gcc-4.3_4.3.1-8
    • route.cc:520: internal compiler error: in subreg_get_info, at rtlanal.c:3185

Reconfirm w/ -8

  • compiz
    • found in gcc-4.3_4.3.0-3
    • decorator.moc.cpp:130: internal compiler error: in value_format, at dwarf2out.c:7015

  • iceowl
    • found in gcc-4.3_4.3.0-3
    • error: asm-specifier for variable ¿result¿ conflicts with asm clobber list

  • linux-2.6
    • found in gcc-4.3
  • genesis
    • found in gcc-4.3_4.3.0-3
    • hines_chip.c:595: internal compiler error: in reg_overlap_mentioned_for_reload_p, at reload.c:6525

  • gforth
    • ./engine.c:340: error: unable to find a register to spill in class ADDR_REGS

  • libgnupdf
    • ccZe2Dva.s:1523: Error: operands mismatch -- statement `rol.w #0,%d2' ignored

  • openvrml
    • Internal error: Killed (program cc1plus)

  • washngo_2.12-1
    • Internal error: Killed (program cc1)

Old glibc vs. gcc-4.3

Per http://lists.debian.org/debian-68k/2008/04/msg00033.html

The glibc support for the C99 inline semantics was added in glibc 2.6 and all the non-TLS support was removed. GCC 4.3 and later use C99 inline semantics in -std=gnu99 mode

This was resolved with -5 (although the first GCC we managed to build was -8). -std=gnu99 mode can now be used without any issue.

m68k usertags

gcc-4.x bugs

upstream

binNMUs

Compiler status

  • We don't have an Ada or D compiler at the moment since both compilers require special bootstrapping which has never been done. Michael Casadevall has been been able to build the Ada cross-compiler, but hasn't successfully bootstrapped the native compiler
  • D will probably require similar work done for it.