[LLVMdev] Question regarding basic-block placement optimization
Jakob Stoklund Olesen
stoklund at 2pi.dk
Thu Oct 20 10:53:34 PDT 2011
On Oct 20, 2011, at 9:56 AM, Chandler Carruth wrote:
> A new patch is attached that is *much* less of a rough draft. Sorry for any confusion due to the early state of the patch.
Thanks, Chandler. This is great stuff.
> Still, I never intended this to be on-by-default at first. This is a starting point, that I hope can be improved into something that is on-by-default eventually, but I'll be the first to say it's almost certainly not ready for that just yet.
I would like to see this go in ASAP under a flag. I prefer to see development as commits rather than a series of updated patches.
Could you rename it to MachineBlockPlacement.cpp first, though? That makes it clear it's a CodeGen pass, and the BlockPlacement2 name is icky.
> I'm more hopeful that we can delete the existing block placement pass, and direct anyone interested in profile file guided stuff to write a simple pass to load profiles into metadata. I suspect this pass is already superior to that one.
I also see it as a replacement for CodePlacementOpt.cpp, so I think your flag should run your pass instead of CodePlacementOpt rather than before or after it.
You should simply clone the loop alignment stuff, it's pretty trivial.
More information about the llvm-dev