Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/gcc.dg/combine-clobber.c @ 138:fc828634a951
merge
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Thu, 08 Nov 2018 14:17:14 +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" } } */