aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKyrylo Tkachov <kyrylo.tkachov@arm.com>2016-05-31 12:35:42 +0000
committerKyrylo Tkachov <ktkachov@gcc.gnu.org>2016-05-31 12:35:42 +0000
commitd7b03373d619b3ce715c760d2b21dbe4869a1c8f (patch)
tree44e255dcc4dc943e0dd3a2ad9caade9210aac147
parent0d99f8a0705e47ca7fcee70f25cab0098ec64e48 (diff)
downloadgcc-d7b03373d619b3ce715c760d2b21dbe4869a1c8f.zip
gcc-d7b03373d619b3ce715c760d2b21dbe4869a1c8f.tar.gz
gcc-d7b03373d619b3ce715c760d2b21dbe4869a1c8f.tar.bz2
[AArch64] Use aarch64_fusion_enabled_p to check for insn fusion capabilities
* config/aarch64/aarch64.c (aarch_macro_fusion_pair_p): Use aarch64_fusion_enabled_p to check for fusion capabilities. From-SVN: r236921
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/aarch64/aarch64.c16
2 files changed, 11 insertions, 10 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 41bb494..a558a94 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -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
diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c
index 3ec5c9f..ad07fe1 100644
--- a/gcc/config/aarch64/aarch64.c
+++ b/gcc/config/aarch64/aarch64.c
@@ -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);