On Wed, Dec 18, 2024 at 12:59:11AM -0300, Alexandre Oliva wrote: > * gcc.dg/field-merge-16.c: New.
Note the test FAILs on i686-linux or on x86_64-linux with -m32. The IL is identical before ifcombine, but -m64 to -m32 ifcombine dump shows -optimizing two comparisons to (_10 & 18446462598732873728) == 0 -optimizing two comparisons to (_10 & 18446462600880357376) == 0 -Merging blocks 2 and 3 -Merging blocks 2 and 4 +optimizing bits or bits test to 576460752303423488 & T != 0 +with temporary T = (unsigned long long) _6 | (unsigned long long) _2 +Merging blocks 4 and 5 and similarly for 2 other functions. Jakub