Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/gcc.dg/tree-ssa/ifc-pr56541.c @ 152:2b5abeee2509
update gcc11
author | anatofuz |
---|---|
date | Mon, 25 May 2020 07:50:57 +0900 |
parents | 84e7813d76e9 |
children |
line wrap: on
line source
/* { dg-do compile } */ /* { dg-options "-O3 -fdump-tree-ifcvt-stats-blocks-details" } */ float a,b,c,d; float z[1024]; int ok[1024]; const float rBig = 150.; void foo() { int i; for (i=0; i!=1024; ++i) { float rR = a*z[i]; float rL = b*z[i]; float rMin = (rR<rL) ? rR : rL; float rMax = (rR<rL) ? rL : rR; rMin = (rMax>0) ? rMin : rBig; rMin = (rMin>0) ? rMin : rMax; ok[i] = rMin-c<rMax+d; } } /* { dg-final { scan-tree-dump-times "Applying if-conversion" 1 "ifcvt" } } */ /* We insert into code if (LOOP_VECTORIZED (...)) which is folded by vectorizer. Both outgoing edges must have probability 100% so the resulting profile match after folding. */ /* { dg-final { scan-tree-dump-times "Invalid sum of outgoing probabilities 200.0" 1 "ifcvt" } } */ /* { dg-final { scan-tree-dump-times "Invalid sum of incoming counts" 1 "ifcvt" } } */