https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118505
--- Comment #18 from Dhruv Chawla <dhruvc at nvidia dot com> --- (In reply to Andrew Pinski from comment #16) > So if we add: > if ((rand() & 1)) > arr[i] *= -1; > > For the initialization loop. > > And increase the 2D size from 256 to 1000 (this part is important). > The difference between path splitting vs non path splitting is: > 0.646 (ifcvt) vs 0.676 (split path) > > Which means then ifcvt is faster. > > So it is just a bad benchmark. > I will submit the changes I found for the trapping case later today though. Yup, seeing the same behaviour. Thanks for looking at this!