diff -Naurp gcc/config/avr/avr.c gcc/config/avr/avr.c --- gcc/config/avr/avr.c 2011-10-27 18:00:50.000000000 +0530 +++ gcc/config/avr/avr.c 2011-10-27 18:05:35.000000000 +0530 @@ -246,6 +246,9 @@ static const struct default_options avr_ #undef TARGET_SCALAR_MODE_SUPPORTED_P #define TARGET_SCALAR_MODE_SUPPORTED_P avr_scalar_mode_supported_p +#undef TARGET_FIXED_POINT_SUPPORTED_P +#define TARGET_FIXED_POINT_SUPPORTED_P avr_fixed_point_supported_p + #undef TARGET_INIT_BUILTINS #define TARGET_INIT_BUILTINS avr_init_builtins @@ -263,6 +266,17 @@ static const struct default_options avr_ return default_scalar_mode_supported_p (mode); } + /* Implement TARGET_FIXED_POINT_SUPPORTED_P. */ + static bool + avr_fixed_point_supported_p () + { + if (AVR_TINY) + return false; + + return default_fixed_point_supported_p (); + } + + struct gcc_target targetm = TARGET_INITIALIZER; static void diff -Naurp gcc/config/fixed-bit.c gcc/config/fixed-bit.c --- gcc/config/fixed-bit.c 2011-10-27 17:57:06.000000000 +0530 +++ gcc/config/fixed-bit.c 2011-10-27 18:05:35.000000000 +0530 @@ -41,7 +41,7 @@ see the files COPYING3 and COPYING.RUNTI Floating-point: SF, DF Ex: If we define FROM_QQ and TO_SI, the conversion from QQ to SI is generated. */ - +#if !defined (__AVR_TINY__) #include "tconfig.h" #include "tsystem.h" #include "coretypes.h" @@ -1213,4 +1213,4 @@ SATFRACT (FROM_FLOAT_C_TYPE a) return c; } #endif /* defined(SATFRACT) && FROM_TYPE == 3 && TO_TYPE == 4 */ - +#endif /* __AVR_TINY__ */