aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorNick Clifton <nickc@gcc.gnu.org>2003-03-13 16:55:35 +0000
committerNick Clifton <nickc@gcc.gnu.org>2003-03-13 16:55:35 +0000
commit13eedc5ac6054599eac09c4557fdfe18b8c31448 (patch)
treeadf49ae792fe7397ec9ce38ef67a6aff2f872e9b /gcc
parent1cff896449f54942122f2341b35949736e825221 (diff)
downloadgcc-13eedc5ac6054599eac09c4557fdfe18b8c31448.zip
gcc-13eedc5ac6054599eac09c4557fdfe18b8c31448.tar.gz
gcc-13eedc5ac6054599eac09c4557fdfe18b8c31448.tar.bz2
output_return_instruction: Simplyify test for avoiding type 2 LDMs.
From-SVN: r64311
Diffstat (limited to 'gcc')
-rw-r--r--gcc/config/arm/arm.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c
index 79088e3..216e5a2 100644
--- a/gcc/config/arm/arm.c
+++ b/gcc/config/arm/arm.c
@@ -8237,11 +8237,7 @@ output_return_instruction (operand, really_return, reverse)
character off in this case however, since the actual return
instruction will be a MOVS which will restore the CPSR. */
if ((TARGET_APCS_32 && IS_INTERRUPT (func_type))
- || (really_return
- && ! frame_pointer_needed
- && ((live_regs_mask & (1 << SP_REGNUM)) == 0)
- && ((live_regs_mask & (1 << PC_REGNUM)) == 0))
- )
+ || (! TARGET_APCS_32 && really_return))
strcat (p, "^");
}
else