Displaying 3 results from an estimated 3 matches for "beginroot".
2011 Feb 17
0
[LLVMdev] llvm.gcroot suggestion
...o llvm.gcroot() intrinsics by
temporarily storing the the root into an alloca and then reloading it as
needed. (Actually you would probably want something richer than the current
llvm.gcroot that allows an explicit begin and end so that information about
liveness can be preserved. How about llvm.gc.beginroot() intrinsic to
indicate that a given alloca should be considered a root starting at that
point in the CFG, and llvm.gc.endroot() to indicate that the specified root
no longer needs to be considered a root. This is much better than the
current method of assigning NULL to a root, as it accommodates n...
2011 Feb 17
4
[LLVMdev] llvm.gcroot suggestion
I think I'm one of the few people actually using LLVM's support for garbage
collection, and so far I've found it very difficult to generate code that
uses llvm.gcroot() correctly.
In the current scheme, it is the frontend's responsibility to insure that
any intermediate SSA values containing references to garbage collectible
objects are copied to stack variables so that the GC
2011 Feb 18
3
[LLVMdev] llvm.gcroot suggestion
...insics by
> temporarily storing the the root into an alloca and then reloading it as
> needed. (Actually you would probably want something richer than the current
> llvm.gcroot that allows an explicit begin and end so that information about
> liveness can be preserved. How about llvm.gc.beginroot() intrinsic to
> indicate that a given alloca should be considered a root starting at that
> point in the CFG, and llvm.gc.endroot() to indicate that the specified root
> no longer needs to be considered a root. This is much better than the
> current method of assigning NULL to a root,...