aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristophe Lyon <christophe.lyon@linaro.org>2016-06-08 14:32:11 +0200
committerChristophe Lyon <christophe.lyon@linaro.org>2016-06-08 14:32:11 +0200
commit991cf3ad58ce4167e428426eecc460fc6197b12e (patch)
treec48689ab8a587ab5bd7736bcdbdb052cb25d383d
parentafe3fc322a7edd6a564d5a79b0ab640be227f548 (diff)
Backport from trunk r236921. 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. Change-Id: Ic9f5f296880d425ef2118a3f2035834ce0713006
-rw-r--r--gcc/config/aarch64/aarch64.c16
1 files changed, 6 insertions, 10 deletions
diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c
index 999549426e6..94a250bd584 100644
--- a/gcc/config/aarch64/aarch64.c
+++ b/gcc/config/aarch64/aarch64.c
@@ -13184,8 +13184,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))
@@ -13209,8 +13208,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:
@@ -13235,8 +13233,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:
@@ -13264,8 +13261,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)
@@ -13296,11 +13292,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);