diff options
author | Richard Kenner <kenner@gcc.gnu.org> | 1995-07-10 20:03:06 -0400 |
---|---|---|
committer | Richard Kenner <kenner@gcc.gnu.org> | 1995-07-10 20:03:06 -0400 |
commit | f07064d38b93bdd383feb78f4c226d9023453ff2 (patch) | |
tree | f31ce895048fceb677d3fb37cce10849895a86cc /gcc | |
parent | 07516036197ed7b8eeabc11bac334d9a5212cb85 (diff) | |
download | gcc-f07064d38b93bdd383feb78f4c226d9023453ff2.zip gcc-f07064d38b93bdd383feb78f4c226d9023453ff2.tar.gz gcc-f07064d38b93bdd383feb78f4c226d9023453ff2.tar.bz2 |
(matcher for (shiftable_op (cond-exp) (reg))): If shiftable_op is
minus, then subtract from zero when cond fails.
From-SVN: r10115
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/config/arm/arm.md | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/config/arm/arm.md b/gcc/config/arm/arm.md index db8a357..2ccc61e 100644 --- a/gcc/config/arm/arm.md +++ b/gcc/config/arm/arm.md @@ -4114,6 +4114,8 @@ output_asm_insn (\"cmp\\t%2, %3\", operands); if (GET_CODE (operands[5]) == AND) output_asm_insn (\"mov%D4\\t%0, #0\", operands); + else if (GET_CODE (operands[5]) == MINUS) + output_asm_insn (\"rsb%D4\\t%0, %1, #0\", operands); else if (which_alternative != 0) output_asm_insn (\"mov%D4\\t%0, %1\", operands); return \"%i5%d4\\t%0, %1, #1\"; |