This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

target/3298: fail to build cross compiler. internal error at emit-rtl.c:1109



>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:


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]