/* { dg-do compile } */ | |
/* { dg-options "-O -fgimple -fdump-tree-phiopt1" } */ | |
int __GIMPLE (ssa,startwith("phiopt")) | |
foo (int a, int b, int flag) | |
{ | |
int res; | |
__BB(2): | |
if (flag_2(D) != 0) | |
goto __BB6; | |
else | |
goto __BB4; | |
__BB(4): | |
if (a_3(D) > b_4(D)) | |
goto __BB7; | |
else | |
goto __BB6; | |
__BB(6): | |
goto __BB7; | |
__BB(7): | |
res_1 = __PHI (__BB4: a_3(D), __BB6: b_4(D)); | |
return res_1; | |
} | |
/* We should be able to detect MAX despite the extra edge into | |
the middle BB. */ | |
/* { dg-final { scan-tree-dump "MAX" "phiopt1" } } */ |