OSDN Git Service

2009-11-25 Robert Nelson <robert.nelson@digikey.com>
authorrearnsha <rearnsha@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 25 Nov 2009 11:23:07 +0000 (11:23 +0000)
committerrearnsha <rearnsha@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 25 Nov 2009 11:23:07 +0000 (11:23 +0000)
    Richard Earnshaw  <rearnsha@arm.com>

* arm.h (enum vfp_reg_type): Add VFP_NONE.
* arm.c (all_fpus): Use it for floating point units that aren't based
on the VFP architecture.
(aapcs_vfp_is_call_or_return_candidate): Make base_mode a pointer to
enum machine_mode.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154647 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/config/arm/arm.c
gcc/config/arm/arm.h

index e2e2506..855e613 100644 (file)
@@ -1,3 +1,12 @@
+2009-11-25  Robert Nelson  <robert.nelson@digikey.com>
+           Richard Earnshaw  <rearnsha@arm.com>
+
+       * arm.h (enum vfp_reg_type): Add VFP_NONE.
+       * arm.c (all_fpus): Use it for floating point units that aren't based
+       on the VFP architecture.
+       (aapcs_vfp_is_call_or_return_candidate): Make base_mode a pointer to
+       enum machine_mode.
+
 2009-11-25  H.J. Lu  <hongjiu.lu@intel.com>
 
        * alias.c: Remove trailing white spaces.
index 2dd603d..a9ad903 100644 (file)
@@ -821,10 +821,10 @@ char arm_arch_name[] = "__ARM_ARCH_0UNK__";
 
 static const struct arm_fpu_desc all_fpus[] =
 {
-  {"fpa",              ARM_FP_MODEL_FPA, 0, 0, false, false},
-  {"fpe2",             ARM_FP_MODEL_FPA, 2, 0, false, false},
-  {"fpe3",             ARM_FP_MODEL_FPA, 3, 0, false, false},
-  {"maverick",         ARM_FP_MODEL_MAVERICK, 0, 0, false, false},
+  {"fpa",              ARM_FP_MODEL_FPA, 0, VFP_NONE, false, false},
+  {"fpe2",             ARM_FP_MODEL_FPA, 2, VFP_NONE, false, false},
+  {"fpe3",             ARM_FP_MODEL_FPA, 3, VFP_NONE, false, false},
+  {"maverick",         ARM_FP_MODEL_MAVERICK, 0, VFP_NONE, false, false},
   {"vfp",              ARM_FP_MODEL_VFP, 2, VFP_REG_D16, false, false},
   {"vfpv3",            ARM_FP_MODEL_VFP, 3, VFP_REG_D32, false, false},
   {"vfpv3-fp16",       ARM_FP_MODEL_VFP, 3, VFP_REG_D32, false, true},
@@ -3853,7 +3853,7 @@ use_vfp_abi (enum arm_pcs pcs_variant, bool is_double)
 static bool
 aapcs_vfp_is_call_or_return_candidate (enum arm_pcs pcs_variant,
                                       enum machine_mode mode, const_tree type,
-                                      int *base_mode, int *count)
+                                      enum machine_mode *base_mode, int *count)
 {
   enum machine_mode new_mode = VOIDmode;
 
index 98abdb1..3f34954 100644 (file)
@@ -307,6 +307,7 @@ enum arm_fp_model
 
 enum vfp_reg_type
 {
+  VFP_NONE = 0,
   VFP_REG_D16,
   VFP_REG_D32,
   VFP_REG_SINGLE