This patch removes dead patterns for incscc and decscc from thumb2.md.
It's a cleanup after this patch:
http://gcc.gnu.org/ml/gcc-patches/2013-01/msg00955.html
which removed incscc and decscc expanders and the corresponding patterns
from arm.md, but not from thumb2.md.
No regression on qemu for arm-none-eabi cortex-a15 thumb.
Ok for trunk?
Thanks,
Greta
gcc/
2013-04-05 Greta Yorsh <greta.yo...@arm.com>
* config/arm/thumb2.md (thumb2_incscc, thumb2_decscc): Delete.
diff --git a/gcc/config/arm/thumb2.md b/gcc/config/arm/thumb2.md
index 6aa76f6..968cc0c 100644
--- a/gcc/config/arm/thumb2.md
+++ b/gcc/config/arm/thumb2.md
@@ -24,32 +24,6 @@
;; changes made in armv5t as "thumb2". These are considered part
;; the 16-bit Thumb-1 instruction set.
-(define_insn "*thumb2_incscc"
- [(set (match_operand:SI 0 "s_register_operand" "=r,r")
- (plus:SI (match_operator:SI 2 "arm_comparison_operator"
- [(match_operand:CC 3 "cc_register" "") (const_int 0)])
- (match_operand:SI 1 "s_register_operand" "0,?r")))]
- "TARGET_THUMB2"
- "@
- it\\t%d2\;add%d2\\t%0, %1, #1
- ite\\t%D2\;mov%D2\\t%0, %1\;add%d2\\t%0, %1, #1"
- [(set_attr "conds" "use")
- (set_attr "length" "6,10")]
-)
-
-(define_insn "*thumb2_decscc"
- [(set (match_operand:SI 0 "s_register_operand" "=r,r")
- (minus:SI (match_operand:SI 1 "s_register_operand" "0,?r")
- (match_operator:SI 2 "arm_comparison_operator"
- [(match_operand 3 "cc_register" "") (const_int 0)])))]
- "TARGET_THUMB2"
- "@
- it\\t%d2\;sub%d2\\t%0, %1, #1
- ite\\t%D2\;mov%D2\\t%0, %1\;sub%d2\\t%0, %1, #1"
- [(set_attr "conds" "use")
- (set_attr "length" "6,10")]
-)
-
;; Thumb-2 only allows shift by constant on data processing instructions
(define_insn "*thumb_andsi_not_shiftsi_si"
[(set (match_operand:SI 0 "s_register_operand" "=r")