From mboxrd@z Thu Jan 1 00:00:00 1970 From: d.a.v.h@usa.net To: gcc-gnats@gcc.gnu.org Subject: target/3298: fail to build cross compiler. internal error at emit-rtl.c:1109 Date: Wed, 20 Jun 2001 10:06:00 -0000 Message-id: <20010620165820.16987.qmail@sourceware.cygnus.com> X-SW-Source: 2001-06/msg00838.html List-Id: >Number: 3298 >Category: target >Synopsis: fail to build cross compiler. internal error at emit-rtl.c:1109 >Confidential: no >Severity: critical >Priority: high >Responsible: unassigned >State: open >Class: sw-bug >Submitter-Id: net >Arrival-Date: Wed Jun 20 10:06:02 PDT 2001 >Closed-Date: >Last-Modified: >Originator: d.a.v.h@usa.net >Release: 3.0 >Organization: >Environment: davh@thor$ gcc -v /tmp/dennis/68hc11-build Reading specs from /usr/lib/gcc-lib/i486-suse-linux/2.95.2/specs gcc version 2.95.2 19991024 (release) tried with this too: davh@grid$ gcc -v ~ Reading specs from /usr/lib/gcc-lib/i386-linux/2.95.4/specs gcc version 2.95.4 20010604 (Debian prerelease) davh@thor$ ./xgcc -v /tmp/dennis/68hc11-gcc2/gcc Using builtin specs. Configured with: ../gcc-3.0/configure --target=m6811-elf --prefix=/home/davh/m68hc11-bin --with-local-prefix=/home/davh/m68hc11-include --enable-target-optspace --enable-languages=c --disable-libgcj --disable-nls --program-suffix=-m68hc11 --with-gnu-as --with-as=/home/davh/m68hc11-bin/bin/as-m68hc11 --with-gnu-ld --with-ld=/home/davh/m68hc11-bin/bin/ld-m68hc11 : (reconfigured) ../gcc-3.0/configure --target=m6811-elf --prefix=/home/davh/m68hc11-bin --with-local-prefix=/home/davh/m68hc11-include --enable-target-optspace --enable-languages=c --disable-libgcj --disable-nls --program-suffix=-m68hc11 --with-gnu-as --with-as=/home/davh/m68hc11-bin/bin/as-m68hc11 --with-gnu-ld --with-ld=/home/davh/m68hc11-bin/bin/ld-m68hc11 : (reconfigured) Thread model: single gcc version 3.0 >Description: ./xgcc -B./ -B/home/davh/m68hc11-bin/m6811-elf/bin/ -isystem /home/davh/m68hc11-bin/m6811-elf/include -DCROSS_COMPILE -DIN_GCC -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -isystem ./include -DUSE_GAS -c ../../gcc-3.0/gcc/libgcc1-test.c gives ../../gcc-3.0/gcc/libgcc1-test.c:8: warning: function declaration isn't a prototype ../../gcc-3.0/gcc/libgcc1-test.c:9: warning: function declaration isn't a prototype ../../gcc-3.0/gcc/libgcc1-test.c:18: warning: function declaration isn't a prototype ../../gcc-3.0/gcc/libgcc1-test.c: In function `main_without__main': ../../gcc-3.0/gcc/libgcc1-test.c:71: Internal compiler error in gen_highpart, at emit-rtl.c:1109 Please submit a full bug report, with preprocessed source if appropriate. See for instructions. Error occurs in other file than libgcc1-test.c too, with the problem being detected at emit-rtl.c:1109 each time. libgcc1-test.i contains (even though I dont think it helps much): # 6 "../../gcc-3.0/gcc/libgcc1-test.c" # 1 "include/stddef.h" 1 3 # 147 "include/stddef.h" 3 typedef short int ptrdiff_t; # 199 "include/stddef.h" 3 typedef short unsigned int size_t; # 287 "include/stddef.h" 3 typedef short int wchar_t; # 7 "../../gcc-3.0/gcc/libgcc1-test.c" 2 int foo (); double dfoo (); void discard (int); void ddiscard (double); int main_without__main () { int a = foo (), b = foo (); unsigned int au = foo (), bu = foo (); float af = dfoo (), bf = dfoo (); double ad = dfoo (), bd = dfoo (); discard (a * b); discard (a / b); discard (a % b); discard (au / bu); discard (au % bu); discard (a >> b); discard (a << b); discard (au >> bu); discard (au << bu); ddiscard (ad + bd); ddiscard (ad - bd); ddiscard (ad * bd); ddiscard (ad / bd); ddiscard (-ad); ddiscard (af + bf); ddiscard (af - bf); ddiscard (af * bf); ddiscard (af / bf); ddiscard (-af); discard ((int) ad); discard ((int) af); ddiscard ((double) a); ddiscard ((float) a); ddiscard ((float) ad); discard (ad == bd); discard (ad < bd); discard (ad > bd); discard (ad != bd); discard (ad <= bd); discard (ad >= bd); discard (af == bf); discard (af < bf); discard (af > bf); discard (af != bf); discard (af <= bf); discard (af >= bf); return 0; } void discard (x) int x __attribute__((__unused__)); {} void ddiscard (x) double x __attribute__((__unused__)); {} int foo () { static int table[] = {20, 69, 4, 12}; static int idx; return table[idx++]; } double dfoo () { static double table[] = {20.4, 69.96, 4.4, 202.202}; static int idx; return table[idx++]; } extern void start() __asm__("start"); extern void _start() __asm__("_start"); extern void __start() __asm__("__start"); void *memcpy(void *to, const void *from __attribute__((__unused__)), size_t len __attribute__((__unused__))) { return to; } void start() {} void _start() {} void __start() {} void mainCRTStartup() {} >How-To-Repeat: try build a m68hc11 cross compiler... >Fix: found none. >Release-Note: >Audit-Trail: >Unformatted: