arm.h (arm_fpu_feature_set): New.
authorMatthew Wahab <matthew.wahab@arm.com>
Wed, 12 Aug 2015 15:03:29 +0000 (15:03 +0000)
committerMatthew Wahab <mwahab@gcc.gnu.org>
Wed, 12 Aug 2015 15:03:29 +0000 (15:03 +0000)
* config/arm/arm.h (arm_fpu_feature_set): New.
(ARM_FPU_FSET_HAS): New.
(FPU_FL_NONE): New.
(FPU_FL_NEON): New.
(FPU_FL_FP16): New.
(FPU_FL_CRYPTO): New.

From-SVN: r226818

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

index ebf0d4f969a5f6a3e7287852a345b8d7dce7a537..0fac024962266263b983f0bb02c3a91833f88506 100644 (file)
@@ -1,3 +1,12 @@
+2015-08-12  Matthew Wahab  <matthew.wahab@arm.com>
+
+       * config/arm/arm.h (arm_fpu_feature_set): New.
+       (ARM_FPU_FSET_HAS): New.
+       (FPU_FL_NONE): New.
+       (FPU_FL_NEON): New.
+       (FPU_FL_FP16): New.
+       (FPU_FL_CRYPTO): New.
+
 2015-08-12  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
 
        * config/aarch64/aarch64.c (initialize_aarch64_code_model): Break
index bb64be00c12842bfe67a0d2218fa770cc533302b..f49eb488c7a340e098a127f778b0772164c04b07 100644 (file)
@@ -318,6 +318,19 @@ extern void (*arm_lang_output_object_attributes_hook)(void);
   {"mode", "%{!marm:%{!mthumb:-m%(VALUE)}}"}, \
   {"tls", "%{!mtls-dialect=*:-mtls-dialect=%(VALUE)}"},
 
+/* FPU feature sets.  */
+
+typedef unsigned long arm_fpu_feature_set;
+
+/* Test for an FPU feature.  */
+#define ARM_FPU_FSET_HAS(S,F) (((S) & (F)) == (F))
+
+/* FPU Features.  */
+#define FPU_FL_NONE    (0)
+#define FPU_FL_NEON    (1 << 0)        /* NEON instructions.  */
+#define FPU_FL_FP16    (1 << 1)        /* Half-precision.  */
+#define FPU_FL_CRYPTO  (1 << 2)        /* Crypto extensions.  */
+
 /* Which floating point model to use.  */
 enum arm_fp_model
 {