23 lines
		
	
	
		
			723 B
		
	
	
	
		
			LLVM
		
	
	
	
			
		
		
	
	
			23 lines
		
	
	
		
			723 B
		
	
	
	
		
			LLVM
		
	
	
	
; RUN: llc < %s -mtriple=x86_64-pc-linux | FileCheck %s
 | 
						|
 | 
						|
@bb = constant [1 x i8*] [i8* blockaddress(@main, %l2)]
 | 
						|
 | 
						|
define void @main() {
 | 
						|
entry:
 | 
						|
  br label %l1
 | 
						|
 | 
						|
l1:                                               ; preds = %l2, %entry
 | 
						|
  %a = zext i1 false to i32
 | 
						|
  br label %l2
 | 
						|
 | 
						|
l2:                                               ; preds = %l1
 | 
						|
  %b = zext i1 false to i32
 | 
						|
  br label %l1
 | 
						|
}
 | 
						|
 | 
						|
; It is correct for either l1 or l2 to be removed.
 | 
						|
; If l2 is removed, the message should be "Address of block that was removed by CodeGen"
 | 
						|
; If l1 is removed, it should be "Block address taken."
 | 
						|
; CHECK: .Ltmp0:                                 # {{Address of block that was removed by CodeGen|Block address taken}}
 | 
						|
; CHECK: .quad	.Ltmp0
 |