Displaying 6 results from an estimated 6 matches for "insertrootinitializers".
2011 Oct 08
0
[LLVMdev] Initializing GC roots
...cribe should be possible. In your GCStrategy subclass constructor, make the following change:
class MyGCStrategy : public GCStrategy {
MyGCStrategy() {
- InitRoots = true;
+ CustomRoots = true;
}
+
+ bool performCustomLowering(Function &F) {
+ // You can use LowerIntrinsics::InsertRootInitializers as a template.
+ }
};
LowerIntrinsics::InsertRootInitializers is only 26 lines of code. You can find it here:
http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/GCStrategy.cpp?annotate=123170#l174
More invasively, you could consider adding a hook to GCStrategy which replaces the in...
2011 Oct 06
2
[LLVMdev] Initializing GC roots
Hello all,
I set: InitRoots = true; in my gc plugin as i want the roots to be
initialized to the "null" value.
Is there a way to define which value should be the initial one? For
example, i would like to initialize my roots to -5 (tagged, null value
for the GC in my runtime system) instead of 0.
Ofcourse, i could do it in the frontend (storing -5 to all GC roots),
but i was wondering
2008 Nov 07
2
[LLVMdev] non-pointer gcroot
Hi
I'm getting an assert in LowerIntrinsics::InsertRootInitializers
because I'm gcroot'ing an alloca to a non-pointer.
I was hoping to modify InsertRootInitializers to memset the structure
in the case that it's not a pointer, but I'm not sure how to. Can
anyone suggest what should go at "todo; something here"?
...
for (AllocaInst **I...
2008 Nov 08
0
[LLVMdev] non-pointer gcroot
On Nov 7, 2008, at 15:29, Scott Graham wrote:
> I'm getting an assert in LowerIntrinsics::InsertRootInitializers
> because I'm gcroot'ing an alloca to a non-pointer.
>
> I was hoping to modify InsertRootInitializers to memset the
> structure in the case that it's not a pointer, but I'm not sure how
> to. Can anyone suggest what should go at "todo; something here"...
2017 Nov 01
2
llvm.gcroot trouble with non-i8* allocas
...#2 0x75805422 (C:\WINDOWS\System32\ucrtbase.dll+0xa5422)
#3 0x75806dc5 (C:\WINDOWS\System32\ucrtbase.dll+0xa6dc5)
#4 0x75806ce8 (C:\WINDOWS\System32\ucrtbase.dll+0xa6ce8)
#5 0x7580618b (C:\WINDOWS\System32\ucrtbase.dll+0xa618b)
#6 0x75806e26 (C:\WINDOWS\System32\ucrtbase.dll+0xa6e26)
#7 0x013786a6 InsertRootInitializers
c:\users\nikod\src\llvm\lib\codegen\gcrootlowering.cpp:172:0
#8 0x01378d97 `anonymous
namespace'::LowerIntrinsics::PerformDefaultLowering
c:\users\nikod\src\llvm\lib\codegen\gcrootlowering.cpp:249:0
#9 0x01379986 `anonymous namespace'::LowerIntrinsics::runOnFunction
c:\users\nikod\src\llvm\...
2017 Nov 01
0
llvm.gcroot trouble with non-i8* allocas
...S\System32\ucrtbase.dll+0xa5422)
> #3 0x75806dc5 (C:\WINDOWS\System32\ucrtbase.dll+0xa6dc5)
> #4 0x75806ce8 (C:\WINDOWS\System32\ucrtbase.dll+0xa6ce8)
> #5 0x7580618b (C:\WINDOWS\System32\ucrtbase.dll+0xa618b)
> #6 0x75806e26 (C:\WINDOWS\System32\ucrtbase.dll+0xa6e26)
> #7 0x013786a6 InsertRootInitializers c:\users\nikod\src\llvm\lib\
> codegen\gcrootlowering.cpp:172:0
> #8 0x01378d97 `anonymous namespace'::LowerIntrinsics::PerformDefaultLowering
> c:\users\nikod\src\llvm\lib\codegen\gcrootlowering.cpp:249:0
> #9 0x01379986 `anonymous namespace'::LowerIntrinsics::runOnFunction
>...