mirror of
https://github.com/gcc-mirror/gcc.git
synced 2024-11-21 13:40:47 +00:00
Revert "testsuite/gcc.target/cris/pr93372-2.c: Handle xpass from combine improvement"
This reverts commit 4c8b3600c4
.
This commit is contained in:
parent
b8b148bc22
commit
39f81924d8
@ -1,20 +1,19 @@
|
||||
/* Check that eliminable compare-instructions are eliminated. */
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2" } */
|
||||
/* { dg-final { scan-assembler-not "\tcmp|\ttest" } } */
|
||||
/* { dg-final { scan-assembler-not "\tnot" } } */
|
||||
/* { dg-final { scan-assembler-not "\tlsr" } } */
|
||||
/* We should get just one move, storing the result into *d. */
|
||||
/* { dg-final { scan-assembler-times "\tmove" 1 } } */
|
||||
/* { dg-final { scan-assembler-not "\tcmp|\ttest" { xfail *-*-* } } } */
|
||||
/* { dg-final { scan-assembler-not "\tnot" { xfail cc0 } } } */
|
||||
/* { dg-final { scan-assembler-not "\tlsr" { xfail cc0 } } } */
|
||||
|
||||
int f(int a, int b, int *d)
|
||||
{
|
||||
int c = a - b;
|
||||
|
||||
/* We used to get a cmp.d with the original operands here. */
|
||||
/* Whoops! We get a cmp.d with the original operands here. */
|
||||
*d = (c == 0);
|
||||
|
||||
/* We used to get a suboptimal sequence, but now we get the optimal "sge"
|
||||
(a.k.a "spl") re-using flags from the subtraction. */
|
||||
/* Whoops! While we don't get a test.d for the result here for cc0,
|
||||
we get a sequence of insns: a move, a "not" and a shift of the
|
||||
subtraction-result, where a simple "spl" would have done. */
|
||||
return c >= 0;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user