[llvm-commits] REQUIRES_FP in Makefile.rules

Eric Christopher echristo at apple.com
Wed Aug 19 15:05:22 PDT 2009


On Aug 19, 2009, at 3:00 PM, Nicolas Geoffray wrote:

> 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.

It is, perhaps that's a bad point to have as a safe point?

At any rate, I'm not against the option in general so feel free to  
commit :)

thanks.

-eric



More information about the llvm-commits mailing list