[RFC PATCH, i386]: Fuse compare and branch macro-ops for Core2

Paolo Bonzini bonzini@gnu.org
Sun Mar 16 17:14:00 GMT 2008


Uros Bizjak wrote:
> Hello!
> 
> This experimental patch is based on the Chapter 7.5, "Macro-op fusion" 
> of [1], where it is stated that when a bunch of condition is satisfied, 
> Core2 fuses compare and branch instruction into one macro-uop. This 
> functionality is limited to 32bit executables only.
> 
> Attached patch increases fusion opportunities by keeping unsigned 
> compares together with their follow-up branch instruction, while trying 
> to align combined sequence to keep branch insn from crossing 16-byte 
> boundary.

I think you should instead try converting the back-end to cbranch 
patterns (which you can split if worthwhile for scheduling).

Paolo



More information about the Gcc-patches mailing list