diff options
| -rw-r--r-- | gcc/ChangeLog | 7 | ||||
| -rw-r--r-- | gcc/config/arm/thumb2.md | 2 | ||||
| -rw-r--r-- | gcc/testsuite/ChangeLog | 4 | ||||
| -rw-r--r-- | gcc/testsuite/gcc.target/arm/pr55642.c | 15 |
4 files changed, 28 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 4766eb2..c815e9f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2012-12-11 Kyrylo Tkachov <kyrylo.tkachov@arm.com> + + PR target/55642 + * config/arm/thumb2.md (*thumb2_abssi2): + Set ce_count attribute to 2. + (*thumb2_neg_abssi2): Likewise. + 2012-12-11 Jakub Jelinek <jakub@redhat.com> * varasm.c (get_variable_section): Don't return lcomm_section diff --git a/gcc/config/arm/thumb2.md b/gcc/config/arm/thumb2.md index de573ca0..f22666c 100644 --- a/gcc/config/arm/thumb2.md +++ b/gcc/config/arm/thumb2.md @@ -142,6 +142,7 @@ [(set_attr "conds" "clob,*") (set_attr "shift" "1") (set_attr "predicable" "no, yes") + (set_attr "ce_count" "2") (set_attr "length" "10,8")] ) @@ -156,6 +157,7 @@ [(set_attr "conds" "clob,*") (set_attr "shift" "1") (set_attr "predicable" "no, yes") + (set_attr "ce_count" "2") (set_attr "length" "10,8")] ) diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index fff359b..c4aace4 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2012-12-11 Kyrylo Tkachov <kyrylo.tkachov@arm.com> + PR target/55642 + * gcc.target/arm/pr55642.c: New testcase. + 2012-12-11 Jakub Jelinek <jakub@redhat.com> PR middle-end/43631 diff --git a/gcc/testsuite/gcc.target/arm/pr55642.c b/gcc/testsuite/gcc.target/arm/pr55642.c new file mode 100644 index 0000000..10f2daa --- /dev/null +++ b/gcc/testsuite/gcc.target/arm/pr55642.c @@ -0,0 +1,15 @@ +/* { dg-options "-mthumb -O2" } */ +/* { dg-do compile } */ +/* { dg-require-effective-target arm_thumb2_ok } */ + +int +foo (int v) +{ + register int i asm ("r0"); + register int j asm ("r1"); + if (v > 1) + i = abs (j); + + return i; +} + |
