[AArch64] Use aarch64_fusion_enabled_p to check for insn fusion capabilities
authorKyrylo Tkachov <kyrylo.tkachov@arm.com>
Tue, 31 May 2016 12:35:42 +0000 (12:35 +0000)
committerKyrylo Tkachov <ktkachov@gcc.gnu.org>
Tue, 31 May 2016 12:35:42 +0000 (12:35 +0000)
* config/aarch64/aarch64.c (aarch_macro_fusion_pair_p): Use
aarch64_fusion_enabled_p to check for fusion capabilities.

From-SVN: r236921

gcc/ChangeLog
gcc/config/aarch64/aarch64.c

index 41bb494ec551636e8cdc2f743272367413a46b6d..a558a944e5b2732320c6227f74b6c872b3701ae4 100644 (file)
@@ -1,3 +1,8 @@
+2016-05-31  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
+
+       * config/aarch64/aarch64.c (aarch_macro_fusion_pair_p): Use
+       aarch64_fusion_enabled_p to check for fusion capabilities.
+
 2016-05-31  Richard Biener  <rguenther@suse.de>
 
        PR tree-optimization/71352
index 3ec5c9fb635b70337fa49293b07ffc6ad9b6e9f4..ad07fe196a814ace78d43f66e70280d20a4476b5 100644 (file)
@@ -13021,8 +13021,7 @@ aarch_macro_fusion_pair_p (rtx_insn *prev, rtx_insn *curr)
   if (!aarch64_macro_fusion_p ())
     return false;
 
-  if (simple_sets_p
-      && (aarch64_tune_params.fusible_ops & AARCH64_FUSE_MOV_MOVK))
+  if (simple_sets_p && aarch64_fusion_enabled_p (AARCH64_FUSE_MOV_MOVK))
     {
       /* We are trying to match:
          prev (mov)  == (set (reg r0) (const_int imm16))
@@ -13046,8 +13045,7 @@ aarch_macro_fusion_pair_p (rtx_insn *prev, rtx_insn *curr)
         }
     }
 
-  if (simple_sets_p
-      && (aarch64_tune_params.fusible_ops & AARCH64_FUSE_ADRP_ADD))
+  if (simple_sets_p && aarch64_fusion_enabled_p (AARCH64_FUSE_ADRP_ADD))
     {
 
       /*  We're trying to match:
@@ -13072,8 +13070,7 @@ aarch_macro_fusion_pair_p (rtx_insn *prev, rtx_insn *curr)
         }
     }
 
-  if (simple_sets_p
-      && (aarch64_tune_params.fusible_ops & AARCH64_FUSE_MOVK_MOVK))
+  if (simple_sets_p && aarch64_fusion_enabled_p (AARCH64_FUSE_MOVK_MOVK))
     {
 
       /* We're trying to match:
@@ -13101,8 +13098,7 @@ aarch_macro_fusion_pair_p (rtx_insn *prev, rtx_insn *curr)
         return true;
 
     }
-  if (simple_sets_p
-      && (aarch64_tune_params.fusible_ops & AARCH64_FUSE_ADRP_LDR))
+  if (simple_sets_p && aarch64_fusion_enabled_p (AARCH64_FUSE_ADRP_LDR))
     {
       /* We're trying to match:
           prev (adrp) == (set (reg r0)
@@ -13133,11 +13129,11 @@ aarch_macro_fusion_pair_p (rtx_insn *prev, rtx_insn *curr)
         }
     }
 
-  if ((aarch64_tune_params.fusible_ops & AARCH64_FUSE_AES_AESMC)
+  if (aarch64_fusion_enabled_p (AARCH64_FUSE_AES_AESMC)
        && aarch_crypto_can_dual_issue (prev, curr))
     return true;
 
-  if ((aarch64_tune_params.fusible_ops & AARCH64_FUSE_CMP_BRANCH)
+  if (aarch64_fusion_enabled_p (AARCH64_FUSE_CMP_BRANCH)
       && any_condjump_p (curr))
     {
       enum attr_type prev_type = get_attr_type (prev);