From: Yvan Roux Date: Wed, 29 Apr 2015 11:31:40 +0000 (+0000) Subject: re PR target/65924 (ICE const_int_operand failed on arm-none-eabi) X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=b43482db17850bfd88142a18e1f6a0fb981211c3;p=gcc.git re PR target/65924 (ICE const_int_operand failed on arm-none-eabi) gcc/ 2015-04-29 Yvan Roux 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 PR target/65924 * gcc.target/arm/pr65924.c: New test. From-SVN: r222572 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index baa558ba317..870fd1b1e4c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2015-04-29 Yvan Roux + + PR target/65924 + * config/arm/thumb2.md (*thumb2_addsi3_compare0_scratch): Fix operand + number in type attribute expression. + 2015-04-29 Richard Sandiford * loop-iv.c (canon_condition): Generalize to all types of integer diff --git a/gcc/config/arm/thumb2.md b/gcc/config/arm/thumb2.md index 4f9faac56a0..2c91542efa3 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/ChangeLog b/gcc/testsuite/ChangeLog index ffc4c2dce17..25e80343ca8 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2015-04-29 Yvan Roux + + PR target/65924 + * gcc.target/arm/pr65924.c: New test. + 2015-04-29 Thomas Schwinge * g++.dg/gomp/tpl-target-update.C: New file. diff --git a/gcc/testsuite/gcc.target/arm/pr65924.c b/gcc/testsuite/gcc.target/arm/pr65924.c new file mode 100644 index 00000000000..746749f2d67 --- /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; +}