Messages in this thread | | | Subject | egcs-2.90.1[5-7] crash on __asm__, i586-pc-linux-gnulibc1 | Date | Sun, 16 Nov 1997 21:37:37 -0300 | From | Horst von Brand <> |
| |
I've got the above egcs versions (sorry, no earlier ones to check here), compiled with -O2 -fomit-frame-pointer -mpentium.
The compiler crashes on the file .../arch/i386/kernel/process.c from linux-2.1.64, but doesn't on linux-2.1.63-VGER-CVS971112. I've managed to strip down the files to the following minimal examples, which crash "gcc -c testfile.c". In the original, pa is gdt and the offending function is flush_thread:
#ifdef DONT_CRASH extern int pa[256]; #else extern int *pa; #endif
void f(void) { int i; { for (i = 1; i < 512; i++) { __asm__("" : : "m" (* pa), "m" (* (pa+1)), "m" (* (pa+2)), "m" (* (pa+3)), "m" (* (pa+4)), "m" (* (pa+5)), "m" (* (pa+6))); } } } -- Horst von Brand vonbrand@sleipnir.valparaiso.cl Casilla 9G, Viña del Mar, Chile +56 32 672616
| |