[NFC][RemoveDIs] Prefer iterators over inst-pointers in InstCombine
[llvm-project.git] / llvm / test / CodeGen / PowerPC / aix-ehinfo-sym.ll
blobdfbc871cbdb992a9eb0df90d6d658ec424b77a9d
1 ; RUN: llc -mtriple powerpc64-ibm-aix -verify-machineinstrs < %s | \
2 ; RUN:  FileCheck %s
4 ; RUN: llc -mtriple powerpc64-ibm-aix -fast-isel -verify-machineinstrs < %s | \
5 ; RUN:  FileCheck %s
7 ; Function Attrs: nounwind
8 declare i32 @func1() #0
10 declare i32 @__xlcxx_personality_v1(...)
12 ; Function Attrs: mustprogress noinline optnone
13 define linkonce_odr void @func2() #1 align 2 personality ptr @__xlcxx_personality_v1 {
14 entry:
15   %0 = alloca ptr, align 8
16   %1 = alloca i32, align 4
17   br label %2
19 2:                                                ; preds = %3, %entry
20   br i1 false, label %3, label %8
22 3:                                                ; preds = %2
23   %4 = invoke i32 @func1()
24           to label %2 unwind label %lpad
26 lpad:                                                ; preds = %3
27   %5 = landingpad { ptr, i32 }
28           cleanup
29   %6 = extractvalue { ptr, i32 } %5, 0
30   store ptr %6, ptr %0, align 8
31   %7 = extractvalue { ptr, i32 } %5, 1
32   store i32 %7, ptr %1, align 4
33   br label %eh.resume
35 8:                                               ; preds = 2%
36   ret void
38 eh.resume:                                               ; preds = %lpad
39   %9 = load ptr, ptr %0, align 8
40   %10 = load i32, ptr %1, align 4
41   %11 = insertvalue { ptr, i32 } undef, ptr %9, 0
42   %12 = insertvalue { ptr, i32 } %11, i32 %10, 1
43   resume { ptr, i32 } %12
46 attributes #0 = { nounwind }
47 attributes #1 = { mustprogress noinline optnone }
49 ; CHECK: __ehinfo.0:
50 ; CHECK: .tc __ehinfo.0[TC],__ehinfo.0