Add file I forgot to add before.
From-SVN: r215802
This commit is contained in:
parent
f65eb9e641
commit
5827c03c81
22
gcc/testsuite/gcc.dg/combine-clobber.c
Normal file
22
gcc/testsuite/gcc.dg/combine-clobber.c
Normal file
@ -0,0 +1,22 @@
|
||||
/* { dg-do compile { target i?86-*-* x86_64-*-* } } */
|
||||
/* { dg-options "-O2 -fdump-rtl-combine-all" } */
|
||||
|
||||
/* This testcase checks if combine tries to combine sequences where the last
|
||||
insn has a clobber of a reg, and a previous insn sets that reg.
|
||||
|
||||
In this case, we have three insns
|
||||
|
||||
(set flags (compare a b))
|
||||
(set tmp (eq flags 0))
|
||||
(parallel [(set dst (neg tmp))
|
||||
(clobber flags)])
|
||||
|
||||
Previously, combine would not try the three-insn combination because of
|
||||
the set and clobber of flags. Now it does. Test that. */
|
||||
|
||||
|
||||
int f(int a, int b) { return -(a == b); }
|
||||
|
||||
/* This regexp works for reg parameters as well as mem parameters. */
|
||||
/* { dg-final { scan-rtl-dump {neg:SI[^:]*eq:SI[^:]*:SI} "combine" } } */
|
||||
/* { dg-final { cleanup-rtl-dump "combine" } } */
|
Loading…
Reference in New Issue
Block a user