From 6fe471c8ca8eddcfa7ed64b290e24758bbca669e Mon Sep 17 00:00:00 2001 From: Richard Earnshaw Date: Sat, 5 Mar 2011 14:01:07 +0000 Subject: [PATCH] re PR target/47719 (ICE compiling libavcodec/adxdec.c (FFmpeg) for ARM) PR target/47719 * arm.md (movhi_insn_arch4): Accept any immediate constant. From-SVN: r170698 --- gcc/ChangeLog | 5 +++++ 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 + + PR target/47719 + * arm.md (movhi_insn_arch4): Accept any immediate constant. + 2011-03-05 Jakub Jelinek 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 -- 2.30.2