This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
target/3298: fail to build cross compiler. internal error at emit-rtl.c:1109
- To: gcc-gnats at gcc dot gnu dot org
- Subject: target/3298: fail to build cross compiler. internal error at emit-rtl.c:1109
- From: d dot a dot v dot h at usa dot net
- Date: 20 Jun 2001 16:58:20 -0000
- Reply-To: d dot a dot v dot h at usa dot net
>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 <URL:http://www.gnu.org/software/gcc/bugs.html> 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: