tags 129573 patch thanks Well, I think this patch will fix the immediate problem at hand. I've no idea why CONST_DOUBLEs were being rejected previously, so it's possible that this isn't a safe thing to do. I guess someone needs to take it up with the upstream gcc folk.
p. Index: linux.h =================================================================== RCS file: /cvs/gcc/gcc/gcc/config/m68k/linux.h,v retrieving revision 1.13.4.1 diff -u -r1.13.4.1 linux.h --- linux.h 2001/07/30 21:32:28 1.13.4.1 +++ linux.h 2002/02/15 12:32:55 @@ -306,10 +306,7 @@ an operand of a function call. */ #undef LEGITIMATE_PIC_OPERAND_P #define LEGITIMATE_PIC_OPERAND_P(X) \ - ((! symbolic_operand (X, VOIDmode) \ - && ! (GET_CODE (X) == CONST_DOUBLE && CONST_DOUBLE_MEM (X) \ - && GET_CODE (CONST_DOUBLE_MEM (X)) == MEM \ - && symbolic_operand (XEXP (CONST_DOUBLE_MEM (X), 0), VOIDmode))) \ + (! symbolic_operand (X, VOIDmode) \ || (GET_CODE (X) == SYMBOL_REF && SYMBOL_REF_FLAG (X)) \ || PCREL_GENERAL_OPERAND_OK)