Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/gcc.dg/combine-clobber.c @ 145:1830386684a0
gcc-9.2.0
author | anatofuz |
---|---|
date | Thu, 13 Feb 2020 11:34:05 +0900 |
parents | 04ced10e8804 |
children |
line wrap: on
line source
/* { 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" } } */