[llvm-commits] [llvm] r122627 - /llvm/trunk/lib/CodeGen/StrongPHIElimination.cpp

Jakob Stoklund Olesen stoklund at 2pi.dk
Wed Dec 29 12:16:21 PST 2010


On Dec 29, 2010, at 3:00 AM, Cameron Zwarich wrote:

> Author: zwarich
> Date: Wed Dec 29 05:00:09 2010
> New Revision: 122627
> 
> URL: http://llvm.org/viewvc/llvm-project?rev=122627&view=rev
> Log:
> Instead of processing every instruction when splitting interferences, only
> process those instructions that define phi sources. This is a 47% speedup of
> StrongPHIElimination compile time on 403.gcc.

Nice!

How does strong phi elimination affect the runtime of coalescing?

> +        for (MachineRegisterInfo::def_iterator DI = MRI->def_begin(SrcReg),
> +             DE = MRI->def_end(); DI != DE; ++DI) {
> +          PHISrcDefs[DI->getParent()].push_back(&*DI);

Do these registers have multiple definitions, or could you use MRI->getVRegDef()?

/jakob

-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 1929 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20101229/ea654cd6/attachment.bin>


More information about the llvm-commits mailing list