Size: 1483
Comment:
|
← Revision 138 as of 2016-06-12 04:39:50 ⇥
Size: 9725
Comment: ports category
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
This page tracks current issues with ["GCC"] for DebianM68kPorting. User support and buildd admins can be found at debian-68k@lists.debian.org. Since gcc-4.1 is now the default, I'm going to start dropping bugs that only apply to older packages. |
#language en ## page was renamed from DebianM68kGcc 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.4 with TLS backport is now the default * works rather well * builds from unmodified Debian unstable sources (thanks doko!) * TLS capable eglibc in Debian unstable (thanks Aurélien!) * next version will be gcc-4.6 (we will skip gcc-4.5 and it will not be released with wheezy according to doko) * gcc-4.3 (and older) have been removed from Debian unstable already (by April 2011) |
Line 7: | Line 14: |
* 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 DebianM68kPorting. |
* 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]]. == binNMUs == * binNMU [[http://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=binNMU;users=m68k-build@nocrew.org|bugs]] <<Anchor(cross)>> = Cross-Compilers = * build a stretch chroot for amd64 * A metapackage {{{gcc-m68k-linux-gnu}}} (also cpp, g++) is available * These are built according to BuildingCrossCompilers == Building Cross-Compilers == * Best to start with [[EmdebianToolchain]]. * Christian's cross-compiler guide for kernel building: http://people.debian.org/~cts/debian-m68k/cross-compile/ * Roman's cross-compiler guide for crosscc: http://www.xs4all.nl/~zippel/crosscc/crosscc.README * Stephen's cross-compiler draft notes: http://people.debian.org/~smarenka/m68k/cross-compilers/aaareadme.txt = obsolete? = The information below is probably mostly obsolete = 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 * confirmed in 4.3.4-10+m68k from unreleased (tg@) * hit in kernel compile (btrfs) XXX why do we not use CONFIG_FRAME_POINTER? * [[http://people.debian.org/~smarenka/m68k/bugs/testreloads.c|test case]] * gnu pr [[http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37052|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 * [[http://people.debian.org/~smarenka/m68k/bugs/postreload.c|test case]] * gnu pr [[http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37053|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. |
Line 12: | Line 207: |
* debian [http://bugs.debian.org/cgi-bin/pkgreport.cgi?src=gcc-4.0 gcc-4.0 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 17: | Line 212: |
Line 20: | Line 213: |
* cln: assembler: FATAL: can't close cl_MI.o: no error * debian #[http://bugs.debian.org/375519 375519], gnu pr [http://gcc.gnu.org/PR28183 28183] * found in gcc-4.1_4.1.1-11 * ICE in extract_insn * pkgs: kdelibs gxemul * debian #[http://bugs.debian.org/381572 381572], gnu pr [http://gcc.gnu.org/PR28622 28622] * found in gcc-4.1_4.1.1-11 * fixed in -12 * make sure gxemul works then open -O0->-O2 bug * ICE in reload_cse_simplify_operands * pkg: yacas licq * debian #[http://bugs.debian.org/385327 385327] * found in gcc-4.1_4.1.1-17 == binNMUs == * binNMU [http://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=binNMU;users=m68k-build@nocrew.org bugs] |
* [[http://gcc.gnu.org/bugs.html|GCC Bugs]] == 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; Thorsten Glaser has discovered that the System'Address type must be coerced into %a0 instead of %d0 by GCC, so the ball is now in the hands of the GCC/GNAT developers * D will probably require similar work done for it. ---- CategoryPorts |
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.4 with TLS backport is now the default
- works rather well
- builds from unmodified Debian unstable sources (thanks doko!)
- TLS capable eglibc in Debian unstable (thanks Aurélien!)
- next version will be gcc-4.6 (we will skip gcc-4.5 and it will not be released with wheezy according to doko)
- gcc-4.3 (and older) have been removed from Debian unstable already (by April 2011)
m68k usertags
If you find a bug not listed, please usertag it or drop us a message, see M68k/Porting.
binNMUs
binNMU bugs
Cross-Compilers
- build a stretch chroot for amd64
A metapackage gcc-m68k-linux-gnu (also cpp, g++) is available
These are built according to BuildingCrossCompilers
Building Cross-Compilers
Best to start with EmdebianToolchain.
Christian's cross-compiler guide for kernel building: http://people.debian.org/~cts/debian-m68k/cross-compile/
Roman's cross-compiler guide for crosscc: http://www.xs4all.nl/~zippel/crosscc/crosscc.README
Stephen's cross-compiler draft notes: http://people.debian.org/~smarenka/m68k/cross-compilers/aaareadme.txt
obsolete?
The information below is probably mostly obsolete
Bugs
Gathering the bugs in gcc-4.3_4.3.1-8.
ice in find_reloads
- hdf5
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
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.
gcc-4.x bugs
debian gcc-4.3 bts
debian gcc-4.2 bts
debian gcc-4.1 bts
upstream gcc bugs
- check with gcc-snapshot (if it's more recent than sid)
upstream
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; Thorsten Glaser has discovered that the System'Address type must be coerced into %a0 instead of %d0 by GCC, so the ball is now in the hands of the GCC/GNAT developers
- D will probably require similar work done for it.