Message ID | CAD57uCf9ax1VUzJqFwqw_0mcFytwwzEg7Dj9AMbadX3abb8g+A@mail.gmail.com |
---|---|
State | New |
Headers | show |
Hi Kyrill, On 29 April 2015 at 12:06, Kyrill Tkachov <kyrylo.tkachov@arm.com> wrote: > Hi Yvan, > > On 29/04/15 09:57, Yvan Roux wrote: >> >> Hi, >> >> here is the patch for PR65924, only tested on the original testcase so >> far. > > > Can you please double check that the problem doesn't appear > in the other patterns you touched with your cleanup patch? > i.e. that you don't do match_operand on an out-of-bounds operand number? Sure, I just re-check all the patterns and there is no other issue. Cheers, Yvan > Thanks, > Kyrill > > >> >> Thanks >> Yvan >> >> gcc/ >> 2015-04-29 Yvan Roux <yvan.roux@linaro.org> >> >> PR target/65924 >> * config/arm/thumb2.md (*thumb2_addsi3_compare0_scratch): Fix operand >> number in type attribute expression. >> >> gcc/testsuite/ >> 2015-04-29 Yvan Roux <yvan.roux@linaro.org> >> >> PR target/65924 >> gcc.target/arm/pr65924.c: New test. > >
diff --git a/gcc/config/arm/thumb2.md b/gcc/config/arm/thumb2.md index 4f9faac..2c91542 100644 --- a/gcc/config/arm/thumb2.md +++ b/gcc/config/arm/thumb2.md @@ -1305,7 +1305,7 @@ " [(set_attr "conds" "set") (set_attr "length" "2,4") - (set (attr "type") (if_then_else (match_operand 2 "const_int_operand" "") + (set (attr "type") (if_then_else (match_operand 1 "const_int_operand" "") (const_string "alus_imm") (const_string "alus_sreg")))] ) diff --git a/gcc/testsuite/gcc.target/arm/pr65924.c b/gcc/testsuite/gcc.target/arm/pr65924.c new file mode 100644 index 0000000..746749f --- /dev/null +++ b/gcc/testsuite/gcc.target/arm/pr65924.c @@ -0,0 +1,8 @@ +/* { dg-do compile } */ +/* { dg-options "-O2 -mthumb" } */ + +int a, b, c; +int fn1() { + if (b + a < 0) + c = 0; +}