| ; 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 |