summaryrefslogtreecommitdiff
path: root/devel/avr-gcc/files/patch-305-gcc-4.5.1-avrtiny10-non-fixedpoint
blob: 9bceaa4d736fa8c99e4c6f3d4fe8930670bf4a96 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
diff -Naurp gcc/config/avr/avr.c gcc/config/avr/avr.c
--- gcc/config/avr/avr.c	2011-02-07 16:17:20.000000000 -0600
+++ gcc/config/avr/avr.c	2011-02-07 16:12:53.000000000 -0600
@@ -202,6 +202,9 @@ static const struct attribute_spec avr_a
 #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
  
@@ -219,6 +222,17 @@ static const struct attribute_spec avr_a
    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;
 
 void
diff -Naurp gcc/config/fixed-bit.c gcc/config/fixed-bit.c
--- gcc/config/fixed-bit.c	2009-04-09 10:00:19.000000000 -0500
+++ gcc/config/fixed-bit.c	2011-02-07 16:12:53.000000000 -0600
@@ -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__ */