[LLVMdev] Out of range address
Chris Lattner
sabre at nondot.org
Tue Oct 3 13:42:13 PDT 2006
On Tue, 3 Oct 2006, Fernando Magno Quintao Pereira wrote:
> I am having some problems when compiling huge programs (like gcc).
> I have a machine pass to destroy critical edges, and I have to add
> new basic blocks, but sometimes the program is too big, and the new
> basic block gets out of addressing range. What is the proper way to
> address this problem? I am producing code for the PowerPC, and I had
> to implement the insert go-to method. I am adding:
> BuildMI(MBB, MBB.end(), PPC::B, 1).addMBB(&TMBB);
Make sure to run your pass before the PPC branch selection pass. The
branch selection pass is the one that makes sure that out-of-range
branches are handled. If you run after that, you have to do this
yourself.
-Chris
--
http://nondot.org/sabre/
http://llvm.org/
More information about the llvm-dev
mailing list