diff options
author | rearnsha <rearnsha@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-03-05 14:01:07 +0000 |
---|---|---|
committer | rearnsha <rearnsha@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-03-05 14:01:07 +0000 |
commit | 85e02ccba807a9724fec26e163adc9559591d247 (patch) | |
tree | a3365bfba23eda6a9f1914148848d1c963f45065 | |
parent | 8fa92398162bb69909b935f6694d8d4a8574917f (diff) | |
download | gcc-85e02ccba807a9724fec26e163adc9559591d247.tar.gz |
PR target/47719
* arm.md (movhi_insn_arch4): Accept any immediate constant.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@170698 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/arm/arm.md | 7 |
2 files changed, 8 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index c9c1540b1d2..7a723c8f8bf 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2011-03-05 Richard Earnshaw <rearnsha@arm.com> + + PR target/47719 + * arm.md (movhi_insn_arch4): Accept any immediate constant. + 2011-03-05 Jakub Jelinek <jakub@redhat.com> PR tree-optimization/47967 diff --git a/gcc/config/arm/arm.md b/gcc/config/arm/arm.md index 73a879e9384..6f31e6211b4 100644 --- a/gcc/config/arm/arm.md +++ b/gcc/config/arm/arm.md @@ -5790,12 +5790,11 @@ ;; Pattern to recognize insn generated default case above (define_insn "*movhi_insn_arch4" [(set (match_operand:HI 0 "nonimmediate_operand" "=r,r,m,r") - (match_operand:HI 1 "general_operand" "rI,K,r,m"))] + (match_operand:HI 1 "general_operand" "rI,K,r,mi"))] "TARGET_ARM && arm_arch4 - && (GET_CODE (operands[1]) != CONST_INT - || const_ok_for_arm (INTVAL (operands[1])) - || const_ok_for_arm (~INTVAL (operands[1])))" + && (register_operand (operands[0], HImode) + || register_operand (operands[1], HImode))" "@ mov%?\\t%0, %1\\t%@ movhi mvn%?\\t%0, #%B1\\t%@ movhi |