mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-08-21 18:29:46 +00:00
code in preparation for code generation. The main thing it does is handle the case when eh.exception calls (and, in a future patch, eh.selector calls) are far away from landing pads. Right now in practice you only find eh.exception calls close to landing pads: either in a landing pad (the common case) or in a landing pad successor, due to loop passes shifting them about. However future exception handling improvements will result in calls far from landing pads: (1) Inlining of rewinds. Consider the following case: In function @f: ... invoke @g to label %normal unwind label %unwinds ... unwinds: %ex = call i8* @llvm.eh.exception() ... In function @g: ... invoke @something to label %continue unwind label %handler ... handler: %ex = call i8* @llvm.eh.exception() ... perform cleanups ... "rethrow exception" Now inline @g into @f. Currently this is turned into: In function @f: ... invoke @something to label %continue unwind label %handler ... handler: %ex = call i8* @llvm.eh.exception() ... perform cleanups ... invoke "rethrow exception" to label %normal unwind label %unwinds unwinds: %ex = call i8* @llvm.eh.exception() ... However we would like to simplify invoke of "rethrow exception" into a branch to the %unwinds label. Then %unwinds is no longer a landing pad, and the eh.exception call there is then far away from any landing pads. (2) Using the unwind instruction for cleanups. It would be nice to have codegen handle the following case: invoke @something to label %continue unwind label %run_cleanups ... handler: ... perform cleanups ... unwind This requires turning "unwind" into a library call, which necessarily takes a pointer to the exception as an argument (this patch also does this unwind lowering). But that means you are using eh.exception again far from a landing pad. (3) Bugpoint simplifications. When bugpoint is simplifying exception handling code it often generates eh.exception calls far from a landing pad, which then causes codegen to assert. Bugpoint then latches on to this assertion and loses sight of the original problem. Note that it is currently rare for this pass to actually do anything. And in fact it normally shouldn't do anything at all given the code coming out of llvm-gcc! But it does fire a few times in the testsuite. As far as I can see this is almost always due to the LoopStrengthReduce codegen pass introducing pointless loop preheader blocks which are landing pads and only contain a branch to another block. This other block contains an eh.exception call. So probably by tweaking LoopStrengthReduce a bit this can be avoided. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72276 91177308-0d34-0410-b5e6-96231b3b80d8
2867 lines
156 KiB
LLVM
2867 lines
156 KiB
LLVM
; RUN: llvm-as < %s | llc -march=x86 -enable-eh -asm-verbose -o - | \
|
|
; RUN: grep -A 3 {Llabel138.*Region start} | grep {3.*Action}
|
|
; PR1422
|
|
; PR1508
|
|
|
|
target triple = "i686-pc-linux-gnu"
|
|
%struct.exception = type { i8, i8, i32, i8*, i8*, i32, i8* }
|
|
%struct.string___XUB = type { i32, i32 }
|
|
%struct.string___XUP = type { i8*, %struct.string___XUB* }
|
|
%struct.system__secondary_stack__mark_id = type { i8*, i32 }
|
|
@weekS.154 = internal constant [28 x i8] c"SSUNSMONSTUESWEDSTHUSFRISSAT" ; <[28 x i8]*> [#uses=1]
|
|
@weekN.179 = internal constant [8 x i8] c"\01\05\09\0D\11\15\19\1D" ; <[8 x i8]*> [#uses=1]
|
|
@C.28.862 = internal constant %struct.string___XUB { i32 1, i32 85 } ; <%struct.string___XUB*> [#uses=1]
|
|
@C.29.865 = internal constant %struct.string___XUB { i32 1, i32 7 } ; <%struct.string___XUB*> [#uses=1]
|
|
@C.30.904 = internal constant %struct.string___XUB { i32 1, i32 30 } ; <%struct.string___XUB*> [#uses=1]
|
|
@C.32.910 = internal constant %struct.string___XUB { i32 1, i32 28 } ; <%struct.string___XUB*> [#uses=1]
|
|
@C.35.915 = internal constant %struct.string___XUB { i32 1, i32 24 } ; <%struct.string___XUB*> [#uses=1]
|
|
@C.36.923 = internal constant %struct.string___XUB { i32 1, i32 29 } ; <%struct.string___XUB*> [#uses=1]
|
|
@C.98.1466 = internal constant %struct.string___XUB { i32 1, i32 31 } ; <%struct.string___XUB*> [#uses=1]
|
|
@C.101.1473 = internal constant %struct.string___XUB { i32 1, i32 46 } ; <%struct.string___XUB*> [#uses=1]
|
|
@C.104.1478 = internal constant %struct.string___XUB { i32 1, i32 25 } ; <%struct.string___XUB*> [#uses=1]
|
|
@C.124.1606 = internal constant %struct.string___XUB { i32 1, i32 18 } ; <%struct.string___XUB*> [#uses=1]
|
|
@C.143.1720 = internal constant [2 x i32] [ i32 1, i32 2 ] ; <[2 x i32]*> [#uses=1]
|
|
@C.146.1725 = internal constant %struct.string___XUB { i32 1, i32 37 } ; <%struct.string___XUB*> [#uses=1]
|
|
@C.170.1990 = internal constant %struct.string___XUB { i32 1, i32 19 } ; <%struct.string___XUB*> [#uses=1]
|
|
@C.178.2066 = internal constant %struct.string___XUB { i32 1, i32 27 } ; <%struct.string___XUB*> [#uses=1]
|
|
@.str = internal constant [13 x i8] c"c36104b.adb\00\00" ; <[13 x i8]*> [#uses=1]
|
|
@.str1 = internal constant [85 x i8] c"CONSTRAINT_ERROR IS RAISED OR NOT IN DYNAMIC DISCRETE_RANGES WITH EXPLICIT TYPE_MARKS" ; <[85 x i8]*> [#uses=1]
|
|
@.str2 = internal constant [7 x i8] c"C36104B" ; <[7 x i8]*> [#uses=1]
|
|
@constraint_error = external global %struct.exception ; <%struct.exception*> [#uses=18]
|
|
@__gnat_others_value = external constant i32 ; <i32*> [#uses=37]
|
|
@.str3 = internal constant [30 x i8] c"CONSTRAINT_ERROR NOT RAISED 1 " ; <[30 x i8]*> [#uses=1]
|
|
@system__soft_links__abort_undefer = external global void ()* ; <void ()**> [#uses=30]
|
|
@.str4 = internal constant [28 x i8] c"UNHANDLED EXCEPTION RAISED 1" ; <[28 x i8]*> [#uses=1]
|
|
@.str5 = internal constant [24 x i8] c"WRONG EXCEPTION RAISED 1" ; <[24 x i8]*> [#uses=1]
|
|
@.str6 = internal constant [29 x i8] c"CONSTRAINT_ERROR NOT RAISED 3" ; <[29 x i8]*> [#uses=1]
|
|
@.str7 = internal constant [24 x i8] c"WRONG EXCEPTION RAISED 3" ; <[24 x i8]*> [#uses=1]
|
|
@.str10 = internal constant [24 x i8] c"WRONG EXCEPTION RAISED 4" ; <[24 x i8]*> [#uses=1]
|
|
@.str11 = internal constant [30 x i8] c"CONSTRAINT_ERROR NOT RAISED 7 " ; <[30 x i8]*> [#uses=1]
|
|
@.str12 = internal constant [28 x i8] c"UNHANDLED EXCEPTION RAISED 7" ; <[28 x i8]*> [#uses=1]
|
|
@.str13 = internal constant [24 x i8] c"WRONG EXCEPTION RAISED 7" ; <[24 x i8]*> [#uses=1]
|
|
@.str14 = internal constant [30 x i8] c"CONSTRAINT_ERROR NOT RAISED 8 " ; <[30 x i8]*> [#uses=1]
|
|
@.str15 = internal constant [28 x i8] c"UNHANDLED EXCEPTION RAISED 8" ; <[28 x i8]*> [#uses=1]
|
|
@.str16 = internal constant [24 x i8] c"WRONG EXCEPTION RAISED 8" ; <[24 x i8]*> [#uses=1]
|
|
@.str17 = internal constant [30 x i8] c"CONSTRAINT_ERROR NOT RAISED 9 " ; <[30 x i8]*> [#uses=1]
|
|
@.str18 = internal constant [24 x i8] c"WRONG EXCEPTION RAISED 9" ; <[24 x i8]*> [#uses=1]
|
|
@.str19 = internal constant [31 x i8] c"CONSTRAINT_ERROR NOT RAISED 10 " ; <[31 x i8]*> [#uses=1]
|
|
@.str20 = internal constant [46 x i8] c"DID NOT RAISE CONSTRAINT_ERROR AT PROPER PLACE" ; <[46 x i8]*> [#uses=1]
|
|
@.str21 = internal constant [25 x i8] c"WRONG EXCEPTION RAISED 10" ; <[25 x i8]*> [#uses=1]
|
|
@.str22 = internal constant [31 x i8] c"CONSTRAINT_ERROR NOT RAISED 11 " ; <[31 x i8]*> [#uses=1]
|
|
@.str23 = internal constant [25 x i8] c"WRONG EXCEPTION RAISED 11" ; <[25 x i8]*> [#uses=1]
|
|
@.str24 = internal constant [30 x i8] c"'FIRST OF NULL ARRAY INCORRECT" ; <[30 x i8]*> [#uses=1]
|
|
@.str25 = internal constant [18 x i8] c"EXCEPTION RAISED 1" ; <[18 x i8]*> [#uses=1]
|
|
@.str26 = internal constant [18 x i8] c"EXCEPTION RAISED 3" ; <[18 x i8]*> [#uses=1]
|
|
@.str27 = internal constant [31 x i8] c"'LENGTH OF NULL ARRAY INCORRECT" ; <[31 x i8]*> [#uses=1]
|
|
@.str28 = internal constant [18 x i8] c"EXCEPTION RAISED 5" ; <[18 x i8]*> [#uses=1]
|
|
@.str29 = internal constant [37 x i8] c"EVALUATION OF EXPRESSION IS INCORRECT" ; <[37 x i8]*> [#uses=1]
|
|
@.str30 = internal constant [18 x i8] c"EXCEPTION RAISED 7" ; <[18 x i8]*> [#uses=1]
|
|
@.str32 = internal constant [18 x i8] c"EXCEPTION RAISED 9" ; <[18 x i8]*> [#uses=1]
|
|
@.str33 = internal constant [19 x i8] c"EXCEPTION RAISED 10" ; <[19 x i8]*> [#uses=1]
|
|
@.str34 = internal constant [19 x i8] c"EXCEPTION RAISED 12" ; <[19 x i8]*> [#uses=1]
|
|
@.str35 = internal constant [27 x i8] c"INCORRECT 'IN' EVALUATION 1" ; <[27 x i8]*> [#uses=1]
|
|
@.str36 = internal constant [27 x i8] c"INCORRECT 'IN' EVALUATION 2" ; <[27 x i8]*> [#uses=1]
|
|
@.str37 = internal constant [29 x i8] c"INCORRECT 'NOT IN' EVALUATION" ; <[29 x i8]*> [#uses=1]
|
|
@.str38 = internal constant [19 x i8] c"EXCEPTION RAISED 52" ; <[19 x i8]*> [#uses=1]
|
|
|
|
define void @_ada_c36104b() {
|
|
entry:
|
|
%tmp9 = alloca %struct.system__secondary_stack__mark_id, align 8 ; <%struct.system__secondary_stack__mark_id*> [#uses=3]
|
|
%tmp12 = alloca %struct.string___XUP, align 8 ; <%struct.string___XUP*> [#uses=3]
|
|
%tmp15 = alloca %struct.string___XUP, align 8 ; <%struct.string___XUP*> [#uses=3]
|
|
%tmp31 = alloca %struct.system__secondary_stack__mark_id, align 8 ; <%struct.system__secondary_stack__mark_id*> [#uses=3]
|
|
%tmp34 = alloca %struct.string___XUP, align 8 ; <%struct.string___XUP*> [#uses=3]
|
|
%tmp37 = alloca %struct.string___XUP, align 8 ; <%struct.string___XUP*> [#uses=3]
|
|
%tmp46 = alloca %struct.system__secondary_stack__mark_id, align 8 ; <%struct.system__secondary_stack__mark_id*> [#uses=3]
|
|
%tmp49 = alloca %struct.string___XUP, align 8 ; <%struct.string___XUP*> [#uses=3]
|
|
%tmp52 = alloca %struct.string___XUP, align 8 ; <%struct.string___XUP*> [#uses=3]
|
|
%tmp55 = alloca %struct.system__secondary_stack__mark_id, align 8 ; <%struct.system__secondary_stack__mark_id*> [#uses=3]
|
|
%tmp58 = alloca %struct.string___XUP, align 8 ; <%struct.string___XUP*> [#uses=3]
|
|
%tmp61 = alloca %struct.string___XUP, align 8 ; <%struct.string___XUP*> [#uses=3]
|
|
%tmp63 = alloca %struct.system__secondary_stack__mark_id, align 8 ; <%struct.system__secondary_stack__mark_id*> [#uses=3]
|
|
%tmp66 = alloca %struct.string___XUP, align 8 ; <%struct.string___XUP*> [#uses=3]
|
|
%tmp69 = alloca %struct.string___XUP, align 8 ; <%struct.string___XUP*> [#uses=3]
|
|
%tmp72 = alloca %struct.system__secondary_stack__mark_id, align 8 ; <%struct.system__secondary_stack__mark_id*> [#uses=3]
|
|
%tmp75 = alloca %struct.string___XUP, align 8 ; <%struct.string___XUP*> [#uses=3]
|
|
%tmp78 = alloca %struct.string___XUP, align 8 ; <%struct.string___XUP*> [#uses=3]
|
|
%tmp123 = call i32 @report__ident_int( i32 0 ) ; <i32> [#uses=3]
|
|
%tmp125 = icmp ugt i32 %tmp123, 6 ; <i1> [#uses=1]
|
|
br i1 %tmp125, label %cond_true, label %cond_next136
|
|
|
|
cond_true: ; preds = %entry
|
|
call void @__gnat_rcheck_10( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 50 )
|
|
unreachable
|
|
|
|
cond_next136: ; preds = %entry
|
|
%tmp137138 = trunc i32 %tmp123 to i8 ; <i8> [#uses=21]
|
|
%tmp139 = icmp ugt i8 %tmp137138, 6 ; <i1> [#uses=1]
|
|
br i1 %tmp139, label %bb, label %bb144
|
|
|
|
bb: ; preds = %cond_next136
|
|
call void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 50 )
|
|
unreachable
|
|
|
|
bb144: ; preds = %cond_next136
|
|
%tmp150 = call i32 @report__ident_int( i32 1 ) ; <i32> [#uses=4]
|
|
%tmp154 = icmp ugt i32 %tmp150, 6 ; <i1> [#uses=1]
|
|
br i1 %tmp154, label %cond_true157, label %cond_next169
|
|
|
|
cond_true157: ; preds = %bb144
|
|
call void @__gnat_rcheck_10( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 51 )
|
|
unreachable
|
|
|
|
cond_next169: ; preds = %bb144
|
|
%tmp170171 = trunc i32 %tmp150 to i8 ; <i8> [#uses=34]
|
|
%tmp172 = icmp ugt i8 %tmp170171, 6 ; <i1> [#uses=1]
|
|
br i1 %tmp172, label %bb175, label %bb178
|
|
|
|
bb175: ; preds = %cond_next169
|
|
call void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 51 )
|
|
unreachable
|
|
|
|
bb178: ; preds = %cond_next169
|
|
%tmp184 = call i32 @report__ident_int( i32 2 ) ; <i32> [#uses=3]
|
|
%tmp188 = icmp ugt i32 %tmp184, 6 ; <i1> [#uses=1]
|
|
br i1 %tmp188, label %cond_true191, label %cond_next203
|
|
|
|
cond_true191: ; preds = %bb178
|
|
call void @__gnat_rcheck_10( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 52 )
|
|
unreachable
|
|
|
|
cond_next203: ; preds = %bb178
|
|
%tmp204205 = trunc i32 %tmp184 to i8 ; <i8> [#uses=30]
|
|
%tmp206 = icmp ugt i8 %tmp204205, 6 ; <i1> [#uses=3]
|
|
br i1 %tmp206, label %bb209, label %bb212
|
|
|
|
bb209: ; preds = %cond_next203
|
|
call void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 52 )
|
|
unreachable
|
|
|
|
bb212: ; preds = %cond_next203
|
|
%tmp218 = call i32 @report__ident_int( i32 3 ) ; <i32> [#uses=4]
|
|
%tmp222 = icmp ugt i32 %tmp218, 6 ; <i1> [#uses=1]
|
|
br i1 %tmp222, label %cond_true225, label %cond_next237
|
|
|
|
cond_true225: ; preds = %bb212
|
|
call void @__gnat_rcheck_10( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 53 )
|
|
unreachable
|
|
|
|
cond_next237: ; preds = %bb212
|
|
%tmp238239 = trunc i32 %tmp218 to i8 ; <i8> [#uses=34]
|
|
%tmp240 = icmp ugt i8 %tmp238239, 6 ; <i1> [#uses=2]
|
|
br i1 %tmp240, label %bb243, label %bb246
|
|
|
|
bb243: ; preds = %cond_next237
|
|
call void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 53 )
|
|
unreachable
|
|
|
|
bb246: ; preds = %cond_next237
|
|
%tmp252 = call i32 @report__ident_int( i32 4 ) ; <i32> [#uses=3]
|
|
%tmp256 = icmp ugt i32 %tmp252, 6 ; <i1> [#uses=1]
|
|
br i1 %tmp256, label %cond_true259, label %cond_next271
|
|
|
|
cond_true259: ; preds = %bb246
|
|
call void @__gnat_rcheck_10( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 54 )
|
|
unreachable
|
|
|
|
cond_next271: ; preds = %bb246
|
|
%tmp272273 = trunc i32 %tmp252 to i8 ; <i8> [#uses=27]
|
|
%tmp274 = icmp ugt i8 %tmp272273, 6 ; <i1> [#uses=4]
|
|
br i1 %tmp274, label %bb277, label %bb280
|
|
|
|
bb277: ; preds = %cond_next271
|
|
call void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 54 )
|
|
unreachable
|
|
|
|
bb280: ; preds = %cond_next271
|
|
%tmp286 = call i32 @report__ident_int( i32 5 ) ; <i32> [#uses=3]
|
|
%tmp290 = icmp ugt i32 %tmp286, 6 ; <i1> [#uses=1]
|
|
br i1 %tmp290, label %cond_true293, label %cond_next305
|
|
|
|
cond_true293: ; preds = %bb280
|
|
call void @__gnat_rcheck_10( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 55 )
|
|
unreachable
|
|
|
|
cond_next305: ; preds = %bb280
|
|
%tmp306307 = trunc i32 %tmp286 to i8 ; <i8> [#uses=16]
|
|
%tmp308 = icmp ugt i8 %tmp306307, 6 ; <i1> [#uses=1]
|
|
br i1 %tmp308, label %bb311, label %bb314
|
|
|
|
bb311: ; preds = %cond_next305
|
|
call void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 55 )
|
|
unreachable
|
|
|
|
bb314: ; preds = %cond_next305
|
|
%tmp320 = call i32 @report__ident_int( i32 6 ) ; <i32> [#uses=2]
|
|
%tmp324 = icmp ugt i32 %tmp320, 6 ; <i1> [#uses=1]
|
|
br i1 %tmp324, label %cond_true327, label %cond_next339
|
|
|
|
cond_true327: ; preds = %bb314
|
|
call void @__gnat_rcheck_10( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 56 )
|
|
unreachable
|
|
|
|
cond_next339: ; preds = %bb314
|
|
%tmp340341 = trunc i32 %tmp320 to i8 ; <i8> [#uses=4]
|
|
%tmp342 = icmp ugt i8 %tmp340341, 6 ; <i1> [#uses=1]
|
|
br i1 %tmp342, label %bb345, label %bb348
|
|
|
|
bb345: ; preds = %cond_next339
|
|
call void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 56 )
|
|
unreachable
|
|
|
|
bb348: ; preds = %cond_next339
|
|
%tmp364 = icmp ult i8 %tmp272273, %tmp204205 ; <i1> [#uses=2]
|
|
br i1 %tmp364, label %cond_next383, label %cond_true367
|
|
|
|
cond_true367: ; preds = %bb348
|
|
%tmp370 = icmp ult i8 %tmp204205, %tmp170171 ; <i1> [#uses=1]
|
|
%tmp374 = icmp ugt i8 %tmp272273, %tmp306307 ; <i1> [#uses=1]
|
|
%tmp378 = or i1 %tmp374, %tmp370 ; <i1> [#uses=1]
|
|
br i1 %tmp378, label %cond_true381, label %cond_next383
|
|
|
|
cond_true381: ; preds = %cond_true367
|
|
call void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 59 )
|
|
unreachable
|
|
|
|
cond_next383: ; preds = %cond_true367, %bb348
|
|
%tmp384 = call i32 @report__ident_int( i32 -5 ) ; <i32> [#uses=15]
|
|
%tmp388 = add i32 %tmp384, 10 ; <i32> [#uses=1]
|
|
%tmp389 = icmp ugt i32 %tmp388, 20 ; <i1> [#uses=1]
|
|
br i1 %tmp389, label %cond_true392, label %cond_next393
|
|
|
|
cond_true392: ; preds = %cond_next383
|
|
call void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 63 )
|
|
unreachable
|
|
|
|
cond_next393: ; preds = %cond_next383
|
|
%tmp394 = call i32 @report__ident_int( i32 5 ) ; <i32> [#uses=18]
|
|
%tmp398 = add i32 %tmp394, 10 ; <i32> [#uses=1]
|
|
%tmp399 = icmp ugt i32 %tmp398, 20 ; <i1> [#uses=1]
|
|
br i1 %tmp399, label %cond_true402, label %cond_next403
|
|
|
|
cond_true402: ; preds = %cond_next393
|
|
call void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 64 )
|
|
unreachable
|
|
|
|
cond_next403: ; preds = %cond_next393
|
|
%tmp416 = icmp slt i32 %tmp394, %tmp384 ; <i1> [#uses=1]
|
|
br i1 %tmp416, label %cond_next437, label %cond_true419
|
|
|
|
cond_true419: ; preds = %cond_next403
|
|
%tmp423 = icmp slt i32 %tmp384, -10 ; <i1> [#uses=1]
|
|
%tmp428 = icmp sgt i32 %tmp394, 10 ; <i1> [#uses=1]
|
|
%tmp432 = or i1 %tmp428, %tmp423 ; <i1> [#uses=1]
|
|
br i1 %tmp432, label %cond_true435, label %cond_next437
|
|
|
|
cond_true435: ; preds = %cond_true419
|
|
call void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 63 )
|
|
unreachable
|
|
|
|
cond_next437: ; preds = %cond_true419, %cond_next403
|
|
call void @report__test( i64 or (i64 zext (i32 ptrtoint ([7 x i8]* @.str2 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.29.865 to i32) to i64), i64 32)), i64 or (i64 zext (i32 ptrtoint ([85 x i8]* @.str1 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.28.862 to i32) to i64), i64 32)) )
|
|
%tmp453 = icmp sgt i32 %tmp384, 0 ; <i1> [#uses=1]
|
|
%tmp458 = icmp slt i32 %tmp394, 6 ; <i1> [#uses=1]
|
|
%tmp462 = or i1 %tmp458, %tmp453 ; <i1> [#uses=3]
|
|
br i1 %tmp462, label %cond_true465, label %cond_next467
|
|
|
|
cond_true465: ; preds = %cond_next437
|
|
invoke void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 80 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind
|
|
|
|
unwind: ; preds = %cleanup798, %unwind783, %cond_true465
|
|
%eh_ptr = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=3]
|
|
%eh_select = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr, i8* bitcast (i32 (...)* @__gnat_eh_personality to i8*), %struct.exception* @constraint_error, i32* @__gnat_others_value ) ; <i32> [#uses=2]
|
|
%eh_typeid8065921 = call i32 @llvm.eh.typeid.for.i32( i8* getelementptr (%struct.exception* @constraint_error, i32 0, i32 0) ) ; <i32> [#uses=1]
|
|
%tmp8085923 = icmp eq i32 %eh_select, %eh_typeid8065921 ; <i1> [#uses=1]
|
|
br i1 %tmp8085923, label %eh_then809, label %eh_else823
|
|
|
|
cond_next467: ; preds = %cond_next437
|
|
invoke void @system__secondary_stack__ss_mark( %struct.system__secondary_stack__mark_id* %tmp9 sret )
|
|
to label %invcont472 unwind label %unwind468
|
|
|
|
unwind468: ; preds = %cleanup, %unwind480, %cond_next467
|
|
%eh_ptr469 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=3]
|
|
%eh_select471 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr469, i8* bitcast (i32 (...)* @__gnat_eh_personality to i8*), i32* @__gnat_others_value ) ; <i32> [#uses=2]
|
|
%eh_typeid5928 = call i32 @llvm.eh.typeid.for.i32( i8* bitcast (i32* @__gnat_others_value to i8*) ) ; <i32> [#uses=1]
|
|
%tmp7815929 = icmp eq i32 %eh_select471, %eh_typeid5928 ; <i1> [#uses=1]
|
|
br i1 %tmp7815929, label %eh_then, label %cleanup805
|
|
|
|
invcont472: ; preds = %cond_next467
|
|
%tmp475 = getelementptr %struct.system__secondary_stack__mark_id* %tmp9, i32 0, i32 0 ; <i8**> [#uses=1]
|
|
%tmp476 = load i8** %tmp475 ; <i8*> [#uses=2]
|
|
%tmp478 = getelementptr %struct.system__secondary_stack__mark_id* %tmp9, i32 0, i32 1 ; <i32*> [#uses=1]
|
|
%tmp479 = load i32* %tmp478 ; <i32> [#uses=2]
|
|
%tmp485 = invoke i32 @report__ident_int( i32 1 )
|
|
to label %invcont484 unwind label %unwind480 ; <i32> [#uses=2]
|
|
|
|
unwind480: ; preds = %invcont734, %invcont717, %cond_next665, %cond_true663, %cond_next639, %cond_true637, %cond_next613, %cond_true611, %cond_next587, %cond_true585, %cond_next561, %cond_true559, %cond_next535, %cond_true533, %cond_next509, %cond_true507, %invcont472
|
|
%eh_ptr481 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=3]
|
|
%eh_select483 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr481, i8* bitcast (i32 (...)* @__gnat_eh_personality to i8*), i32* @__gnat_others_value ) ; <i32> [#uses=2]
|
|
%tmp7685575 = ptrtoint i8* %tmp476 to i32 ; <i32> [#uses=1]
|
|
%tmp76855755576 = zext i32 %tmp7685575 to i64 ; <i64> [#uses=1]
|
|
%tmp7715572 = zext i32 %tmp479 to i64 ; <i64> [#uses=1]
|
|
%tmp77155725573 = shl i64 %tmp7715572, 32 ; <i64> [#uses=1]
|
|
%tmp77155725573.ins = or i64 %tmp77155725573, %tmp76855755576 ; <i64> [#uses=1]
|
|
invoke void @system__secondary_stack__ss_release( i64 %tmp77155725573.ins )
|
|
to label %cleanup779 unwind label %unwind468
|
|
|
|
invcont484: ; preds = %invcont472
|
|
%tmp492 = icmp slt i32 %tmp485, %tmp384 ; <i1> [#uses=1]
|
|
%tmp500 = icmp sgt i32 %tmp485, %tmp394 ; <i1> [#uses=1]
|
|
%tmp504 = or i1 %tmp492, %tmp500 ; <i1> [#uses=1]
|
|
br i1 %tmp504, label %cond_true507, label %cond_next509
|
|
|
|
cond_true507: ; preds = %invcont484
|
|
invoke void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 86 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind480
|
|
|
|
cond_next509: ; preds = %invcont484
|
|
%tmp511 = invoke i32 @report__ident_int( i32 1 )
|
|
to label %invcont510 unwind label %unwind480 ; <i32> [#uses=3]
|
|
|
|
invcont510: ; preds = %cond_next509
|
|
%tmp518 = icmp slt i32 %tmp511, %tmp384 ; <i1> [#uses=1]
|
|
%tmp526 = icmp sgt i32 %tmp511, %tmp394 ; <i1> [#uses=1]
|
|
%tmp530 = or i1 %tmp518, %tmp526 ; <i1> [#uses=1]
|
|
br i1 %tmp530, label %cond_true533, label %cond_next535
|
|
|
|
cond_true533: ; preds = %invcont510
|
|
invoke void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 86 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind480
|
|
|
|
cond_next535: ; preds = %invcont510
|
|
%tmp537 = invoke i32 @report__ident_int( i32 1 )
|
|
to label %invcont536 unwind label %unwind480 ; <i32> [#uses=2]
|
|
|
|
invcont536: ; preds = %cond_next535
|
|
%tmp544 = icmp slt i32 %tmp537, %tmp384 ; <i1> [#uses=1]
|
|
%tmp552 = icmp sgt i32 %tmp537, %tmp394 ; <i1> [#uses=1]
|
|
%tmp556 = or i1 %tmp544, %tmp552 ; <i1> [#uses=1]
|
|
br i1 %tmp556, label %cond_true559, label %cond_next561
|
|
|
|
cond_true559: ; preds = %invcont536
|
|
invoke void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 86 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind480
|
|
|
|
cond_next561: ; preds = %invcont536
|
|
%tmp563 = invoke i32 @report__ident_int( i32 1 )
|
|
to label %invcont562 unwind label %unwind480 ; <i32> [#uses=2]
|
|
|
|
invcont562: ; preds = %cond_next561
|
|
%tmp570 = icmp slt i32 %tmp563, %tmp384 ; <i1> [#uses=1]
|
|
%tmp578 = icmp sgt i32 %tmp563, %tmp394 ; <i1> [#uses=1]
|
|
%tmp582 = or i1 %tmp570, %tmp578 ; <i1> [#uses=1]
|
|
br i1 %tmp582, label %cond_true585, label %cond_next587
|
|
|
|
cond_true585: ; preds = %invcont562
|
|
invoke void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 86 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind480
|
|
|
|
cond_next587: ; preds = %invcont562
|
|
%tmp589 = invoke i32 @report__ident_int( i32 1 )
|
|
to label %invcont588 unwind label %unwind480 ; <i32> [#uses=2]
|
|
|
|
invcont588: ; preds = %cond_next587
|
|
%tmp596 = icmp slt i32 %tmp589, %tmp384 ; <i1> [#uses=1]
|
|
%tmp604 = icmp sgt i32 %tmp589, %tmp394 ; <i1> [#uses=1]
|
|
%tmp608 = or i1 %tmp596, %tmp604 ; <i1> [#uses=1]
|
|
br i1 %tmp608, label %cond_true611, label %cond_next613
|
|
|
|
cond_true611: ; preds = %invcont588
|
|
invoke void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 86 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind480
|
|
|
|
cond_next613: ; preds = %invcont588
|
|
%tmp615 = invoke i32 @report__ident_int( i32 1 )
|
|
to label %invcont614 unwind label %unwind480 ; <i32> [#uses=2]
|
|
|
|
invcont614: ; preds = %cond_next613
|
|
%tmp622 = icmp slt i32 %tmp615, %tmp384 ; <i1> [#uses=1]
|
|
%tmp630 = icmp sgt i32 %tmp615, %tmp394 ; <i1> [#uses=1]
|
|
%tmp634 = or i1 %tmp622, %tmp630 ; <i1> [#uses=1]
|
|
br i1 %tmp634, label %cond_true637, label %cond_next639
|
|
|
|
cond_true637: ; preds = %invcont614
|
|
invoke void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 86 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind480
|
|
|
|
cond_next639: ; preds = %invcont614
|
|
%tmp641 = invoke i32 @report__ident_int( i32 1 )
|
|
to label %invcont640 unwind label %unwind480 ; <i32> [#uses=2]
|
|
|
|
invcont640: ; preds = %cond_next639
|
|
%tmp648 = icmp slt i32 %tmp641, %tmp384 ; <i1> [#uses=1]
|
|
%tmp656 = icmp sgt i32 %tmp641, %tmp394 ; <i1> [#uses=1]
|
|
%tmp660 = or i1 %tmp648, %tmp656 ; <i1> [#uses=1]
|
|
br i1 %tmp660, label %cond_true663, label %cond_next665
|
|
|
|
cond_true663: ; preds = %invcont640
|
|
invoke void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 86 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind480
|
|
|
|
cond_next665: ; preds = %invcont640
|
|
invoke void @system__img_int__image_integer( %struct.string___XUP* %tmp12 sret , i32 %tmp511 )
|
|
to label %invcont717 unwind label %unwind480
|
|
|
|
invcont717: ; preds = %cond_next665
|
|
%tmp719 = getelementptr %struct.string___XUP* %tmp12, i32 0, i32 0 ; <i8**> [#uses=1]
|
|
%tmp720 = load i8** %tmp719 ; <i8*> [#uses=1]
|
|
%tmp7205888 = ptrtoint i8* %tmp720 to i32 ; <i32> [#uses=1]
|
|
%tmp72058885889 = zext i32 %tmp7205888 to i64 ; <i64> [#uses=1]
|
|
%tmp722 = getelementptr %struct.string___XUP* %tmp12, i32 0, i32 1 ; <%struct.string___XUB**> [#uses=1]
|
|
%tmp723 = load %struct.string___XUB** %tmp722 ; <%struct.string___XUB*> [#uses=1]
|
|
%tmp7235884 = ptrtoint %struct.string___XUB* %tmp723 to i32 ; <i32> [#uses=1]
|
|
%tmp72358845885 = zext i32 %tmp7235884 to i64 ; <i64> [#uses=1]
|
|
%tmp723588458855886 = shl i64 %tmp72358845885, 32 ; <i64> [#uses=1]
|
|
%tmp723588458855886.ins = or i64 %tmp723588458855886, %tmp72058885889 ; <i64> [#uses=1]
|
|
invoke void @system__string_ops__str_concat( %struct.string___XUP* %tmp15 sret , i64 or (i64 zext (i32 ptrtoint ([30 x i8]* @.str3 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.30.904 to i32) to i64), i64 32)), i64 %tmp723588458855886.ins )
|
|
to label %invcont734 unwind label %unwind480
|
|
|
|
invcont734: ; preds = %invcont717
|
|
%tmp736 = getelementptr %struct.string___XUP* %tmp15, i32 0, i32 0 ; <i8**> [#uses=1]
|
|
%tmp737 = load i8** %tmp736 ; <i8*> [#uses=1]
|
|
%tmp7375876 = ptrtoint i8* %tmp737 to i32 ; <i32> [#uses=1]
|
|
%tmp73758765877 = zext i32 %tmp7375876 to i64 ; <i64> [#uses=1]
|
|
%tmp739 = getelementptr %struct.string___XUP* %tmp15, i32 0, i32 1 ; <%struct.string___XUB**> [#uses=1]
|
|
%tmp740 = load %struct.string___XUB** %tmp739 ; <%struct.string___XUB*> [#uses=1]
|
|
%tmp7405872 = ptrtoint %struct.string___XUB* %tmp740 to i32 ; <i32> [#uses=1]
|
|
%tmp74058725873 = zext i32 %tmp7405872 to i64 ; <i64> [#uses=1]
|
|
%tmp740587258735874 = shl i64 %tmp74058725873, 32 ; <i64> [#uses=1]
|
|
%tmp740587258735874.ins = or i64 %tmp740587258735874, %tmp73758765877 ; <i64> [#uses=1]
|
|
invoke void @report__failed( i64 %tmp740587258735874.ins )
|
|
to label %cleanup unwind label %unwind480
|
|
|
|
cleanup: ; preds = %invcont734
|
|
%tmp7515581 = ptrtoint i8* %tmp476 to i32 ; <i32> [#uses=1]
|
|
%tmp75155815582 = zext i32 %tmp7515581 to i64 ; <i64> [#uses=1]
|
|
%tmp7545578 = zext i32 %tmp479 to i64 ; <i64> [#uses=1]
|
|
%tmp75455785579 = shl i64 %tmp7545578, 32 ; <i64> [#uses=1]
|
|
%tmp75455785579.ins = or i64 %tmp75455785579, %tmp75155815582 ; <i64> [#uses=1]
|
|
invoke void @system__secondary_stack__ss_release( i64 %tmp75455785579.ins )
|
|
to label %cond_true856 unwind label %unwind468
|
|
|
|
cleanup779: ; preds = %unwind480
|
|
%eh_typeid = call i32 @llvm.eh.typeid.for.i32( i8* bitcast (i32* @__gnat_others_value to i8*) ) ; <i32> [#uses=1]
|
|
%tmp781 = icmp eq i32 %eh_select483, %eh_typeid ; <i1> [#uses=1]
|
|
br i1 %tmp781, label %eh_then, label %cleanup805
|
|
|
|
eh_then: ; preds = %cleanup779, %unwind468
|
|
%eh_exception.35924.0 = phi i8* [ %eh_ptr469, %unwind468 ], [ %eh_ptr481, %cleanup779 ] ; <i8*> [#uses=3]
|
|
invoke void @__gnat_begin_handler( i8* %eh_exception.35924.0 )
|
|
to label %invcont787 unwind label %unwind783
|
|
|
|
unwind783: ; preds = %invcont789, %invcont787, %eh_then
|
|
%eh_ptr784 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=2]
|
|
%eh_select786 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr784, i8* bitcast (i32 (...)* @__gnat_eh_personality to i8*), %struct.exception* @constraint_error, i32* @__gnat_others_value ) ; <i32> [#uses=1]
|
|
invoke void @__gnat_end_handler( i8* %eh_exception.35924.0 )
|
|
to label %cleanup805 unwind label %unwind
|
|
|
|
invcont787: ; preds = %eh_then
|
|
%tmp788 = load void ()** @system__soft_links__abort_undefer ; <void ()*> [#uses=1]
|
|
invoke void %tmp788( )
|
|
to label %invcont789 unwind label %unwind783
|
|
|
|
invcont789: ; preds = %invcont787
|
|
invoke void @report__failed( i64 or (i64 zext (i32 ptrtoint ([28 x i8]* @.str4 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.32.910 to i32) to i64), i64 32)) )
|
|
to label %cleanup798 unwind label %unwind783
|
|
|
|
cleanup798: ; preds = %invcont789
|
|
invoke void @__gnat_end_handler( i8* %eh_exception.35924.0 )
|
|
to label %cond_true856 unwind label %unwind
|
|
|
|
cleanup805: ; preds = %unwind783, %cleanup779, %unwind468
|
|
%eh_selector.0 = phi i32 [ %eh_select471, %unwind468 ], [ %eh_select483, %cleanup779 ], [ %eh_select786, %unwind783 ] ; <i32> [#uses=2]
|
|
%eh_exception.0 = phi i8* [ %eh_ptr469, %unwind468 ], [ %eh_ptr481, %cleanup779 ], [ %eh_ptr784, %unwind783 ] ; <i8*> [#uses=2]
|
|
%eh_typeid806 = call i32 @llvm.eh.typeid.for.i32( i8* getelementptr (%struct.exception* @constraint_error, i32 0, i32 0) ) ; <i32> [#uses=1]
|
|
%tmp808 = icmp eq i32 %eh_selector.0, %eh_typeid806 ; <i1> [#uses=1]
|
|
br i1 %tmp808, label %eh_then809, label %eh_else823
|
|
|
|
eh_then809: ; preds = %cleanup805, %unwind
|
|
%eh_exception.05914.0 = phi i8* [ %eh_ptr, %unwind ], [ %eh_exception.0, %cleanup805 ] ; <i8*> [#uses=3]
|
|
invoke void @__gnat_begin_handler( i8* %eh_exception.05914.0 )
|
|
to label %invcont815 unwind label %unwind813
|
|
|
|
unwind813: ; preds = %invcont815, %eh_then809
|
|
%eh_ptr814 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=1]
|
|
call void @__gnat_end_handler( i8* %eh_exception.05914.0 )
|
|
call i32 (...)* @_Unwind_Resume( i8* %eh_ptr814 ) ; <i32>:0 [#uses=0]
|
|
unreachable
|
|
|
|
invcont815: ; preds = %eh_then809
|
|
%tmp816 = load void ()** @system__soft_links__abort_undefer ; <void ()*> [#uses=1]
|
|
invoke void %tmp816( )
|
|
to label %cleanup819 unwind label %unwind813
|
|
|
|
cleanup819: ; preds = %invcont815
|
|
call void @__gnat_end_handler( i8* %eh_exception.05914.0 )
|
|
%tmp8595931 = icmp ult i8 %tmp170171, %tmp204205 ; <i1> [#uses=1]
|
|
%tmp8635932 = icmp ugt i8 %tmp170171, %tmp272273 ; <i1> [#uses=1]
|
|
%tmp8675933 = or i1 %tmp8635932, %tmp8595931 ; <i1> [#uses=1]
|
|
br i1 %tmp8675933, label %cond_true870, label %bb887
|
|
|
|
eh_else823: ; preds = %cleanup805, %unwind
|
|
%eh_selector.05912.1 = phi i32 [ %eh_select, %unwind ], [ %eh_selector.0, %cleanup805 ] ; <i32> [#uses=1]
|
|
%eh_exception.05914.1 = phi i8* [ %eh_ptr, %unwind ], [ %eh_exception.0, %cleanup805 ] ; <i8*> [#uses=4]
|
|
%eh_typeid824 = call i32 @llvm.eh.typeid.for.i32( i8* bitcast (i32* @__gnat_others_value to i8*) ) ; <i32> [#uses=1]
|
|
%tmp826 = icmp eq i32 %eh_selector.05912.1, %eh_typeid824 ; <i1> [#uses=1]
|
|
br i1 %tmp826, label %eh_then827, label %Unwind
|
|
|
|
eh_then827: ; preds = %eh_else823
|
|
invoke void @__gnat_begin_handler( i8* %eh_exception.05914.1 )
|
|
to label %invcont833 unwind label %unwind831
|
|
|
|
unwind831: ; preds = %invcont835, %invcont833, %eh_then827
|
|
%eh_ptr832 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=1]
|
|
call void @__gnat_end_handler( i8* %eh_exception.05914.1 )
|
|
call i32 (...)* @_Unwind_Resume( i8* %eh_ptr832 ) ; <i32>:1 [#uses=0]
|
|
unreachable
|
|
|
|
invcont833: ; preds = %eh_then827
|
|
%tmp834 = load void ()** @system__soft_links__abort_undefer ; <void ()*> [#uses=1]
|
|
invoke void %tmp834( )
|
|
to label %invcont835 unwind label %unwind831
|
|
|
|
invcont835: ; preds = %invcont833
|
|
invoke void @report__failed( i64 or (i64 zext (i32 ptrtoint ([24 x i8]* @.str5 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.35.915 to i32) to i64), i64 32)) )
|
|
to label %cleanup844 unwind label %unwind831
|
|
|
|
cleanup844: ; preds = %invcont835
|
|
call void @__gnat_end_handler( i8* %eh_exception.05914.1 )
|
|
br label %cond_true856
|
|
|
|
cond_true856: ; preds = %cleanup844, %cleanup798, %cleanup
|
|
%tmp859 = icmp ult i8 %tmp170171, %tmp204205 ; <i1> [#uses=1]
|
|
%tmp863 = icmp ugt i8 %tmp170171, %tmp272273 ; <i1> [#uses=1]
|
|
%tmp867 = or i1 %tmp863, %tmp859 ; <i1> [#uses=1]
|
|
br i1 %tmp867, label %cond_true870, label %bb887
|
|
|
|
cond_true870: ; preds = %cond_true856, %cleanup819
|
|
invoke void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 103 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind871
|
|
|
|
unwind871: ; preds = %cond_next905, %bb887, %cond_true870
|
|
%sat.3 = phi i8 [ %tmp340341, %cond_true870 ], [ %sat.1, %bb887 ], [ %sat.0, %cond_next905 ] ; <i8> [#uses=2]
|
|
%eh_ptr872 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=8]
|
|
%eh_select874 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr872, i8* bitcast (i32 (...)* @__gnat_eh_personality to i8*), %struct.exception* @constraint_error, i32* @__gnat_others_value ) ; <i32> [#uses=2]
|
|
%eh_typeid915 = call i32 @llvm.eh.typeid.for.i32( i8* getelementptr (%struct.exception* @constraint_error, i32 0, i32 0) ) ; <i32> [#uses=1]
|
|
%tmp917 = icmp eq i32 %eh_select874, %eh_typeid915 ; <i1> [#uses=1]
|
|
br i1 %tmp917, label %eh_then918, label %eh_else932
|
|
|
|
bb887: ; preds = %cond_next901, %cond_true856, %cleanup819
|
|
%indvar = phi i8 [ %indvar.next10, %cond_next901 ], [ 0, %cond_true856 ], [ 0, %cleanup819 ] ; <i8> [#uses=2]
|
|
%sat.1 = phi i8 [ %sat.0, %cond_next901 ], [ %tmp340341, %cond_true856 ], [ %tmp340341, %cleanup819 ] ; <i8> [#uses=2]
|
|
%tmp889 = invoke i8 @report__equal( i32 2, i32 2 )
|
|
to label %invcont888 unwind label %unwind871 ; <i8> [#uses=1]
|
|
|
|
invcont888: ; preds = %bb887
|
|
%i.4 = add i8 %indvar, %tmp170171 ; <i8> [#uses=1]
|
|
%tmp890 = icmp eq i8 %tmp889, 0 ; <i1> [#uses=1]
|
|
%sat.0 = select i1 %tmp890, i8 %sat.1, i8 6 ; <i8> [#uses=3]
|
|
%tmp897 = icmp eq i8 %i.4, %tmp170171 ; <i1> [#uses=1]
|
|
br i1 %tmp897, label %cond_next905, label %cond_next901
|
|
|
|
cond_next901: ; preds = %invcont888
|
|
%indvar.next10 = add i8 %indvar, 1 ; <i8> [#uses=1]
|
|
br label %bb887
|
|
|
|
cond_next905: ; preds = %invcont888
|
|
invoke void @report__failed( i64 or (i64 zext (i32 ptrtoint ([29 x i8]* @.str6 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.36.923 to i32) to i64), i64 32)) )
|
|
to label %finally913 unwind label %unwind871
|
|
|
|
eh_then918: ; preds = %unwind871
|
|
invoke void @__gnat_begin_handler( i8* %eh_ptr872 )
|
|
to label %invcont924 unwind label %unwind922
|
|
|
|
unwind922: ; preds = %invcont924, %eh_then918
|
|
%eh_ptr923 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=1]
|
|
call void @__gnat_end_handler( i8* %eh_ptr872 )
|
|
call i32 (...)* @_Unwind_Resume( i8* %eh_ptr923 ) ; <i32>:2 [#uses=0]
|
|
unreachable
|
|
|
|
invcont924: ; preds = %eh_then918
|
|
%tmp925 = load void ()** @system__soft_links__abort_undefer ; <void ()*> [#uses=1]
|
|
invoke void %tmp925( )
|
|
to label %cleanup928 unwind label %unwind922
|
|
|
|
cleanup928: ; preds = %invcont924
|
|
call void @__gnat_end_handler( i8* %eh_ptr872 )
|
|
br i1 %tmp462, label %cond_true973, label %UnifiedReturnBlock35
|
|
|
|
eh_else932: ; preds = %unwind871
|
|
%eh_typeid933 = call i32 @llvm.eh.typeid.for.i32( i8* bitcast (i32* @__gnat_others_value to i8*) ) ; <i32> [#uses=1]
|
|
%tmp935 = icmp eq i32 %eh_select874, %eh_typeid933 ; <i1> [#uses=1]
|
|
br i1 %tmp935, label %eh_then936, label %Unwind
|
|
|
|
eh_then936: ; preds = %eh_else932
|
|
invoke void @__gnat_begin_handler( i8* %eh_ptr872 )
|
|
to label %invcont942 unwind label %unwind940
|
|
|
|
unwind940: ; preds = %invcont944, %invcont942, %eh_then936
|
|
%eh_ptr941 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=1]
|
|
call void @__gnat_end_handler( i8* %eh_ptr872 )
|
|
call i32 (...)* @_Unwind_Resume( i8* %eh_ptr941 ) ; <i32>:3 [#uses=0]
|
|
unreachable
|
|
|
|
invcont942: ; preds = %eh_then936
|
|
%tmp943 = load void ()** @system__soft_links__abort_undefer ; <void ()*> [#uses=1]
|
|
invoke void %tmp943( )
|
|
to label %invcont944 unwind label %unwind940
|
|
|
|
invcont944: ; preds = %invcont942
|
|
invoke void @report__failed( i64 or (i64 zext (i32 ptrtoint ([24 x i8]* @.str7 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.35.915 to i32) to i64), i64 32)) )
|
|
to label %cleanup953 unwind label %unwind940
|
|
|
|
cleanup953: ; preds = %invcont944
|
|
call void @__gnat_end_handler( i8* %eh_ptr872 )
|
|
br label %finally913
|
|
|
|
finally913: ; preds = %cleanup953, %cond_next905
|
|
%sat.4 = phi i8 [ %sat.3, %cleanup953 ], [ %sat.0, %cond_next905 ] ; <i8> [#uses=1]
|
|
br i1 %tmp462, label %cond_true973, label %UnifiedReturnBlock35
|
|
|
|
cond_true973: ; preds = %finally913, %cleanup928
|
|
%sat.45934.0 = phi i8 [ %sat.3, %cleanup928 ], [ %sat.4, %finally913 ] ; <i8> [#uses=9]
|
|
invoke void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 119 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind974
|
|
|
|
unwind974: ; preds = %cond_true973
|
|
%eh_ptr975 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=8]
|
|
%eh_select977 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr975, i8* bitcast (i32 (...)* @__gnat_eh_personality to i8*), %struct.exception* @constraint_error, i32* @__gnat_others_value ) ; <i32> [#uses=2]
|
|
%eh_typeid13135959 = call i32 @llvm.eh.typeid.for.i32( i8* getelementptr (%struct.exception* @constraint_error, i32 0, i32 0) ) ; <i32> [#uses=1]
|
|
%tmp13155961 = icmp eq i32 %eh_select977, %eh_typeid13135959 ; <i1> [#uses=1]
|
|
br i1 %tmp13155961, label %eh_then1316, label %eh_else1330
|
|
|
|
eh_then1316: ; preds = %unwind974
|
|
invoke void @__gnat_begin_handler( i8* %eh_ptr975 )
|
|
to label %invcont1322 unwind label %unwind1320
|
|
|
|
unwind1320: ; preds = %invcont1322, %eh_then1316
|
|
%eh_ptr1321 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=1]
|
|
call void @__gnat_end_handler( i8* %eh_ptr975 )
|
|
call i32 (...)* @_Unwind_Resume( i8* %eh_ptr1321 ) ; <i32>:4 [#uses=0]
|
|
unreachable
|
|
|
|
invcont1322: ; preds = %eh_then1316
|
|
%tmp1323 = load void ()** @system__soft_links__abort_undefer ; <void ()*> [#uses=1]
|
|
invoke void %tmp1323( )
|
|
to label %cleanup1326 unwind label %unwind1320
|
|
|
|
cleanup1326: ; preds = %invcont1322
|
|
call void @__gnat_end_handler( i8* %eh_ptr975 )
|
|
br label %finally1311
|
|
|
|
eh_else1330: ; preds = %unwind974
|
|
%eh_typeid1331 = call i32 @llvm.eh.typeid.for.i32( i8* bitcast (i32* @__gnat_others_value to i8*) ) ; <i32> [#uses=1]
|
|
%tmp1333 = icmp eq i32 %eh_select977, %eh_typeid1331 ; <i1> [#uses=1]
|
|
br i1 %tmp1333, label %eh_then1334, label %Unwind
|
|
|
|
eh_then1334: ; preds = %eh_else1330
|
|
invoke void @__gnat_begin_handler( i8* %eh_ptr975 )
|
|
to label %invcont1340 unwind label %unwind1338
|
|
|
|
unwind1338: ; preds = %invcont1342, %invcont1340, %eh_then1334
|
|
%eh_ptr1339 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=1]
|
|
call void @__gnat_end_handler( i8* %eh_ptr975 )
|
|
call i32 (...)* @_Unwind_Resume( i8* %eh_ptr1339 ) ; <i32>:5 [#uses=0]
|
|
unreachable
|
|
|
|
invcont1340: ; preds = %eh_then1334
|
|
%tmp1341 = load void ()** @system__soft_links__abort_undefer ; <void ()*> [#uses=1]
|
|
invoke void %tmp1341( )
|
|
to label %invcont1342 unwind label %unwind1338
|
|
|
|
invcont1342: ; preds = %invcont1340
|
|
invoke void @report__failed( i64 or (i64 zext (i32 ptrtoint ([24 x i8]* @.str10 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.35.915 to i32) to i64), i64 32)) )
|
|
to label %cleanup1351 unwind label %unwind1338
|
|
|
|
cleanup1351: ; preds = %invcont1342
|
|
call void @__gnat_end_handler( i8* %eh_ptr975 )
|
|
br label %finally1311
|
|
|
|
finally1311: ; preds = %cleanup1351, %cleanup1326
|
|
%tmp1356 = call i8* @llvm.stacksave( ) ; <i8*> [#uses=6]
|
|
%tmp13571358 = and i32 %tmp184, 255 ; <i32> [#uses=11]
|
|
%tmp13831384 = and i32 %tmp252, 255 ; <i32> [#uses=5]
|
|
%tmp1387 = add i32 %tmp13571358, -1 ; <i32> [#uses=2]
|
|
%tmp1388 = icmp sge i32 %tmp13831384, %tmp1387 ; <i1> [#uses=1]
|
|
%max1389 = select i1 %tmp1388, i32 %tmp13831384, i32 %tmp1387 ; <i32> [#uses=1]
|
|
%tmp1392 = sub i32 %max1389, %tmp13571358 ; <i32> [#uses=1]
|
|
%tmp1393 = add i32 %tmp1392, 1 ; <i32> [#uses=2]
|
|
%tmp1394 = icmp sgt i32 %tmp1393, -1 ; <i1> [#uses=1]
|
|
%max1395 = select i1 %tmp1394, i32 %tmp1393, i32 0 ; <i32> [#uses=5]
|
|
%tmp1397 = alloca i8, i32 %max1395 ; <i8*> [#uses=2]
|
|
%tmp1401 = icmp ult i8 %tmp238239, %tmp170171 ; <i1> [#uses=2]
|
|
br i1 %tmp1401, label %cond_next1425, label %cond_true1404
|
|
|
|
cond_true1404: ; preds = %finally1311
|
|
%tmp1407 = icmp ult i8 %tmp170171, %tmp204205 ; <i1> [#uses=1]
|
|
%tmp1411 = icmp ugt i8 %tmp238239, %tmp272273 ; <i1> [#uses=1]
|
|
%tmp1415 = or i1 %tmp1411, %tmp1407 ; <i1> [#uses=1]
|
|
br i1 %tmp1415, label %cond_true1418, label %cond_next1425
|
|
|
|
cond_true1418: ; preds = %cond_true1404
|
|
invoke void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 144 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind1419
|
|
|
|
unwind1419: ; preds = %cleanup1702, %cleanup1686, %unwind1676, %cond_next1548, %cond_true1546, %cond_true1418
|
|
%eh_ptr1420 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=3]
|
|
%eh_select1422 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr1420, i8* bitcast (i32 (...)* @__gnat_eh_personality to i8*), %struct.exception* @constraint_error, i32* @__gnat_others_value ) ; <i32> [#uses=2]
|
|
%eh_typeid17215981 = call i32 @llvm.eh.typeid.for.i32( i8* getelementptr (%struct.exception* @constraint_error, i32 0, i32 0) ) ; <i32> [#uses=1]
|
|
%tmp17235983 = icmp eq i32 %eh_select1422, %eh_typeid17215981 ; <i1> [#uses=1]
|
|
br i1 %tmp17235983, label %eh_then1724, label %eh_else1742
|
|
|
|
cond_next1425: ; preds = %cond_true1404, %finally1311
|
|
%tmp14281429 = and i32 %tmp150, 255 ; <i32> [#uses=3]
|
|
%tmp14841485 = and i32 %tmp218, 255 ; <i32> [#uses=3]
|
|
%tmp1488 = add i32 %tmp14281429, -1 ; <i32> [#uses=2]
|
|
%tmp1489 = icmp sge i32 %tmp14841485, %tmp1488 ; <i1> [#uses=1]
|
|
%max1490 = select i1 %tmp1489, i32 %tmp14841485, i32 %tmp1488 ; <i32> [#uses=1]
|
|
%tmp1493 = sub i32 %max1490, %tmp14281429 ; <i32> [#uses=1]
|
|
%tmp1494 = add i32 %tmp1493, 1 ; <i32> [#uses=2]
|
|
%tmp1495 = icmp sgt i32 %tmp1494, -1 ; <i1> [#uses=1]
|
|
%max1496 = select i1 %tmp1495, i32 %tmp1494, i32 0 ; <i32> [#uses=1]
|
|
%tmp1497 = alloca i8, i32 %max1496 ; <i8*> [#uses=3]
|
|
%tmp1504 = icmp ugt i8 %tmp170171, %tmp238239 ; <i1> [#uses=1]
|
|
br i1 %tmp1504, label %cond_next1526, label %bb1509
|
|
|
|
bb1509: ; preds = %cond_next1425
|
|
store i8 %tmp238239, i8* %tmp1497
|
|
%tmp1518 = icmp eq i8 %tmp238239, %tmp170171 ; <i1> [#uses=1]
|
|
br i1 %tmp1518, label %cond_next1526, label %cond_next1522.preheader
|
|
|
|
cond_next1522.preheader: ; preds = %bb1509
|
|
%J64b.55984.8 = add i8 %tmp170171, 1 ; <i8> [#uses=1]
|
|
br label %cond_next1522
|
|
|
|
cond_next1522: ; preds = %cond_next1522, %cond_next1522.preheader
|
|
%indvar6241 = phi i8 [ 0, %cond_next1522.preheader ], [ %indvar.next, %cond_next1522 ] ; <i8> [#uses=2]
|
|
%tmp1524 = add i8 %J64b.55984.8, %indvar6241 ; <i8> [#uses=2]
|
|
%tmp151015115988 = zext i8 %tmp1524 to i32 ; <i32> [#uses=1]
|
|
%tmp15135989 = sub i32 %tmp151015115988, %tmp14281429 ; <i32> [#uses=1]
|
|
%tmp15145990 = getelementptr i8* %tmp1497, i32 %tmp15135989 ; <i8*> [#uses=1]
|
|
store i8 %tmp238239, i8* %tmp15145990
|
|
%tmp15185992 = icmp eq i8 %tmp238239, %tmp1524 ; <i1> [#uses=1]
|
|
%indvar.next = add i8 %indvar6241, 1 ; <i8> [#uses=1]
|
|
br i1 %tmp15185992, label %cond_next1526, label %cond_next1522
|
|
|
|
cond_next1526: ; preds = %cond_next1522, %bb1509, %cond_next1425
|
|
%tmp15271528 = zext i8 %tmp272273 to i64 ; <i64> [#uses=1]
|
|
%tmp15291530 = zext i8 %tmp204205 to i64 ; <i64> [#uses=1]
|
|
%tmp1531 = sub i64 %tmp15271528, %tmp15291530 ; <i64> [#uses=1]
|
|
%tmp1532 = add i64 %tmp1531, 1 ; <i64> [#uses=2]
|
|
%tmp1533 = icmp sgt i64 %tmp1532, -1 ; <i1> [#uses=1]
|
|
%max1534 = select i1 %tmp1533, i64 %tmp1532, i64 0 ; <i64> [#uses=1]
|
|
%tmp15351536 = zext i8 %tmp238239 to i64 ; <i64> [#uses=1]
|
|
%tmp15371538 = zext i8 %tmp170171 to i64 ; <i64> [#uses=1]
|
|
%tmp1539 = sub i64 %tmp15351536, %tmp15371538 ; <i64> [#uses=1]
|
|
%tmp1540 = add i64 %tmp1539, 1 ; <i64> [#uses=2]
|
|
%tmp1541 = icmp sgt i64 %tmp1540, -1 ; <i1> [#uses=1]
|
|
%max1542 = select i1 %tmp1541, i64 %tmp1540, i64 0 ; <i64> [#uses=1]
|
|
%tmp1543 = icmp eq i64 %max1534, %max1542 ; <i1> [#uses=1]
|
|
br i1 %tmp1543, label %cond_next1548, label %cond_true1546
|
|
|
|
cond_true1546: ; preds = %cond_next1526
|
|
invoke void @__gnat_rcheck_07( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 144 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind1419
|
|
|
|
cond_next1548: ; preds = %cond_next1526
|
|
call void @llvm.memcpy.i32( i8* %tmp1397, i8* %tmp1497, i32 %max1395, i32 1 )
|
|
invoke void @system__secondary_stack__ss_mark( %struct.system__secondary_stack__mark_id* %tmp31 sret )
|
|
to label %invcont1552 unwind label %unwind1419
|
|
|
|
invcont1552: ; preds = %cond_next1548
|
|
%tmp1555 = getelementptr %struct.system__secondary_stack__mark_id* %tmp31, i32 0, i32 0 ; <i8**> [#uses=1]
|
|
%tmp1556 = load i8** %tmp1555 ; <i8*> [#uses=3]
|
|
%tmp1558 = getelementptr %struct.system__secondary_stack__mark_id* %tmp31, i32 0, i32 1 ; <i32*> [#uses=1]
|
|
%tmp1559 = load i32* %tmp1558 ; <i32> [#uses=3]
|
|
%tmp1562 = icmp ult i8 %tmp238239, %tmp204205 ; <i1> [#uses=1]
|
|
%tmp1566 = icmp ugt i8 %tmp238239, %tmp272273 ; <i1> [#uses=1]
|
|
%tmp1570 = or i1 %tmp1566, %tmp1562 ; <i1> [#uses=1]
|
|
br i1 %tmp1570, label %cond_true1573, label %cond_next1591
|
|
|
|
cond_true1573: ; preds = %invcont1552
|
|
invoke void @__gnat_rcheck_05( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 148 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind1574
|
|
|
|
unwind1574: ; preds = %invcont1638, %invcont1621, %bb1607, %bb1605, %cond_true1573
|
|
%eh_ptr1575 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=5]
|
|
%eh_select1577 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr1575, i8* bitcast (i32 (...)* @__gnat_eh_personality to i8*), i32* @__gnat_others_value ) ; <i32> [#uses=2]
|
|
%eh_typeid1652 = call i32 @llvm.eh.typeid.for.i32( i8* bitcast (i32* @__gnat_others_value to i8*) ) ; <i32> [#uses=1]
|
|
%tmp1654 = icmp eq i32 %eh_select1577, %eh_typeid1652 ; <i1> [#uses=1]
|
|
br i1 %tmp1654, label %eh_then1655, label %cleanup1686
|
|
|
|
cond_next1591: ; preds = %invcont1552
|
|
%tmp1595 = sub i32 %tmp14841485, %tmp13571358 ; <i32> [#uses=1]
|
|
%tmp1596 = getelementptr i8* %tmp1397, i32 %tmp1595 ; <i8*> [#uses=1]
|
|
%tmp1597 = load i8* %tmp1596 ; <i8> [#uses=2]
|
|
%tmp1599 = icmp ugt i8 %tmp1597, 6 ; <i1> [#uses=1]
|
|
br i1 %tmp1599, label %bb1605, label %bb1607
|
|
|
|
bb1605: ; preds = %cond_next1591
|
|
invoke void @__gnat_rcheck_06( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 148 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind1574
|
|
|
|
bb1607: ; preds = %cond_next1591
|
|
%tmp16151616 = zext i8 %tmp1597 to i32 ; <i32> [#uses=1]
|
|
invoke void @system__img_enum__image_enumeration_8( %struct.string___XUP* %tmp34 sret , i32 %tmp16151616, i64 or (i64 zext (i32 ptrtoint ([28 x i8]* @weekS.154 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.32.910 to i32) to i64), i64 32)), i8* getelementptr ([8 x i8]* @weekN.179, i32 0, i32 0) )
|
|
to label %invcont1621 unwind label %unwind1574
|
|
|
|
invcont1621: ; preds = %bb1607
|
|
%tmp1623 = getelementptr %struct.string___XUP* %tmp34, i32 0, i32 0 ; <i8**> [#uses=1]
|
|
%tmp1624 = load i8** %tmp1623 ; <i8*> [#uses=1]
|
|
%tmp16245815 = ptrtoint i8* %tmp1624 to i32 ; <i32> [#uses=1]
|
|
%tmp162458155816 = zext i32 %tmp16245815 to i64 ; <i64> [#uses=1]
|
|
%tmp1626 = getelementptr %struct.string___XUP* %tmp34, i32 0, i32 1 ; <%struct.string___XUB**> [#uses=1]
|
|
%tmp1627 = load %struct.string___XUB** %tmp1626 ; <%struct.string___XUB*> [#uses=1]
|
|
%tmp16275811 = ptrtoint %struct.string___XUB* %tmp1627 to i32 ; <i32> [#uses=1]
|
|
%tmp162758115812 = zext i32 %tmp16275811 to i64 ; <i64> [#uses=1]
|
|
%tmp1627581158125813 = shl i64 %tmp162758115812, 32 ; <i64> [#uses=1]
|
|
%tmp1627581158125813.ins = or i64 %tmp1627581158125813, %tmp162458155816 ; <i64> [#uses=1]
|
|
invoke void @system__string_ops__str_concat( %struct.string___XUP* %tmp37 sret , i64 or (i64 zext (i32 ptrtoint ([30 x i8]* @.str11 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.30.904 to i32) to i64), i64 32)), i64 %tmp1627581158125813.ins )
|
|
to label %invcont1638 unwind label %unwind1574
|
|
|
|
invcont1638: ; preds = %invcont1621
|
|
%tmp1640 = getelementptr %struct.string___XUP* %tmp37, i32 0, i32 0 ; <i8**> [#uses=1]
|
|
%tmp1641 = load i8** %tmp1640 ; <i8*> [#uses=1]
|
|
%tmp16415803 = ptrtoint i8* %tmp1641 to i32 ; <i32> [#uses=1]
|
|
%tmp164158035804 = zext i32 %tmp16415803 to i64 ; <i64> [#uses=1]
|
|
%tmp1643 = getelementptr %struct.string___XUP* %tmp37, i32 0, i32 1 ; <%struct.string___XUB**> [#uses=1]
|
|
%tmp1644 = load %struct.string___XUB** %tmp1643 ; <%struct.string___XUB*> [#uses=1]
|
|
%tmp16445799 = ptrtoint %struct.string___XUB* %tmp1644 to i32 ; <i32> [#uses=1]
|
|
%tmp164457995800 = zext i32 %tmp16445799 to i64 ; <i64> [#uses=1]
|
|
%tmp1644579958005801 = shl i64 %tmp164457995800, 32 ; <i64> [#uses=1]
|
|
%tmp1644579958005801.ins = or i64 %tmp1644579958005801, %tmp164158035804 ; <i64> [#uses=1]
|
|
invoke void @report__failed( i64 %tmp1644579958005801.ins )
|
|
to label %cleanup1702 unwind label %unwind1574
|
|
|
|
eh_then1655: ; preds = %unwind1574
|
|
invoke void @__gnat_begin_handler( i8* %eh_ptr1575 )
|
|
to label %invcont1663 unwind label %unwind1659
|
|
|
|
unwind1659: ; preds = %invcont1665, %invcont1663, %eh_then1655
|
|
%eh_ptr1660 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=2]
|
|
%eh_select1662 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr1660, i8* bitcast (i32 (...)* @__gnat_eh_personality to i8*), %struct.exception* @constraint_error, i32* @__gnat_others_value ) ; <i32> [#uses=1]
|
|
invoke void @__gnat_end_handler( i8* %eh_ptr1575 )
|
|
to label %cleanup1686 unwind label %unwind1676
|
|
|
|
invcont1663: ; preds = %eh_then1655
|
|
%tmp1664 = load void ()** @system__soft_links__abort_undefer ; <void ()*> [#uses=1]
|
|
invoke void %tmp1664( )
|
|
to label %invcont1665 unwind label %unwind1659
|
|
|
|
invcont1665: ; preds = %invcont1663
|
|
invoke void @report__failed( i64 or (i64 zext (i32 ptrtoint ([28 x i8]* @.str12 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.32.910 to i32) to i64), i64 32)) )
|
|
to label %cleanup1674 unwind label %unwind1659
|
|
|
|
cleanup1674: ; preds = %invcont1665
|
|
invoke void @__gnat_end_handler( i8* %eh_ptr1575 )
|
|
to label %cleanup1702 unwind label %unwind1676
|
|
|
|
unwind1676: ; preds = %cleanup1674, %unwind1659
|
|
%eh_ptr1677 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=2]
|
|
%eh_select1679 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr1677, i8* bitcast (i32 (...)* @__gnat_eh_personality to i8*), %struct.exception* @constraint_error, i32* @__gnat_others_value ) ; <i32> [#uses=1]
|
|
%tmp169255575995 = ptrtoint i8* %tmp1556 to i32 ; <i32> [#uses=1]
|
|
%tmp1692555755585996 = zext i32 %tmp169255575995 to i64 ; <i64> [#uses=1]
|
|
%tmp169555545997 = zext i32 %tmp1559 to i64 ; <i64> [#uses=1]
|
|
%tmp1695555455555998 = shl i64 %tmp169555545997, 32 ; <i64> [#uses=1]
|
|
%tmp169555545555.ins5999 = or i64 %tmp1695555455555998, %tmp1692555755585996 ; <i64> [#uses=1]
|
|
invoke void @system__secondary_stack__ss_release( i64 %tmp169555545555.ins5999 )
|
|
to label %cleanup1720 unwind label %unwind1419
|
|
|
|
cleanup1686: ; preds = %unwind1659, %unwind1574
|
|
%eh_selector.18 = phi i32 [ %eh_select1577, %unwind1574 ], [ %eh_select1662, %unwind1659 ] ; <i32> [#uses=1]
|
|
%eh_exception.18 = phi i8* [ %eh_ptr1575, %unwind1574 ], [ %eh_ptr1660, %unwind1659 ] ; <i8*> [#uses=1]
|
|
%tmp16925557 = ptrtoint i8* %tmp1556 to i32 ; <i32> [#uses=1]
|
|
%tmp169255575558 = zext i32 %tmp16925557 to i64 ; <i64> [#uses=1]
|
|
%tmp16955554 = zext i32 %tmp1559 to i64 ; <i64> [#uses=1]
|
|
%tmp169555545555 = shl i64 %tmp16955554, 32 ; <i64> [#uses=1]
|
|
%tmp169555545555.ins = or i64 %tmp169555545555, %tmp169255575558 ; <i64> [#uses=1]
|
|
invoke void @system__secondary_stack__ss_release( i64 %tmp169555545555.ins )
|
|
to label %cleanup1720 unwind label %unwind1419
|
|
|
|
cleanup1702: ; preds = %cleanup1674, %invcont1638
|
|
%tmp17095551 = ptrtoint i8* %tmp1556 to i32 ; <i32> [#uses=1]
|
|
%tmp170955515552 = zext i32 %tmp17095551 to i64 ; <i64> [#uses=1]
|
|
%tmp17125548 = zext i32 %tmp1559 to i64 ; <i64> [#uses=1]
|
|
%tmp171255485549 = shl i64 %tmp17125548, 32 ; <i64> [#uses=1]
|
|
%tmp171255485549.ins = or i64 %tmp171255485549, %tmp170955515552 ; <i64> [#uses=1]
|
|
invoke void @system__secondary_stack__ss_release( i64 %tmp171255485549.ins )
|
|
to label %cleanup1773 unwind label %unwind1419
|
|
|
|
cleanup1720: ; preds = %cleanup1686, %unwind1676
|
|
%eh_selector.185993.1 = phi i32 [ %eh_select1679, %unwind1676 ], [ %eh_selector.18, %cleanup1686 ] ; <i32> [#uses=2]
|
|
%eh_exception.185994.1 = phi i8* [ %eh_ptr1677, %unwind1676 ], [ %eh_exception.18, %cleanup1686 ] ; <i8*> [#uses=2]
|
|
%eh_typeid1721 = call i32 @llvm.eh.typeid.for.i32( i8* getelementptr (%struct.exception* @constraint_error, i32 0, i32 0) ) ; <i32> [#uses=1]
|
|
%tmp1723 = icmp eq i32 %eh_selector.185993.1, %eh_typeid1721 ; <i1> [#uses=1]
|
|
br i1 %tmp1723, label %eh_then1724, label %eh_else1742
|
|
|
|
eh_then1724: ; preds = %cleanup1720, %unwind1419
|
|
%eh_exception.135974.0 = phi i8* [ %eh_ptr1420, %unwind1419 ], [ %eh_exception.185994.1, %cleanup1720 ] ; <i8*> [#uses=3]
|
|
invoke void @__gnat_begin_handler( i8* %eh_exception.135974.0 )
|
|
to label %invcont1730 unwind label %unwind1728
|
|
|
|
unwind1728: ; preds = %invcont1730, %eh_then1724
|
|
%eh_ptr1729 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=1]
|
|
invoke void @__gnat_end_handler( i8* %eh_exception.135974.0 )
|
|
to label %cleanup1771 unwind label %unwind1736
|
|
|
|
invcont1730: ; preds = %eh_then1724
|
|
%tmp1731 = load void ()** @system__soft_links__abort_undefer ; <void ()*> [#uses=1]
|
|
invoke void %tmp1731( )
|
|
to label %cleanup1734 unwind label %unwind1728
|
|
|
|
cleanup1734: ; preds = %invcont1730
|
|
invoke void @__gnat_end_handler( i8* %eh_exception.135974.0 )
|
|
to label %cleanup1773 unwind label %unwind1736
|
|
|
|
unwind1736: ; preds = %cleanup1763, %unwind1750, %cleanup1734, %unwind1728
|
|
%eh_ptr1737 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=1]
|
|
call void @llvm.stackrestore( i8* %tmp1356 )
|
|
call void @llvm.stackrestore( i8* %tmp1356 )
|
|
call i32 (...)* @_Unwind_Resume( i8* %eh_ptr1737 ) ; <i32>:6 [#uses=0]
|
|
unreachable
|
|
|
|
eh_else1742: ; preds = %cleanup1720, %unwind1419
|
|
%eh_selector.135972.1 = phi i32 [ %eh_select1422, %unwind1419 ], [ %eh_selector.185993.1, %cleanup1720 ] ; <i32> [#uses=1]
|
|
%eh_exception.135974.1 = phi i8* [ %eh_ptr1420, %unwind1419 ], [ %eh_exception.185994.1, %cleanup1720 ] ; <i8*> [#uses=4]
|
|
%eh_typeid1743 = call i32 @llvm.eh.typeid.for.i32( i8* bitcast (i32* @__gnat_others_value to i8*) ) ; <i32> [#uses=1]
|
|
%tmp1745 = icmp eq i32 %eh_selector.135972.1, %eh_typeid1743 ; <i1> [#uses=1]
|
|
br i1 %tmp1745, label %eh_then1746, label %cleanup1771
|
|
|
|
eh_then1746: ; preds = %eh_else1742
|
|
invoke void @__gnat_begin_handler( i8* %eh_exception.135974.1 )
|
|
to label %invcont1752 unwind label %unwind1750
|
|
|
|
unwind1750: ; preds = %invcont1754, %invcont1752, %eh_then1746
|
|
%eh_ptr1751 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=1]
|
|
invoke void @__gnat_end_handler( i8* %eh_exception.135974.1 )
|
|
to label %cleanup1771 unwind label %unwind1736
|
|
|
|
invcont1752: ; preds = %eh_then1746
|
|
%tmp1753 = load void ()** @system__soft_links__abort_undefer ; <void ()*> [#uses=1]
|
|
invoke void %tmp1753( )
|
|
to label %invcont1754 unwind label %unwind1750
|
|
|
|
invcont1754: ; preds = %invcont1752
|
|
invoke void @report__failed( i64 or (i64 zext (i32 ptrtoint ([24 x i8]* @.str13 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.35.915 to i32) to i64), i64 32)) )
|
|
to label %cleanup1763 unwind label %unwind1750
|
|
|
|
cleanup1763: ; preds = %invcont1754
|
|
invoke void @__gnat_end_handler( i8* %eh_exception.135974.1 )
|
|
to label %cleanup1773 unwind label %unwind1736
|
|
|
|
cleanup1771: ; preds = %unwind1750, %eh_else1742, %unwind1728
|
|
%eh_exception.20 = phi i8* [ %eh_ptr1729, %unwind1728 ], [ %eh_exception.135974.1, %eh_else1742 ], [ %eh_ptr1751, %unwind1750 ] ; <i8*> [#uses=1]
|
|
call void @llvm.stackrestore( i8* %tmp1356 )
|
|
call void @llvm.stackrestore( i8* %tmp1356 )
|
|
call i32 (...)* @_Unwind_Resume( i8* %eh_exception.20 ) ; <i32>:7 [#uses=0]
|
|
unreachable
|
|
|
|
cleanup1773: ; preds = %cleanup1763, %cleanup1734, %cleanup1702
|
|
call void @llvm.stackrestore( i8* %tmp1356 )
|
|
call void @llvm.stackrestore( i8* %tmp1356 )
|
|
%tmp1780 = call i8* @llvm.stacksave( ) ; <i8*> [#uses=6]
|
|
%tmp17811782 = and i32 %tmp150, 255 ; <i32> [#uses=4]
|
|
%tmp18071808 = and i32 %tmp286, 255 ; <i32> [#uses=2]
|
|
%tmp1811 = add i32 %tmp17811782, -1 ; <i32> [#uses=2]
|
|
%tmp1812 = icmp sge i32 %tmp18071808, %tmp1811 ; <i1> [#uses=1]
|
|
%max1813 = select i1 %tmp1812, i32 %tmp18071808, i32 %tmp1811 ; <i32> [#uses=1]
|
|
%tmp1816 = sub i32 %max1813, %tmp17811782 ; <i32> [#uses=1]
|
|
%tmp1817 = add i32 %tmp1816, 1 ; <i32> [#uses=2]
|
|
%tmp1818 = icmp sgt i32 %tmp1817, -1 ; <i1> [#uses=1]
|
|
%max1819 = select i1 %tmp1818, i32 %tmp1817, i32 0 ; <i32> [#uses=3]
|
|
%tmp1821 = alloca i8, i32 %max1819 ; <i8*> [#uses=2]
|
|
%tmp1863 = alloca i8, i32 %max1819 ; <i8*> [#uses=3]
|
|
%tmp1870 = icmp ugt i8 %tmp170171, %tmp306307 ; <i1> [#uses=1]
|
|
br i1 %tmp1870, label %cond_next1900, label %bb1875
|
|
|
|
bb1875: ; preds = %cleanup1773
|
|
store i8 %tmp238239, i8* %tmp1863
|
|
%tmp1884 = icmp eq i8 %tmp306307, %tmp170171 ; <i1> [#uses=1]
|
|
br i1 %tmp1884, label %cond_next1900, label %cond_next1888.preheader
|
|
|
|
cond_next1888.preheader: ; preds = %bb1875
|
|
%J77b.26000.2 = add i8 %tmp170171, 1 ; <i8> [#uses=1]
|
|
br label %cond_next1888
|
|
|
|
cond_next1888: ; preds = %cond_next1888, %cond_next1888.preheader
|
|
%indvar6245 = phi i8 [ 0, %cond_next1888.preheader ], [ %indvar.next14, %cond_next1888 ] ; <i8> [#uses=2]
|
|
%tmp1890 = add i8 %J77b.26000.2, %indvar6245 ; <i8> [#uses=2]
|
|
%tmp187618776004 = zext i8 %tmp1890 to i32 ; <i32> [#uses=1]
|
|
%tmp18796005 = sub i32 %tmp187618776004, %tmp17811782 ; <i32> [#uses=1]
|
|
%tmp18806006 = getelementptr i8* %tmp1863, i32 %tmp18796005 ; <i8*> [#uses=1]
|
|
store i8 %tmp238239, i8* %tmp18806006
|
|
%tmp18846008 = icmp eq i8 %tmp306307, %tmp1890 ; <i1> [#uses=1]
|
|
%indvar.next14 = add i8 %indvar6245, 1 ; <i8> [#uses=1]
|
|
br i1 %tmp18846008, label %cond_next1900, label %cond_next1888
|
|
|
|
unwind1895: ; preds = %cleanup2300, %cleanup2284, %unwind2274, %cond_next2149, %cond_true1946
|
|
%eh_ptr1896 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=3]
|
|
%eh_select1898 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr1896, i8* bitcast (i32 (...)* @__gnat_eh_personality to i8*), %struct.exception* @constraint_error, i32* @__gnat_others_value ) ; <i32> [#uses=2]
|
|
%eh_typeid23196018 = call i32 @llvm.eh.typeid.for.i32( i8* getelementptr (%struct.exception* @constraint_error, i32 0, i32 0) ) ; <i32> [#uses=1]
|
|
%tmp23216020 = icmp eq i32 %eh_select1898, %eh_typeid23196018 ; <i1> [#uses=1]
|
|
br i1 %tmp23216020, label %eh_then2322, label %eh_else2340
|
|
|
|
cond_next1900: ; preds = %cond_next1888, %bb1875, %cleanup1773
|
|
call void @llvm.memcpy.i32( i8* %tmp1821, i8* %tmp1863, i32 %max1819, i32 1 )
|
|
ret void
|
|
|
|
cond_true1909: ; No predecessors!
|
|
%tmp1912 = icmp ult i8 %tmp170171, %tmp204205 ; <i1> [#uses=1]
|
|
%tmp1916 = icmp ugt i8 %tmp238239, %tmp272273 ; <i1> [#uses=1]
|
|
%tmp1920 = or i1 %tmp1916, %tmp1912 ; <i1> [#uses=0]
|
|
ret void
|
|
|
|
cond_true1923: ; No predecessors!
|
|
ret void
|
|
|
|
cond_next1926: ; No predecessors!
|
|
%tmp1929.not = icmp uge i8 %tmp238239, %tmp170171 ; <i1> [#uses=1]
|
|
%tmp1939 = icmp ugt i8 %tmp238239, %tmp306307 ; <i1> [#uses=2]
|
|
%bothcond = and i1 %tmp1939, %tmp1929.not ; <i1> [#uses=0]
|
|
ret void
|
|
|
|
cond_true1946: ; No predecessors!
|
|
invoke void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 162 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind1895
|
|
|
|
cond_next2149: ; No predecessors!
|
|
invoke void @system__secondary_stack__ss_mark( %struct.system__secondary_stack__mark_id* %tmp46 sret )
|
|
to label %invcont2150 unwind label %unwind1895
|
|
|
|
invcont2150: ; preds = %cond_next2149
|
|
%tmp2153 = getelementptr %struct.system__secondary_stack__mark_id* %tmp46, i32 0, i32 0 ; <i8**> [#uses=1]
|
|
%tmp2154 = load i8** %tmp2153 ; <i8*> [#uses=3]
|
|
%tmp2156 = getelementptr %struct.system__secondary_stack__mark_id* %tmp46, i32 0, i32 1 ; <i32*> [#uses=1]
|
|
%tmp2157 = load i32* %tmp2156 ; <i32> [#uses=3]
|
|
%tmp2168 = or i1 %tmp1939, %tmp1401 ; <i1> [#uses=1]
|
|
br i1 %tmp2168, label %cond_true2171, label %cond_next2189
|
|
|
|
cond_true2171: ; preds = %invcont2150
|
|
invoke void @__gnat_rcheck_05( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 165 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind2172
|
|
|
|
unwind2172: ; preds = %invcont2236, %invcont2219, %bb2205, %bb2203, %cond_true2171
|
|
%eh_ptr2173 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=5]
|
|
%eh_select2175 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr2173, i8* bitcast (i32 (...)* @__gnat_eh_personality to i8*), i32* @__gnat_others_value ) ; <i32> [#uses=2]
|
|
%eh_typeid2250 = call i32 @llvm.eh.typeid.for.i32( i8* bitcast (i32* @__gnat_others_value to i8*) ) ; <i32> [#uses=1]
|
|
%tmp2252 = icmp eq i32 %eh_select2175, %eh_typeid2250 ; <i1> [#uses=1]
|
|
br i1 %tmp2252, label %eh_then2253, label %cleanup2284
|
|
|
|
cond_next2189: ; preds = %invcont2150
|
|
%tmp21902191 = and i32 %tmp218, 255 ; <i32> [#uses=1]
|
|
%tmp2193 = sub i32 %tmp21902191, %tmp17811782 ; <i32> [#uses=1]
|
|
%tmp2194 = getelementptr i8* %tmp1821, i32 %tmp2193 ; <i8*> [#uses=1]
|
|
%tmp2195 = load i8* %tmp2194 ; <i8> [#uses=2]
|
|
%tmp2197 = icmp ugt i8 %tmp2195, 6 ; <i1> [#uses=1]
|
|
br i1 %tmp2197, label %bb2203, label %bb2205
|
|
|
|
bb2203: ; preds = %cond_next2189
|
|
invoke void @__gnat_rcheck_06( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 165 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind2172
|
|
|
|
bb2205: ; preds = %cond_next2189
|
|
%tmp22132214 = zext i8 %tmp2195 to i32 ; <i32> [#uses=1]
|
|
invoke void @system__img_enum__image_enumeration_8( %struct.string___XUP* %tmp49 sret , i32 %tmp22132214, i64 or (i64 zext (i32 ptrtoint ([28 x i8]* @weekS.154 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.32.910 to i32) to i64), i64 32)), i8* getelementptr ([8 x i8]* @weekN.179, i32 0, i32 0) )
|
|
to label %invcont2219 unwind label %unwind2172
|
|
|
|
invcont2219: ; preds = %bb2205
|
|
%tmp2221 = getelementptr %struct.string___XUP* %tmp49, i32 0, i32 0 ; <i8**> [#uses=1]
|
|
%tmp2222 = load i8** %tmp2221 ; <i8*> [#uses=1]
|
|
%tmp22225781 = ptrtoint i8* %tmp2222 to i32 ; <i32> [#uses=1]
|
|
%tmp222257815782 = zext i32 %tmp22225781 to i64 ; <i64> [#uses=1]
|
|
%tmp2224 = getelementptr %struct.string___XUP* %tmp49, i32 0, i32 1 ; <%struct.string___XUB**> [#uses=1]
|
|
%tmp2225 = load %struct.string___XUB** %tmp2224 ; <%struct.string___XUB*> [#uses=1]
|
|
%tmp22255777 = ptrtoint %struct.string___XUB* %tmp2225 to i32 ; <i32> [#uses=1]
|
|
%tmp222557775778 = zext i32 %tmp22255777 to i64 ; <i64> [#uses=1]
|
|
%tmp2225577757785779 = shl i64 %tmp222557775778, 32 ; <i64> [#uses=1]
|
|
%tmp2225577757785779.ins = or i64 %tmp2225577757785779, %tmp222257815782 ; <i64> [#uses=1]
|
|
invoke void @system__string_ops__str_concat( %struct.string___XUP* %tmp52 sret , i64 or (i64 zext (i32 ptrtoint ([30 x i8]* @.str14 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.30.904 to i32) to i64), i64 32)), i64 %tmp2225577757785779.ins )
|
|
to label %invcont2236 unwind label %unwind2172
|
|
|
|
invcont2236: ; preds = %invcont2219
|
|
%tmp2238 = getelementptr %struct.string___XUP* %tmp52, i32 0, i32 0 ; <i8**> [#uses=1]
|
|
%tmp2239 = load i8** %tmp2238 ; <i8*> [#uses=1]
|
|
%tmp22395769 = ptrtoint i8* %tmp2239 to i32 ; <i32> [#uses=1]
|
|
%tmp223957695770 = zext i32 %tmp22395769 to i64 ; <i64> [#uses=1]
|
|
%tmp2241 = getelementptr %struct.string___XUP* %tmp52, i32 0, i32 1 ; <%struct.string___XUB**> [#uses=1]
|
|
%tmp2242 = load %struct.string___XUB** %tmp2241 ; <%struct.string___XUB*> [#uses=1]
|
|
%tmp22425765 = ptrtoint %struct.string___XUB* %tmp2242 to i32 ; <i32> [#uses=1]
|
|
%tmp224257655766 = zext i32 %tmp22425765 to i64 ; <i64> [#uses=1]
|
|
%tmp2242576557665767 = shl i64 %tmp224257655766, 32 ; <i64> [#uses=1]
|
|
%tmp2242576557665767.ins = or i64 %tmp2242576557665767, %tmp223957695770 ; <i64> [#uses=1]
|
|
invoke void @report__failed( i64 %tmp2242576557665767.ins )
|
|
to label %cleanup2300 unwind label %unwind2172
|
|
|
|
eh_then2253: ; preds = %unwind2172
|
|
invoke void @__gnat_begin_handler( i8* %eh_ptr2173 )
|
|
to label %invcont2261 unwind label %unwind2257
|
|
|
|
unwind2257: ; preds = %invcont2263, %invcont2261, %eh_then2253
|
|
%eh_ptr2258 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=2]
|
|
%eh_select2260 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr2258, i8* bitcast (i32 (...)* @__gnat_eh_personality to i8*), %struct.exception* @constraint_error, i32* @__gnat_others_value ) ; <i32> [#uses=1]
|
|
invoke void @__gnat_end_handler( i8* %eh_ptr2173 )
|
|
to label %cleanup2284 unwind label %unwind2274
|
|
|
|
invcont2261: ; preds = %eh_then2253
|
|
%tmp2262 = load void ()** @system__soft_links__abort_undefer ; <void ()*> [#uses=1]
|
|
invoke void %tmp2262( )
|
|
to label %invcont2263 unwind label %unwind2257
|
|
|
|
invcont2263: ; preds = %invcont2261
|
|
invoke void @report__failed( i64 or (i64 zext (i32 ptrtoint ([28 x i8]* @.str15 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.32.910 to i32) to i64), i64 32)) )
|
|
to label %cleanup2272 unwind label %unwind2257
|
|
|
|
cleanup2272: ; preds = %invcont2263
|
|
invoke void @__gnat_end_handler( i8* %eh_ptr2173 )
|
|
to label %cleanup2300 unwind label %unwind2274
|
|
|
|
unwind2274: ; preds = %cleanup2272, %unwind2257
|
|
%eh_ptr2275 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=2]
|
|
%eh_select2277 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr2275, i8* bitcast (i32 (...)* @__gnat_eh_personality to i8*), %struct.exception* @constraint_error, i32* @__gnat_others_value ) ; <i32> [#uses=1]
|
|
%tmp229055456023 = ptrtoint i8* %tmp2154 to i32 ; <i32> [#uses=1]
|
|
%tmp2290554555466024 = zext i32 %tmp229055456023 to i64 ; <i64> [#uses=1]
|
|
%tmp229355426025 = zext i32 %tmp2157 to i64 ; <i64> [#uses=1]
|
|
%tmp2293554255436026 = shl i64 %tmp229355426025, 32 ; <i64> [#uses=1]
|
|
%tmp229355425543.ins6027 = or i64 %tmp2293554255436026, %tmp2290554555466024 ; <i64> [#uses=1]
|
|
invoke void @system__secondary_stack__ss_release( i64 %tmp229355425543.ins6027 )
|
|
to label %cleanup2318 unwind label %unwind1895
|
|
|
|
cleanup2284: ; preds = %unwind2257, %unwind2172
|
|
%eh_selector.24 = phi i32 [ %eh_select2175, %unwind2172 ], [ %eh_select2260, %unwind2257 ] ; <i32> [#uses=1]
|
|
%eh_exception.26 = phi i8* [ %eh_ptr2173, %unwind2172 ], [ %eh_ptr2258, %unwind2257 ] ; <i8*> [#uses=1]
|
|
%tmp22905545 = ptrtoint i8* %tmp2154 to i32 ; <i32> [#uses=1]
|
|
%tmp229055455546 = zext i32 %tmp22905545 to i64 ; <i64> [#uses=1]
|
|
%tmp22935542 = zext i32 %tmp2157 to i64 ; <i64> [#uses=1]
|
|
%tmp229355425543 = shl i64 %tmp22935542, 32 ; <i64> [#uses=1]
|
|
%tmp229355425543.ins = or i64 %tmp229355425543, %tmp229055455546 ; <i64> [#uses=1]
|
|
invoke void @system__secondary_stack__ss_release( i64 %tmp229355425543.ins )
|
|
to label %cleanup2318 unwind label %unwind1895
|
|
|
|
cleanup2300: ; preds = %cleanup2272, %invcont2236
|
|
%tmp23075539 = ptrtoint i8* %tmp2154 to i32 ; <i32> [#uses=1]
|
|
%tmp230755395540 = zext i32 %tmp23075539 to i64 ; <i64> [#uses=1]
|
|
%tmp23105536 = zext i32 %tmp2157 to i64 ; <i64> [#uses=1]
|
|
%tmp231055365537 = shl i64 %tmp23105536, 32 ; <i64> [#uses=1]
|
|
%tmp231055365537.ins = or i64 %tmp231055365537, %tmp230755395540 ; <i64> [#uses=1]
|
|
invoke void @system__secondary_stack__ss_release( i64 %tmp231055365537.ins )
|
|
to label %cleanup2371 unwind label %unwind1895
|
|
|
|
cleanup2318: ; preds = %cleanup2284, %unwind2274
|
|
%eh_selector.246021.1 = phi i32 [ %eh_select2277, %unwind2274 ], [ %eh_selector.24, %cleanup2284 ] ; <i32> [#uses=2]
|
|
%eh_exception.266022.1 = phi i8* [ %eh_ptr2275, %unwind2274 ], [ %eh_exception.26, %cleanup2284 ] ; <i8*> [#uses=2]
|
|
%eh_typeid2319 = call i32 @llvm.eh.typeid.for.i32( i8* getelementptr (%struct.exception* @constraint_error, i32 0, i32 0) ) ; <i32> [#uses=1]
|
|
%tmp2321 = icmp eq i32 %eh_selector.246021.1, %eh_typeid2319 ; <i1> [#uses=1]
|
|
br i1 %tmp2321, label %eh_then2322, label %eh_else2340
|
|
|
|
eh_then2322: ; preds = %cleanup2318, %unwind1895
|
|
%eh_exception.216011.0 = phi i8* [ %eh_ptr1896, %unwind1895 ], [ %eh_exception.266022.1, %cleanup2318 ] ; <i8*> [#uses=3]
|
|
invoke void @__gnat_begin_handler( i8* %eh_exception.216011.0 )
|
|
to label %invcont2328 unwind label %unwind2326
|
|
|
|
unwind2326: ; preds = %invcont2328, %eh_then2322
|
|
%eh_ptr2327 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=1]
|
|
invoke void @__gnat_end_handler( i8* %eh_exception.216011.0 )
|
|
to label %cleanup2369 unwind label %unwind2334
|
|
|
|
invcont2328: ; preds = %eh_then2322
|
|
%tmp2329 = load void ()** @system__soft_links__abort_undefer ; <void ()*> [#uses=1]
|
|
invoke void %tmp2329( )
|
|
to label %cleanup2332 unwind label %unwind2326
|
|
|
|
cleanup2332: ; preds = %invcont2328
|
|
invoke void @__gnat_end_handler( i8* %eh_exception.216011.0 )
|
|
to label %cleanup2371 unwind label %unwind2334
|
|
|
|
unwind2334: ; preds = %cleanup2361, %unwind2348, %cleanup2332, %unwind2326
|
|
%eh_ptr2335 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=1]
|
|
call void @llvm.stackrestore( i8* %tmp1780 )
|
|
call void @llvm.stackrestore( i8* %tmp1780 )
|
|
call i32 (...)* @_Unwind_Resume( i8* %eh_ptr2335 ) ; <i32>:8 [#uses=0]
|
|
unreachable
|
|
|
|
eh_else2340: ; preds = %cleanup2318, %unwind1895
|
|
%eh_selector.196009.1 = phi i32 [ %eh_select1898, %unwind1895 ], [ %eh_selector.246021.1, %cleanup2318 ] ; <i32> [#uses=1]
|
|
%eh_exception.216011.1 = phi i8* [ %eh_ptr1896, %unwind1895 ], [ %eh_exception.266022.1, %cleanup2318 ] ; <i8*> [#uses=4]
|
|
%eh_typeid2341 = call i32 @llvm.eh.typeid.for.i32( i8* bitcast (i32* @__gnat_others_value to i8*) ) ; <i32> [#uses=1]
|
|
%tmp2343 = icmp eq i32 %eh_selector.196009.1, %eh_typeid2341 ; <i1> [#uses=1]
|
|
br i1 %tmp2343, label %eh_then2344, label %cleanup2369
|
|
|
|
eh_then2344: ; preds = %eh_else2340
|
|
invoke void @__gnat_begin_handler( i8* %eh_exception.216011.1 )
|
|
to label %invcont2350 unwind label %unwind2348
|
|
|
|
unwind2348: ; preds = %invcont2352, %invcont2350, %eh_then2344
|
|
%eh_ptr2349 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=1]
|
|
invoke void @__gnat_end_handler( i8* %eh_exception.216011.1 )
|
|
to label %cleanup2369 unwind label %unwind2334
|
|
|
|
invcont2350: ; preds = %eh_then2344
|
|
%tmp2351 = load void ()** @system__soft_links__abort_undefer ; <void ()*> [#uses=1]
|
|
invoke void %tmp2351( )
|
|
to label %invcont2352 unwind label %unwind2348
|
|
|
|
invcont2352: ; preds = %invcont2350
|
|
invoke void @report__failed( i64 or (i64 zext (i32 ptrtoint ([24 x i8]* @.str16 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.35.915 to i32) to i64), i64 32)) )
|
|
to label %cleanup2361 unwind label %unwind2348
|
|
|
|
cleanup2361: ; preds = %invcont2352
|
|
invoke void @__gnat_end_handler( i8* %eh_exception.216011.1 )
|
|
to label %cleanup2371 unwind label %unwind2334
|
|
|
|
cleanup2369: ; preds = %unwind2348, %eh_else2340, %unwind2326
|
|
%eh_exception.28 = phi i8* [ %eh_ptr2327, %unwind2326 ], [ %eh_exception.216011.1, %eh_else2340 ], [ %eh_ptr2349, %unwind2348 ] ; <i8*> [#uses=1]
|
|
call void @llvm.stackrestore( i8* %tmp1780 )
|
|
call void @llvm.stackrestore( i8* %tmp1780 )
|
|
call i32 (...)* @_Unwind_Resume( i8* %eh_exception.28 ) ; <i32>:9 [#uses=0]
|
|
unreachable
|
|
|
|
cleanup2371: ; preds = %cleanup2361, %cleanup2332, %cleanup2300
|
|
call void @llvm.stackrestore( i8* %tmp1780 )
|
|
call void @llvm.stackrestore( i8* %tmp1780 )
|
|
invoke void @system__secondary_stack__ss_mark( %struct.system__secondary_stack__mark_id* %tmp55 sret )
|
|
to label %invcont2382 unwind label %unwind2378
|
|
|
|
unwind2378: ; preds = %cleanup2371
|
|
%eh_ptr2379 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=3]
|
|
%eh_select2381 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr2379, i8* bitcast (i32 (...)* @__gnat_eh_personality to i8*), %struct.exception* @constraint_error, i32* @__gnat_others_value ) ; <i32> [#uses=2]
|
|
%eh_typeid26496037 = call i32 @llvm.eh.typeid.for.i32( i8* getelementptr (%struct.exception* @constraint_error, i32 0, i32 0) ) ; <i32> [#uses=1]
|
|
%tmp26516039 = icmp eq i32 %eh_select2381, %eh_typeid26496037 ; <i1> [#uses=1]
|
|
br i1 %tmp26516039, label %eh_then2652, label %eh_else2666
|
|
|
|
invcont2382: ; preds = %cleanup2371
|
|
%tmp2385 = getelementptr %struct.system__secondary_stack__mark_id* %tmp55, i32 0, i32 0 ; <i8**> [#uses=1]
|
|
%tmp2386 = load i8** %tmp2385 ; <i8*> [#uses=2]
|
|
%tmp2388 = getelementptr %struct.system__secondary_stack__mark_id* %tmp55, i32 0, i32 1 ; <i32*> [#uses=1]
|
|
%tmp2389 = load i32* %tmp2388 ; <i32> [#uses=2]
|
|
%tmp2390 = call i8* @llvm.stacksave( ) ; <i8*> [#uses=3]
|
|
%tmp2393 = icmp ult i8 %tmp306307, %tmp170171 ; <i1> [#uses=1]
|
|
br i1 %tmp2393, label %cond_next2417, label %cond_true2396
|
|
|
|
cond_true2396: ; preds = %invcont2382
|
|
%tmp2399 = icmp ult i8 %tmp170171, %tmp204205 ; <i1> [#uses=1]
|
|
%tmp2403 = icmp ugt i8 %tmp306307, %tmp272273 ; <i1> [#uses=1]
|
|
%tmp2407 = or i1 %tmp2403, %tmp2399 ; <i1> [#uses=1]
|
|
br i1 %tmp2407, label %cond_true2410, label %cond_next2417
|
|
|
|
cond_true2410: ; preds = %cond_true2396
|
|
invoke void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 177 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind2411
|
|
|
|
unwind2411: ; preds = %invcont2591, %invcont2574, %bb2560, %bb2558, %bb2524, %bb2506, %cond_true2410
|
|
%eh_ptr2412 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=3]
|
|
%eh_select2414 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr2412, i8* bitcast (i32 (...)* @__gnat_eh_personality to i8*), %struct.exception* @constraint_error, i32* @__gnat_others_value ) ; <i32> [#uses=2]
|
|
%tmp26315527 = ptrtoint i8* %tmp2386 to i32 ; <i32> [#uses=1]
|
|
%tmp263155275528 = zext i32 %tmp26315527 to i64 ; <i64> [#uses=1]
|
|
%tmp26345524 = zext i32 %tmp2389 to i64 ; <i64> [#uses=1]
|
|
%tmp263455245525 = shl i64 %tmp26345524, 32 ; <i64> [#uses=1]
|
|
%tmp263455245525.ins = or i64 %tmp263455245525, %tmp263155275528 ; <i64> [#uses=1]
|
|
invoke void @system__secondary_stack__ss_release( i64 %tmp263455245525.ins )
|
|
to label %cleanup2644 unwind label %unwind2618
|
|
|
|
cond_next2417: ; preds = %cond_true2396, %invcont2382
|
|
%tmp2493 = icmp ugt i8 %tmp170171, %tmp238239 ; <i1> [#uses=1]
|
|
%tmp2500 = icmp ugt i8 %tmp238239, %tmp306307 ; <i1> [#uses=1]
|
|
%bothcond5903 = or i1 %tmp2500, %tmp2493 ; <i1> [#uses=1]
|
|
br i1 %bothcond5903, label %bb2506, label %cond_next2515
|
|
|
|
bb2506: ; preds = %cond_next2417
|
|
invoke void @__gnat_rcheck_05( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 180 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind2411
|
|
|
|
cond_next2515: ; preds = %cond_next2417
|
|
br i1 %tmp240, label %bb2524, label %bb2526
|
|
|
|
bb2524: ; preds = %cond_next2515
|
|
invoke void @__gnat_rcheck_06( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 180 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind2411
|
|
|
|
bb2526: ; preds = %cond_next2515
|
|
br i1 %tmp274, label %bb2558, label %bb2560
|
|
|
|
bb2558: ; preds = %bb2526
|
|
invoke void @__gnat_rcheck_06( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 182 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind2411
|
|
|
|
bb2560: ; preds = %bb2526
|
|
invoke void @system__img_enum__image_enumeration_8( %struct.string___XUP* %tmp58 sret , i32 %tmp13831384, i64 or (i64 zext (i32 ptrtoint ([28 x i8]* @weekS.154 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.32.910 to i32) to i64), i64 32)), i8* getelementptr ([8 x i8]* @weekN.179, i32 0, i32 0) )
|
|
to label %invcont2574 unwind label %unwind2411
|
|
|
|
invcont2574: ; preds = %bb2560
|
|
%tmp2576 = getelementptr %struct.string___XUP* %tmp58, i32 0, i32 0 ; <i8**> [#uses=1]
|
|
%tmp2577 = load i8** %tmp2576 ; <i8*> [#uses=1]
|
|
%tmp25775747 = ptrtoint i8* %tmp2577 to i32 ; <i32> [#uses=1]
|
|
%tmp257757475748 = zext i32 %tmp25775747 to i64 ; <i64> [#uses=1]
|
|
%tmp2579 = getelementptr %struct.string___XUP* %tmp58, i32 0, i32 1 ; <%struct.string___XUB**> [#uses=1]
|
|
%tmp2580 = load %struct.string___XUB** %tmp2579 ; <%struct.string___XUB*> [#uses=1]
|
|
%tmp25805743 = ptrtoint %struct.string___XUB* %tmp2580 to i32 ; <i32> [#uses=1]
|
|
%tmp258057435744 = zext i32 %tmp25805743 to i64 ; <i64> [#uses=1]
|
|
%tmp2580574357445745 = shl i64 %tmp258057435744, 32 ; <i64> [#uses=1]
|
|
%tmp2580574357445745.ins = or i64 %tmp2580574357445745, %tmp257757475748 ; <i64> [#uses=1]
|
|
invoke void @system__string_ops__str_concat( %struct.string___XUP* %tmp61 sret , i64 or (i64 zext (i32 ptrtoint ([30 x i8]* @.str17 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.30.904 to i32) to i64), i64 32)), i64 %tmp2580574357445745.ins )
|
|
to label %invcont2591 unwind label %unwind2411
|
|
|
|
invcont2591: ; preds = %invcont2574
|
|
%tmp2593 = getelementptr %struct.string___XUP* %tmp61, i32 0, i32 0 ; <i8**> [#uses=1]
|
|
%tmp2594 = load i8** %tmp2593 ; <i8*> [#uses=1]
|
|
%tmp25945735 = ptrtoint i8* %tmp2594 to i32 ; <i32> [#uses=1]
|
|
%tmp259457355736 = zext i32 %tmp25945735 to i64 ; <i64> [#uses=1]
|
|
%tmp2596 = getelementptr %struct.string___XUP* %tmp61, i32 0, i32 1 ; <%struct.string___XUB**> [#uses=1]
|
|
%tmp2597 = load %struct.string___XUB** %tmp2596 ; <%struct.string___XUB*> [#uses=1]
|
|
%tmp25975731 = ptrtoint %struct.string___XUB* %tmp2597 to i32 ; <i32> [#uses=1]
|
|
%tmp259757315732 = zext i32 %tmp25975731 to i64 ; <i64> [#uses=1]
|
|
%tmp2597573157325733 = shl i64 %tmp259757315732, 32 ; <i64> [#uses=1]
|
|
%tmp2597573157325733.ins = or i64 %tmp2597573157325733, %tmp259457355736 ; <i64> [#uses=1]
|
|
invoke void @report__failed( i64 %tmp2597573157325733.ins )
|
|
to label %cleanup2604 unwind label %unwind2411
|
|
|
|
cleanup2604: ; preds = %invcont2591
|
|
%tmp26105533 = ptrtoint i8* %tmp2386 to i32 ; <i32> [#uses=1]
|
|
%tmp261055335534 = zext i32 %tmp26105533 to i64 ; <i64> [#uses=1]
|
|
%tmp26135530 = zext i32 %tmp2389 to i64 ; <i64> [#uses=1]
|
|
%tmp261355305531 = shl i64 %tmp26135530, 32 ; <i64> [#uses=1]
|
|
%tmp261355305531.ins = or i64 %tmp261355305531, %tmp261055335534 ; <i64> [#uses=1]
|
|
invoke void @system__secondary_stack__ss_release( i64 %tmp261355305531.ins )
|
|
to label %cleanup2642 unwind label %unwind2618
|
|
|
|
unwind2618: ; preds = %cleanup2604, %unwind2411
|
|
%eh_ptr2619 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=3]
|
|
%eh_select2621 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr2619, i8* bitcast (i32 (...)* @__gnat_eh_personality to i8*), %struct.exception* @constraint_error, i32* @__gnat_others_value ) ; <i32> [#uses=2]
|
|
call void @llvm.stackrestore( i8* %tmp2390 )
|
|
%eh_typeid26493 = call i32 @llvm.eh.typeid.for.i32( i8* getelementptr (%struct.exception* @constraint_error, i32 0, i32 0) ) ; <i32> [#uses=1]
|
|
%tmp26514 = icmp eq i32 %eh_select2621, %eh_typeid26493 ; <i1> [#uses=1]
|
|
br i1 %tmp26514, label %eh_then2652, label %eh_else2666
|
|
|
|
cleanup2642: ; preds = %cleanup2604
|
|
call void @llvm.stackrestore( i8* %tmp2390 )
|
|
%tmp26946042 = icmp ult i8 %tmp238239, %tmp137138 ; <i1> [#uses=1]
|
|
br i1 %tmp26946042, label %cond_next2718, label %cond_true2697
|
|
|
|
cleanup2644: ; preds = %unwind2411
|
|
call void @llvm.stackrestore( i8* %tmp2390 )
|
|
%eh_typeid2649 = call i32 @llvm.eh.typeid.for.i32( i8* getelementptr (%struct.exception* @constraint_error, i32 0, i32 0) ) ; <i32> [#uses=1]
|
|
%tmp2651 = icmp eq i32 %eh_select2414, %eh_typeid2649 ; <i1> [#uses=1]
|
|
br i1 %tmp2651, label %eh_then2652, label %eh_else2666
|
|
|
|
eh_then2652: ; preds = %cleanup2644, %unwind2618, %unwind2378
|
|
%eh_exception.296030.0 = phi i8* [ %eh_ptr2379, %unwind2378 ], [ %eh_ptr2619, %unwind2618 ], [ %eh_ptr2412, %cleanup2644 ] ; <i8*> [#uses=3]
|
|
invoke void @__gnat_begin_handler( i8* %eh_exception.296030.0 )
|
|
to label %invcont2658 unwind label %unwind2656
|
|
|
|
unwind2656: ; preds = %invcont2658, %eh_then2652
|
|
%eh_ptr2657 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=1]
|
|
call void @__gnat_end_handler( i8* %eh_exception.296030.0 )
|
|
call i32 (...)* @_Unwind_Resume( i8* %eh_ptr2657 ) ; <i32>:10 [#uses=0]
|
|
unreachable
|
|
|
|
invcont2658: ; preds = %eh_then2652
|
|
%tmp2659 = load void ()** @system__soft_links__abort_undefer ; <void ()*> [#uses=1]
|
|
invoke void %tmp2659( )
|
|
to label %cleanup2662 unwind label %unwind2656
|
|
|
|
cleanup2662: ; preds = %invcont2658
|
|
call void @__gnat_end_handler( i8* %eh_exception.296030.0 )
|
|
%tmp26946043 = icmp ult i8 %tmp238239, %tmp137138 ; <i1> [#uses=1]
|
|
br i1 %tmp26946043, label %cond_next2718, label %cond_true2697
|
|
|
|
eh_else2666: ; preds = %cleanup2644, %unwind2618, %unwind2378
|
|
%eh_selector.256028.1 = phi i32 [ %eh_select2381, %unwind2378 ], [ %eh_select2621, %unwind2618 ], [ %eh_select2414, %cleanup2644 ] ; <i32> [#uses=1]
|
|
%eh_exception.296030.1 = phi i8* [ %eh_ptr2379, %unwind2378 ], [ %eh_ptr2619, %unwind2618 ], [ %eh_ptr2412, %cleanup2644 ] ; <i8*> [#uses=4]
|
|
%eh_typeid2667 = call i32 @llvm.eh.typeid.for.i32( i8* bitcast (i32* @__gnat_others_value to i8*) ) ; <i32> [#uses=1]
|
|
%tmp2669 = icmp eq i32 %eh_selector.256028.1, %eh_typeid2667 ; <i1> [#uses=1]
|
|
br i1 %tmp2669, label %eh_then2670, label %Unwind
|
|
|
|
eh_then2670: ; preds = %eh_else2666
|
|
invoke void @__gnat_begin_handler( i8* %eh_exception.296030.1 )
|
|
to label %invcont2676 unwind label %unwind2674
|
|
|
|
unwind2674: ; preds = %invcont2678, %invcont2676, %eh_then2670
|
|
%eh_ptr2675 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=1]
|
|
call void @__gnat_end_handler( i8* %eh_exception.296030.1 )
|
|
call i32 (...)* @_Unwind_Resume( i8* %eh_ptr2675 ) ; <i32>:11 [#uses=0]
|
|
unreachable
|
|
|
|
invcont2676: ; preds = %eh_then2670
|
|
%tmp2677 = load void ()** @system__soft_links__abort_undefer ; <void ()*> [#uses=1]
|
|
invoke void %tmp2677( )
|
|
to label %invcont2678 unwind label %unwind2674
|
|
|
|
invcont2678: ; preds = %invcont2676
|
|
invoke void @report__failed( i64 or (i64 zext (i32 ptrtoint ([24 x i8]* @.str18 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.35.915 to i32) to i64), i64 32)) )
|
|
to label %cleanup2687 unwind label %unwind2674
|
|
|
|
cleanup2687: ; preds = %invcont2678
|
|
call void @__gnat_end_handler( i8* %eh_exception.296030.1 )
|
|
%tmp2694 = icmp ult i8 %tmp238239, %tmp137138 ; <i1> [#uses=1]
|
|
br i1 %tmp2694, label %cond_next2718, label %cond_true2697
|
|
|
|
cond_true2697: ; preds = %cleanup2687, %cleanup2662, %cleanup2642
|
|
%tmp2700 = icmp ult i8 %tmp137138, %tmp204205 ; <i1> [#uses=1]
|
|
%tmp2704 = icmp ugt i8 %tmp238239, %tmp272273 ; <i1> [#uses=1]
|
|
%tmp2708 = or i1 %tmp2704, %tmp2700 ; <i1> [#uses=1]
|
|
br i1 %tmp2708, label %cond_true2711, label %cond_next2718
|
|
|
|
cond_true2711: ; preds = %cond_true2697
|
|
invoke void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 192 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind2712
|
|
|
|
unwind2712: ; preds = %cleanup2990, %unwind2975, %cond_true2711
|
|
%eh_ptr2713 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=3]
|
|
%eh_select2715 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr2713, i8* bitcast (i32 (...)* @__gnat_eh_personality to i8*), %struct.exception* @constraint_error, i32* @__gnat_others_value ) ; <i32> [#uses=2]
|
|
%eh_typeid29996053 = call i32 @llvm.eh.typeid.for.i32( i8* getelementptr (%struct.exception* @constraint_error, i32 0, i32 0) ) ; <i32> [#uses=1]
|
|
%tmp30016055 = icmp eq i32 %eh_select2715, %eh_typeid29996053 ; <i1> [#uses=1]
|
|
br i1 %tmp30016055, label %eh_then3002, label %eh_else3016
|
|
|
|
cond_next2718: ; preds = %cond_true2697, %cleanup2687, %cleanup2662, %cleanup2642
|
|
invoke void @system__secondary_stack__ss_mark( %struct.system__secondary_stack__mark_id* %tmp63 sret )
|
|
to label %invcont2766 unwind label %unwind2762
|
|
|
|
unwind2762: ; preds = %cond_next2718
|
|
%eh_ptr2763 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=3]
|
|
%eh_select2765 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr2763, i8* bitcast (i32 (...)* @__gnat_eh_personality to i8*), i32* @__gnat_others_value ) ; <i32> [#uses=2]
|
|
%eh_typeid29686060 = call i32 @llvm.eh.typeid.for.i32( i8* bitcast (i32* @__gnat_others_value to i8*) ) ; <i32> [#uses=1]
|
|
%tmp29706061 = icmp eq i32 %eh_select2765, %eh_typeid29686060 ; <i1> [#uses=1]
|
|
br i1 %tmp29706061, label %eh_then2971, label %cleanup2998
|
|
|
|
invcont2766: ; preds = %cond_next2718
|
|
%tmp2769 = getelementptr %struct.system__secondary_stack__mark_id* %tmp63, i32 0, i32 0 ; <i8**> [#uses=1]
|
|
%tmp2770 = load i8** %tmp2769 ; <i8*> [#uses=2]
|
|
%tmp2772 = getelementptr %struct.system__secondary_stack__mark_id* %tmp63, i32 0, i32 1 ; <i32*> [#uses=1]
|
|
%tmp2773 = load i32* %tmp2772 ; <i32> [#uses=2]
|
|
%tmp2774 = call i8* @llvm.stacksave( ) ; <i8*> [#uses=3]
|
|
%tmp2808 = icmp ugt i8 %tmp137138, %tmp204205 ; <i1> [#uses=1]
|
|
%tmp2815 = icmp ult i8 %tmp238239, %tmp204205 ; <i1> [#uses=1]
|
|
%bothcond5904 = or i1 %tmp2815, %tmp2808 ; <i1> [#uses=1]
|
|
br i1 %bothcond5904, label %bb2821, label %cond_next2834
|
|
|
|
bb2821: ; preds = %invcont2766
|
|
invoke void @__gnat_rcheck_05( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 198 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind2822
|
|
|
|
unwind2822: ; preds = %invcont2910, %invcont2893, %bb2879, %bb2877, %bb2843, %bb2821
|
|
%eh_ptr2823 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=3]
|
|
%eh_select2825 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr2823, i8* bitcast (i32 (...)* @__gnat_eh_personality to i8*), i32* @__gnat_others_value ) ; <i32> [#uses=2]
|
|
%tmp29295521 = ptrtoint i8* %tmp2770 to i32 ; <i32> [#uses=1]
|
|
%tmp292955215522 = zext i32 %tmp29295521 to i64 ; <i64> [#uses=1]
|
|
%tmp29325518 = zext i32 %tmp2773 to i64 ; <i64> [#uses=1]
|
|
%tmp293255185519 = shl i64 %tmp29325518, 32 ; <i64> [#uses=1]
|
|
%tmp293255185519.ins = or i64 %tmp293255185519, %tmp292955215522 ; <i64> [#uses=1]
|
|
invoke void @system__secondary_stack__ss_release( i64 %tmp293255185519.ins )
|
|
to label %cleanup2963 unwind label %unwind2937
|
|
|
|
cond_next2834: ; preds = %invcont2766
|
|
br i1 %tmp206, label %bb2843, label %bb2845
|
|
|
|
bb2843: ; preds = %cond_next2834
|
|
invoke void @__gnat_rcheck_06( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 198 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind2822
|
|
|
|
bb2845: ; preds = %cond_next2834
|
|
br i1 %tmp274, label %bb2877, label %bb2879
|
|
|
|
bb2877: ; preds = %bb2845
|
|
invoke void @__gnat_rcheck_06( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 200 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind2822
|
|
|
|
bb2879: ; preds = %bb2845
|
|
invoke void @system__img_enum__image_enumeration_8( %struct.string___XUP* %tmp66 sret , i32 %tmp13831384, i64 or (i64 zext (i32 ptrtoint ([28 x i8]* @weekS.154 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.32.910 to i32) to i64), i64 32)), i8* getelementptr ([8 x i8]* @weekN.179, i32 0, i32 0) )
|
|
to label %invcont2893 unwind label %unwind2822
|
|
|
|
invcont2893: ; preds = %bb2879
|
|
%tmp2895 = getelementptr %struct.string___XUP* %tmp66, i32 0, i32 0 ; <i8**> [#uses=1]
|
|
%tmp2896 = load i8** %tmp2895 ; <i8*> [#uses=1]
|
|
%tmp28965718 = ptrtoint i8* %tmp2896 to i32 ; <i32> [#uses=1]
|
|
%tmp289657185719 = zext i32 %tmp28965718 to i64 ; <i64> [#uses=1]
|
|
%tmp2898 = getelementptr %struct.string___XUP* %tmp66, i32 0, i32 1 ; <%struct.string___XUB**> [#uses=1]
|
|
%tmp2899 = load %struct.string___XUB** %tmp2898 ; <%struct.string___XUB*> [#uses=1]
|
|
%tmp28995714 = ptrtoint %struct.string___XUB* %tmp2899 to i32 ; <i32> [#uses=1]
|
|
%tmp289957145715 = zext i32 %tmp28995714 to i64 ; <i64> [#uses=1]
|
|
%tmp2899571457155716 = shl i64 %tmp289957145715, 32 ; <i64> [#uses=1]
|
|
%tmp2899571457155716.ins = or i64 %tmp2899571457155716, %tmp289657185719 ; <i64> [#uses=1]
|
|
invoke void @system__string_ops__str_concat( %struct.string___XUP* %tmp69 sret , i64 or (i64 zext (i32 ptrtoint ([31 x i8]* @.str19 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.98.1466 to i32) to i64), i64 32)), i64 %tmp2899571457155716.ins )
|
|
to label %invcont2910 unwind label %unwind2822
|
|
|
|
invcont2910: ; preds = %invcont2893
|
|
%tmp2912 = getelementptr %struct.string___XUP* %tmp69, i32 0, i32 0 ; <i8**> [#uses=1]
|
|
%tmp2913 = load i8** %tmp2912 ; <i8*> [#uses=1]
|
|
%tmp29135706 = ptrtoint i8* %tmp2913 to i32 ; <i32> [#uses=1]
|
|
%tmp291357065707 = zext i32 %tmp29135706 to i64 ; <i64> [#uses=1]
|
|
%tmp2915 = getelementptr %struct.string___XUP* %tmp69, i32 0, i32 1 ; <%struct.string___XUB**> [#uses=1]
|
|
%tmp2916 = load %struct.string___XUB** %tmp2915 ; <%struct.string___XUB*> [#uses=1]
|
|
%tmp29165702 = ptrtoint %struct.string___XUB* %tmp2916 to i32 ; <i32> [#uses=1]
|
|
%tmp291657025703 = zext i32 %tmp29165702 to i64 ; <i64> [#uses=1]
|
|
%tmp2916570257035704 = shl i64 %tmp291657025703, 32 ; <i64> [#uses=1]
|
|
%tmp2916570257035704.ins = or i64 %tmp2916570257035704, %tmp291357065707 ; <i64> [#uses=1]
|
|
invoke void @report__failed( i64 %tmp2916570257035704.ins )
|
|
to label %cleanup2943 unwind label %unwind2822
|
|
|
|
unwind2937: ; preds = %cleanup2943, %unwind2822
|
|
%eh_ptr2938 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=3]
|
|
%eh_select2940 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr2938, i8* bitcast (i32 (...)* @__gnat_eh_personality to i8*), i32* @__gnat_others_value ) ; <i32> [#uses=2]
|
|
call void @llvm.stackrestore( i8* %tmp2774 )
|
|
%eh_typeid29685 = call i32 @llvm.eh.typeid.for.i32( i8* bitcast (i32* @__gnat_others_value to i8*) ) ; <i32> [#uses=1]
|
|
%tmp29706 = icmp eq i32 %eh_select2940, %eh_typeid29685 ; <i1> [#uses=1]
|
|
br i1 %tmp29706, label %eh_then2971, label %cleanup2998
|
|
|
|
cleanup2943: ; preds = %invcont2910
|
|
%tmp29505515 = ptrtoint i8* %tmp2770 to i32 ; <i32> [#uses=1]
|
|
%tmp295055155516 = zext i32 %tmp29505515 to i64 ; <i64> [#uses=1]
|
|
%tmp29535512 = zext i32 %tmp2773 to i64 ; <i64> [#uses=1]
|
|
%tmp295355125513 = shl i64 %tmp29535512, 32 ; <i64> [#uses=1]
|
|
%tmp295355125513.ins = or i64 %tmp295355125513, %tmp295055155516 ; <i64> [#uses=1]
|
|
invoke void @system__secondary_stack__ss_release( i64 %tmp295355125513.ins )
|
|
to label %cleanup2961 unwind label %unwind2937
|
|
|
|
cleanup2961: ; preds = %cleanup2943
|
|
call void @llvm.stackrestore( i8* %tmp2774 )
|
|
%tmp3044.not6066 = icmp uge i8 %tmp272273, %tmp170171 ; <i1> [#uses=1]
|
|
%tmp30506067 = icmp ult i8 %tmp170171, %tmp204205 ; <i1> [#uses=1]
|
|
%bothcond59056068 = and i1 %tmp3044.not6066, %tmp30506067 ; <i1> [#uses=1]
|
|
br i1 %bothcond59056068, label %cond_true3061, label %cond_next3068
|
|
|
|
cleanup2963: ; preds = %unwind2822
|
|
call void @llvm.stackrestore( i8* %tmp2774 )
|
|
%eh_typeid2968 = call i32 @llvm.eh.typeid.for.i32( i8* bitcast (i32* @__gnat_others_value to i8*) ) ; <i32> [#uses=1]
|
|
%tmp2970 = icmp eq i32 %eh_select2825, %eh_typeid2968 ; <i1> [#uses=1]
|
|
br i1 %tmp2970, label %eh_then2971, label %cleanup2998
|
|
|
|
eh_then2971: ; preds = %cleanup2963, %unwind2937, %unwind2762
|
|
%eh_exception.356056.0 = phi i8* [ %eh_ptr2763, %unwind2762 ], [ %eh_ptr2938, %unwind2937 ], [ %eh_ptr2823, %cleanup2963 ] ; <i8*> [#uses=3]
|
|
invoke void @__gnat_begin_handler( i8* %eh_exception.356056.0 )
|
|
to label %invcont2979 unwind label %unwind2975
|
|
|
|
unwind2975: ; preds = %invcont2981, %invcont2979, %eh_then2971
|
|
%eh_ptr2976 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=2]
|
|
%eh_select2978 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr2976, i8* bitcast (i32 (...)* @__gnat_eh_personality to i8*), %struct.exception* @constraint_error, i32* @__gnat_others_value ) ; <i32> [#uses=1]
|
|
invoke void @__gnat_end_handler( i8* %eh_exception.356056.0 )
|
|
to label %cleanup2998 unwind label %unwind2712
|
|
|
|
invcont2979: ; preds = %eh_then2971
|
|
%tmp2980 = load void ()** @system__soft_links__abort_undefer ; <void ()*> [#uses=1]
|
|
invoke void %tmp2980( )
|
|
to label %invcont2981 unwind label %unwind2975
|
|
|
|
invcont2981: ; preds = %invcont2979
|
|
invoke void @report__failed( i64 or (i64 zext (i32 ptrtoint ([46 x i8]* @.str20 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.101.1473 to i32) to i64), i64 32)) )
|
|
to label %cleanup2990 unwind label %unwind2975
|
|
|
|
cleanup2990: ; preds = %invcont2981
|
|
invoke void @__gnat_end_handler( i8* %eh_exception.356056.0 )
|
|
to label %finally2997 unwind label %unwind2712
|
|
|
|
cleanup2998: ; preds = %unwind2975, %cleanup2963, %unwind2937, %unwind2762
|
|
%eh_selector.29 = phi i32 [ %eh_select2765, %unwind2762 ], [ %eh_select2940, %unwind2937 ], [ %eh_select2825, %cleanup2963 ], [ %eh_select2978, %unwind2975 ] ; <i32> [#uses=2]
|
|
%eh_exception.33 = phi i8* [ %eh_ptr2763, %unwind2762 ], [ %eh_ptr2938, %unwind2937 ], [ %eh_ptr2823, %cleanup2963 ], [ %eh_ptr2976, %unwind2975 ] ; <i8*> [#uses=2]
|
|
%eh_typeid2999 = call i32 @llvm.eh.typeid.for.i32( i8* getelementptr (%struct.exception* @constraint_error, i32 0, i32 0) ) ; <i32> [#uses=1]
|
|
%tmp3001 = icmp eq i32 %eh_selector.29, %eh_typeid2999 ; <i1> [#uses=1]
|
|
br i1 %tmp3001, label %eh_then3002, label %eh_else3016
|
|
|
|
eh_then3002: ; preds = %cleanup2998, %unwind2712
|
|
%eh_exception.336046.0 = phi i8* [ %eh_ptr2713, %unwind2712 ], [ %eh_exception.33, %cleanup2998 ] ; <i8*> [#uses=3]
|
|
invoke void @__gnat_begin_handler( i8* %eh_exception.336046.0 )
|
|
to label %invcont3008 unwind label %unwind3006
|
|
|
|
unwind3006: ; preds = %invcont3008, %eh_then3002
|
|
%eh_ptr3007 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=1]
|
|
call void @__gnat_end_handler( i8* %eh_exception.336046.0 )
|
|
call i32 (...)* @_Unwind_Resume( i8* %eh_ptr3007 ) ; <i32>:12 [#uses=0]
|
|
unreachable
|
|
|
|
invcont3008: ; preds = %eh_then3002
|
|
%tmp3009 = load void ()** @system__soft_links__abort_undefer ; <void ()*> [#uses=1]
|
|
invoke void %tmp3009( )
|
|
to label %cleanup3012 unwind label %unwind3006
|
|
|
|
cleanup3012: ; preds = %invcont3008
|
|
call void @__gnat_end_handler( i8* %eh_exception.336046.0 )
|
|
%tmp3044.not6069 = icmp uge i8 %tmp272273, %tmp170171 ; <i1> [#uses=1]
|
|
%tmp30506070 = icmp ult i8 %tmp170171, %tmp204205 ; <i1> [#uses=1]
|
|
%bothcond59056071 = and i1 %tmp3044.not6069, %tmp30506070 ; <i1> [#uses=1]
|
|
br i1 %bothcond59056071, label %cond_true3061, label %cond_next3068
|
|
|
|
eh_else3016: ; preds = %cleanup2998, %unwind2712
|
|
%eh_selector.296044.1 = phi i32 [ %eh_select2715, %unwind2712 ], [ %eh_selector.29, %cleanup2998 ] ; <i32> [#uses=1]
|
|
%eh_exception.336046.1 = phi i8* [ %eh_ptr2713, %unwind2712 ], [ %eh_exception.33, %cleanup2998 ] ; <i8*> [#uses=4]
|
|
%eh_typeid3017 = call i32 @llvm.eh.typeid.for.i32( i8* bitcast (i32* @__gnat_others_value to i8*) ) ; <i32> [#uses=1]
|
|
%tmp3019 = icmp eq i32 %eh_selector.296044.1, %eh_typeid3017 ; <i1> [#uses=1]
|
|
br i1 %tmp3019, label %eh_then3020, label %Unwind
|
|
|
|
eh_then3020: ; preds = %eh_else3016
|
|
invoke void @__gnat_begin_handler( i8* %eh_exception.336046.1 )
|
|
to label %invcont3026 unwind label %unwind3024
|
|
|
|
unwind3024: ; preds = %invcont3028, %invcont3026, %eh_then3020
|
|
%eh_ptr3025 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=1]
|
|
call void @__gnat_end_handler( i8* %eh_exception.336046.1 )
|
|
call i32 (...)* @_Unwind_Resume( i8* %eh_ptr3025 ) ; <i32>:13 [#uses=0]
|
|
unreachable
|
|
|
|
invcont3026: ; preds = %eh_then3020
|
|
%tmp3027 = load void ()** @system__soft_links__abort_undefer ; <void ()*> [#uses=1]
|
|
invoke void %tmp3027( )
|
|
to label %invcont3028 unwind label %unwind3024
|
|
|
|
invcont3028: ; preds = %invcont3026
|
|
invoke void @report__failed( i64 or (i64 zext (i32 ptrtoint ([25 x i8]* @.str21 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.104.1478 to i32) to i64), i64 32)) )
|
|
to label %cleanup3037 unwind label %unwind3024
|
|
|
|
cleanup3037: ; preds = %invcont3028
|
|
call void @__gnat_end_handler( i8* %eh_exception.336046.1 )
|
|
br label %finally2997
|
|
|
|
finally2997: ; preds = %cleanup3037, %cleanup2990
|
|
%tmp3044.not = icmp uge i8 %tmp272273, %tmp170171 ; <i1> [#uses=1]
|
|
%tmp3050 = icmp ult i8 %tmp170171, %tmp204205 ; <i1> [#uses=1]
|
|
%bothcond5905 = and i1 %tmp3044.not, %tmp3050 ; <i1> [#uses=1]
|
|
br i1 %bothcond5905, label %cond_true3061, label %cond_next3068
|
|
|
|
cond_true3061: ; preds = %finally2997, %cleanup3012, %cleanup2961
|
|
invoke void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 214 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind3062
|
|
|
|
unwind3062: ; preds = %cleanup3340, %unwind3325, %cond_true3061
|
|
%eh_ptr3063 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=3]
|
|
%eh_select3065 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr3063, i8* bitcast (i32 (...)* @__gnat_eh_personality to i8*), %struct.exception* @constraint_error, i32* @__gnat_others_value ) ; <i32> [#uses=2]
|
|
%eh_typeid33496081 = call i32 @llvm.eh.typeid.for.i32( i8* getelementptr (%struct.exception* @constraint_error, i32 0, i32 0) ) ; <i32> [#uses=1]
|
|
%tmp33516083 = icmp eq i32 %eh_select3065, %eh_typeid33496081 ; <i1> [#uses=1]
|
|
br i1 %tmp33516083, label %eh_then3352, label %eh_else3366
|
|
|
|
cond_next3068: ; preds = %finally2997, %cleanup3012, %cleanup2961
|
|
invoke void @system__secondary_stack__ss_mark( %struct.system__secondary_stack__mark_id* %tmp72 sret )
|
|
to label %invcont3116 unwind label %unwind3112
|
|
|
|
unwind3112: ; preds = %cond_next3068
|
|
%eh_ptr3113 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=3]
|
|
%eh_select3115 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr3113, i8* bitcast (i32 (...)* @__gnat_eh_personality to i8*), i32* @__gnat_others_value ) ; <i32> [#uses=2]
|
|
%eh_typeid33186088 = call i32 @llvm.eh.typeid.for.i32( i8* bitcast (i32* @__gnat_others_value to i8*) ) ; <i32> [#uses=1]
|
|
%tmp33206089 = icmp eq i32 %eh_select3115, %eh_typeid33186088 ; <i1> [#uses=1]
|
|
br i1 %tmp33206089, label %eh_then3321, label %cleanup3348
|
|
|
|
invcont3116: ; preds = %cond_next3068
|
|
%tmp3119 = getelementptr %struct.system__secondary_stack__mark_id* %tmp72, i32 0, i32 0 ; <i8**> [#uses=1]
|
|
%tmp3120 = load i8** %tmp3119 ; <i8*> [#uses=2]
|
|
%tmp3122 = getelementptr %struct.system__secondary_stack__mark_id* %tmp72, i32 0, i32 1 ; <i32*> [#uses=1]
|
|
%tmp3123 = load i32* %tmp3122 ; <i32> [#uses=2]
|
|
%tmp3124 = call i8* @llvm.stacksave( ) ; <i8*> [#uses=3]
|
|
%tmp3158 = icmp ugt i8 %tmp170171, %tmp204205 ; <i1> [#uses=1]
|
|
%bothcond5906 = or i1 %tmp364, %tmp3158 ; <i1> [#uses=1]
|
|
br i1 %bothcond5906, label %bb3171, label %cond_next3184
|
|
|
|
bb3171: ; preds = %invcont3116
|
|
invoke void @__gnat_rcheck_05( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 220 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind3172
|
|
|
|
unwind3172: ; preds = %invcont3260, %invcont3243, %bb3229, %bb3227, %bb3193, %bb3171
|
|
%eh_ptr3173 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=3]
|
|
%eh_select3175 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr3173, i8* bitcast (i32 (...)* @__gnat_eh_personality to i8*), i32* @__gnat_others_value ) ; <i32> [#uses=2]
|
|
%tmp32795509 = ptrtoint i8* %tmp3120 to i32 ; <i32> [#uses=1]
|
|
%tmp327955095510 = zext i32 %tmp32795509 to i64 ; <i64> [#uses=1]
|
|
%tmp32825506 = zext i32 %tmp3123 to i64 ; <i64> [#uses=1]
|
|
%tmp328255065507 = shl i64 %tmp32825506, 32 ; <i64> [#uses=1]
|
|
%tmp328255065507.ins = or i64 %tmp328255065507, %tmp327955095510 ; <i64> [#uses=1]
|
|
invoke void @system__secondary_stack__ss_release( i64 %tmp328255065507.ins )
|
|
to label %cleanup3313 unwind label %unwind3287
|
|
|
|
cond_next3184: ; preds = %invcont3116
|
|
br i1 %tmp206, label %bb3193, label %bb3195
|
|
|
|
bb3193: ; preds = %cond_next3184
|
|
invoke void @__gnat_rcheck_06( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 220 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind3172
|
|
|
|
bb3195: ; preds = %cond_next3184
|
|
br i1 %tmp274, label %bb3227, label %bb3229
|
|
|
|
bb3227: ; preds = %bb3195
|
|
invoke void @__gnat_rcheck_06( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 222 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind3172
|
|
|
|
bb3229: ; preds = %bb3195
|
|
invoke void @system__img_enum__image_enumeration_8( %struct.string___XUP* %tmp75 sret , i32 %tmp13831384, i64 or (i64 zext (i32 ptrtoint ([28 x i8]* @weekS.154 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.32.910 to i32) to i64), i64 32)), i8* getelementptr ([8 x i8]* @weekN.179, i32 0, i32 0) )
|
|
to label %invcont3243 unwind label %unwind3172
|
|
|
|
invcont3243: ; preds = %bb3229
|
|
%tmp3245 = getelementptr %struct.string___XUP* %tmp75, i32 0, i32 0 ; <i8**> [#uses=1]
|
|
%tmp3246 = load i8** %tmp3245 ; <i8*> [#uses=1]
|
|
%tmp32465684 = ptrtoint i8* %tmp3246 to i32 ; <i32> [#uses=1]
|
|
%tmp324656845685 = zext i32 %tmp32465684 to i64 ; <i64> [#uses=1]
|
|
%tmp3248 = getelementptr %struct.string___XUP* %tmp75, i32 0, i32 1 ; <%struct.string___XUB**> [#uses=1]
|
|
%tmp3249 = load %struct.string___XUB** %tmp3248 ; <%struct.string___XUB*> [#uses=1]
|
|
%tmp32495680 = ptrtoint %struct.string___XUB* %tmp3249 to i32 ; <i32> [#uses=1]
|
|
%tmp324956805681 = zext i32 %tmp32495680 to i64 ; <i64> [#uses=1]
|
|
%tmp3249568056815682 = shl i64 %tmp324956805681, 32 ; <i64> [#uses=1]
|
|
%tmp3249568056815682.ins = or i64 %tmp3249568056815682, %tmp324656845685 ; <i64> [#uses=1]
|
|
invoke void @system__string_ops__str_concat( %struct.string___XUP* %tmp78 sret , i64 or (i64 zext (i32 ptrtoint ([31 x i8]* @.str22 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.98.1466 to i32) to i64), i64 32)), i64 %tmp3249568056815682.ins )
|
|
to label %invcont3260 unwind label %unwind3172
|
|
|
|
invcont3260: ; preds = %invcont3243
|
|
%tmp3262 = getelementptr %struct.string___XUP* %tmp78, i32 0, i32 0 ; <i8**> [#uses=1]
|
|
%tmp3263 = load i8** %tmp3262 ; <i8*> [#uses=1]
|
|
%tmp32635672 = ptrtoint i8* %tmp3263 to i32 ; <i32> [#uses=1]
|
|
%tmp326356725673 = zext i32 %tmp32635672 to i64 ; <i64> [#uses=1]
|
|
%tmp3265 = getelementptr %struct.string___XUP* %tmp78, i32 0, i32 1 ; <%struct.string___XUB**> [#uses=1]
|
|
%tmp3266 = load %struct.string___XUB** %tmp3265 ; <%struct.string___XUB*> [#uses=1]
|
|
%tmp32665668 = ptrtoint %struct.string___XUB* %tmp3266 to i32 ; <i32> [#uses=1]
|
|
%tmp326656685669 = zext i32 %tmp32665668 to i64 ; <i64> [#uses=1]
|
|
%tmp3266566856695670 = shl i64 %tmp326656685669, 32 ; <i64> [#uses=1]
|
|
%tmp3266566856695670.ins = or i64 %tmp3266566856695670, %tmp326356725673 ; <i64> [#uses=1]
|
|
invoke void @report__failed( i64 %tmp3266566856695670.ins )
|
|
to label %cleanup3293 unwind label %unwind3172
|
|
|
|
unwind3287: ; preds = %cleanup3293, %unwind3172
|
|
%eh_ptr3288 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=3]
|
|
%eh_select3290 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr3288, i8* bitcast (i32 (...)* @__gnat_eh_personality to i8*), i32* @__gnat_others_value ) ; <i32> [#uses=2]
|
|
call void @llvm.stackrestore( i8* %tmp3124 )
|
|
%eh_typeid33187 = call i32 @llvm.eh.typeid.for.i32( i8* bitcast (i32* @__gnat_others_value to i8*) ) ; <i32> [#uses=1]
|
|
%tmp33208 = icmp eq i32 %eh_select3290, %eh_typeid33187 ; <i1> [#uses=1]
|
|
br i1 %tmp33208, label %eh_then3321, label %cleanup3348
|
|
|
|
cleanup3293: ; preds = %invcont3260
|
|
%tmp33005503 = ptrtoint i8* %tmp3120 to i32 ; <i32> [#uses=1]
|
|
%tmp330055035504 = zext i32 %tmp33005503 to i64 ; <i64> [#uses=1]
|
|
%tmp33035500 = zext i32 %tmp3123 to i64 ; <i64> [#uses=1]
|
|
%tmp330355005501 = shl i64 %tmp33035500, 32 ; <i64> [#uses=1]
|
|
%tmp330355005501.ins = or i64 %tmp330355005501, %tmp330055035504 ; <i64> [#uses=1]
|
|
invoke void @system__secondary_stack__ss_release( i64 %tmp330355005501.ins )
|
|
to label %cleanup3311 unwind label %unwind3287
|
|
|
|
cleanup3311: ; preds = %cleanup3293
|
|
call void @llvm.stackrestore( i8* %tmp3124 )
|
|
br label %finally3347
|
|
|
|
cleanup3313: ; preds = %unwind3172
|
|
call void @llvm.stackrestore( i8* %tmp3124 )
|
|
%eh_typeid3318 = call i32 @llvm.eh.typeid.for.i32( i8* bitcast (i32* @__gnat_others_value to i8*) ) ; <i32> [#uses=1]
|
|
%tmp3320 = icmp eq i32 %eh_select3175, %eh_typeid3318 ; <i1> [#uses=1]
|
|
br i1 %tmp3320, label %eh_then3321, label %cleanup3348
|
|
|
|
eh_then3321: ; preds = %cleanup3313, %unwind3287, %unwind3112
|
|
%eh_exception.416084.0 = phi i8* [ %eh_ptr3113, %unwind3112 ], [ %eh_ptr3288, %unwind3287 ], [ %eh_ptr3173, %cleanup3313 ] ; <i8*> [#uses=3]
|
|
invoke void @__gnat_begin_handler( i8* %eh_exception.416084.0 )
|
|
to label %invcont3329 unwind label %unwind3325
|
|
|
|
unwind3325: ; preds = %invcont3331, %invcont3329, %eh_then3321
|
|
%eh_ptr3326 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=2]
|
|
%eh_select3328 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr3326, i8* bitcast (i32 (...)* @__gnat_eh_personality to i8*), %struct.exception* @constraint_error, i32* @__gnat_others_value ) ; <i32> [#uses=1]
|
|
invoke void @__gnat_end_handler( i8* %eh_exception.416084.0 )
|
|
to label %cleanup3348 unwind label %unwind3062
|
|
|
|
invcont3329: ; preds = %eh_then3321
|
|
%tmp3330 = load void ()** @system__soft_links__abort_undefer ; <void ()*> [#uses=1]
|
|
invoke void %tmp3330( )
|
|
to label %invcont3331 unwind label %unwind3325
|
|
|
|
invcont3331: ; preds = %invcont3329
|
|
invoke void @report__failed( i64 or (i64 zext (i32 ptrtoint ([46 x i8]* @.str20 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.101.1473 to i32) to i64), i64 32)) )
|
|
to label %cleanup3340 unwind label %unwind3325
|
|
|
|
cleanup3340: ; preds = %invcont3331
|
|
invoke void @__gnat_end_handler( i8* %eh_exception.416084.0 )
|
|
to label %finally3347 unwind label %unwind3062
|
|
|
|
cleanup3348: ; preds = %unwind3325, %cleanup3313, %unwind3287, %unwind3112
|
|
%eh_selector.35 = phi i32 [ %eh_select3115, %unwind3112 ], [ %eh_select3290, %unwind3287 ], [ %eh_select3175, %cleanup3313 ], [ %eh_select3328, %unwind3325 ] ; <i32> [#uses=2]
|
|
%eh_exception.39 = phi i8* [ %eh_ptr3113, %unwind3112 ], [ %eh_ptr3288, %unwind3287 ], [ %eh_ptr3173, %cleanup3313 ], [ %eh_ptr3326, %unwind3325 ] ; <i8*> [#uses=2]
|
|
%eh_typeid3349 = call i32 @llvm.eh.typeid.for.i32( i8* getelementptr (%struct.exception* @constraint_error, i32 0, i32 0) ) ; <i32> [#uses=1]
|
|
%tmp3351 = icmp eq i32 %eh_selector.35, %eh_typeid3349 ; <i1> [#uses=1]
|
|
br i1 %tmp3351, label %eh_then3352, label %eh_else3366
|
|
|
|
eh_then3352: ; preds = %cleanup3348, %unwind3062
|
|
%eh_exception.396074.0 = phi i8* [ %eh_ptr3063, %unwind3062 ], [ %eh_exception.39, %cleanup3348 ] ; <i8*> [#uses=3]
|
|
invoke void @__gnat_begin_handler( i8* %eh_exception.396074.0 )
|
|
to label %invcont3358 unwind label %unwind3356
|
|
|
|
unwind3356: ; preds = %invcont3358, %eh_then3352
|
|
%eh_ptr3357 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=1]
|
|
call void @__gnat_end_handler( i8* %eh_exception.396074.0 )
|
|
call i32 (...)* @_Unwind_Resume( i8* %eh_ptr3357 ) ; <i32>:14 [#uses=0]
|
|
unreachable
|
|
|
|
invcont3358: ; preds = %eh_then3352
|
|
%tmp3359 = load void ()** @system__soft_links__abort_undefer ; <void ()*> [#uses=1]
|
|
invoke void %tmp3359( )
|
|
to label %cleanup3362 unwind label %unwind3356
|
|
|
|
cleanup3362: ; preds = %invcont3358
|
|
call void @__gnat_end_handler( i8* %eh_exception.396074.0 )
|
|
br label %finally3347
|
|
|
|
eh_else3366: ; preds = %cleanup3348, %unwind3062
|
|
%eh_selector.356072.1 = phi i32 [ %eh_select3065, %unwind3062 ], [ %eh_selector.35, %cleanup3348 ] ; <i32> [#uses=1]
|
|
%eh_exception.396074.1 = phi i8* [ %eh_ptr3063, %unwind3062 ], [ %eh_exception.39, %cleanup3348 ] ; <i8*> [#uses=4]
|
|
%eh_typeid3367 = call i32 @llvm.eh.typeid.for.i32( i8* bitcast (i32* @__gnat_others_value to i8*) ) ; <i32> [#uses=1]
|
|
%tmp3369 = icmp eq i32 %eh_selector.356072.1, %eh_typeid3367 ; <i1> [#uses=1]
|
|
br i1 %tmp3369, label %eh_then3370, label %Unwind
|
|
|
|
eh_then3370: ; preds = %eh_else3366
|
|
invoke void @__gnat_begin_handler( i8* %eh_exception.396074.1 )
|
|
to label %invcont3376 unwind label %unwind3374
|
|
|
|
unwind3374: ; preds = %invcont3378, %invcont3376, %eh_then3370
|
|
%eh_ptr3375 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=1]
|
|
call void @__gnat_end_handler( i8* %eh_exception.396074.1 )
|
|
call i32 (...)* @_Unwind_Resume( i8* %eh_ptr3375 ) ; <i32>:15 [#uses=0]
|
|
unreachable
|
|
|
|
invcont3376: ; preds = %eh_then3370
|
|
%tmp3377 = load void ()** @system__soft_links__abort_undefer ; <void ()*> [#uses=1]
|
|
invoke void %tmp3377( )
|
|
to label %invcont3378 unwind label %unwind3374
|
|
|
|
invcont3378: ; preds = %invcont3376
|
|
invoke void @report__failed( i64 or (i64 zext (i32 ptrtoint ([25 x i8]* @.str23 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.104.1478 to i32) to i64), i64 32)) )
|
|
to label %cleanup3387 unwind label %unwind3374
|
|
|
|
cleanup3387: ; preds = %invcont3378
|
|
call void @__gnat_end_handler( i8* %eh_exception.396074.1 )
|
|
br label %finally3347
|
|
|
|
finally3347: ; preds = %cleanup3387, %cleanup3362, %cleanup3340, %cleanup3311
|
|
%tmp3392 = call i8* @llvm.stacksave( ) ; <i8*> [#uses=2]
|
|
%tmp3398 = invoke i32 @report__ident_int( i32 -5 )
|
|
to label %invcont3397 unwind label %unwind3393 ; <i32> [#uses=4]
|
|
|
|
unwind3393: ; preds = %cond_true3555, %cond_true3543, %cond_next3451, %cond_true3448, %cond_true3420, %finally3347
|
|
%eh_ptr3394 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=5]
|
|
%eh_select3396 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr3394, i8* bitcast (i32 (...)* @__gnat_eh_personality to i8*), i32* @__gnat_others_value ) ; <i32> [#uses=1]
|
|
call void @llvm.stackrestore( i8* %tmp3392 )
|
|
%eh_typeid3571 = call i32 @llvm.eh.typeid.for.i32( i8* bitcast (i32* @__gnat_others_value to i8*) ) ; <i32> [#uses=1]
|
|
%tmp3573 = icmp eq i32 %eh_select3396, %eh_typeid3571 ; <i1> [#uses=1]
|
|
br i1 %tmp3573, label %eh_then3574, label %Unwind
|
|
|
|
invcont3397: ; preds = %finally3347
|
|
%tmp3405 = icmp slt i32 %tmp3398, %tmp384 ; <i1> [#uses=2]
|
|
%tmp3413 = icmp sgt i32 %tmp3398, %tmp394 ; <i1> [#uses=1]
|
|
%tmp3417 = or i1 %tmp3405, %tmp3413 ; <i1> [#uses=1]
|
|
br i1 %tmp3417, label %cond_true3420, label %cond_next3422
|
|
|
|
cond_true3420: ; preds = %invcont3397
|
|
invoke void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 238 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind3393
|
|
|
|
cond_next3422: ; preds = %invcont3397
|
|
%tmp3426 = icmp slt i32 %tmp3398, -5 ; <i1> [#uses=1]
|
|
br i1 %tmp3426, label %cond_true3429, label %cond_next3451
|
|
|
|
cond_true3429: ; preds = %cond_next3422
|
|
%tmp3441 = icmp slt i32 %tmp394, -6 ; <i1> [#uses=1]
|
|
%tmp3445 = or i1 %tmp3405, %tmp3441 ; <i1> [#uses=1]
|
|
br i1 %tmp3445, label %cond_true3448, label %cond_next3451
|
|
|
|
cond_true3448: ; preds = %cond_true3429
|
|
invoke void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 238 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind3393
|
|
|
|
cond_next3451: ; preds = %cond_true3429, %cond_next3422
|
|
%tmp3521 = invoke i32 @report__ident_int( i32 -5 )
|
|
to label %invcont3520 unwind label %unwind3393 ; <i32> [#uses=3]
|
|
|
|
invcont3520: ; preds = %cond_next3451
|
|
%tmp3528 = icmp slt i32 %tmp3521, %tmp384 ; <i1> [#uses=1]
|
|
%tmp3536 = icmp sgt i32 %tmp3521, %tmp394 ; <i1> [#uses=1]
|
|
%tmp3540 = or i1 %tmp3528, %tmp3536 ; <i1> [#uses=1]
|
|
br i1 %tmp3540, label %cond_true3543, label %cond_next3545
|
|
|
|
cond_true3543: ; preds = %invcont3520
|
|
invoke void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 241 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind3393
|
|
|
|
cond_next3545: ; preds = %invcont3520
|
|
%tmp3552 = icmp eq i32 %tmp3398, %tmp3521 ; <i1> [#uses=1]
|
|
br i1 %tmp3552, label %cleanup3565, label %cond_true3555
|
|
|
|
cond_true3555: ; preds = %cond_next3545
|
|
invoke void @report__failed( i64 or (i64 zext (i32 ptrtoint ([30 x i8]* @.str24 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.30.904 to i32) to i64), i64 32)) )
|
|
to label %cleanup3565 unwind label %unwind3393
|
|
|
|
cleanup3565: ; preds = %cond_true3555, %cond_next3545
|
|
call void @llvm.stackrestore( i8* %tmp3392 )
|
|
%tmp36006095 = icmp ult i8 %tmp137138, %sat.45934.0 ; <i1> [#uses=1]
|
|
br i1 %tmp36006095, label %cond_next3624, label %cond_true3603
|
|
|
|
eh_then3574: ; preds = %unwind3393
|
|
invoke void @__gnat_begin_handler( i8* %eh_ptr3394 )
|
|
to label %invcont3580 unwind label %unwind3578
|
|
|
|
unwind3578: ; preds = %invcont3582, %invcont3580, %eh_then3574
|
|
%eh_ptr3579 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=1]
|
|
call void @__gnat_end_handler( i8* %eh_ptr3394 )
|
|
call i32 (...)* @_Unwind_Resume( i8* %eh_ptr3579 ) ; <i32>:16 [#uses=0]
|
|
unreachable
|
|
|
|
invcont3580: ; preds = %eh_then3574
|
|
%tmp3581 = load void ()** @system__soft_links__abort_undefer ; <void ()*> [#uses=1]
|
|
invoke void %tmp3581( )
|
|
to label %invcont3582 unwind label %unwind3578
|
|
|
|
invcont3582: ; preds = %invcont3580
|
|
invoke void @report__failed( i64 or (i64 zext (i32 ptrtoint ([18 x i8]* @.str25 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.124.1606 to i32) to i64), i64 32)) )
|
|
to label %cleanup3591 unwind label %unwind3578
|
|
|
|
cleanup3591: ; preds = %invcont3582
|
|
call void @__gnat_end_handler( i8* %eh_ptr3394 )
|
|
%tmp3600 = icmp ult i8 %tmp137138, %sat.45934.0 ; <i1> [#uses=1]
|
|
br i1 %tmp3600, label %cond_next3624, label %cond_true3603
|
|
|
|
cond_true3603: ; preds = %cleanup3591, %cleanup3565
|
|
%tmp3606 = icmp ult i8 %sat.45934.0, %tmp204205 ; <i1> [#uses=1]
|
|
%tmp3610 = icmp ugt i8 %tmp137138, %tmp272273 ; <i1> [#uses=1]
|
|
%tmp3614 = or i1 %tmp3606, %tmp3610 ; <i1> [#uses=1]
|
|
br i1 %tmp3614, label %cond_true3617, label %cond_next3624
|
|
|
|
cond_true3617: ; preds = %cond_true3603
|
|
invoke void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 250 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind3618
|
|
|
|
unwind3618: ; preds = %bb3743, %cond_true3729, %bb3689, %cond_true3675, %bb3635, %cond_true3617
|
|
%wed.3 = phi i8 [ %tmp238239, %cond_true3617 ], [ %wed.1, %bb3743 ], [ %tmp238239, %bb3689 ], [ %tmp238239, %bb3635 ], [ %tmp238239, %cond_true3675 ], [ %tmp238239, %cond_true3729 ] ; <i8> [#uses=1]
|
|
%tue.3 = phi i8 [ %tmp204205, %cond_true3617 ], [ %tue.2, %bb3743 ], [ %tue.2, %bb3689 ], [ %tue.1, %bb3635 ], [ %tue.2, %cond_true3675 ], [ %tue.2, %cond_true3729 ] ; <i8> [#uses=1]
|
|
%mon.3 = phi i8 [ %tmp170171, %cond_true3617 ], [ %mon.2, %bb3743 ], [ %mon.1, %bb3689 ], [ %tmp170171, %bb3635 ], [ %tmp170171, %cond_true3675 ], [ %mon.2, %cond_true3729 ] ; <i8> [#uses=1]
|
|
%eh_ptr3619 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=5]
|
|
%eh_select3621 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr3619, i8* bitcast (i32 (...)* @__gnat_eh_personality to i8*), i32* @__gnat_others_value ) ; <i32> [#uses=1]
|
|
%eh_typeid3854 = call i32 @llvm.eh.typeid.for.i32( i8* bitcast (i32* @__gnat_others_value to i8*) ) ; <i32> [#uses=1]
|
|
%tmp3856 = icmp eq i32 %eh_select3621, %eh_typeid3854 ; <i1> [#uses=1]
|
|
br i1 %tmp3856, label %eh_then3857, label %Unwind
|
|
|
|
cond_next3624: ; preds = %cond_true3603, %cleanup3591, %cleanup3565
|
|
%tmp3629 = icmp ugt i8 %sat.45934.0, %tmp137138 ; <i1> [#uses=1]
|
|
br i1 %tmp3629, label %cond_next3653, label %bb3635
|
|
|
|
bb3635: ; preds = %cond_next3649, %cond_next3624
|
|
%indvar6258 = phi i8 [ %indvar.next16, %cond_next3649 ], [ 0, %cond_next3624 ] ; <i8> [#uses=2]
|
|
%tue.1 = phi i8 [ %tue.0, %cond_next3649 ], [ %tmp204205, %cond_next3624 ] ; <i8> [#uses=2]
|
|
%tmp3637 = invoke i8 @report__equal( i32 2, i32 2 )
|
|
to label %invcont3636 unwind label %unwind3618 ; <i8> [#uses=1]
|
|
|
|
invcont3636: ; preds = %bb3635
|
|
%i3633.4 = add i8 %indvar6258, %sat.45934.0 ; <i8> [#uses=1]
|
|
%tmp3638 = icmp eq i8 %tmp3637, 0 ; <i1> [#uses=1]
|
|
%tue.0 = select i1 %tmp3638, i8 %tue.1, i8 2 ; <i8> [#uses=2]
|
|
%tmp3645 = icmp eq i8 %i3633.4, %tmp137138 ; <i1> [#uses=1]
|
|
br i1 %tmp3645, label %cond_next3653, label %cond_next3649
|
|
|
|
cond_next3649: ; preds = %invcont3636
|
|
%indvar.next16 = add i8 %indvar6258, 1 ; <i8> [#uses=1]
|
|
br label %bb3635
|
|
|
|
cond_next3653: ; preds = %invcont3636, %cond_next3624
|
|
%tue.2 = phi i8 [ %tmp204205, %cond_next3624 ], [ %tue.0, %invcont3636 ] ; <i8> [#uses=6]
|
|
%tmp3658 = icmp ult i8 %tmp238239, %tmp306307 ; <i1> [#uses=1]
|
|
br i1 %tmp3658, label %cond_next3678, label %cond_true3661
|
|
|
|
cond_true3661: ; preds = %cond_next3653
|
|
%tmp3664 = icmp ult i8 %tmp306307, %tmp204205 ; <i1> [#uses=1]
|
|
%tmp3668 = icmp ugt i8 %tmp238239, %tmp272273 ; <i1> [#uses=1]
|
|
%tmp3672 = or i1 %tmp3664, %tmp3668 ; <i1> [#uses=1]
|
|
br i1 %tmp3672, label %cond_true3675, label %cond_next3678
|
|
|
|
cond_true3675: ; preds = %cond_true3661
|
|
invoke void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 257 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind3618
|
|
|
|
cond_next3678: ; preds = %cond_true3661, %cond_next3653
|
|
%tmp3683 = icmp ugt i8 %tmp306307, %tmp238239 ; <i1> [#uses=1]
|
|
br i1 %tmp3683, label %cond_next3707, label %bb3689
|
|
|
|
bb3689: ; preds = %cond_next3703, %cond_next3678
|
|
%indvar6261 = phi i8 [ %indvar.next18, %cond_next3703 ], [ 0, %cond_next3678 ] ; <i8> [#uses=2]
|
|
%mon.1 = phi i8 [ %mon.0, %cond_next3703 ], [ %tmp170171, %cond_next3678 ] ; <i8> [#uses=2]
|
|
%tmp3691 = invoke i8 @report__equal( i32 2, i32 2 )
|
|
to label %invcont3690 unwind label %unwind3618 ; <i8> [#uses=1]
|
|
|
|
invcont3690: ; preds = %bb3689
|
|
%i3687.4 = add i8 %indvar6261, %tmp306307 ; <i8> [#uses=1]
|
|
%tmp3692 = icmp eq i8 %tmp3691, 0 ; <i1> [#uses=1]
|
|
%mon.0 = select i1 %tmp3692, i8 %mon.1, i8 1 ; <i8> [#uses=2]
|
|
%tmp3699 = icmp eq i8 %i3687.4, %tmp238239 ; <i1> [#uses=1]
|
|
br i1 %tmp3699, label %cond_next3707, label %cond_next3703
|
|
|
|
cond_next3703: ; preds = %invcont3690
|
|
%indvar.next18 = add i8 %indvar6261, 1 ; <i8> [#uses=1]
|
|
br label %bb3689
|
|
|
|
cond_next3707: ; preds = %invcont3690, %cond_next3678
|
|
%mon.2 = phi i8 [ %tmp170171, %cond_next3678 ], [ %mon.0, %invcont3690 ] ; <i8> [#uses=8]
|
|
%tmp3712 = icmp ult i8 %tmp137138, %mon.2 ; <i1> [#uses=1]
|
|
br i1 %tmp3712, label %cond_next3732, label %cond_true3715
|
|
|
|
cond_true3715: ; preds = %cond_next3707
|
|
%tmp3718 = icmp ult i8 %mon.2, %tmp204205 ; <i1> [#uses=1]
|
|
%tmp3722 = icmp ugt i8 %tmp137138, %tmp272273 ; <i1> [#uses=1]
|
|
%tmp3726 = or i1 %tmp3718, %tmp3722 ; <i1> [#uses=1]
|
|
br i1 %tmp3726, label %cond_true3729, label %cond_next3732
|
|
|
|
cond_true3729: ; preds = %cond_true3715
|
|
invoke void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 264 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind3618
|
|
|
|
cond_next3732: ; preds = %cond_true3715, %cond_next3707
|
|
%tmp3737 = icmp ugt i8 %mon.2, %tmp137138 ; <i1> [#uses=1]
|
|
br i1 %tmp3737, label %finally3852, label %bb3743
|
|
|
|
bb3743: ; preds = %cond_next3757, %cond_next3732
|
|
%indvar6265 = phi i8 [ %indvar.next20, %cond_next3757 ], [ 0, %cond_next3732 ] ; <i8> [#uses=2]
|
|
%wed.1 = phi i8 [ %wed.0, %cond_next3757 ], [ %tmp238239, %cond_next3732 ] ; <i8> [#uses=2]
|
|
%tmp3745 = invoke i8 @report__equal( i32 3, i32 3 )
|
|
to label %invcont3744 unwind label %unwind3618 ; <i8> [#uses=1]
|
|
|
|
invcont3744: ; preds = %bb3743
|
|
%i3741.4 = add i8 %indvar6265, %mon.2 ; <i8> [#uses=1]
|
|
%tmp3746 = icmp eq i8 %tmp3745, 0 ; <i1> [#uses=1]
|
|
%wed.0 = select i1 %tmp3746, i8 %wed.1, i8 3 ; <i8> [#uses=2]
|
|
%tmp3753 = icmp eq i8 %i3741.4, %tmp137138 ; <i1> [#uses=1]
|
|
br i1 %tmp3753, label %finally3852, label %cond_next3757
|
|
|
|
cond_next3757: ; preds = %invcont3744
|
|
%indvar.next20 = add i8 %indvar6265, 1 ; <i8> [#uses=1]
|
|
br label %bb3743
|
|
|
|
eh_then3857: ; preds = %unwind3618
|
|
invoke void @__gnat_begin_handler( i8* %eh_ptr3619 )
|
|
to label %invcont3863 unwind label %unwind3861
|
|
|
|
unwind3861: ; preds = %invcont3865, %invcont3863, %eh_then3857
|
|
%eh_ptr3862 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=1]
|
|
call void @__gnat_end_handler( i8* %eh_ptr3619 )
|
|
call i32 (...)* @_Unwind_Resume( i8* %eh_ptr3862 ) ; <i32>:17 [#uses=0]
|
|
unreachable
|
|
|
|
invcont3863: ; preds = %eh_then3857
|
|
%tmp3864 = load void ()** @system__soft_links__abort_undefer ; <void ()*> [#uses=1]
|
|
invoke void %tmp3864( )
|
|
to label %invcont3865 unwind label %unwind3861
|
|
|
|
invcont3865: ; preds = %invcont3863
|
|
invoke void @report__failed( i64 or (i64 zext (i32 ptrtoint ([18 x i8]* @.str26 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.124.1606 to i32) to i64), i64 32)) )
|
|
to label %cleanup3874 unwind label %unwind3861
|
|
|
|
cleanup3874: ; preds = %invcont3865
|
|
call void @__gnat_end_handler( i8* %eh_ptr3619 )
|
|
br label %finally3852
|
|
|
|
finally3852: ; preds = %cleanup3874, %invcont3744, %cond_next3732
|
|
%wed.4 = phi i8 [ %wed.3, %cleanup3874 ], [ %tmp238239, %cond_next3732 ], [ %wed.0, %invcont3744 ] ; <i8> [#uses=4]
|
|
%tue.4 = phi i8 [ %tue.3, %cleanup3874 ], [ %tue.2, %cond_next3732 ], [ %tue.2, %invcont3744 ] ; <i8> [#uses=13]
|
|
%mon.4 = phi i8 [ %mon.3, %cleanup3874 ], [ %mon.2, %cond_next3732 ], [ %mon.2, %invcont3744 ] ; <i8> [#uses=18]
|
|
%tmp3885 = invoke i32 @report__ident_int( i32 -5 )
|
|
to label %invcont3884 unwind label %unwind3880 ; <i32> [#uses=4]
|
|
|
|
unwind3880: ; preds = %cond_true4138, %invcont4122, %cond_next4120, %cond_true4117, %cond_true4027, %cond_next3938, %cond_true3935, %cond_true3907, %finally3852
|
|
%eh_ptr3881 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=5]
|
|
%eh_select3883 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr3881, i8* bitcast (i32 (...)* @__gnat_eh_personality to i8*), i32* @__gnat_others_value ) ; <i32> [#uses=1]
|
|
%eh_typeid4149 = call i32 @llvm.eh.typeid.for.i32( i8* bitcast (i32* @__gnat_others_value to i8*) ) ; <i32> [#uses=1]
|
|
%tmp4151 = icmp eq i32 %eh_select3883, %eh_typeid4149 ; <i1> [#uses=1]
|
|
br i1 %tmp4151, label %eh_then4152, label %Unwind
|
|
|
|
invcont3884: ; preds = %finally3852
|
|
%tmp3892 = icmp slt i32 %tmp3885, %tmp384 ; <i1> [#uses=2]
|
|
%tmp3900 = icmp sgt i32 %tmp3885, %tmp394 ; <i1> [#uses=1]
|
|
%tmp3904 = or i1 %tmp3892, %tmp3900 ; <i1> [#uses=1]
|
|
br i1 %tmp3904, label %cond_true3907, label %cond_next3909
|
|
|
|
cond_true3907: ; preds = %invcont3884
|
|
invoke void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 312 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind3880
|
|
|
|
cond_next3909: ; preds = %invcont3884
|
|
%tmp3913 = icmp slt i32 %tmp3885, -5 ; <i1> [#uses=1]
|
|
br i1 %tmp3913, label %cond_true3916, label %cond_next3938
|
|
|
|
cond_true3916: ; preds = %cond_next3909
|
|
%tmp3928 = icmp slt i32 %tmp394, -6 ; <i1> [#uses=1]
|
|
%tmp3932 = or i1 %tmp3892, %tmp3928 ; <i1> [#uses=1]
|
|
br i1 %tmp3932, label %cond_true3935, label %cond_next3938
|
|
|
|
cond_true3935: ; preds = %cond_true3916
|
|
invoke void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 312 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind3880
|
|
|
|
cond_next3938: ; preds = %cond_true3916, %cond_next3909
|
|
%tmp4005 = invoke i32 @report__ident_int( i32 -5 )
|
|
to label %invcont4004 unwind label %unwind3880 ; <i32> [#uses=6]
|
|
|
|
invcont4004: ; preds = %cond_next3938
|
|
%tmp4012 = icmp slt i32 %tmp4005, %tmp384 ; <i1> [#uses=2]
|
|
%tmp4020 = icmp sgt i32 %tmp4005, %tmp394 ; <i1> [#uses=1]
|
|
%tmp4024 = or i1 %tmp4012, %tmp4020 ; <i1> [#uses=1]
|
|
br i1 %tmp4024, label %cond_true4027, label %cond_next4029
|
|
|
|
cond_true4027: ; preds = %invcont4004
|
|
invoke void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 313 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind3880
|
|
|
|
cond_next4029: ; preds = %invcont4004
|
|
%tmp4071 = icmp sgt i32 %tmp4005, -6 ; <i1> [#uses=1]
|
|
%tmp4078 = add i32 %tmp4005, 1073741823 ; <i32> [#uses=1]
|
|
%iftmp.132.0 = select i1 %tmp4071, i32 %tmp4078, i32 1073741818 ; <i32> [#uses=1]
|
|
%tmp4085 = sub i32 %iftmp.132.0, %tmp4005 ; <i32> [#uses=1]
|
|
%tmp4086 = shl i32 %tmp4085, 2 ; <i32> [#uses=2]
|
|
%tmp4087 = add i32 %tmp4086, 4 ; <i32> [#uses=1]
|
|
%tmp4088 = icmp sgt i32 %tmp4087, -1 ; <i1> [#uses=1]
|
|
%tmp4087.op = add i32 %tmp4086, 7 ; <i32> [#uses=1]
|
|
%tmp4087.op.op = and i32 %tmp4087.op, -4 ; <i32> [#uses=1]
|
|
%tmp4091 = select i1 %tmp4088, i32 %tmp4087.op.op, i32 0 ; <i32> [#uses=1]
|
|
%tmp4095 = icmp slt i32 %tmp4005, -5 ; <i1> [#uses=1]
|
|
br i1 %tmp4095, label %cond_true4098, label %cond_next4120
|
|
|
|
cond_true4098: ; preds = %cond_next4029
|
|
%tmp4110 = icmp slt i32 %tmp394, -6 ; <i1> [#uses=1]
|
|
%tmp4114 = or i1 %tmp4012, %tmp4110 ; <i1> [#uses=1]
|
|
br i1 %tmp4114, label %cond_true4117, label %cond_next4120
|
|
|
|
cond_true4117: ; preds = %cond_true4098
|
|
invoke void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 313 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind3880
|
|
|
|
cond_next4120: ; preds = %cond_true4098, %cond_next4029
|
|
%tmp4123 = invoke i8* @__gnat_malloc( i32 %tmp4091 )
|
|
to label %invcont4122 unwind label %unwind3880 ; <i8*> [#uses=0]
|
|
|
|
invcont4122: ; preds = %cond_next4120
|
|
%tmp41254128 = sext i32 %tmp3885 to i64 ; <i64> [#uses=1]
|
|
%tmp4129 = sub i64 -5, %tmp41254128 ; <i64> [#uses=2]
|
|
%tmp4134 = invoke i32 @report__ident_int( i32 0 )
|
|
to label %invcont4133 unwind label %unwind3880 ; <i32> [#uses=1]
|
|
|
|
invcont4133: ; preds = %invcont4122
|
|
%tmp4130 = icmp sgt i64 %tmp4129, -1 ; <i1> [#uses=1]
|
|
%tmp4129.cast = trunc i64 %tmp4129 to i32 ; <i32> [#uses=1]
|
|
%max41314132 = select i1 %tmp4130, i32 %tmp4129.cast, i32 0 ; <i32> [#uses=1]
|
|
%tmp4135 = icmp eq i32 %max41314132, %tmp4134 ; <i1> [#uses=1]
|
|
br i1 %tmp4135, label %finally4147, label %cond_true4138
|
|
|
|
cond_true4138: ; preds = %invcont4133
|
|
invoke void @report__failed( i64 or (i64 zext (i32 ptrtoint ([31 x i8]* @.str27 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.98.1466 to i32) to i64), i64 32)) )
|
|
to label %finally4147 unwind label %unwind3880
|
|
|
|
eh_then4152: ; preds = %unwind3880
|
|
invoke void @__gnat_begin_handler( i8* %eh_ptr3881 )
|
|
to label %invcont4158 unwind label %unwind4156
|
|
|
|
unwind4156: ; preds = %invcont4160, %invcont4158, %eh_then4152
|
|
%eh_ptr4157 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=1]
|
|
call void @__gnat_end_handler( i8* %eh_ptr3881 )
|
|
call i32 (...)* @_Unwind_Resume( i8* %eh_ptr4157 ) ; <i32>:18 [#uses=0]
|
|
unreachable
|
|
|
|
invcont4158: ; preds = %eh_then4152
|
|
%tmp4159 = load void ()** @system__soft_links__abort_undefer ; <void ()*> [#uses=1]
|
|
invoke void %tmp4159( )
|
|
to label %invcont4160 unwind label %unwind4156
|
|
|
|
invcont4160: ; preds = %invcont4158
|
|
invoke void @report__failed( i64 or (i64 zext (i32 ptrtoint ([18 x i8]* @.str28 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.124.1606 to i32) to i64), i64 32)) )
|
|
to label %cleanup4169 unwind label %unwind4156
|
|
|
|
cleanup4169: ; preds = %invcont4160
|
|
call void @__gnat_end_handler( i8* %eh_ptr3881 )
|
|
br label %finally4147
|
|
|
|
finally4147: ; preds = %cleanup4169, %cond_true4138, %invcont4133
|
|
%tmp4174 = call i8* @llvm.stacksave( ) ; <i8*> [#uses=3]
|
|
%tmp4180 = invoke i32 @report__ident_int( i32 4 )
|
|
to label %invcont4179 unwind label %unwind4175 ; <i32> [#uses=6]
|
|
|
|
unwind4175: ; preds = %cond_true4292, %cond_true4187, %finally4147
|
|
%eh_ptr4176 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=5]
|
|
%eh_select4178 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr4176, i8* bitcast (i32 (...)* @__gnat_eh_personality to i8*), i32* @__gnat_others_value ) ; <i32> [#uses=1]
|
|
%eh_typeid4304 = call i32 @llvm.eh.typeid.for.i32( i8* bitcast (i32* @__gnat_others_value to i8*) ) ; <i32> [#uses=1]
|
|
%tmp4306 = icmp eq i32 %eh_select4178, %eh_typeid4304 ; <i1> [#uses=1]
|
|
br i1 %tmp4306, label %eh_then4307, label %cleanup4334
|
|
|
|
invcont4179: ; preds = %finally4147
|
|
%tmp4184 = icmp slt i32 %tmp4180, 1 ; <i1> [#uses=1]
|
|
br i1 %tmp4184, label %cond_true4187, label %cond_next4189
|
|
|
|
cond_true4187: ; preds = %invcont4179
|
|
invoke void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 329 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind4175
|
|
|
|
cond_next4189: ; preds = %invcont4179
|
|
%tmp4231 = icmp sgt i32 %tmp4180, 2 ; <i1> [#uses=2]
|
|
%tmp4238 = add i32 %tmp4180, 1073741823 ; <i32> [#uses=1]
|
|
%iftmp.138.0 = select i1 %tmp4231, i32 %tmp4238, i32 2 ; <i32> [#uses=1]
|
|
%tmp4245 = sub i32 %iftmp.138.0, %tmp4180 ; <i32> [#uses=1]
|
|
%tmp4246 = shl i32 %tmp4245, 2 ; <i32> [#uses=2]
|
|
%tmp4247 = add i32 %tmp4246, 4 ; <i32> [#uses=1]
|
|
%tmp4248 = icmp sgt i32 %tmp4247, -1 ; <i1> [#uses=1]
|
|
%tmp4247.op = add i32 %tmp4246, 7 ; <i32> [#uses=1]
|
|
%tmp4247.op.op = and i32 %tmp4247.op, -4 ; <i32> [#uses=1]
|
|
%tmp4251 = select i1 %tmp4248, i32 %tmp4247.op.op, i32 0 ; <i32> [#uses=1]
|
|
%tmp4253 = alloca i8, i32 %tmp4251 ; <i8*> [#uses=2]
|
|
%tmp42534254 = bitcast i8* %tmp4253 to i32* ; <i32*> [#uses=1]
|
|
br i1 %tmp4231, label %bb4276, label %cond_next4266.preheader
|
|
|
|
cond_next4266.preheader: ; preds = %cond_next4189
|
|
%J152b.36147.3 = add i32 %tmp4180, 1 ; <i32> [#uses=1]
|
|
br label %cond_next4266
|
|
|
|
cond_next4266: ; preds = %cond_next4266, %cond_next4266.preheader
|
|
%indvar6268 = phi i32 [ 0, %cond_next4266.preheader ], [ %indvar.next22, %cond_next4266 ] ; <i32> [#uses=3]
|
|
%tmp4273 = getelementptr i32* %tmp42534254, i32 %indvar6268 ; <i32*> [#uses=1]
|
|
store i32 5, i32* %tmp4273
|
|
%tmp4275 = add i32 %J152b.36147.3, %indvar6268 ; <i32> [#uses=1]
|
|
%tmp42626151 = icmp sgt i32 %tmp4275, 2 ; <i1> [#uses=1]
|
|
%indvar.next22 = add i32 %indvar6268, 1 ; <i32> [#uses=1]
|
|
br i1 %tmp42626151, label %bb4276, label %cond_next4266
|
|
|
|
bb4276: ; preds = %cond_next4266, %cond_next4189
|
|
%tmp4280 = sub i32 2, %tmp4180 ; <i32> [#uses=1]
|
|
%tmp4281 = icmp eq i32 %tmp4280, 1 ; <i1> [#uses=1]
|
|
br i1 %tmp4281, label %cond_true4284, label %cleanup4336
|
|
|
|
cond_true4284: ; preds = %bb4276
|
|
%tmp4288 = call i32 (i8*, i8*, i32, ...)* @memcmp( i8* %tmp4253, i8* bitcast ([2 x i32]* @C.143.1720 to i8*), i32 8 ) ; <i32> [#uses=1]
|
|
%tmp4289 = icmp eq i32 %tmp4288, 0 ; <i1> [#uses=1]
|
|
br i1 %tmp4289, label %cond_true4292, label %cleanup4336
|
|
|
|
cond_true4292: ; preds = %cond_true4284
|
|
invoke void @report__failed( i64 or (i64 zext (i32 ptrtoint ([37 x i8]* @.str29 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.146.1725 to i32) to i64), i64 32)) )
|
|
to label %cleanup4336 unwind label %unwind4175
|
|
|
|
eh_then4307: ; preds = %unwind4175
|
|
invoke void @__gnat_begin_handler( i8* %eh_ptr4176 )
|
|
to label %invcont4313 unwind label %unwind4311
|
|
|
|
unwind4311: ; preds = %invcont4315, %invcont4313, %eh_then4307
|
|
%eh_ptr4312 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=1]
|
|
invoke void @__gnat_end_handler( i8* %eh_ptr4176 )
|
|
to label %cleanup4334 unwind label %unwind4326
|
|
|
|
invcont4313: ; preds = %eh_then4307
|
|
%tmp4314 = load void ()** @system__soft_links__abort_undefer ; <void ()*> [#uses=1]
|
|
invoke void %tmp4314( )
|
|
to label %invcont4315 unwind label %unwind4311
|
|
|
|
invcont4315: ; preds = %invcont4313
|
|
invoke void @report__failed( i64 or (i64 zext (i32 ptrtoint ([18 x i8]* @.str30 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.124.1606 to i32) to i64), i64 32)) )
|
|
to label %cleanup4324 unwind label %unwind4311
|
|
|
|
cleanup4324: ; preds = %invcont4315
|
|
invoke void @__gnat_end_handler( i8* %eh_ptr4176 )
|
|
to label %cleanup4336 unwind label %unwind4326
|
|
|
|
unwind4326: ; preds = %cleanup4324, %unwind4311
|
|
%eh_ptr4327 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=1]
|
|
call void @llvm.stackrestore( i8* %tmp4174 )
|
|
call i32 (...)* @_Unwind_Resume( i8* %eh_ptr4327 ) ; <i32>:19 [#uses=0]
|
|
unreachable
|
|
|
|
cleanup4334: ; preds = %unwind4311, %unwind4175
|
|
%eh_exception.50 = phi i8* [ %eh_ptr4176, %unwind4175 ], [ %eh_ptr4312, %unwind4311 ] ; <i8*> [#uses=1]
|
|
call void @llvm.stackrestore( i8* %tmp4174 )
|
|
call i32 (...)* @_Unwind_Resume( i8* %eh_exception.50 ) ; <i32>:20 [#uses=0]
|
|
unreachable
|
|
|
|
cleanup4336: ; preds = %cleanup4324, %cond_true4292, %cond_true4284, %bb4276
|
|
call void @llvm.stackrestore( i8* %tmp4174 )
|
|
%tmp4338 = call i8* @llvm.stacksave( ) ; <i8*> [#uses=6]
|
|
%tmp4379 = alloca i8, i32 %max1395 ; <i8*> [#uses=9]
|
|
%tmp4421 = alloca i8, i32 %max1395 ; <i8*> [#uses=3]
|
|
%tmp4428 = icmp ugt i8 %tmp204205, %tmp272273 ; <i1> [#uses=1]
|
|
br i1 %tmp4428, label %cond_next4458, label %bb4433
|
|
|
|
bb4433: ; preds = %cleanup4336
|
|
store i8 %wed.4, i8* %tmp4421
|
|
%tmp4442 = icmp eq i8 %tmp272273, %tmp204205 ; <i1> [#uses=1]
|
|
br i1 %tmp4442, label %cond_next4458, label %cond_next4446.preheader
|
|
|
|
cond_next4446.preheader: ; preds = %bb4433
|
|
%J161b.26152.2 = add i8 %tmp204205, 1 ; <i8> [#uses=1]
|
|
br label %cond_next4446
|
|
|
|
cond_next4446: ; preds = %cond_next4446, %cond_next4446.preheader
|
|
%indvar6271 = phi i8 [ 0, %cond_next4446.preheader ], [ %indvar.next24, %cond_next4446 ] ; <i8> [#uses=2]
|
|
%tmp4448 = add i8 %J161b.26152.2, %indvar6271 ; <i8> [#uses=2]
|
|
%tmp443444356156 = zext i8 %tmp4448 to i32 ; <i32> [#uses=1]
|
|
%tmp44376157 = sub i32 %tmp443444356156, %tmp13571358 ; <i32> [#uses=1]
|
|
%tmp44386158 = getelementptr i8* %tmp4421, i32 %tmp44376157 ; <i8*> [#uses=1]
|
|
store i8 %wed.4, i8* %tmp44386158
|
|
%tmp44426160 = icmp eq i8 %tmp272273, %tmp4448 ; <i1> [#uses=1]
|
|
%indvar.next24 = add i8 %indvar6271, 1 ; <i8> [#uses=1]
|
|
br i1 %tmp44426160, label %cond_next4458, label %cond_next4446
|
|
|
|
unwind4453: ; preds = %cond_true4609, %cond_true4504, %cond_true4481
|
|
%eh_ptr4454 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=4]
|
|
%eh_select4456 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr4454, i8* bitcast (i32 (...)* @__gnat_eh_personality to i8*), i32* @__gnat_others_value ) ; <i32> [#uses=1]
|
|
%eh_typeid4710 = call i32 @llvm.eh.typeid.for.i32( i8* bitcast (i32* @__gnat_others_value to i8*) ) ; <i32> [#uses=1]
|
|
%tmp4712 = icmp eq i32 %eh_select4456, %eh_typeid4710 ; <i1> [#uses=1]
|
|
br i1 %tmp4712, label %eh_then4713, label %cleanup4740
|
|
|
|
cond_next4458: ; preds = %cond_next4446, %bb4433, %cleanup4336
|
|
call void @llvm.memcpy.i32( i8* %tmp4379, i8* %tmp4421, i32 %max1395, i32 1 )
|
|
%tmp4464 = icmp ult i8 %tmp137138, %mon.4 ; <i1> [#uses=2]
|
|
br i1 %tmp4464, label %cond_next4484, label %cond_true4467
|
|
|
|
cond_true4467: ; preds = %cond_next4458
|
|
%tmp4470 = icmp ult i8 %mon.4, %tmp204205 ; <i1> [#uses=1]
|
|
%tmp4474 = icmp ugt i8 %tmp137138, %tmp272273 ; <i1> [#uses=1]
|
|
%tmp4478 = or i1 %tmp4470, %tmp4474 ; <i1> [#uses=1]
|
|
br i1 %tmp4478, label %cond_true4481, label %cond_next4484
|
|
|
|
cond_true4481: ; preds = %cond_true4467
|
|
invoke void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 340 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind4453
|
|
|
|
cond_next4484: ; preds = %cond_true4467, %cond_next4458
|
|
%tmp4487 = icmp ult i8 %mon.4, %tue.4 ; <i1> [#uses=2]
|
|
br i1 %tmp4487, label %cond_next4507, label %cond_true4490
|
|
|
|
cond_true4490: ; preds = %cond_next4484
|
|
%tmp4493 = icmp ult i8 %tue.4, %tmp204205 ; <i1> [#uses=1]
|
|
%tmp4497 = icmp ugt i8 %mon.4, %tmp272273 ; <i1> [#uses=1]
|
|
%tmp4501 = or i1 %tmp4497, %tmp4493 ; <i1> [#uses=1]
|
|
br i1 %tmp4501, label %cond_true4504, label %cond_next4507
|
|
|
|
cond_true4504: ; preds = %cond_true4490
|
|
invoke void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 340 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind4453
|
|
|
|
cond_next4507: ; preds = %cond_true4490, %cond_next4484
|
|
%tmp45904591 = zext i8 %mon.4 to i64 ; <i64> [#uses=3]
|
|
%tmp45924593 = zext i8 %tue.4 to i64 ; <i64> [#uses=1]
|
|
%tmp4594 = sub i64 %tmp45904591, %tmp45924593 ; <i64> [#uses=1]
|
|
%tmp4595 = add i64 %tmp4594, 1 ; <i64> [#uses=2]
|
|
%tmp4596 = icmp sgt i64 %tmp4595, -1 ; <i1> [#uses=1]
|
|
%max4597 = select i1 %tmp4596, i64 %tmp4595, i64 0 ; <i64> [#uses=1]
|
|
%tmp45984599 = zext i8 %tmp137138 to i64 ; <i64> [#uses=1]
|
|
%tmp4602 = sub i64 %tmp45984599, %tmp45904591 ; <i64> [#uses=1]
|
|
%tmp4603 = add i64 %tmp4602, 1 ; <i64> [#uses=3]
|
|
%tmp4604 = icmp sgt i64 %tmp4603, -1 ; <i1> [#uses=2]
|
|
%max4605 = select i1 %tmp4604, i64 %tmp4603, i64 0 ; <i64> [#uses=1]
|
|
%tmp4606 = icmp eq i64 %max4597, %max4605 ; <i1> [#uses=1]
|
|
br i1 %tmp4606, label %cond_next4611, label %cond_true4609
|
|
|
|
cond_true4609: ; preds = %cond_next4507
|
|
invoke void @__gnat_rcheck_07( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 340 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind4453
|
|
|
|
cond_next4611: ; preds = %cond_next4507
|
|
%tmp46124613 = zext i8 %tue.4 to i32 ; <i32> [#uses=1]
|
|
%tmp4616 = sub i32 %tmp46124613, %tmp13571358 ; <i32> [#uses=2]
|
|
%tmp46244625 = zext i8 %mon.4 to i32 ; <i32> [#uses=1]
|
|
%tmp4628 = sub i32 %tmp46244625, %tmp13571358 ; <i32> [#uses=3]
|
|
%tmp4636 = icmp slt i32 %tmp4628, %tmp4616 ; <i1> [#uses=1]
|
|
%tmp4677 = icmp ugt i8 %tue.4, %mon.4 ; <i1> [#uses=2]
|
|
br i1 %tmp4636, label %cond_false4673, label %cond_true4639
|
|
|
|
cond_true4639: ; preds = %cond_next4611
|
|
br i1 %tmp4677, label %cleanup4742, label %bb4648.preheader
|
|
|
|
bb4648.preheader: ; preds = %cond_true4639
|
|
%tmp46556217 = getelementptr i8* %tmp4379, i32 %tmp4628 ; <i8*> [#uses=1]
|
|
%tmp46566218 = load i8* %tmp46556217 ; <i8> [#uses=1]
|
|
%tmp46596220 = getelementptr i8* %tmp4379, i32 %tmp4616 ; <i8*> [#uses=1]
|
|
store i8 %tmp46566218, i8* %tmp46596220
|
|
%tmp46646223 = icmp eq i8 %tue.4, %mon.4 ; <i1> [#uses=1]
|
|
br i1 %tmp46646223, label %cleanup4742, label %cond_next4668.preheader
|
|
|
|
cond_next4668.preheader: ; preds = %bb4648.preheader
|
|
%tmp46616222.in = add i8 %mon.4, 1 ; <i8> [#uses=1]
|
|
%L174b.26213 = add i8 %tue.4, 1 ; <i8> [#uses=1]
|
|
%tmp.27 = sub i8 %mon.4, %tue.4 ; <i8> [#uses=1]
|
|
br label %cond_next4668
|
|
|
|
cond_next4668: ; preds = %cond_next4668, %cond_next4668.preheader
|
|
%indvar6275 = phi i8 [ 0, %cond_next4668.preheader ], [ %indvar.next26, %cond_next4668 ] ; <i8> [#uses=3]
|
|
%tmp46616222 = add i8 %tmp46616222.in, %indvar6275 ; <i8> [#uses=1]
|
|
%tmp4670 = add i8 %L174b.26213, %indvar6275 ; <i8> [#uses=1]
|
|
%tmp46494650 = zext i8 %tmp4670 to i32 ; <i32> [#uses=1]
|
|
%tmp46514652 = zext i8 %tmp46616222 to i32 ; <i32> [#uses=1]
|
|
%tmp4654 = sub i32 %tmp46514652, %tmp13571358 ; <i32> [#uses=1]
|
|
%tmp4655 = getelementptr i8* %tmp4379, i32 %tmp4654 ; <i8*> [#uses=1]
|
|
%tmp4656 = load i8* %tmp4655 ; <i8> [#uses=1]
|
|
%tmp4658 = sub i32 %tmp46494650, %tmp13571358 ; <i32> [#uses=1]
|
|
%tmp4659 = getelementptr i8* %tmp4379, i32 %tmp4658 ; <i8*> [#uses=1]
|
|
store i8 %tmp4656, i8* %tmp4659
|
|
%indvar.next26 = add i8 %indvar6275, 1 ; <i8> [#uses=2]
|
|
%exitcond28 = icmp eq i8 %indvar.next26, %tmp.27 ; <i1> [#uses=1]
|
|
br i1 %exitcond28, label %cleanup4742, label %cond_next4668
|
|
|
|
cond_false4673: ; preds = %cond_next4611
|
|
br i1 %tmp4677, label %cleanup4742, label %bb4682.preheader
|
|
|
|
bb4682.preheader: ; preds = %cond_false4673
|
|
%tmp468546866228 = and i32 %tmp123, 255 ; <i32> [#uses=1]
|
|
%tmp46886229 = sub i32 %tmp468546866228, %tmp13571358 ; <i32> [#uses=1]
|
|
%tmp46896230 = getelementptr i8* %tmp4379, i32 %tmp46886229 ; <i8*> [#uses=1]
|
|
%tmp46906231 = load i8* %tmp46896230 ; <i8> [#uses=1]
|
|
%tmp46936233 = getelementptr i8* %tmp4379, i32 %tmp4628 ; <i8*> [#uses=1]
|
|
store i8 %tmp46906231, i8* %tmp46936233
|
|
%tmp46986236 = icmp eq i8 %mon.4, %tue.4 ; <i1> [#uses=1]
|
|
br i1 %tmp46986236, label %cleanup4742, label %cond_next4702.preheader
|
|
|
|
cond_next4702.preheader: ; preds = %bb4682.preheader
|
|
%tmp46956235.in = add i8 %tmp137138, -1 ; <i8> [#uses=1]
|
|
%L172b.26226 = add i8 %mon.4, -1 ; <i8> [#uses=1]
|
|
%tmp.32 = sub i8 %mon.4, %tue.4 ; <i8> [#uses=1]
|
|
br label %cond_next4702
|
|
|
|
cond_next4702: ; preds = %cond_next4702, %cond_next4702.preheader
|
|
%indvar6278 = phi i8 [ 0, %cond_next4702.preheader ], [ %indvar.next30, %cond_next4702 ] ; <i8> [#uses=3]
|
|
%tmp46956235 = sub i8 %tmp46956235.in, %indvar6278 ; <i8> [#uses=1]
|
|
%tmp4704 = sub i8 %L172b.26226, %indvar6278 ; <i8> [#uses=1]
|
|
%tmp46834684 = zext i8 %tmp4704 to i32 ; <i32> [#uses=1]
|
|
%tmp46854686 = zext i8 %tmp46956235 to i32 ; <i32> [#uses=1]
|
|
%tmp4688 = sub i32 %tmp46854686, %tmp13571358 ; <i32> [#uses=1]
|
|
%tmp4689 = getelementptr i8* %tmp4379, i32 %tmp4688 ; <i8*> [#uses=1]
|
|
%tmp4690 = load i8* %tmp4689 ; <i8> [#uses=1]
|
|
%tmp4692 = sub i32 %tmp46834684, %tmp13571358 ; <i32> [#uses=1]
|
|
%tmp4693 = getelementptr i8* %tmp4379, i32 %tmp4692 ; <i8*> [#uses=1]
|
|
store i8 %tmp4690, i8* %tmp4693
|
|
%indvar.next30 = add i8 %indvar6278, 1 ; <i8> [#uses=2]
|
|
%exitcond33 = icmp eq i8 %indvar.next30, %tmp.32 ; <i1> [#uses=1]
|
|
br i1 %exitcond33, label %cleanup4742, label %cond_next4702
|
|
|
|
eh_then4713: ; preds = %unwind4453
|
|
invoke void @__gnat_begin_handler( i8* %eh_ptr4454 )
|
|
to label %invcont4719 unwind label %unwind4717
|
|
|
|
unwind4717: ; preds = %invcont4719, %eh_then4713
|
|
%eh_ptr4718 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=1]
|
|
invoke void @__gnat_end_handler( i8* %eh_ptr4454 )
|
|
to label %cleanup4740 unwind label %unwind4732
|
|
|
|
invcont4719: ; preds = %eh_then4713
|
|
%tmp4720 = load void ()** @system__soft_links__abort_undefer ; <void ()*> [#uses=1]
|
|
invoke void %tmp4720( )
|
|
to label %UnifiedReturnBlock35 unwind label %unwind4717
|
|
|
|
unwind4732: ; preds = %unwind4717
|
|
%eh_ptr4733 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=1]
|
|
call void @llvm.stackrestore( i8* %tmp4338 )
|
|
call void @llvm.stackrestore( i8* %tmp4338 )
|
|
call i32 (...)* @_Unwind_Resume( i8* %eh_ptr4733 ) ; <i32>:21 [#uses=0]
|
|
unreachable
|
|
|
|
cleanup4740: ; preds = %unwind4717, %unwind4453
|
|
%eh_exception.53 = phi i8* [ %eh_ptr4454, %unwind4453 ], [ %eh_ptr4718, %unwind4717 ] ; <i8*> [#uses=1]
|
|
call void @llvm.stackrestore( i8* %tmp4338 )
|
|
call void @llvm.stackrestore( i8* %tmp4338 )
|
|
call i32 (...)* @_Unwind_Resume( i8* %eh_exception.53 ) ; <i32>:22 [#uses=0]
|
|
unreachable
|
|
|
|
cleanup4742: ; preds = %cond_next4702, %bb4682.preheader, %cond_false4673, %cond_next4668, %bb4648.preheader, %cond_true4639
|
|
call void @llvm.stackrestore( i8* %tmp4338 )
|
|
call void @llvm.stackrestore( i8* %tmp4338 )
|
|
%tmp4749 = call i8* @llvm.stacksave( ) ; <i8*> [#uses=2]
|
|
br i1 %tmp4464, label %cond_next4776, label %UnifiedReturnBlock35
|
|
|
|
unwind4770: ; preds = %cond_next4776
|
|
%eh_ptr4771 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=5]
|
|
%eh_select4773 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr4771, i8* bitcast (i32 (...)* @__gnat_eh_personality to i8*), i32* @__gnat_others_value ) ; <i32> [#uses=1]
|
|
call void @llvm.stackrestore( i8* %tmp4749 )
|
|
%eh_typeid4874 = call i32 @llvm.eh.typeid.for.i32( i8* bitcast (i32* @__gnat_others_value to i8*) ) ; <i32> [#uses=1]
|
|
%tmp4876 = icmp eq i32 %eh_select4773, %eh_typeid4874 ; <i1> [#uses=1]
|
|
br i1 %tmp4876, label %eh_then4877, label %Unwind
|
|
|
|
cond_next4776: ; preds = %cleanup4742
|
|
%tmp4856.cast = trunc i64 %tmp4603 to i32 ; <i32> [#uses=1]
|
|
%max48584859 = select i1 %tmp4604, i32 %tmp4856.cast, i32 0 ; <i32> [#uses=1]
|
|
%tmp4861 = invoke i8 @report__equal( i32 %max48584859, i32 0 )
|
|
to label %invcont4860 unwind label %unwind4770 ; <i8> [#uses=1]
|
|
|
|
invcont4860: ; preds = %cond_next4776
|
|
%tmp4862 = icmp eq i8 %tmp4861, 0 ; <i1> [#uses=1]
|
|
%tue.8 = select i1 %tmp4862, i8 %tue.4, i8 2 ; <i8> [#uses=3]
|
|
call void @llvm.stackrestore( i8* %tmp4749 )
|
|
%tmp49016170 = icmp ult i8 %mon.4, %tue.8 ; <i1> [#uses=1]
|
|
br i1 %tmp49016170, label %cond_next4925, label %cond_true4904
|
|
|
|
eh_then4877: ; preds = %unwind4770
|
|
invoke void @__gnat_begin_handler( i8* %eh_ptr4771 )
|
|
to label %invcont4883 unwind label %unwind4881
|
|
|
|
unwind4881: ; preds = %invcont4885, %invcont4883, %eh_then4877
|
|
%eh_ptr4882 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=1]
|
|
call void @__gnat_end_handler( i8* %eh_ptr4771 )
|
|
call i32 (...)* @_Unwind_Resume( i8* %eh_ptr4882 ) ; <i32>:23 [#uses=0]
|
|
unreachable
|
|
|
|
invcont4883: ; preds = %eh_then4877
|
|
%tmp4884 = load void ()** @system__soft_links__abort_undefer ; <void ()*> [#uses=1]
|
|
invoke void %tmp4884( )
|
|
to label %invcont4885 unwind label %unwind4881
|
|
|
|
invcont4885: ; preds = %invcont4883
|
|
invoke void @report__failed( i64 or (i64 zext (i32 ptrtoint ([18 x i8]* @.str32 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.124.1606 to i32) to i64), i64 32)) )
|
|
to label %cleanup4894 unwind label %unwind4881
|
|
|
|
cleanup4894: ; preds = %invcont4885
|
|
call void @__gnat_end_handler( i8* %eh_ptr4771 )
|
|
br i1 %tmp4487, label %cond_next4925, label %cond_true4904
|
|
|
|
cond_true4904: ; preds = %cleanup4894, %invcont4860
|
|
%tue.96161.0 = phi i8 [ %tue.8, %invcont4860 ], [ %tue.4, %cleanup4894 ] ; <i8> [#uses=3]
|
|
%tmp4907 = icmp ult i8 %tue.96161.0, %tmp204205 ; <i1> [#uses=1]
|
|
%tmp4911 = icmp ugt i8 %mon.4, %tmp272273 ; <i1> [#uses=1]
|
|
%tmp4915 = or i1 %tmp4907, %tmp4911 ; <i1> [#uses=1]
|
|
br i1 %tmp4915, label %cond_true4918, label %cond_next4925
|
|
|
|
cond_true4918: ; preds = %cond_true4904
|
|
invoke void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 361 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind4919
|
|
|
|
unwind4919: ; preds = %cond_next4925, %cond_true4918
|
|
%tue.96161.2 = phi i8 [ %tue.96161.0, %cond_true4918 ], [ %tue.96161.1, %cond_next4925 ] ; <i8> [#uses=1]
|
|
%eh_ptr4920 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=5]
|
|
%eh_select4922 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr4920, i8* bitcast (i32 (...)* @__gnat_eh_personality to i8*), i32* @__gnat_others_value ) ; <i32> [#uses=1]
|
|
%eh_typeid4987 = call i32 @llvm.eh.typeid.for.i32( i8* bitcast (i32* @__gnat_others_value to i8*) ) ; <i32> [#uses=1]
|
|
%tmp4989 = icmp eq i32 %eh_select4922, %eh_typeid4987 ; <i1> [#uses=1]
|
|
br i1 %tmp4989, label %eh_then4990, label %Unwind
|
|
|
|
cond_next4925: ; preds = %cond_true4904, %cleanup4894, %invcont4860
|
|
%tue.96161.1 = phi i8 [ %tue.8, %invcont4860 ], [ %tue.4, %cleanup4894 ], [ %tue.96161.0, %cond_true4904 ] ; <i8> [#uses=6]
|
|
%tmp49714972 = zext i8 %tue.96161.1 to i64 ; <i64> [#uses=1]
|
|
%tmp4973 = sub i64 %tmp45904591, %tmp49714972 ; <i64> [#uses=1]
|
|
%tmp4974 = add i64 %tmp4973, 1 ; <i64> [#uses=2]
|
|
%tmp4975 = icmp sgt i64 %tmp4974, -1 ; <i1> [#uses=1]
|
|
%tmp4974.cast = trunc i64 %tmp4974 to i32 ; <i32> [#uses=1]
|
|
%max49764977 = select i1 %tmp4975, i32 %tmp4974.cast, i32 0 ; <i32> [#uses=1]
|
|
%tmp4979 = invoke i8 @report__equal( i32 %max49764977, i32 0 )
|
|
to label %invcont4978 unwind label %unwind4919 ; <i8> [#uses=1]
|
|
|
|
invcont4978: ; preds = %cond_next4925
|
|
%tmp4980 = icmp eq i8 %tmp4979, 0 ; <i1> [#uses=1]
|
|
br i1 %tmp4980, label %finally4985, label %cond_true4983
|
|
|
|
cond_true4983: ; preds = %invcont4978
|
|
%tmp50146178 = icmp ugt i8 %tue.96161.1, 1 ; <i1> [#uses=1]
|
|
br i1 %tmp50146178, label %cond_next5038, label %cond_true5017
|
|
|
|
eh_then4990: ; preds = %unwind4919
|
|
invoke void @__gnat_begin_handler( i8* %eh_ptr4920 )
|
|
to label %invcont4996 unwind label %unwind4994
|
|
|
|
unwind4994: ; preds = %invcont4998, %invcont4996, %eh_then4990
|
|
%eh_ptr4995 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=1]
|
|
call void @__gnat_end_handler( i8* %eh_ptr4920 )
|
|
call i32 (...)* @_Unwind_Resume( i8* %eh_ptr4995 ) ; <i32>:24 [#uses=0]
|
|
unreachable
|
|
|
|
invcont4996: ; preds = %eh_then4990
|
|
%tmp4997 = load void ()** @system__soft_links__abort_undefer ; <void ()*> [#uses=1]
|
|
invoke void %tmp4997( )
|
|
to label %invcont4998 unwind label %unwind4994
|
|
|
|
invcont4998: ; preds = %invcont4996
|
|
invoke void @report__failed( i64 or (i64 zext (i32 ptrtoint ([19 x i8]* @.str33 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.170.1990 to i32) to i64), i64 32)) )
|
|
to label %cleanup5007 unwind label %unwind4994
|
|
|
|
cleanup5007: ; preds = %invcont4998
|
|
call void @__gnat_end_handler( i8* %eh_ptr4920 )
|
|
br label %finally4985
|
|
|
|
finally4985: ; preds = %cleanup5007, %invcont4978
|
|
%tue.96161.3 = phi i8 [ %tue.96161.2, %cleanup5007 ], [ %tue.96161.1, %invcont4978 ] ; <i8> [#uses=3]
|
|
%tmp5014 = icmp ult i8 %mon.4, %tue.96161.3 ; <i1> [#uses=1]
|
|
br i1 %tmp5014, label %cond_next5038, label %cond_true5017
|
|
|
|
cond_true5017: ; preds = %finally4985, %cond_true4983
|
|
%tue.96161.4 = phi i8 [ %tue.96161.1, %cond_true4983 ], [ %tue.96161.3, %finally4985 ] ; <i8> [#uses=3]
|
|
%mon.86171.0 = phi i8 [ 1, %cond_true4983 ], [ %mon.4, %finally4985 ] ; <i8> [#uses=3]
|
|
%tmp5020 = icmp ult i8 %tue.96161.4, %tmp204205 ; <i1> [#uses=1]
|
|
%tmp5024 = icmp ugt i8 %mon.86171.0, %tmp272273 ; <i1> [#uses=1]
|
|
%tmp5028 = or i1 %tmp5024, %tmp5020 ; <i1> [#uses=1]
|
|
br i1 %tmp5028, label %cond_true5031, label %cond_next5038
|
|
|
|
cond_true5031: ; preds = %cond_true5017
|
|
invoke void @__gnat_rcheck_12( i8* getelementptr ([13 x i8]* @.str, i32 0, i32 0), i32 375 )
|
|
to label %UnifiedUnreachableBlock34 unwind label %unwind5032
|
|
|
|
unwind5032: ; preds = %cond_next5038, %cond_true5031
|
|
%tue.96161.6 = phi i8 [ %tue.96161.4, %cond_true5031 ], [ %tue.96161.5, %cond_next5038 ] ; <i8> [#uses=1]
|
|
%mon.86171.2 = phi i8 [ %mon.86171.0, %cond_true5031 ], [ %mon.86171.1, %cond_next5038 ] ; <i8> [#uses=1]
|
|
%eh_ptr5033 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=5]
|
|
%eh_select5035 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr5033, i8* bitcast (i32 (...)* @__gnat_eh_personality to i8*), i32* @__gnat_others_value ) ; <i32> [#uses=1]
|
|
%eh_typeid5100 = call i32 @llvm.eh.typeid.for.i32( i8* bitcast (i32* @__gnat_others_value to i8*) ) ; <i32> [#uses=1]
|
|
%tmp5102 = icmp eq i32 %eh_select5035, %eh_typeid5100 ; <i1> [#uses=1]
|
|
br i1 %tmp5102, label %eh_then5103, label %Unwind
|
|
|
|
cond_next5038: ; preds = %cond_true5017, %finally4985, %cond_true4983
|
|
%tue.96161.5 = phi i8 [ %tue.96161.1, %cond_true4983 ], [ %tue.96161.3, %finally4985 ], [ %tue.96161.4, %cond_true5017 ] ; <i8> [#uses=4]
|
|
%mon.86171.1 = phi i8 [ 1, %cond_true4983 ], [ %mon.4, %finally4985 ], [ %mon.86171.0, %cond_true5017 ] ; <i8> [#uses=4]
|
|
%tmp50825083 = zext i8 %mon.86171.1 to i64 ; <i64> [#uses=1]
|
|
%tmp50845085 = zext i8 %tue.96161.5 to i64 ; <i64> [#uses=1]
|
|
%tmp5086 = sub i64 %tmp50825083, %tmp50845085 ; <i64> [#uses=1]
|
|
%tmp5087 = add i64 %tmp5086, 1 ; <i64> [#uses=2]
|
|
%tmp5088 = icmp sgt i64 %tmp5087, -1 ; <i1> [#uses=1]
|
|
%tmp5087.cast = trunc i64 %tmp5087 to i32 ; <i32> [#uses=1]
|
|
%max50895090 = select i1 %tmp5088, i32 %tmp5087.cast, i32 0 ; <i32> [#uses=1]
|
|
%tmp5092 = invoke i8 @report__equal( i32 %max50895090, i32 0 )
|
|
to label %invcont5091 unwind label %unwind5032 ; <i8> [#uses=1]
|
|
|
|
invcont5091: ; preds = %cond_next5038
|
|
%tmp5093 = icmp eq i8 %tmp5092, 0 ; <i1> [#uses=1]
|
|
br i1 %tmp5093, label %finally5098, label %cond_true5096
|
|
|
|
cond_true5096: ; preds = %invcont5091
|
|
br label %finally5098
|
|
|
|
eh_then5103: ; preds = %unwind5032
|
|
invoke void @__gnat_begin_handler( i8* %eh_ptr5033 )
|
|
to label %invcont5109 unwind label %unwind5107
|
|
|
|
unwind5107: ; preds = %invcont5111, %invcont5109, %eh_then5103
|
|
%eh_ptr5108 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=1]
|
|
call void @__gnat_end_handler( i8* %eh_ptr5033 )
|
|
call i32 (...)* @_Unwind_Resume( i8* %eh_ptr5108 ) ; <i32>:25 [#uses=0]
|
|
unreachable
|
|
|
|
invcont5109: ; preds = %eh_then5103
|
|
%tmp5110 = load void ()** @system__soft_links__abort_undefer ; <void ()*> [#uses=1]
|
|
invoke void %tmp5110( )
|
|
to label %invcont5111 unwind label %unwind5107
|
|
|
|
invcont5111: ; preds = %invcont5109
|
|
invoke void @report__failed( i64 or (i64 zext (i32 ptrtoint ([19 x i8]* @.str34 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.170.1990 to i32) to i64), i64 32)) )
|
|
to label %cleanup5120 unwind label %unwind5107
|
|
|
|
cleanup5120: ; preds = %invcont5111
|
|
call void @__gnat_end_handler( i8* %eh_ptr5033 )
|
|
br label %finally5098
|
|
|
|
finally5098: ; preds = %cleanup5120, %cond_true5096, %invcont5091
|
|
%tue.96161.7 = phi i8 [ %tue.96161.6, %cleanup5120 ], [ %tue.96161.5, %cond_true5096 ], [ %tue.96161.5, %invcont5091 ] ; <i8> [#uses=1]
|
|
%mon.86171.3 = phi i8 [ %mon.86171.2, %cleanup5120 ], [ %mon.86171.1, %cond_true5096 ], [ %mon.86171.1, %invcont5091 ] ; <i8> [#uses=2]
|
|
%wed.6 = phi i8 [ %wed.4, %cleanup5120 ], [ 3, %cond_true5096 ], [ %wed.4, %invcont5091 ] ; <i8> [#uses=5]
|
|
%not.tmp5135 = icmp uge i8 %tmp137138, %sat.45934.0 ; <i1> [#uses=1]
|
|
%tmp5151 = icmp uge i8 %sat.45934.0, %tmp306307 ; <i1> [#uses=1]
|
|
%tmp5155 = icmp ule i8 %sat.45934.0, %wed.6 ; <i1> [#uses=1]
|
|
%tmp5159 = and i1 %tmp5155, %tmp5151 ; <i1> [#uses=1]
|
|
%tmp5177 = icmp ult i8 %wed.6, %tmp272273 ; <i1> [#uses=1]
|
|
%tmp5184 = icmp ugt i8 %wed.6, %tue.96161.7 ; <i1> [#uses=1]
|
|
%bothcond5907 = or i1 %tmp5177, %tmp5184 ; <i1> [#uses=2]
|
|
%not.bothcond5907 = xor i1 %bothcond5907, true ; <i1> [#uses=1]
|
|
%tmp5198 = icmp uge i8 %tmp272273, %mon.86171.3 ; <i1> [#uses=1]
|
|
%tmp5202 = icmp ule i8 %tmp272273, %tmp137138 ; <i1> [#uses=1]
|
|
%tmp5206 = and i1 %tmp5198, %tmp5202 ; <i1> [#uses=1]
|
|
%not.bothcond5908 = icmp uge i8 %tmp306307, %sat.45934.0 ; <i1> [#uses=1]
|
|
%tmp5244 = icmp uge i8 %wed.6, %tmp306307 ; <i1> [#uses=1]
|
|
%tmp5248 = icmp ule i8 %wed.6, %mon.86171.3 ; <i1> [#uses=1]
|
|
%tmp5252 = and i1 %tmp5244, %tmp5248 ; <i1> [#uses=1]
|
|
%tmp5164 = or i1 %not.tmp5135, %not.bothcond5908 ; <i1> [#uses=1]
|
|
%tmp5194 = or i1 %tmp5164, %tmp5206 ; <i1> [#uses=1]
|
|
%tmp5210 = or i1 %tmp5194, %tmp5159 ; <i1> [#uses=1]
|
|
%tmp5240 = or i1 %tmp5210, %not.bothcond5907 ; <i1> [#uses=1]
|
|
%tmp5256 = or i1 %tmp5240, %tmp5252 ; <i1> [#uses=1]
|
|
br i1 %tmp5256, label %cond_true5259, label %cond_next5271
|
|
|
|
cond_true5259: ; preds = %finally5098
|
|
invoke void @report__failed( i64 or (i64 zext (i32 ptrtoint ([27 x i8]* @.str35 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.178.2066 to i32) to i64), i64 32)) )
|
|
to label %cond_next5271 unwind label %unwind5266
|
|
|
|
unwind5266: ; preds = %cond_true5462, %invcont5429, %cond_next5401, %cond_true5393, %cond_next5374, %bb5359, %cond_next5347, %invcont5330, %invcont5305, %invcont5303, %invcont5294, %bb5293, %cond_next5281, %cond_next5271, %cond_true5259
|
|
%eh_ptr5267 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=5]
|
|
%eh_select5269 = call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr5267, i8* bitcast (i32 (...)* @__gnat_eh_personality to i8*), i32* @__gnat_others_value ) ; <i32> [#uses=1]
|
|
%eh_typeid5473 = call i32 @llvm.eh.typeid.for.i32( i8* bitcast (i32* @__gnat_others_value to i8*) ) ; <i32> [#uses=1]
|
|
%tmp5475 = icmp eq i32 %eh_select5269, %eh_typeid5473 ; <i1> [#uses=1]
|
|
br i1 %tmp5475, label %eh_then5476, label %Unwind
|
|
|
|
cond_next5271: ; preds = %cond_true5259, %finally5098
|
|
%tmp5273 = invoke i32 @report__ident_int( i32 0 )
|
|
to label %invcont5272 unwind label %unwind5266 ; <i32> [#uses=2]
|
|
|
|
invcont5272: ; preds = %cond_next5271
|
|
%tmp5277 = icmp slt i32 %tmp5273, 10 ; <i1> [#uses=1]
|
|
br i1 %tmp5277, label %bb5292, label %cond_next5281
|
|
|
|
cond_next5281: ; preds = %invcont5272
|
|
%tmp5283 = invoke i32 @report__ident_int( i32 -10 )
|
|
to label %invcont5282 unwind label %unwind5266 ; <i32> [#uses=1]
|
|
|
|
invcont5282: ; preds = %cond_next5281
|
|
%tmp5287 = icmp sgt i32 %tmp5273, %tmp5283 ; <i1> [#uses=1]
|
|
br i1 %tmp5287, label %bb5292, label %bb5293
|
|
|
|
bb5292: ; preds = %invcont5282, %invcont5272
|
|
br label %bb5293
|
|
|
|
bb5293: ; preds = %bb5292, %invcont5282
|
|
%iftmp.179.0 = phi i1 [ false, %bb5292 ], [ true, %invcont5282 ] ; <i1> [#uses=1]
|
|
%tmp5295 = invoke i32 @report__ident_int( i32 10 )
|
|
to label %invcont5294 unwind label %unwind5266 ; <i32> [#uses=1]
|
|
|
|
invcont5294: ; preds = %bb5293
|
|
%tmp5296 = icmp slt i32 %tmp5295, 1 ; <i1> [#uses=1]
|
|
%tmp5304 = invoke i32 @report__ident_int( i32 0 )
|
|
to label %invcont5303 unwind label %unwind5266 ; <i32> [#uses=2]
|
|
|
|
invcont5303: ; preds = %invcont5294
|
|
%tmp5306 = invoke i32 @report__ident_int( i32 -10 )
|
|
to label %invcont5305 unwind label %unwind5266 ; <i32> [#uses=1]
|
|
|
|
invcont5305: ; preds = %invcont5303
|
|
%tmp5331 = invoke i32 @report__ident_int( i32 -20 )
|
|
to label %invcont5330 unwind label %unwind5266 ; <i32> [#uses=1]
|
|
|
|
invcont5330: ; preds = %invcont5305
|
|
%tmp5310 = icmp slt i32 %tmp5304, %tmp5306 ; <i1> [#uses=1]
|
|
%tmp5318 = icmp sgt i32 %tmp5304, -11 ; <i1> [#uses=1]
|
|
%bothcond5909 = or i1 %tmp5310, %tmp5318 ; <i1> [#uses=1]
|
|
%not.bothcond5909 = xor i1 %bothcond5909, true ; <i1> [#uses=1]
|
|
%tmp5332 = icmp sgt i32 %tmp5331, -1 ; <i1> [#uses=1]
|
|
%tmp5339 = invoke i32 @report__ident_int( i32 0 )
|
|
to label %invcont5338 unwind label %unwind5266 ; <i32> [#uses=2]
|
|
|
|
invcont5338: ; preds = %invcont5330
|
|
%tmp5343 = icmp slt i32 %tmp5339, 6 ; <i1> [#uses=1]
|
|
br i1 %tmp5343, label %bb5358, label %cond_next5347
|
|
|
|
cond_next5347: ; preds = %invcont5338
|
|
%tmp5349 = invoke i32 @report__ident_int( i32 5 )
|
|
to label %invcont5348 unwind label %unwind5266 ; <i32> [#uses=1]
|
|
|
|
invcont5348: ; preds = %cond_next5347
|
|
%tmp5353 = icmp sgt i32 %tmp5339, %tmp5349 ; <i1> [#uses=1]
|
|
br i1 %tmp5353, label %bb5358, label %bb5359
|
|
|
|
bb5358: ; preds = %invcont5348, %invcont5338
|
|
br label %bb5359
|
|
|
|
bb5359: ; preds = %bb5358, %invcont5348
|
|
%iftmp.181.0 = phi i1 [ false, %bb5358 ], [ true, %invcont5348 ] ; <i1> [#uses=1]
|
|
%tmp5366 = invoke i32 @report__ident_int( i32 0 )
|
|
to label %invcont5365 unwind label %unwind5266 ; <i32> [#uses=2]
|
|
|
|
invcont5365: ; preds = %bb5359
|
|
%tmp5370 = icmp slt i32 %tmp5366, 7 ; <i1> [#uses=1]
|
|
br i1 %tmp5370, label %bb5385, label %cond_next5374
|
|
|
|
cond_next5374: ; preds = %invcont5365
|
|
%tmp5376 = invoke i32 @report__ident_int( i32 3 )
|
|
to label %invcont5375 unwind label %unwind5266 ; <i32> [#uses=1]
|
|
|
|
invcont5375: ; preds = %cond_next5374
|
|
%tmp5380 = icmp sgt i32 %tmp5366, %tmp5376 ; <i1> [#uses=1]
|
|
br i1 %tmp5380, label %bb5385, label %bb5386
|
|
|
|
bb5385: ; preds = %invcont5375, %invcont5365
|
|
br label %bb5386
|
|
|
|
bb5386: ; preds = %bb5385, %invcont5375
|
|
%iftmp.182.0 = phi i1 [ false, %bb5385 ], [ true, %invcont5375 ] ; <i1> [#uses=1]
|
|
%tmp5301 = or i1 %tmp5296, %iftmp.179.0 ; <i1> [#uses=1]
|
|
%tmp5328 = or i1 %tmp5301, %not.bothcond5909 ; <i1> [#uses=1]
|
|
%tmp5336 = or i1 %tmp5328, %tmp5332 ; <i1> [#uses=1]
|
|
%tmp5363 = or i1 %tmp5336, %iftmp.181.0 ; <i1> [#uses=1]
|
|
%tmp5390 = or i1 %tmp5363, %iftmp.182.0 ; <i1> [#uses=1]
|
|
br i1 %tmp5390, label %cond_true5393, label %cond_next5401
|
|
|
|
cond_true5393: ; preds = %bb5386
|
|
invoke void @report__failed( i64 or (i64 zext (i32 ptrtoint ([27 x i8]* @.str36 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.178.2066 to i32) to i64), i64 32)) )
|
|
to label %cond_next5401 unwind label %unwind5266
|
|
|
|
cond_next5401: ; preds = %cond_true5393, %bb5386
|
|
%tmp5430 = invoke i32 @report__ident_int( i32 0 )
|
|
to label %invcont5429 unwind label %unwind5266 ; <i32> [#uses=2]
|
|
|
|
invcont5429: ; preds = %cond_next5401
|
|
%tmp5432 = invoke i32 @report__ident_int( i32 4 )
|
|
to label %invcont5431 unwind label %unwind5266 ; <i32> [#uses=1]
|
|
|
|
invcont5431: ; preds = %invcont5429
|
|
%tmp5436 = icmp slt i32 %tmp5430, %tmp5432 ; <i1> [#uses=1]
|
|
%tmp5444 = icmp sgt i32 %tmp5430, -4 ; <i1> [#uses=1]
|
|
%bothcond5911 = or i1 %tmp5436, %tmp5444 ; <i1> [#uses=1]
|
|
%tmp5457 = and i1 %bothcond5911, %bothcond5907 ; <i1> [#uses=1]
|
|
br i1 %tmp5457, label %finally5471, label %cond_true5462
|
|
|
|
cond_true5462: ; preds = %invcont5431
|
|
invoke void @report__failed( i64 or (i64 zext (i32 ptrtoint ([29 x i8]* @.str37 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.36.923 to i32) to i64), i64 32)) )
|
|
to label %finally5471 unwind label %unwind5266
|
|
|
|
eh_then5476: ; preds = %unwind5266
|
|
invoke void @__gnat_begin_handler( i8* %eh_ptr5267 )
|
|
to label %invcont5482 unwind label %unwind5480
|
|
|
|
unwind5480: ; preds = %invcont5484, %invcont5482, %eh_then5476
|
|
%eh_ptr5481 = call i8* @llvm.eh.exception( ) ; <i8*> [#uses=1]
|
|
call void @__gnat_end_handler( i8* %eh_ptr5267 )
|
|
call i32 (...)* @_Unwind_Resume( i8* %eh_ptr5481 ) ; <i32>:26 [#uses=0]
|
|
unreachable
|
|
|
|
invcont5482: ; preds = %eh_then5476
|
|
%tmp5483 = load void ()** @system__soft_links__abort_undefer ; <void ()*> [#uses=1]
|
|
invoke void %tmp5483( )
|
|
to label %invcont5484 unwind label %unwind5480
|
|
|
|
invcont5484: ; preds = %invcont5482
|
|
invoke void @report__failed( i64 or (i64 zext (i32 ptrtoint ([19 x i8]* @.str38 to i32) to i64), i64 shl (i64 zext (i32 ptrtoint (%struct.string___XUB* @C.170.1990 to i32) to i64), i64 32)) )
|
|
to label %cleanup5493 unwind label %unwind5480
|
|
|
|
cleanup5493: ; preds = %invcont5484
|
|
call void @__gnat_end_handler( i8* %eh_ptr5267 )
|
|
call void @report__result( )
|
|
ret void
|
|
|
|
finally5471: ; preds = %cond_true5462, %invcont5431
|
|
call void @report__result( )
|
|
ret void
|
|
|
|
Unwind: ; preds = %unwind5266, %unwind5032, %unwind4919, %unwind4770, %unwind3880, %unwind3618, %unwind3393, %eh_else3366, %eh_else3016, %eh_else2666, %eh_else1330, %eh_else932, %eh_else823
|
|
%eh_exception.2 = phi i8* [ %eh_exception.05914.1, %eh_else823 ], [ %eh_ptr872, %eh_else932 ], [ %eh_ptr975, %eh_else1330 ], [ %eh_exception.296030.1, %eh_else2666 ], [ %eh_exception.336046.1, %eh_else3016 ], [ %eh_exception.396074.1, %eh_else3366 ], [ %eh_ptr3394, %unwind3393 ], [ %eh_ptr3619, %unwind3618 ], [ %eh_ptr3881, %unwind3880 ], [ %eh_ptr4771, %unwind4770 ], [ %eh_ptr4920, %unwind4919 ], [ %eh_ptr5033, %unwind5032 ], [ %eh_ptr5267, %unwind5266 ] ; <i8*> [#uses=1]
|
|
call i32 (...)* @_Unwind_Resume( i8* %eh_exception.2 ) ; <i32>:27 [#uses=0]
|
|
unreachable
|
|
|
|
UnifiedUnreachableBlock34: ; preds = %cond_true5031, %cond_true4918, %cond_true4609, %cond_true4504, %cond_true4481, %cond_true4187, %cond_true4117, %cond_true4027, %cond_true3935, %cond_true3907, %cond_true3729, %cond_true3675, %cond_true3617, %cond_true3543, %cond_true3448, %cond_true3420, %bb3227, %bb3193, %bb3171, %cond_true3061, %bb2877, %bb2843, %bb2821, %cond_true2711, %bb2558, %bb2524, %bb2506, %cond_true2410, %bb2203, %cond_true2171, %cond_true1946, %bb1605, %cond_true1573, %cond_true1546, %cond_true1418, %cond_true973, %cond_true870, %cond_true663, %cond_true637, %cond_true611, %cond_true585, %cond_true559, %cond_true533, %cond_true507, %cond_true465
|
|
unreachable
|
|
|
|
UnifiedReturnBlock35: ; preds = %cleanup4742, %invcont4719, %finally913, %cleanup928
|
|
ret void
|
|
}
|
|
|
|
declare i32 @report__ident_int(i32)
|
|
|
|
declare void @__gnat_rcheck_10(i8*, i32)
|
|
|
|
declare void @__gnat_rcheck_12(i8*, i32)
|
|
|
|
declare void @report__test(i64, i64)
|
|
|
|
declare i8* @llvm.eh.exception()
|
|
|
|
declare i32 @llvm.eh.selector.i32(i8*, i8*, ...)
|
|
|
|
declare i32 @llvm.eh.typeid.for.i32(i8*)
|
|
|
|
declare i32 @__gnat_eh_personality(...)
|
|
|
|
declare i32 @_Unwind_Resume(...)
|
|
|
|
declare void @system__secondary_stack__ss_mark(%struct.system__secondary_stack__mark_id* sret )
|
|
|
|
declare void @system__img_int__image_integer(%struct.string___XUP* sret , i32)
|
|
|
|
declare void @system__string_ops__str_concat(%struct.string___XUP* sret , i64, i64)
|
|
|
|
declare void @report__failed(i64)
|
|
|
|
declare void @system__secondary_stack__ss_release(i64)
|
|
|
|
declare void @__gnat_begin_handler(i8*)
|
|
|
|
declare void @__gnat_end_handler(i8*)
|
|
|
|
declare i8 @report__equal(i32, i32)
|
|
|
|
declare i8* @llvm.stacksave()
|
|
|
|
declare void @__gnat_rcheck_07(i8*, i32)
|
|
|
|
declare i8* @__gnat_malloc(i32)
|
|
|
|
declare void @llvm.stackrestore(i8*)
|
|
|
|
declare void @llvm.memcpy.i32(i8*, i8*, i32, i32)
|
|
|
|
declare void @__gnat_rcheck_05(i8*, i32)
|
|
|
|
declare void @__gnat_rcheck_06(i8*, i32)
|
|
|
|
declare void @system__img_enum__image_enumeration_8(%struct.string___XUP* sret , i32, i64, i8*)
|
|
|
|
declare i32 @memcmp(i8*, i8*, i32, ...)
|
|
|
|
declare void @report__result()
|