mirror of
				https://github.com/c64scene-ar/llvm-6502.git
				synced 2025-11-04 05:17:07 +00:00 
			
		
		
		
	Change llvm.gcroot to not init the root to null at runtime, this prevents
using it for live-in values etc. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41879 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
		@@ -284,10 +284,7 @@ bool LowerGC::runOnFunction(Function &F) {
 | 
			
		||||
    new StoreInst(Null, RootPtrPtr, IP);
 | 
			
		||||
 | 
			
		||||
    // Each occurrance of the llvm.gcroot intrinsic now turns into an
 | 
			
		||||
    // initialization of the slot with the address and a zeroing out of the
 | 
			
		||||
    // address specified.
 | 
			
		||||
    new StoreInst(Constant::getNullValue(PtrLocTy->getElementType()),
 | 
			
		||||
                  GCRoots[i]->getOperand(1), GCRoots[i]);
 | 
			
		||||
    // initialization of the slot with the address.
 | 
			
		||||
    new StoreInst(GCRoots[i]->getOperand(1), RootPtrPtr, GCRoots[i]);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user