[LLVMdev] Splitting floating point intervals.

Lang Hames lhames at gmail.com
Wed Jul 14 22:04:47 PDT 2010


Hi all,

A question for the register allocation people:

I'm currently trying to split intervals over loop boundaries. I have a
situation where a floating point value is split over a loop boundary, and
the register allocator choses to spill the value outside the loop. That
leaves me with a floating point load in the loop preheader, which is
crashing LLC with

X86FloatingPoint.cpp:305:
bool<unnamed>::FPS::processBasicBlock(llvm::MachineFunction&,
llvm::MachineBasicBlock&): Assertion `isStackEmpty() && "Stack not empty at
end of basic block?"'

What's going on here? Where do floating point values which are live over BB
boundaries live, if not on the FP stack?

Cheers,
Lang.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20100715/a35079c7/attachment.html>


More information about the llvm-dev mailing list