57 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			LLVM
		
	
	
	
			
		
		
	
	
			57 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			LLVM
		
	
	
	
; RUN: verify-uselistorder %s
 | 
						|
 | 
						|
; Test 1
 | 
						|
@g1 = global i8 0
 | 
						|
 | 
						|
declare void @llvm.donothing() nounwind readnone
 | 
						|
 | 
						|
define void @f.no_personality1() personality i8 0 {
 | 
						|
  invoke void @llvm.donothing() to label %normal unwind label %exception
 | 
						|
exception:
 | 
						|
  %cleanup = landingpad i8 cleanup
 | 
						|
  br label %normal
 | 
						|
normal:
 | 
						|
  ret void
 | 
						|
}
 | 
						|
 | 
						|
; Test 2
 | 
						|
@g2 = global i8 -1
 | 
						|
@g3 = global i8 -1
 | 
						|
 | 
						|
define void @f.no_personality2() personality i8 -1 {
 | 
						|
  invoke void @llvm.donothing() to label %normal unwind label %exception
 | 
						|
exception:
 | 
						|
  %cleanup = landingpad i8 cleanup
 | 
						|
  br label %normal
 | 
						|
normal:
 | 
						|
  ret void
 | 
						|
}
 | 
						|
 | 
						|
; Test 3
 | 
						|
declare void @f1() prefix i32 1
 | 
						|
 | 
						|
define void @test1() {
 | 
						|
  %t1 = alloca half  ; Implicit i32 1 used here.
 | 
						|
  %t2 = alloca float
 | 
						|
  ret void
 | 
						|
}
 | 
						|
 | 
						|
; Test 4
 | 
						|
declare void @f2() prefix i32 2
 | 
						|
 | 
						|
define void @test2(i32* %word) {
 | 
						|
  %cmpxchg.0 = cmpxchg i32* %word, i32 0, i32 2 monotonic monotonic
 | 
						|
  %cmpxchg.1 = cmpxchg i32* %word, i32 0, i32 2 acq_rel monotonic
 | 
						|
  ret void
 | 
						|
}
 | 
						|
 | 
						|
; Test 5
 | 
						|
@g4 = global i32 3
 | 
						|
@g5 = global i32 3
 | 
						|
declare void @test3() prefix i32 3
 | 
						|
 | 
						|
; Test 6
 | 
						|
@g6 = global i32 4
 | 
						|
@g7 = global i32 4
 | 
						|
declare void @c() prologue i32 4
 |