[llvm-commits] REQUIRES_FP in Makefile.rules
Nicolas Geoffray
nicolas.geoffray at lip6.fr
Wed Aug 19 15:00:09 PDT 2009
Eric Christopher wrote:
>
> Yes, but I wouldn't imagine anything could be executing in a way that
> would require you walking up llvm code. Can you give me a quick example?
>
Sure! When vmkit wants to do a garbage collection, all threads must
execute a "safe GC point", where the thread joins the collection
cooperatively. If the thread is currently materializing a function
(hence executing vmkit code), and a GC is required, all objects on the
stack must be scanned. To walk the stack, I must know each function on
the call stack. You can image a stack like this:
vmkit method (start_thread)
Java method
Java method
Java method
LLVM callback for lazy compilation
LLVM JIT emitter
ModuleProvider::materializeFunction
vmkit method
vmkit method (<--- safe point entered here)
I hope the example is clear.
Nicolas
More information about the llvm-commits
mailing list