mirror of
				https://github.com/c64scene-ar/llvm-6502.git
				synced 2025-10-31 08:16:47 +00:00 
			
		
		
		
	may be called. If the entry block is empty, the insertion point iterator will be the "end()" value. Calling ->getParent() on it (among others) causes problems. Modify materializeFrameBaseRegister to take the machine basic block and insert the frame base register at the beginning of that block. (It's very similar to what the code does all ready. The only difference is that it will always insert at the beginning of the entry block instead of after a previous materialization of the frame base register. I doubt that that matters here.) <rdar://problem/8782198> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122104 91177308-0d34-0410-b5e6-96231b3b80d8
		
			
				
	
	
		
			16 lines
		
	
	
		
			453 B
		
	
	
	
		
			LLVM
		
	
	
	
	
	
			
		
		
	
	
			16 lines
		
	
	
		
			453 B
		
	
	
	
		
			LLVM
		
	
	
	
	
	
| ; RUN: llc < %s -mtriple=armv6-apple-darwin10
 | |
| ; <rdar://problem/8782198>
 | |
| target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:32:64-v128:32:128-a0:0:64-n32"
 | |
| target triple = "armv6-apple-darwin10"
 | |
| 
 | |
| define void @func() nounwind optsize {
 | |
| entry:
 | |
|   %buf = alloca [8096 x i8], align 1
 | |
|   br label %bb
 | |
| 
 | |
| bb:
 | |
|   %p.2 = getelementptr [8096 x i8]* %buf, i32 0, i32 0
 | |
|   store i8 undef, i8* %p.2, align 1
 | |
|   ret void
 | |
| }
 |