search for: insertrootinitializers

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