blob: ea4150c22c2525da442a76e66235637108f07b14 [file] [log] [blame]
Evan Chengfc0b80d2009-03-13 22:59:14 +00001; RUN: llvm-as < %s | llc -mtriple=i386-pc-linux-gnu -stats |& grep phielim | grep {Number of EH try blocks skipped} | grep 4
2; PR3784
3
4 %struct.c38002a__arr___XUB = type { i32, i32 }
5 %struct.c38002a__arr_name = type { [0 x i32]*, %struct.c38002a__arr___XUB* }
6 %struct.c38002a__rec = type { i32, %struct.c38002a__arr_name }
7
8define void @_ada_c38002a() {
9entry:
10 %0 = invoke i8* @__gnat_malloc(i32 12)
11 to label %invcont unwind label %lpad ; <i8*> [#uses=0]
12
13invcont: ; preds = %entry
14 %1 = invoke i8* @__gnat_malloc(i32 20)
15 to label %invcont1 unwind label %lpad ; <i8*> [#uses=0]
16
17invcont1: ; preds = %invcont
18 %2 = invoke i32 @report__ident_int(i32 2)
19 to label %.noexc unwind label %lpad ; <i32> [#uses=0]
20
21.noexc: ; preds = %invcont1
22 %3 = invoke i32 @report__ident_int(i32 3)
23 to label %.noexc88 unwind label %lpad ; <i32> [#uses=0]
24
25.noexc88: ; preds = %.noexc
26 unreachable
27
28lpad: ; preds = %.noexc, %invcont1, %invcont, %entry
29 %r.0 = phi %struct.c38002a__rec* [ null, %entry ], [ null, %invcont ], [ null, %invcont1 ], [ null, %.noexc ] ; <%struct.c38002a__rec*> [#uses=1]
30 %4 = getelementptr %struct.c38002a__rec* %r.0, i32 0, i32 0 ; <i32*> [#uses=1]
31 %5 = load i32* %4, align 4 ; <i32> [#uses=0]
32 ret void
33}
34
35declare i32 @report__ident_int(i32)
36
37declare i8* @__gnat_malloc(i32)