Hi,
I'm using gcc 3.3 (but this happens as well with gcc 3.2), and the
following error occurs when compiling src/fdrivers/svga24.c:
gcc -c -O2 -Wall -DLFB_BY_NEAR_POINTER -pipe -DSVGALIB_DRIVER
-DFRAMEBUFFER_DRIVER -DINOUTP_FRAMEDRIVERS -I. -I./include -I../include
-I../addons/print fdrivers/svga24.c -o fdrivers/svga24.o
fdrivers/svga24.c: In function `drawhline':
fdrivers/svga24.c:256: error: can't find a register in class `AD_REGS' while reloading `asm'
fdrivers/svga24.c:257: error: can't find a register in class `AD_REGS' while reloading `asm'
fdrivers/svga24.c:258: error: can't find a register in class `AD_REGS' while reloading `asm'
fdrivers/svga24.c:259: error: can't find a register in class `AD_REGS' while reloading `asm'
make[1]: *** [fdrivers/svga24.o] Error 1
I've tracked this down to src/include/gcc/memfill.h to the REPFILL24
macros.
When I use the following patch I'm able to continue compiling. Though
this does not fix the bug.
----X<----
--- memfill.h 2003-05-26 03:26:19.000000000 +0200
+++ memfill.h-patched 2003-05-25 20:49:37.000000000 +0200
@@ -262,7 +262,9 @@
#define __INLINE_24_FAR_REPFILL__(P,C,B,FMODE,INS) \
__INLINE_386_REPFILL24__(P,C,B,INS,%%fs:)
+#if 0
#define GRX_HAVE_FAST_REPFILL24
+#endif
#endif /* __i386__ */
----X<----
I don't know if I'll have enough spare time to fix this, so if someone else
could fix this properly it would be great :>.
regards,
guillem