> > I am not sure if AMD hardware has any limitations here. It fuses only > cmp/test
This is what Agner Fog says: A CMP or TEST instruction immediately followed by a conditional jump can be fused into a single macro-op. This applies to all versions of the CMP and TEST instructions and all conditional jumps except if the CMP or TEST has a rip-relative address or both a displacement and an immediate operand. So it is a bit more weird. Perhaps you can extend your predicate to look for IP relative addresses & displacements of CMP and TEST, too. Honza > as far as I know, but I do not think it matters what flags you use. > > The i386 specific part of the change seems resonable to me. > > Honza