diff options
author | Joern Rennecke <joern.rennecke@embecosm.com> | 2019-04-05 15:01:01 +0000 |
---|---|---|
committer | Joern Rennecke <amylaar@gcc.gnu.org> | 2019-04-05 16:01:01 +0100 |
commit | e36710207c4a3dd6215359e5a94e169fc110e87b (patch) | |
tree | 90f167a048e0ab2b4bd6fe023feef50b9e435ae6 /gcc/sched-deps.c | |
parent | 05564120c6b6e3850faa3586824c298f76cc3985 (diff) | |
download | gcc-e36710207c4a3dd6215359e5a94e169fc110e87b.zip gcc-e36710207c4a3dd6215359e5a94e169fc110e87b.tar.gz gcc-e36710207c4a3dd6215359e5a94e169fc110e87b.tar.bz2 |
sched-deps.c (sched_macro_fuse_insns): Check return value of targetm.fixed_condition_code_regs.
* sched-deps.c (sched_macro_fuse_insns): Check return value of
targetm.fixed_condition_code_regs.
From-SVN: r270167
Diffstat (limited to 'gcc/sched-deps.c')
-rw-r--r-- | gcc/sched-deps.c | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/gcc/sched-deps.c b/gcc/sched-deps.c index eda0c66..28b9d38 100644 --- a/gcc/sched-deps.c +++ b/gcc/sched-deps.c @@ -2857,14 +2857,16 @@ sched_macro_fuse_insns (rtx_insn *insn) { unsigned int condreg1, condreg2; rtx cc_reg_1; - targetm.fixed_condition_code_regs (&condreg1, &condreg2); - cc_reg_1 = gen_rtx_REG (CCmode, condreg1); - if (reg_referenced_p (cc_reg_1, PATTERN (insn)) - && modified_in_p (cc_reg_1, prev)) + if (targetm.fixed_condition_code_regs (&condreg1, &condreg2)) { - if (targetm.sched.macro_fusion_pair_p (prev, insn)) - SCHED_GROUP_P (insn) = 1; - return; + cc_reg_1 = gen_rtx_REG (CCmode, condreg1); + if (reg_referenced_p (cc_reg_1, PATTERN (insn)) + && modified_in_p (cc_reg_1, prev)) + { + if (targetm.sched.macro_fusion_pair_p (prev, insn)) + SCHED_GROUP_P (insn) = 1; + return; + } } } |