--- gas/expr.c 2004-09-15 15:05:03.000000000 -0400 +++ gas/expr.c 2005-06-21 01:51:36.000000000 -0400 @@ -32,9 +32,13 @@ #include "safe-ctype.h" #include "obstack.h" +#if defined(BFD64) && (!defined(TARGET_WORD_SIZE) || TARGET_WORD_SIZE == 64) +#define NUM64 +#endif + static void floating_constant (expressionS * expressionP); static valueT generic_bignum_to_int32 (void); -#ifdef BFD64 +#ifdef NUM64 static valueT generic_bignum_to_int64 (void); #endif static void integer_constant (int radix, expressionS * expressionP); @@ -253,7 +257,7 @@ return number; } -#ifdef BFD64 +#ifdef NUM64 static valueT generic_bignum_to_int64 (void) { @@ -302,7 +306,7 @@ you're compiling in 64-bit mode, the target is a 64-bit machine. This should be cleaned up. */ -#ifdef BFD64 +#ifdef NUM64 #define valuesize 64 #else /* includes non-bfd case, mostly */ #define valuesize 32 @@ -446,7 +450,7 @@ number = generic_bignum_to_int32 (); small = 1; } -#ifdef BFD64 +#ifdef NUM64 else if (num_little_digits <= 4) { /* Will fit into 64 bits. */ @@ -504,7 +508,7 @@ number = generic_bignum_to_int32 (); small = 1; } -#ifdef BFD64 +#ifdef NUM64 else if (leader < generic_bignum + 4) { /* Will fit into 64 bits. */