forked from OSchip/llvm-project
more tests not making the jump into the brave new world.
llvm-svn: 134820
This commit is contained in:
parent
d9f299a635
commit
2522d2df06
|
@ -1,3 +0,0 @@
|
|||
; RUN: llvm-as %s -o /dev/null
|
||||
|
||||
%Hosp = type { i32, i32, i32, { \2*, { i32, i32, i32, { [4 x \3], \2, \5, %Hosp, i32, i32 }* }*, \2* }, { \2*, { i32, i32, i32, { [4 x \3], \2, \5, %Hosp, i32, i32 }* }*, \2* }, { \2*, { i32, i32, i32, { [4 x \3], \2, \5, %Hosp, i32, i32 }* }*, \2* }, { \2*, { i32, i32, i32, { [4 x \3], \2, \5, %Hosp, i32, i32 }* }*, \2* } }
|
|
@ -1,19 +0,0 @@
|
|||
; RUN: llc < %s -march=bfin -verify-machineinstrs > %t
|
||||
|
||||
%IntList = type %struct.intlist*
|
||||
%ReadFn = type i32 ()*
|
||||
%YYSTYPE = type { %IntList }
|
||||
%struct.intlist = type { i32, %IntList }
|
||||
@yyval = external global %YYSTYPE ; <%YYSTYPE*> [#uses=1]
|
||||
|
||||
define i32 @yyparse() {
|
||||
bb0:
|
||||
%reg254 = load i16* null ; <i16> [#uses=1]
|
||||
%reg254-idxcast = sext i16 %reg254 to i64 ; <i64> [#uses=1]
|
||||
%reg254-idxcast-scale = mul i64 %reg254-idxcast, -1 ; <i64> [#uses=1]
|
||||
%reg254-idxcast-scale-offset = add i64 %reg254-idxcast-scale, 1 ; <i64> [#uses=1]
|
||||
%reg261.idx1 = getelementptr %YYSTYPE* null, i64 %reg254-idxcast-scale-offset, i32 0 ; <%IntList*> [#uses=1]
|
||||
%reg261 = load %IntList* %reg261.idx1 ; <%IntList> [#uses=1]
|
||||
store %IntList %reg261, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0)
|
||||
unreachable
|
||||
}
|
|
@ -1,3 +0,0 @@
|
|||
; RUN: llc < %s -march=c
|
||||
|
||||
@MyIntList = external global { \2*, i32 }
|
|
@ -1,6 +0,0 @@
|
|||
; RUN: llc < %s -march=c
|
||||
|
||||
%MPI_Comm = type %struct.Comm*
|
||||
%struct.Comm = type opaque
|
||||
@thing = global %MPI_Comm* null ; <%MPI_Comm**> [#uses=0]
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
; RUN: llc < %s -march=c
|
||||
|
||||
%BitField = type i32
|
||||
%tokenptr = type i32*
|
||||
|
||||
define void @test() {
|
||||
%pmf1 = alloca %tokenptr (%tokenptr, i8*)* ; <%tokenptr (%tokenptr, i8*)**> [#uses=0]
|
||||
ret void
|
||||
}
|
||||
|
|
@ -1,5 +0,0 @@
|
|||
; RUN: llc < %s -march=c
|
||||
|
||||
%JNIEnv = type %struct.JNINa*
|
||||
%struct.JNINa = type { i8*, i8*, i8*, void (%JNIEnv*)* }
|
||||
|
|
@ -1,11 +0,0 @@
|
|||
; PR918
|
||||
; RUN: llc < %s -march=c | not grep {l_structtype_s l_fixarray_array3}
|
||||
|
||||
%structtype_s = type { i32 }
|
||||
%fixarray_array3 = type [3 x %structtype_s]
|
||||
|
||||
define i32 @witness(%fixarray_array3* %p) {
|
||||
%q = getelementptr %fixarray_array3* %p, i32 0, i32 0, i32 0
|
||||
%v = load i32* %q
|
||||
ret i32 %v
|
||||
}
|
|
@ -1,829 +0,0 @@
|
|||
; RUN: llc < %s
|
||||
|
||||
;; Register allocation is doing a very poor job on this routine from yyparse
|
||||
;; in Burg:
|
||||
;; -- at least two long-lived values are being allocated to %o? registers
|
||||
;; -- even worse, those registers are being saved and restored repeatedly
|
||||
;; at function calls, even though there are no intervening uses.
|
||||
;; -- outgoing args of some function calls have to be swapped, causing
|
||||
;; another write/read from stack to do the exchange (use -dregalloc=y).
|
||||
;;
|
||||
%Arity = type %struct.arity*
|
||||
%Binding = type %struct.binding*
|
||||
%DeltaCost = type [4 x i16]
|
||||
%Dimension = type %struct.dimension*
|
||||
%Index_Map = type { i32, %Item_Set* }
|
||||
%IntList = type %struct.intlist*
|
||||
%Item = type { %DeltaCost, %Rule }
|
||||
%ItemArray = type %Item*
|
||||
%Item_Set = type %struct.item_set*
|
||||
%List = type %struct.list*
|
||||
%Mapping = type %struct.mapping*
|
||||
%NonTerminal = type %struct.nonterminal*
|
||||
%Operator = type %struct.operator*
|
||||
%Pattern = type %struct.pattern*
|
||||
%PatternAST = type %struct.patternAST*
|
||||
%Plank = type %struct.plank*
|
||||
%PlankMap = type %struct.plankMap*
|
||||
%ReadFn = type i32 ()*
|
||||
%Rule = type %struct.rule*
|
||||
%RuleAST = type %struct.ruleAST*
|
||||
%StateMap = type %struct.stateMap*
|
||||
%StrTableElement = type %struct.strTableElement*
|
||||
%Symbol = type %struct.symbol*
|
||||
%Table = type %struct.table*
|
||||
%YYSTYPE = type { %IntList }
|
||||
%struct.arity = type { i32, %List }
|
||||
%struct.binding = type { i8*, i32 }
|
||||
%struct.dimension = type { i16*, %Index_Map, %Mapping, i32, %PlankMap }
|
||||
%struct.index_map = type { i32, %Item_Set* }
|
||||
%struct.intlist = type { i32, %IntList }
|
||||
%struct.item = type { %DeltaCost, %Rule }
|
||||
%struct.item_set = type { i32, i32, %Operator, [2 x %Item_Set], %Item_Set, i16*, %ItemArray, %ItemArray }
|
||||
%struct.list = type { i8*, %List }
|
||||
%struct.mapping = type { %List*, i32, i32, i32, %Item_Set* }
|
||||
%struct.nonterminal = type { i8*, i32, i32, i32, %PlankMap, %Rule }
|
||||
%struct.operator = type { i8*, i32, i32, i32, i32, i32, %Table }
|
||||
%struct.pattern = type { %NonTerminal, %Operator, [2 x %NonTerminal] }
|
||||
%struct.patternAST = type { %Symbol, i8*, %List }
|
||||
%struct.plank = type { i8*, %List, i32 }
|
||||
%struct.plankMap = type { %List, i32, %StateMap }
|
||||
%struct.rule = type { %DeltaCost, i32, i32, i32, %NonTerminal, %Pattern, i32 }
|
||||
%struct.ruleAST = type { i8*, %PatternAST, i32, %IntList, %Rule, %StrTableElement, %StrTableElement }
|
||||
%struct.stateMap = type { i8*, %Plank, i32, i16* }
|
||||
%struct.strTableElement = type { i8*, %IntList, i8* }
|
||||
%struct.symbol = type { i8*, i32, { %Operator } }
|
||||
%struct.table = type { %Operator, %List, i16*, [2 x %Dimension], %Item_Set* }
|
||||
@yylval = external global %YYSTYPE ; <%YYSTYPE*> [#uses=1]
|
||||
@yylhs = external global [25 x i16] ; <[25 x i16]*> [#uses=1]
|
||||
@yylen = external global [25 x i16] ; <[25 x i16]*> [#uses=1]
|
||||
@yydefred = external global [43 x i16] ; <[43 x i16]*> [#uses=1]
|
||||
@yydgoto = external global [12 x i16] ; <[12 x i16]*> [#uses=1]
|
||||
@yysindex = external global [43 x i16] ; <[43 x i16]*> [#uses=2]
|
||||
@yyrindex = external global [43 x i16] ; <[43 x i16]*> [#uses=1]
|
||||
@yygindex = external global [12 x i16] ; <[12 x i16]*> [#uses=1]
|
||||
@yytable = external global [263 x i16] ; <[263 x i16]*> [#uses=4]
|
||||
@yycheck = external global [263 x i16] ; <[263 x i16]*> [#uses=4]
|
||||
@yynerrs = external global i32 ; <i32*> [#uses=3]
|
||||
@yyerrflag = external global i32 ; <i32*> [#uses=6]
|
||||
@yychar = external global i32 ; <i32*> [#uses=15]
|
||||
@yyssp = external global i16* ; <i16**> [#uses=15]
|
||||
@yyvsp = external global %YYSTYPE* ; <%YYSTYPE**> [#uses=30]
|
||||
@yyval = external global %YYSTYPE ; <%YYSTYPE*> [#uses=1]
|
||||
@yyss = external global i16* ; <i16**> [#uses=3]
|
||||
@yysslim = external global i16* ; <i16**> [#uses=3]
|
||||
@yyvs = external global %YYSTYPE* ; <%YYSTYPE**> [#uses=1]
|
||||
@.LC01 = external global [13 x i8] ; <[13 x i8]*> [#uses=1]
|
||||
@.LC1 = external global [20 x i8] ; <[20 x i8]*> [#uses=1]
|
||||
|
||||
define i32 @yyparse() {
|
||||
bb0:
|
||||
store i32 0, i32* @yynerrs
|
||||
store i32 0, i32* @yyerrflag
|
||||
store i32 -1, i32* @yychar
|
||||
%reg113 = load i16** @yyss ; <i16*> [#uses=1]
|
||||
%cond581 = icmp ne i16* %reg113, null ; <i1> [#uses=1]
|
||||
br i1 %cond581, label %bb3, label %bb2
|
||||
|
||||
bb2: ; preds = %bb0
|
||||
%reg584 = call i32 @yygrowstack( ) ; <i32> [#uses=1]
|
||||
%cond584 = icmp ne i32 %reg584, 0 ; <i1> [#uses=1]
|
||||
br i1 %cond584, label %bb113, label %bb3
|
||||
|
||||
bb3: ; preds = %bb2, %bb0
|
||||
%reg115 = load i16** @yyss ; <i16*> [#uses=1]
|
||||
store i16* %reg115, i16** @yyssp
|
||||
%reg116 = load %YYSTYPE** @yyvs ; <%YYSTYPE*> [#uses=1]
|
||||
store %YYSTYPE* %reg116, %YYSTYPE** @yyvsp
|
||||
%reg117 = load i16** @yyssp ; <i16*> [#uses=1]
|
||||
store i16 0, i16* %reg117
|
||||
br label %bb4
|
||||
|
||||
bb4: ; preds = %bb112, %bb102, %bb35, %bb31, %bb15, %bb14, %bb3
|
||||
%reg458 = phi i32 [ %reg476, %bb112 ], [ 1, %bb102 ], [ %reg458, %bb35 ], [ %cast768, %bb31 ], [ %cast658, %bb15 ], [ %cast658, %bb14 ], [ 0, %bb3 ] ; <i32> [#uses=2]
|
||||
%reg458-idxcast = zext i32 %reg458 to i64 ; <i64> [#uses=3]
|
||||
%reg594 = getelementptr [43 x i16]* @yydefred, i64 0, i64 %reg458-idxcast ; <i16*> [#uses=1]
|
||||
%reg125 = load i16* %reg594 ; <i16> [#uses=1]
|
||||
%cast599 = sext i16 %reg125 to i32 ; <i32> [#uses=2]
|
||||
%cond600 = icmp ne i32 %cast599, 0 ; <i1> [#uses=1]
|
||||
br i1 %cond600, label %bb36, label %bb5
|
||||
|
||||
bb5: ; preds = %bb4
|
||||
%reg127 = load i32* @yychar ; <i32> [#uses=1]
|
||||
%cond603 = icmp sge i32 %reg127, 0 ; <i1> [#uses=1]
|
||||
br i1 %cond603, label %bb8, label %bb6
|
||||
|
||||
bb6: ; preds = %bb5
|
||||
%reg607 = call i32 @yylex( ) ; <i32> [#uses=1]
|
||||
store i32 %reg607, i32* @yychar
|
||||
%reg129 = load i32* @yychar ; <i32> [#uses=1]
|
||||
%cond609 = icmp sge i32 %reg129, 0 ; <i1> [#uses=1]
|
||||
br i1 %cond609, label %bb8, label %bb7
|
||||
|
||||
bb7: ; preds = %bb6
|
||||
store i32 0, i32* @yychar
|
||||
br label %bb8
|
||||
|
||||
bb8: ; preds = %bb7, %bb6, %bb5
|
||||
%reg615 = getelementptr [43 x i16]* @yysindex, i64 0, i64 %reg458-idxcast ; <i16*> [#uses=1]
|
||||
%reg137 = load i16* %reg615 ; <i16> [#uses=1]
|
||||
%cast620 = sext i16 %reg137 to i32 ; <i32> [#uses=2]
|
||||
%cond621 = icmp eq i32 %cast620, 0 ; <i1> [#uses=1]
|
||||
br i1 %cond621, label %bb16, label %bb9
|
||||
|
||||
bb9: ; preds = %bb8
|
||||
%reg139 = load i32* @yychar ; <i32> [#uses=2]
|
||||
%reg460 = add i32 %cast620, %reg139 ; <i32> [#uses=3]
|
||||
%cond624 = icmp slt i32 %reg460, 0 ; <i1> [#uses=1]
|
||||
br i1 %cond624, label %bb16, label %bb10
|
||||
|
||||
bb10: ; preds = %bb9
|
||||
%cond627 = icmp sgt i32 %reg460, 262 ; <i1> [#uses=1]
|
||||
br i1 %cond627, label %bb16, label %bb11
|
||||
|
||||
bb11: ; preds = %bb10
|
||||
%reg460-idxcast = sext i32 %reg460 to i64 ; <i64> [#uses=2]
|
||||
%reg632 = getelementptr [263 x i16]* @yycheck, i64 0, i64 %reg460-idxcast ; <i16*> [#uses=1]
|
||||
%reg148 = load i16* %reg632 ; <i16> [#uses=1]
|
||||
%cast637 = sext i16 %reg148 to i32 ; <i32> [#uses=1]
|
||||
%cond639 = icmp ne i32 %cast637, %reg139 ; <i1> [#uses=1]
|
||||
br i1 %cond639, label %bb16, label %bb12
|
||||
|
||||
bb12: ; preds = %bb11
|
||||
%reg150 = load i16** @yyssp ; <i16*> [#uses=1]
|
||||
%cast640 = bitcast i16* %reg150 to i8* ; <i8*> [#uses=1]
|
||||
%reg151 = load i16** @yysslim ; <i16*> [#uses=1]
|
||||
%cast641 = bitcast i16* %reg151 to i8* ; <i8*> [#uses=1]
|
||||
%cond642 = icmp ult i8* %cast640, %cast641 ; <i1> [#uses=1]
|
||||
br i1 %cond642, label %bb14, label %bb13
|
||||
|
||||
bb13: ; preds = %bb12
|
||||
%reg644 = call i32 @yygrowstack( ) ; <i32> [#uses=1]
|
||||
%cond644 = icmp ne i32 %reg644, 0 ; <i1> [#uses=1]
|
||||
br i1 %cond644, label %bb113, label %bb14
|
||||
|
||||
bb14: ; preds = %bb13, %bb12
|
||||
%reg153 = load i16** @yyssp ; <i16*> [#uses=1]
|
||||
%reg647 = getelementptr i16* %reg153, i64 1 ; <i16*> [#uses=2]
|
||||
store i16* %reg647, i16** @yyssp
|
||||
%reg653 = getelementptr [263 x i16]* @yytable, i64 0, i64 %reg460-idxcast ; <i16*> [#uses=1]
|
||||
%reg162 = load i16* %reg653 ; <i16> [#uses=2]
|
||||
%cast658 = sext i16 %reg162 to i32 ; <i32> [#uses=2]
|
||||
store i16 %reg162, i16* %reg647
|
||||
%reg164 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=2]
|
||||
%reg661 = getelementptr %YYSTYPE* %reg164, i64 1 ; <%YYSTYPE*> [#uses=1]
|
||||
store %YYSTYPE* %reg661, %YYSTYPE** @yyvsp
|
||||
%reg167 = load %IntList* getelementptr (%YYSTYPE* @yylval, i64 0, i32 0) ; <%IntList> [#uses=1]
|
||||
%reg661.idx1 = getelementptr %YYSTYPE* %reg164, i64 1, i32 0 ; <%IntList*> [#uses=1]
|
||||
store %IntList %reg167, %IntList* %reg661.idx1
|
||||
store i32 -1, i32* @yychar
|
||||
%reg169 = load i32* @yyerrflag ; <i32> [#uses=2]
|
||||
%cond669 = icmp sle i32 %reg169, 0 ; <i1> [#uses=1]
|
||||
br i1 %cond669, label %bb4, label %bb15
|
||||
|
||||
bb15: ; preds = %bb14
|
||||
%reg171 = add i32 %reg169, -1 ; <i32> [#uses=1]
|
||||
store i32 %reg171, i32* @yyerrflag
|
||||
br label %bb4
|
||||
|
||||
bb16: ; preds = %bb11, %bb10, %bb9, %bb8
|
||||
%reg677 = getelementptr [43 x i16]* @yyrindex, i64 0, i64 %reg458-idxcast ; <i16*> [#uses=1]
|
||||
%reg178 = load i16* %reg677 ; <i16> [#uses=1]
|
||||
%cast682 = sext i16 %reg178 to i32 ; <i32> [#uses=2]
|
||||
%cond683 = icmp eq i32 %cast682, 0 ; <i1> [#uses=1]
|
||||
br i1 %cond683, label %bb21, label %bb17
|
||||
|
||||
bb17: ; preds = %bb16
|
||||
%reg180 = load i32* @yychar ; <i32> [#uses=2]
|
||||
%reg463 = add i32 %cast682, %reg180 ; <i32> [#uses=3]
|
||||
%cond686 = icmp slt i32 %reg463, 0 ; <i1> [#uses=1]
|
||||
br i1 %cond686, label %bb21, label %bb18
|
||||
|
||||
bb18: ; preds = %bb17
|
||||
%cond689 = icmp sgt i32 %reg463, 262 ; <i1> [#uses=1]
|
||||
br i1 %cond689, label %bb21, label %bb19
|
||||
|
||||
bb19: ; preds = %bb18
|
||||
%reg463-idxcast = sext i32 %reg463 to i64 ; <i64> [#uses=2]
|
||||
%reg694 = getelementptr [263 x i16]* @yycheck, i64 0, i64 %reg463-idxcast ; <i16*> [#uses=1]
|
||||
%reg189 = load i16* %reg694 ; <i16> [#uses=1]
|
||||
%cast699 = sext i16 %reg189 to i32 ; <i32> [#uses=1]
|
||||
%cond701 = icmp ne i32 %cast699, %reg180 ; <i1> [#uses=1]
|
||||
br i1 %cond701, label %bb21, label %bb20
|
||||
|
||||
bb20: ; preds = %bb19
|
||||
%reg704 = getelementptr [263 x i16]* @yytable, i64 0, i64 %reg463-idxcast ; <i16*> [#uses=1]
|
||||
%reg197 = load i16* %reg704 ; <i16> [#uses=1]
|
||||
%cast709 = sext i16 %reg197 to i32 ; <i32> [#uses=1]
|
||||
br label %bb36
|
||||
|
||||
bb21: ; preds = %bb19, %bb18, %bb17, %bb16
|
||||
%reg198 = load i32* @yyerrflag ; <i32> [#uses=1]
|
||||
%cond711 = icmp ne i32 %reg198, 0 ; <i1> [#uses=1]
|
||||
br i1 %cond711, label %bb23, label %bb22
|
||||
|
||||
bb22: ; preds = %bb21
|
||||
call void @yyerror( i8* getelementptr ([13 x i8]* @.LC01, i64 0, i64 0) )
|
||||
%reg200 = load i32* @yynerrs ; <i32> [#uses=1]
|
||||
%reg201 = add i32 %reg200, 1 ; <i32> [#uses=1]
|
||||
store i32 %reg201, i32* @yynerrs
|
||||
br label %bb23
|
||||
|
||||
bb23: ; preds = %bb22, %bb21
|
||||
%reg202 = load i32* @yyerrflag ; <i32> [#uses=1]
|
||||
%cond719 = icmp sgt i32 %reg202, 2 ; <i1> [#uses=1]
|
||||
br i1 %cond719, label %bb34, label %bb24
|
||||
|
||||
bb24: ; preds = %bb23
|
||||
store i32 3, i32* @yyerrflag
|
||||
%reg241 = load i16** @yyss ; <i16*> [#uses=1]
|
||||
%cast778 = bitcast i16* %reg241 to i8* ; <i8*> [#uses=1]
|
||||
br label %bb25
|
||||
|
||||
bb25: ; preds = %bb33, %bb24
|
||||
%reg204 = load i16** @yyssp ; <i16*> [#uses=4]
|
||||
%reg206 = load i16* %reg204 ; <i16> [#uses=1]
|
||||
%reg206-idxcast = sext i16 %reg206 to i64 ; <i64> [#uses=1]
|
||||
%reg727 = getelementptr [43 x i16]* @yysindex, i64 0, i64 %reg206-idxcast ; <i16*> [#uses=1]
|
||||
%reg212 = load i16* %reg727 ; <i16> [#uses=2]
|
||||
%cast732 = sext i16 %reg212 to i32 ; <i32> [#uses=2]
|
||||
%cond733 = icmp eq i32 %cast732, 0 ; <i1> [#uses=1]
|
||||
br i1 %cond733, label %bb32, label %bb26
|
||||
|
||||
bb26: ; preds = %bb25
|
||||
%reg466 = add i32 %cast732, 256 ; <i32> [#uses=2]
|
||||
%cond736 = icmp slt i32 %reg466, 0 ; <i1> [#uses=1]
|
||||
br i1 %cond736, label %bb32, label %bb27
|
||||
|
||||
bb27: ; preds = %bb26
|
||||
%cond739 = icmp sgt i32 %reg466, 262 ; <i1> [#uses=1]
|
||||
br i1 %cond739, label %bb32, label %bb28
|
||||
|
||||
bb28: ; preds = %bb27
|
||||
%reg212-idxcast = sext i16 %reg212 to i64 ; <i64> [#uses=1]
|
||||
%reg212-idxcast-offset = add i64 %reg212-idxcast, 256 ; <i64> [#uses=2]
|
||||
%reg744 = getelementptr [263 x i16]* @yycheck, i64 0, i64 %reg212-idxcast-offset ; <i16*> [#uses=1]
|
||||
%reg221 = load i16* %reg744 ; <i16> [#uses=1]
|
||||
%cond748 = icmp ne i16 %reg221, 256 ; <i1> [#uses=1]
|
||||
br i1 %cond748, label %bb32, label %bb29
|
||||
|
||||
bb29: ; preds = %bb28
|
||||
%cast750 = bitcast i16* %reg204 to i8* ; <i8*> [#uses=1]
|
||||
%reg223 = load i16** @yysslim ; <i16*> [#uses=1]
|
||||
%cast751 = bitcast i16* %reg223 to i8* ; <i8*> [#uses=1]
|
||||
%cond752 = icmp ult i8* %cast750, %cast751 ; <i1> [#uses=1]
|
||||
br i1 %cond752, label %bb31, label %bb30
|
||||
|
||||
bb30: ; preds = %bb29
|
||||
%reg754 = call i32 @yygrowstack( ) ; <i32> [#uses=1]
|
||||
%cond754 = icmp ne i32 %reg754, 0 ; <i1> [#uses=1]
|
||||
br i1 %cond754, label %bb113, label %bb31
|
||||
|
||||
bb31: ; preds = %bb30, %bb29
|
||||
%reg225 = load i16** @yyssp ; <i16*> [#uses=1]
|
||||
%reg757 = getelementptr i16* %reg225, i64 1 ; <i16*> [#uses=2]
|
||||
store i16* %reg757, i16** @yyssp
|
||||
%reg763 = getelementptr [263 x i16]* @yytable, i64 0, i64 %reg212-idxcast-offset ; <i16*> [#uses=1]
|
||||
%reg234 = load i16* %reg763 ; <i16> [#uses=2]
|
||||
%cast768 = sext i16 %reg234 to i32 ; <i32> [#uses=1]
|
||||
store i16 %reg234, i16* %reg757
|
||||
%reg236 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=2]
|
||||
%reg771 = getelementptr %YYSTYPE* %reg236, i64 1 ; <%YYSTYPE*> [#uses=1]
|
||||
store %YYSTYPE* %reg771, %YYSTYPE** @yyvsp
|
||||
%reg239 = load %IntList* getelementptr (%YYSTYPE* @yylval, i64 0, i32 0) ; <%IntList> [#uses=1]
|
||||
%reg771.idx1 = getelementptr %YYSTYPE* %reg236, i64 1, i32 0 ; <%IntList*> [#uses=1]
|
||||
store %IntList %reg239, %IntList* %reg771.idx1
|
||||
br label %bb4
|
||||
|
||||
bb32: ; preds = %bb28, %bb27, %bb26, %bb25
|
||||
%cast777 = bitcast i16* %reg204 to i8* ; <i8*> [#uses=1]
|
||||
%cond779 = icmp ule i8* %cast777, %cast778 ; <i1> [#uses=1]
|
||||
br i1 %cond779, label %UnifiedExitNode, label %bb33
|
||||
|
||||
bb33: ; preds = %bb32
|
||||
%reg781 = getelementptr i16* %reg204, i64 -1 ; <i16*> [#uses=1]
|
||||
store i16* %reg781, i16** @yyssp
|
||||
%reg244 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=1]
|
||||
%reg786 = getelementptr %YYSTYPE* %reg244, i64 -1 ; <%YYSTYPE*> [#uses=1]
|
||||
store %YYSTYPE* %reg786, %YYSTYPE** @yyvsp
|
||||
br label %bb25
|
||||
|
||||
bb34: ; preds = %bb23
|
||||
%reg246 = load i32* @yychar ; <i32> [#uses=1]
|
||||
%cond791 = icmp eq i32 %reg246, 0 ; <i1> [#uses=1]
|
||||
br i1 %cond791, label %UnifiedExitNode, label %bb35
|
||||
|
||||
bb35: ; preds = %bb34
|
||||
store i32 -1, i32* @yychar
|
||||
br label %bb4
|
||||
|
||||
bb36: ; preds = %bb20, %bb4
|
||||
%reg468 = phi i32 [ %cast709, %bb20 ], [ %cast599, %bb4 ] ; <i32> [#uses=31]
|
||||
%reg468-idxcast = sext i32 %reg468 to i64 ; <i64> [#uses=2]
|
||||
%reg796 = getelementptr [25 x i16]* @yylen, i64 0, i64 %reg468-idxcast ; <i16*> [#uses=1]
|
||||
%reg254 = load i16* %reg796 ; <i16> [#uses=2]
|
||||
%reg259 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=1]
|
||||
%reg254-idxcast = sext i16 %reg254 to i64 ; <i64> [#uses=1]
|
||||
%reg254-idxcast-scale = mul i64 %reg254-idxcast, -1 ; <i64> [#uses=1]
|
||||
%reg254-idxcast-scale-offset = add i64 %reg254-idxcast-scale, 1 ; <i64> [#uses=1]
|
||||
%reg261.idx1 = getelementptr %YYSTYPE* %reg259, i64 %reg254-idxcast-scale-offset, i32 0 ; <%IntList*> [#uses=1]
|
||||
%reg261 = load %IntList* %reg261.idx1 ; <%IntList> [#uses=1]
|
||||
store %IntList %reg261, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0)
|
||||
%cond812 = icmp eq i32 %reg468, 13 ; <i1> [#uses=1]
|
||||
br i1 %cond812, label %bb85, label %bb37
|
||||
|
||||
bb37: ; preds = %bb36
|
||||
%cond814 = icmp sgt i32 %reg468, 13 ; <i1> [#uses=1]
|
||||
br i1 %cond814, label %bb56, label %bb38
|
||||
|
||||
bb38: ; preds = %bb37
|
||||
%cond817 = icmp eq i32 %reg468, 7 ; <i1> [#uses=1]
|
||||
br i1 %cond817, label %bb79, label %bb39
|
||||
|
||||
bb39: ; preds = %bb38
|
||||
%cond819 = icmp sgt i32 %reg468, 7 ; <i1> [#uses=1]
|
||||
br i1 %cond819, label %bb48, label %bb40
|
||||
|
||||
bb40: ; preds = %bb39
|
||||
%cond822 = icmp eq i32 %reg468, 4 ; <i1> [#uses=1]
|
||||
br i1 %cond822, label %bb76, label %bb41
|
||||
|
||||
bb41: ; preds = %bb40
|
||||
%cond824 = icmp sgt i32 %reg468, 4 ; <i1> [#uses=1]
|
||||
br i1 %cond824, label %bb45, label %bb42
|
||||
|
||||
bb42: ; preds = %bb41
|
||||
%cond827 = icmp eq i32 %reg468, 2 ; <i1> [#uses=1]
|
||||
br i1 %cond827, label %bb74, label %bb43
|
||||
|
||||
bb43: ; preds = %bb42
|
||||
%cond829 = icmp eq i32 %reg468, 3 ; <i1> [#uses=1]
|
||||
br i1 %cond829, label %bb75, label %bb97
|
||||
|
||||
bb45: ; preds = %bb41
|
||||
%cond831 = icmp eq i32 %reg468, 5 ; <i1> [#uses=1]
|
||||
br i1 %cond831, label %bb77, label %bb46
|
||||
|
||||
bb46: ; preds = %bb45
|
||||
%cond833 = icmp eq i32 %reg468, 6 ; <i1> [#uses=1]
|
||||
br i1 %cond833, label %bb78, label %bb97
|
||||
|
||||
bb48: ; preds = %bb39
|
||||
%cond835 = icmp eq i32 %reg468, 10 ; <i1> [#uses=1]
|
||||
br i1 %cond835, label %bb82, label %bb49
|
||||
|
||||
bb49: ; preds = %bb48
|
||||
%cond837 = icmp sgt i32 %reg468, 10 ; <i1> [#uses=1]
|
||||
br i1 %cond837, label %bb53, label %bb50
|
||||
|
||||
bb50: ; preds = %bb49
|
||||
%cond840 = icmp eq i32 %reg468, 8 ; <i1> [#uses=1]
|
||||
br i1 %cond840, label %bb80, label %bb51
|
||||
|
||||
bb51: ; preds = %bb50
|
||||
%cond842 = icmp eq i32 %reg468, 9 ; <i1> [#uses=1]
|
||||
br i1 %cond842, label %bb81, label %bb97
|
||||
|
||||
bb53: ; preds = %bb49
|
||||
%cond844 = icmp eq i32 %reg468, 11 ; <i1> [#uses=1]
|
||||
br i1 %cond844, label %bb83, label %bb54
|
||||
|
||||
bb54: ; preds = %bb53
|
||||
%cond846 = icmp eq i32 %reg468, 12 ; <i1> [#uses=1]
|
||||
br i1 %cond846, label %bb84, label %bb97
|
||||
|
||||
bb56: ; preds = %bb37
|
||||
%cond848 = icmp eq i32 %reg468, 19 ; <i1> [#uses=1]
|
||||
br i1 %cond848, label %bb91, label %bb57
|
||||
|
||||
bb57: ; preds = %bb56
|
||||
%cond850 = icmp sgt i32 %reg468, 19 ; <i1> [#uses=1]
|
||||
br i1 %cond850, label %bb66, label %bb58
|
||||
|
||||
bb58: ; preds = %bb57
|
||||
%cond853 = icmp eq i32 %reg468, 16 ; <i1> [#uses=1]
|
||||
br i1 %cond853, label %bb88, label %bb59
|
||||
|
||||
bb59: ; preds = %bb58
|
||||
%cond855 = icmp sgt i32 %reg468, 16 ; <i1> [#uses=1]
|
||||
br i1 %cond855, label %bb63, label %bb60
|
||||
|
||||
bb60: ; preds = %bb59
|
||||
%cond858 = icmp eq i32 %reg468, 14 ; <i1> [#uses=1]
|
||||
br i1 %cond858, label %bb86, label %bb61
|
||||
|
||||
bb61: ; preds = %bb60
|
||||
%cond860 = icmp eq i32 %reg468, 15 ; <i1> [#uses=1]
|
||||
br i1 %cond860, label %bb87, label %bb97
|
||||
|
||||
bb63: ; preds = %bb59
|
||||
%cond862 = icmp eq i32 %reg468, 17 ; <i1> [#uses=1]
|
||||
br i1 %cond862, label %bb89, label %bb64
|
||||
|
||||
bb64: ; preds = %bb63
|
||||
%cond864 = icmp eq i32 %reg468, 18 ; <i1> [#uses=1]
|
||||
br i1 %cond864, label %bb90, label %bb97
|
||||
|
||||
bb66: ; preds = %bb57
|
||||
%cond866 = icmp eq i32 %reg468, 22 ; <i1> [#uses=1]
|
||||
br i1 %cond866, label %bb94, label %bb67
|
||||
|
||||
bb67: ; preds = %bb66
|
||||
%cond868 = icmp sgt i32 %reg468, 22 ; <i1> [#uses=1]
|
||||
br i1 %cond868, label %bb71, label %bb68
|
||||
|
||||
bb68: ; preds = %bb67
|
||||
%cond871 = icmp eq i32 %reg468, 20 ; <i1> [#uses=1]
|
||||
br i1 %cond871, label %bb92, label %bb69
|
||||
|
||||
bb69: ; preds = %bb68
|
||||
%cond873 = icmp eq i32 %reg468, 21 ; <i1> [#uses=1]
|
||||
br i1 %cond873, label %bb93, label %bb97
|
||||
|
||||
bb71: ; preds = %bb67
|
||||
%cond875 = icmp eq i32 %reg468, 23 ; <i1> [#uses=1]
|
||||
br i1 %cond875, label %bb95, label %bb72
|
||||
|
||||
bb72: ; preds = %bb71
|
||||
%cond877 = icmp eq i32 %reg468, 24 ; <i1> [#uses=1]
|
||||
br i1 %cond877, label %bb96, label %bb97
|
||||
|
||||
bb74: ; preds = %bb42
|
||||
call void @yyfinished( )
|
||||
br label %bb97
|
||||
|
||||
bb75: ; preds = %bb43
|
||||
%reg262 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=2]
|
||||
%reg264.idx1 = getelementptr %YYSTYPE* %reg262, i64 -2, i32 0 ; <%IntList*> [#uses=1]
|
||||
%reg264 = load %IntList* %reg264.idx1 ; <%IntList> [#uses=1]
|
||||
%reg265.idx = getelementptr %YYSTYPE* %reg262, i64 0, i32 0 ; <%IntList*> [#uses=1]
|
||||
%reg265 = load %IntList* %reg265.idx ; <%IntList> [#uses=1]
|
||||
%cast889 = bitcast %IntList %reg265 to %List ; <%List> [#uses=1]
|
||||
%cast890 = bitcast %IntList %reg264 to %List ; <%List> [#uses=1]
|
||||
call void @doSpec( %List %cast890, %List %cast889 )
|
||||
br label %bb97
|
||||
|
||||
bb76: ; preds = %bb40
|
||||
store %IntList null, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0)
|
||||
br label %bb97
|
||||
|
||||
bb77: ; preds = %bb45
|
||||
%reg269 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=2]
|
||||
%cast894 = getelementptr %YYSTYPE* %reg269, i64 0, i32 0 ; <%IntList*> [#uses=1]
|
||||
%reg271 = load %IntList* %cast894 ; <%IntList> [#uses=1]
|
||||
%reg271.upgrd.1 = bitcast %IntList %reg271 to i8* ; <i8*> [#uses=1]
|
||||
%reg272.idx1 = getelementptr %YYSTYPE* %reg269, i64 -1, i32 0 ; <%IntList*> [#uses=1]
|
||||
%reg272 = load %IntList* %reg272.idx1 ; <%IntList> [#uses=1]
|
||||
%cast901 = bitcast %IntList %reg272 to %List ; <%List> [#uses=1]
|
||||
%reg901 = call %List @newList( i8* %reg271.upgrd.1, %List %cast901 ) ; <%List> [#uses=1]
|
||||
bitcast %List %reg901 to %IntList ; <%IntList>:0 [#uses=1]
|
||||
store %IntList %0, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0)
|
||||
br label %bb97
|
||||
|
||||
bb78: ; preds = %bb46
|
||||
%reg275 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=1]
|
||||
%reg277.idx = getelementptr %YYSTYPE* %reg275, i64 0, i32 0 ; <%IntList*> [#uses=1]
|
||||
%reg277 = load %IntList* %reg277.idx ; <%IntList> [#uses=1]
|
||||
%cast907 = bitcast %IntList %reg277 to %List ; <%List> [#uses=1]
|
||||
%reg907 = call %Arity @newArity( i32 -1, %List %cast907 ) ; <%Arity> [#uses=1]
|
||||
bitcast %Arity %reg907 to %IntList ; <%IntList>:1 [#uses=1]
|
||||
store %IntList %1, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0)
|
||||
br label %bb97
|
||||
|
||||
bb79: ; preds = %bb38
|
||||
store %IntList null, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0)
|
||||
%reg281 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=1]
|
||||
%cast912 = getelementptr %YYSTYPE* %reg281, i64 0, i32 0 ; <%IntList*> [#uses=1]
|
||||
%reg282 = load %IntList* %cast912 ; <%IntList> [#uses=1]
|
||||
%reg282.upgrd.2 = bitcast %IntList %reg282 to %List ; <%List> [#uses=1]
|
||||
call void @doGram( %List %reg282.upgrd.2 )
|
||||
br label %bb97
|
||||
|
||||
bb80: ; preds = %bb50
|
||||
store %IntList null, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0)
|
||||
%reg285 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=1]
|
||||
%cast917 = getelementptr %YYSTYPE* %reg285, i64 0, i32 0 ; <%IntList*> [#uses=1]
|
||||
%reg286 = load %IntList* %cast917 ; <%IntList> [#uses=1]
|
||||
%reg286.upgrd.3 = bitcast %IntList %reg286 to i8* ; <i8*> [#uses=1]
|
||||
call void @doStart( i8* %reg286.upgrd.3 )
|
||||
br label %bb97
|
||||
|
||||
bb81: ; preds = %bb51
|
||||
store %IntList null, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0)
|
||||
br label %bb97
|
||||
|
||||
bb82: ; preds = %bb48
|
||||
%reg290 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=2]
|
||||
%cast923 = getelementptr %YYSTYPE* %reg290, i64 0, i32 0 ; <%IntList*> [#uses=1]
|
||||
%reg292 = load %IntList* %cast923 ; <%IntList> [#uses=1]
|
||||
%reg292.upgrd.4 = bitcast %IntList %reg292 to i8* ; <i8*> [#uses=1]
|
||||
%reg293.idx1 = getelementptr %YYSTYPE* %reg290, i64 -1, i32 0 ; <%IntList*> [#uses=1]
|
||||
%reg293 = load %IntList* %reg293.idx1 ; <%IntList> [#uses=1]
|
||||
%cast930 = bitcast %IntList %reg293 to %List ; <%List> [#uses=1]
|
||||
%reg930 = call %List @newList( i8* %reg292.upgrd.4, %List %cast930 ) ; <%List> [#uses=1]
|
||||
bitcast %List %reg930 to %IntList ; <%IntList>:2 [#uses=1]
|
||||
store %IntList %2, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0)
|
||||
br label %bb97
|
||||
|
||||
bb83: ; preds = %bb53
|
||||
store %IntList null, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0)
|
||||
br label %bb97
|
||||
|
||||
bb84: ; preds = %bb54
|
||||
%reg298 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=2]
|
||||
%cast936 = getelementptr %YYSTYPE* %reg298, i64 0, i32 0 ; <%IntList*> [#uses=1]
|
||||
%reg300 = load %IntList* %cast936 ; <%IntList> [#uses=1]
|
||||
%reg300.upgrd.5 = bitcast %IntList %reg300 to i8* ; <i8*> [#uses=1]
|
||||
%reg301.idx1 = getelementptr %YYSTYPE* %reg298, i64 -1, i32 0 ; <%IntList*> [#uses=1]
|
||||
%reg301 = load %IntList* %reg301.idx1 ; <%IntList> [#uses=1]
|
||||
%cast943 = bitcast %IntList %reg301 to %List ; <%List> [#uses=1]
|
||||
%reg943 = call %List @newList( i8* %reg300.upgrd.5, %List %cast943 ) ; <%List> [#uses=1]
|
||||
bitcast %List %reg943 to %IntList ; <%IntList>:3 [#uses=1]
|
||||
store %IntList %3, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0)
|
||||
br label %bb97
|
||||
|
||||
bb85: ; preds = %bb36
|
||||
%reg304 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=2]
|
||||
%cast9521 = getelementptr %YYSTYPE* %reg304, i64 -2, i32 0 ; <%IntList*> [#uses=1]
|
||||
%reg306 = load %IntList* %cast9521 ; <%IntList> [#uses=1]
|
||||
%reg306.upgrd.6 = bitcast %IntList %reg306 to i8* ; <i8*> [#uses=1]
|
||||
%cast953 = bitcast %YYSTYPE* %reg304 to i32* ; <i32*> [#uses=1]
|
||||
%reg307 = load i32* %cast953 ; <i32> [#uses=1]
|
||||
%reg955 = call %Binding @newBinding( i8* %reg306.upgrd.6, i32 %reg307 ) ; <%Binding> [#uses=1]
|
||||
bitcast %Binding %reg955 to %IntList ; <%IntList>:4 [#uses=1]
|
||||
store %IntList %4, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0)
|
||||
br label %bb97
|
||||
|
||||
bb86: ; preds = %bb60
|
||||
store %IntList null, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0)
|
||||
br label %bb97
|
||||
|
||||
bb87: ; preds = %bb61
|
||||
%reg312 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=2]
|
||||
%cast961 = getelementptr %YYSTYPE* %reg312, i64 0, i32 0 ; <%IntList*> [#uses=1]
|
||||
%reg314 = load %IntList* %cast961 ; <%IntList> [#uses=1]
|
||||
%reg314.upgrd.7 = bitcast %IntList %reg314 to i8* ; <i8*> [#uses=1]
|
||||
%reg315.idx1 = getelementptr %YYSTYPE* %reg312, i64 -1, i32 0 ; <%IntList*> [#uses=1]
|
||||
%reg315 = load %IntList* %reg315.idx1 ; <%IntList> [#uses=1]
|
||||
%cast968 = bitcast %IntList %reg315 to %List ; <%List> [#uses=1]
|
||||
%reg968 = call %List @newList( i8* %reg314.upgrd.7, %List %cast968 ) ; <%List> [#uses=1]
|
||||
bitcast %List %reg968 to %IntList ; <%IntList>:5 [#uses=1]
|
||||
store %IntList %5, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0)
|
||||
br label %bb97
|
||||
|
||||
bb88: ; preds = %bb58
|
||||
%reg318 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=4]
|
||||
%cast9791 = getelementptr %YYSTYPE* %reg318, i64 -6, i32 0 ; <%IntList*> [#uses=1]
|
||||
%reg322 = load %IntList* %cast9791 ; <%IntList> [#uses=1]
|
||||
%reg322.upgrd.8 = bitcast %IntList %reg322 to i8* ; <i8*> [#uses=1]
|
||||
%reg323.idx1 = getelementptr %YYSTYPE* %reg318, i64 -4, i32 0 ; <%IntList*> [#uses=1]
|
||||
%reg323 = load %IntList* %reg323.idx1 ; <%IntList> [#uses=1]
|
||||
%reg987 = getelementptr %YYSTYPE* %reg318, i64 -2 ; <%YYSTYPE*> [#uses=1]
|
||||
%cast989 = bitcast %YYSTYPE* %reg987 to i32* ; <i32*> [#uses=1]
|
||||
%reg324 = load i32* %cast989 ; <i32> [#uses=1]
|
||||
%reg325.idx1 = getelementptr %YYSTYPE* %reg318, i64 -1, i32 0 ; <%IntList*> [#uses=1]
|
||||
%reg325 = load %IntList* %reg325.idx1 ; <%IntList> [#uses=1]
|
||||
%cast998 = bitcast %IntList %reg323 to %PatternAST ; <%PatternAST> [#uses=1]
|
||||
%reg996 = call %RuleAST @newRuleAST( i8* %reg322.upgrd.8, %PatternAST %cast998, i32 %reg324, %IntList %reg325 ) ; <%RuleAST> [#uses=1]
|
||||
bitcast %RuleAST %reg996 to %IntList ; <%IntList>:6 [#uses=1]
|
||||
store %IntList %6, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0)
|
||||
br label %bb97
|
||||
|
||||
bb89: ; preds = %bb63
|
||||
%reg328 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=1]
|
||||
%cast1002 = getelementptr %YYSTYPE* %reg328, i64 0, i32 0 ; <%IntList*> [#uses=1]
|
||||
%reg329 = load %IntList* %cast1002 ; <%IntList> [#uses=1]
|
||||
%reg329.upgrd.9 = bitcast %IntList %reg329 to i8* ; <i8*> [#uses=1]
|
||||
%reg1004 = call %PatternAST @newPatternAST( i8* %reg329.upgrd.9, %List null ) ; <%PatternAST> [#uses=1]
|
||||
bitcast %PatternAST %reg1004 to %IntList ; <%IntList>:7 [#uses=1]
|
||||
store %IntList %7, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0)
|
||||
br label %bb97
|
||||
|
||||
bb90: ; preds = %bb64
|
||||
%reg333 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=2]
|
||||
%cast10131 = getelementptr %YYSTYPE* %reg333, i64 -1, i32 0 ; <%IntList*> [#uses=1]
|
||||
%reg335 = load %IntList* %cast10131 ; <%IntList> [#uses=1]
|
||||
%reg335.upgrd.10 = bitcast %IntList %reg335 to i8* ; <i8*> [#uses=1]
|
||||
%reg1015 = call %List @newList( i8* %reg335.upgrd.10, %List null ) ; <%List> [#uses=1]
|
||||
%cast10211 = getelementptr %YYSTYPE* %reg333, i64 -3, i32 0 ; <%IntList*> [#uses=1]
|
||||
%reg338 = load %IntList* %cast10211 ; <%IntList> [#uses=1]
|
||||
%reg338.upgrd.11 = bitcast %IntList %reg338 to i8* ; <i8*> [#uses=1]
|
||||
%reg1023 = call %PatternAST @newPatternAST( i8* %reg338.upgrd.11, %List %reg1015 ) ; <%PatternAST> [#uses=1]
|
||||
bitcast %PatternAST %reg1023 to %IntList ; <%IntList>:8 [#uses=1]
|
||||
store %IntList %8, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0)
|
||||
br label %bb97
|
||||
|
||||
bb91: ; preds = %bb56
|
||||
%reg341 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=3]
|
||||
%cast10331 = getelementptr %YYSTYPE* %reg341, i64 -1, i32 0 ; <%IntList*> [#uses=1]
|
||||
%reg344 = load %IntList* %cast10331 ; <%IntList> [#uses=1]
|
||||
%reg344.upgrd.12 = bitcast %IntList %reg344 to i8* ; <i8*> [#uses=1]
|
||||
%reg1035 = call %List @newList( i8* %reg344.upgrd.12, %List null ) ; <%List> [#uses=1]
|
||||
%cast10411 = getelementptr %YYSTYPE* %reg341, i64 -3, i32 0 ; <%IntList*> [#uses=1]
|
||||
%reg347 = load %IntList* %cast10411 ; <%IntList> [#uses=1]
|
||||
%reg347.upgrd.13 = bitcast %IntList %reg347 to i8* ; <i8*> [#uses=1]
|
||||
%reg1043 = call %List @newList( i8* %reg347.upgrd.13, %List %reg1035 ) ; <%List> [#uses=1]
|
||||
%cast10491 = getelementptr %YYSTYPE* %reg341, i64 -5, i32 0 ; <%IntList*> [#uses=1]
|
||||
%reg349 = load %IntList* %cast10491 ; <%IntList> [#uses=1]
|
||||
%reg349.upgrd.14 = bitcast %IntList %reg349 to i8* ; <i8*> [#uses=1]
|
||||
%reg1051 = call %PatternAST @newPatternAST( i8* %reg349.upgrd.14, %List %reg1043 ) ; <%PatternAST> [#uses=1]
|
||||
bitcast %PatternAST %reg1051 to %IntList ; <%IntList>:9 [#uses=1]
|
||||
store %IntList %9, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0)
|
||||
br label %bb97
|
||||
|
||||
bb92: ; preds = %bb68
|
||||
store %IntList null, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0)
|
||||
br label %bb97
|
||||
|
||||
bb93: ; preds = %bb69
|
||||
%reg354 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=2]
|
||||
%reg1059 = getelementptr %YYSTYPE* %reg354, i64 -2 ; <%YYSTYPE*> [#uses=1]
|
||||
%cast1061 = bitcast %YYSTYPE* %reg1059 to i32* ; <i32*> [#uses=1]
|
||||
%reg356 = load i32* %cast1061 ; <i32> [#uses=1]
|
||||
%reg357.idx1 = getelementptr %YYSTYPE* %reg354, i64 -1, i32 0 ; <%IntList*> [#uses=1]
|
||||
%reg357 = load %IntList* %reg357.idx1 ; <%IntList> [#uses=1]
|
||||
%reg1068 = call %IntList @newIntList( i32 %reg356, %IntList %reg357 ) ; <%IntList> [#uses=1]
|
||||
store %IntList %reg1068, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0)
|
||||
br label %bb97
|
||||
|
||||
bb94: ; preds = %bb66
|
||||
store %IntList null, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0)
|
||||
br label %bb97
|
||||
|
||||
bb95: ; preds = %bb71
|
||||
%reg362 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=2]
|
||||
%reg1076 = getelementptr %YYSTYPE* %reg362, i64 -1 ; <%YYSTYPE*> [#uses=1]
|
||||
%cast1078 = bitcast %YYSTYPE* %reg1076 to i32* ; <i32*> [#uses=1]
|
||||
%reg364 = load i32* %cast1078 ; <i32> [#uses=1]
|
||||
%reg365.idx = getelementptr %YYSTYPE* %reg362, i64 0, i32 0 ; <%IntList*> [#uses=1]
|
||||
%reg365 = load %IntList* %reg365.idx ; <%IntList> [#uses=1]
|
||||
%reg1081 = call %IntList @newIntList( i32 %reg364, %IntList %reg365 ) ; <%IntList> [#uses=1]
|
||||
store %IntList %reg1081, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0)
|
||||
br label %bb97
|
||||
|
||||
bb96: ; preds = %bb72
|
||||
%reg368 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=2]
|
||||
%reg1088 = getelementptr %YYSTYPE* %reg368, i64 -1 ; <%YYSTYPE*> [#uses=1]
|
||||
%cast1090 = bitcast %YYSTYPE* %reg1088 to i32* ; <i32*> [#uses=1]
|
||||
%reg370 = load i32* %cast1090 ; <i32> [#uses=1]
|
||||
%reg371.idx = getelementptr %YYSTYPE* %reg368, i64 0, i32 0 ; <%IntList*> [#uses=1]
|
||||
%reg371 = load %IntList* %reg371.idx ; <%IntList> [#uses=1]
|
||||
%reg1093 = call %IntList @newIntList( i32 %reg370, %IntList %reg371 ) ; <%IntList> [#uses=1]
|
||||
store %IntList %reg1093, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0)
|
||||
br label %bb97
|
||||
|
||||
bb97: ; preds = %bb96, %bb95, %bb94, %bb93, %bb92, %bb91, %bb90, %bb89, %bb88, %bb87, %bb86, %bb85, %bb84, %bb83, %bb82, %bb81, %bb80, %bb79, %bb78, %bb77, %bb76, %bb75, %bb74, %bb72, %bb69, %bb64, %bb61, %bb54, %bb51, %bb46, %bb43
|
||||
%cast1097 = sext i16 %reg254 to i64 ; <i64> [#uses=3]
|
||||
%reg375 = add i64 %cast1097, %cast1097 ; <i64> [#uses=1]
|
||||
%reg377 = load i16** @yyssp ; <i16*> [#uses=1]
|
||||
%cast379 = ptrtoint i16* %reg377 to i64 ; <i64> [#uses=1]
|
||||
%reg381 = sub i64 %cast379, %reg375 ; <i64> [#uses=1]
|
||||
%cast1099 = inttoptr i64 %reg381 to i16* ; <i16*> [#uses=1]
|
||||
store i16* %cast1099, i16** @yyssp
|
||||
%reg382 = load i16** @yyssp ; <i16*> [#uses=3]
|
||||
%reg383 = load i16* %reg382 ; <i16> [#uses=1]
|
||||
%cast1103 = sext i16 %reg383 to i32 ; <i32> [#uses=3]
|
||||
%reg385 = mul i64 %cast1097, 8 ; <i64> [#uses=1]
|
||||
%reg387 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=1]
|
||||
%cast389 = ptrtoint %YYSTYPE* %reg387 to i64 ; <i64> [#uses=1]
|
||||
%reg391 = sub i64 %cast389, %reg385 ; <i64> [#uses=1]
|
||||
%cast1108 = inttoptr i64 %reg391 to %YYSTYPE* ; <%YYSTYPE*> [#uses=1]
|
||||
store %YYSTYPE* %cast1108, %YYSTYPE** @yyvsp
|
||||
%reg1111 = getelementptr [25 x i16]* @yylhs, i64 0, i64 %reg468-idxcast ; <i16*> [#uses=1]
|
||||
%reg398 = load i16* %reg1111 ; <i16> [#uses=2]
|
||||
%cast1116 = sext i16 %reg398 to i32 ; <i32> [#uses=1]
|
||||
%cond1117 = icmp ne i32 %cast1103, 0 ; <i1> [#uses=1]
|
||||
br i1 %cond1117, label %bb104, label %bb98
|
||||
|
||||
bb98: ; preds = %bb97
|
||||
%cond1119 = icmp ne i32 %cast1116, 0 ; <i1> [#uses=1]
|
||||
br i1 %cond1119, label %bb104, label %bb99
|
||||
|
||||
bb99: ; preds = %bb98
|
||||
%reg1122 = getelementptr i16* %reg382, i64 1 ; <i16*> [#uses=2]
|
||||
store i16* %reg1122, i16** @yyssp
|
||||
store i16 1, i16* %reg1122
|
||||
%reg403 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=2]
|
||||
%reg1128 = getelementptr %YYSTYPE* %reg403, i64 1 ; <%YYSTYPE*> [#uses=1]
|
||||
store %YYSTYPE* %reg1128, %YYSTYPE** @yyvsp
|
||||
%reg406 = load %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0) ; <%IntList> [#uses=1]
|
||||
%reg1128.idx1 = getelementptr %YYSTYPE* %reg403, i64 1, i32 0 ; <%IntList*> [#uses=1]
|
||||
store %IntList %reg406, %IntList* %reg1128.idx1
|
||||
%reg407 = load i32* @yychar ; <i32> [#uses=1]
|
||||
%cond1135 = icmp sge i32 %reg407, 0 ; <i1> [#uses=1]
|
||||
br i1 %cond1135, label %bb102, label %bb100
|
||||
|
||||
bb100: ; preds = %bb99
|
||||
%reg1139 = call i32 @yylex( ) ; <i32> [#uses=1]
|
||||
store i32 %reg1139, i32* @yychar
|
||||
%reg409 = load i32* @yychar ; <i32> [#uses=1]
|
||||
%cond1141 = icmp sge i32 %reg409, 0 ; <i1> [#uses=1]
|
||||
br i1 %cond1141, label %bb102, label %bb101
|
||||
|
||||
bb101: ; preds = %bb100
|
||||
store i32 0, i32* @yychar
|
||||
br label %bb102
|
||||
|
||||
bb102: ; preds = %bb101, %bb100, %bb99
|
||||
%reg411 = load i32* @yychar ; <i32> [#uses=1]
|
||||
%cond1146 = icmp ne i32 %reg411, 0 ; <i1> [#uses=1]
|
||||
br i1 %cond1146, label %bb4, label %UnifiedExitNode
|
||||
|
||||
bb104: ; preds = %bb98, %bb97
|
||||
%reg398-idxcast = sext i16 %reg398 to i64 ; <i64> [#uses=2]
|
||||
%reg1150 = getelementptr [12 x i16]* @yygindex, i64 0, i64 %reg398-idxcast ; <i16*> [#uses=1]
|
||||
%reg418 = load i16* %reg1150 ; <i16> [#uses=1]
|
||||
%cast1155 = sext i16 %reg418 to i32 ; <i32> [#uses=2]
|
||||
%cond1156 = icmp eq i32 %cast1155, 0 ; <i1> [#uses=1]
|
||||
br i1 %cond1156, label %bb109, label %bb105
|
||||
|
||||
bb105: ; preds = %bb104
|
||||
%reg473 = add i32 %cast1155, %cast1103 ; <i32> [#uses=3]
|
||||
%cond1158 = icmp slt i32 %reg473, 0 ; <i1> [#uses=1]
|
||||
br i1 %cond1158, label %bb109, label %bb106
|
||||
|
||||
bb106: ; preds = %bb105
|
||||
%cond1161 = icmp sgt i32 %reg473, 262 ; <i1> [#uses=1]
|
||||
br i1 %cond1161, label %bb109, label %bb107
|
||||
|
||||
bb107: ; preds = %bb106
|
||||
%reg473-idxcast = sext i32 %reg473 to i64 ; <i64> [#uses=2]
|
||||
%reg1166 = getelementptr [263 x i16]* @yycheck, i64 0, i64 %reg473-idxcast ; <i16*> [#uses=1]
|
||||
%reg428 = load i16* %reg1166 ; <i16> [#uses=1]
|
||||
%cast1171 = sext i16 %reg428 to i32 ; <i32> [#uses=1]
|
||||
%cond1172 = icmp ne i32 %cast1171, %cast1103 ; <i1> [#uses=1]
|
||||
br i1 %cond1172, label %bb109, label %bb108
|
||||
|
||||
bb108: ; preds = %bb107
|
||||
%reg1175 = getelementptr [263 x i16]* @yytable, i64 0, i64 %reg473-idxcast ; <i16*> [#uses=1]
|
||||
%reg435 = load i16* %reg1175 ; <i16> [#uses=1]
|
||||
%cast1180 = sext i16 %reg435 to i32 ; <i32> [#uses=1]
|
||||
br label %bb110
|
||||
|
||||
bb109: ; preds = %bb107, %bb106, %bb105, %bb104
|
||||
%reg1183 = getelementptr [12 x i16]* @yydgoto, i64 0, i64 %reg398-idxcast ; <i16*> [#uses=1]
|
||||
%reg442 = load i16* %reg1183 ; <i16> [#uses=1]
|
||||
%cast1188 = sext i16 %reg442 to i32 ; <i32> [#uses=1]
|
||||
br label %bb110
|
||||
|
||||
bb110: ; preds = %bb109, %bb108
|
||||
%reg476 = phi i32 [ %cast1188, %bb109 ], [ %cast1180, %bb108 ] ; <i32> [#uses=2]
|
||||
%cast1189 = bitcast i16* %reg382 to i8* ; <i8*> [#uses=1]
|
||||
%reg444 = load i16** @yysslim ; <i16*> [#uses=1]
|
||||
%cast1190 = bitcast i16* %reg444 to i8* ; <i8*> [#uses=1]
|
||||
%cond1191 = icmp ult i8* %cast1189, %cast1190 ; <i1> [#uses=1]
|
||||
br i1 %cond1191, label %bb112, label %bb111
|
||||
|
||||
bb111: ; preds = %bb110
|
||||
%reg1193 = call i32 @yygrowstack( ) ; <i32> [#uses=1]
|
||||
%cond1193 = icmp ne i32 %reg1193, 0 ; <i1> [#uses=1]
|
||||
br i1 %cond1193, label %bb113, label %bb112
|
||||
|
||||
bb112: ; preds = %bb111, %bb110
|
||||
%reg446 = load i16** @yyssp ; <i16*> [#uses=1]
|
||||
%reg1196 = getelementptr i16* %reg446, i64 1 ; <i16*> [#uses=2]
|
||||
store i16* %reg1196, i16** @yyssp
|
||||
%cast1357 = trunc i32 %reg476 to i16 ; <i16> [#uses=1]
|
||||
store i16 %cast1357, i16* %reg1196
|
||||
%reg449 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=2]
|
||||
%reg1202 = getelementptr %YYSTYPE* %reg449, i64 1 ; <%YYSTYPE*> [#uses=1]
|
||||
store %YYSTYPE* %reg1202, %YYSTYPE** @yyvsp
|
||||
%reg452 = load %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0) ; <%IntList> [#uses=1]
|
||||
%reg1202.idx1 = getelementptr %YYSTYPE* %reg449, i64 1, i32 0 ; <%IntList*> [#uses=1]
|
||||
store %IntList %reg452, %IntList* %reg1202.idx1
|
||||
br label %bb4
|
||||
|
||||
bb113: ; preds = %bb111, %bb30, %bb13, %bb2
|
||||
call void @yyerror( i8* getelementptr ([20 x i8]* @.LC1, i64 0, i64 0) )
|
||||
br label %UnifiedExitNode
|
||||
|
||||
UnifiedExitNode: ; preds = %bb113, %bb102, %bb34, %bb32
|
||||
%UnifiedRetVal = phi i32 [ 1, %bb113 ], [ 1, %bb34 ], [ 1, %bb32 ], [ 0, %bb102 ] ; <i32> [#uses=1]
|
||||
ret i32 %UnifiedRetVal
|
||||
}
|
||||
|
||||
declare %List @newList(i8*, %List)
|
||||
|
||||
declare %IntList @newIntList(i32, %IntList)
|
||||
|
||||
declare void @doStart(i8*)
|
||||
|
||||
declare void @yyerror(i8*)
|
||||
|
||||
declare void @doSpec(%List, %List)
|
||||
|
||||
declare %Arity @newArity(i32, %List)
|
||||
|
||||
declare %Binding @newBinding(i8*, i32)
|
||||
|
||||
declare %PatternAST @newPatternAST(i8*, %List)
|
||||
|
||||
declare %RuleAST @newRuleAST(i8*, %PatternAST, i32, %IntList)
|
||||
|
||||
declare void @yyfinished()
|
||||
|
||||
declare i32 @yylex()
|
||||
|
||||
declare void @doGram(%List)
|
||||
|
||||
declare i32 @yygrowstack()
|
|
@ -1,49 +0,0 @@
|
|||
; RUN: llc < %s
|
||||
|
||||
; July 6, 2002 -- LLC Regression test
|
||||
; This test case checks if the integer CC register %xcc (or %ccr)
|
||||
; is correctly spilled. The code fragment came from function
|
||||
; MakeGraph in Olden-mst.
|
||||
; The original code made all comparisons with 0, so that the %xcc
|
||||
; register is not needed for the branch in the first basic block.
|
||||
; Replace 0 with 1 in the first comparson so that the
|
||||
; branch-on-register instruction cannot be used directly, i.e.,
|
||||
; the %xcc register is needed for the first branch.
|
||||
;
|
||||
|
||||
%Graph = type %struct.graph_st*
|
||||
%Hash = type %struct.hash*
|
||||
%HashEntry = type %struct.hash_entry*
|
||||
%Vertex = type %struct.vert_st*
|
||||
%struct.graph_st = type { [1 x %Vertex] }
|
||||
%struct.hash = type { %HashEntry*, i32 (i32)*, i32 }
|
||||
%struct.hash_entry = type { i32, i8*, %HashEntry }
|
||||
%struct.vert_st = type { i32, %Vertex, %Hash }
|
||||
@HashRange = external global i32 ; <i32*> [#uses=0]
|
||||
@.LC0 = internal global [13 x i8] c"Make phase 2\00" ; <[13 x i8]*> [#uses=0]
|
||||
@.LC1 = internal global [13 x i8] c"Make phase 3\00" ; <[13 x i8]*> [#uses=0]
|
||||
@.LC2 = internal global [13 x i8] c"Make phase 4\00" ; <[13 x i8]*> [#uses=0]
|
||||
@.LC3 = internal global [15 x i8] c"Make returning\00" ; <[15 x i8]*> [#uses=0]
|
||||
|
||||
define %Graph @MakeGraph(i32 %numvert, i32 %numproc) {
|
||||
bb1:
|
||||
%reg111 = add i32 %numproc, -1 ; <i32> [#uses=2]
|
||||
%cond275 = icmp slt i32 %reg111, 1 ; <i1> [#uses=1]
|
||||
%cond276 = icmp sle i32 %reg111, 0 ; <i1> [#uses=1]
|
||||
%cond277 = icmp sge i32 %numvert, 0 ; <i1> [#uses=1]
|
||||
%reg162 = add i32 %numvert, 3 ; <i32> [#uses=0]
|
||||
br i1 %cond275, label %bb7, label %bb4
|
||||
|
||||
bb4: ; preds = %bb1
|
||||
br i1 %cond276, label %bb7, label %bb5
|
||||
|
||||
bb5: ; preds = %bb4
|
||||
br i1 %cond277, label %bb7, label %bb6
|
||||
|
||||
bb6: ; preds = %bb5
|
||||
ret %Graph null
|
||||
|
||||
bb7: ; preds = %bb5, %bb4, %bb1
|
||||
ret %Graph null
|
||||
}
|
||||
|
|
@ -1,237 +0,0 @@
|
|||
; RUN: llc < %s -mtriple=i386-apple-darwin9.5 -mattr=+sse41 -relocation-model=pic
|
||||
|
||||
%struct.XXActiveTextureTargets = type { i64, i64, i64, i64, i64, i64 }
|
||||
%struct.XXAlphaTest = type { float, i16, i8, i8 }
|
||||
%struct.XXArrayRange = type { i8, i8, i8, i8 }
|
||||
%struct.XXBlendMode = type { i16, i16, i16, i16, %struct.ZZIColor4, i16, i16, i8, i8, i8, i8 }
|
||||
%struct.XXBBRec = type opaque
|
||||
%struct.XXBBstate = type { %struct.ZZGTransformKey, %struct.ZZGTransformKey, %struct.XXProgramLimits, %struct.XXProgramLimits, i8, i8, i8, i8, %struct.ZZSBB, %struct.ZZSBB, [4 x %struct.ZZSBB], %struct.ZZSBB, %struct.ZZSBB, %struct.ZZSBB, [8 x %struct.ZZSBB], %struct.ZZSBB }
|
||||
%struct.XXClearColor = type { double, %struct.ZZIColor4, %struct.ZZIColor4, float, i32 }
|
||||
%struct.XXClipPlane = type { i32, [6 x %struct.ZZIColor4] }
|
||||
%struct.XXColorBB = type { i16, i8, i8, [8 x i16], i8, i8, i8, i8 }
|
||||
%struct.XXColorMatrix = type { [16 x float]*, %struct.XXImagingColorScale }
|
||||
%struct.XXConfig = type { i32, float, %struct.ZZGTransformKey, %struct.ZZGTransformKey, i8, i8, i8, i8, i8, i8, i16, i32, i32, i32, %struct.XXPixelFormatInfo, %struct.XXPointLineLimits, %struct.XXPointLineLimits, %struct.XXRenderFeatures, i32, i32, i32, i32, i32, i32, i32, i32, i32, %struct.XXTextureLimits, [3 x %struct.XXPipelineProgramLimits], %struct.XXFragmentProgramLimits, %struct.XXVertexProgramLimits, %struct.XXGeometryShaderLimits, %struct.XXProgramLimits, %struct.XXGeometryShaderLimits, %struct.XXVertexDescriptor*, %struct.XXVertexDescriptor*, [3 x i32], [4 x i32], [0 x i32] }
|
||||
%struct.XXContextRec = type { float, float, float, float, float, float, float, float, %struct.ZZIColor4, %struct.ZZIColor4, %struct.YYFPContext, [16 x [2 x %struct.PPStreamToken]], %struct.ZZGProcessor, %struct._YYConstants*, void (%struct.XXContextRec*, i32, i32, %struct.YYFragmentAttrib*, %struct.YYFragmentAttrib*, i32)*, %struct._YYFunction*, %struct.PPStreamToken*, void (%struct.XXContextRec*, %struct.XXVertex*)*, void (%struct.XXContextRec*, %struct.XXVertex*, %struct.XXVertex*)*, void (%struct.XXContextRec*, %struct.XXVertex*, %struct.XXVertex*, %struct.XXVertex*)*, %struct._YYFunction*, %struct._YYFunction*, %struct._YYFunction*, [4 x i32], [3 x i32], [3 x i32], float, float, float, %struct.PPStreamToken, i32, %struct.ZZSDrawable, %struct.XXFramebufferRec*, %struct.XXFramebufferRec*, %struct.XXRect, %struct.XXFormat, %struct.XXFormat, %struct.XXFormat, %struct.XXConfig*, %struct.XXBBstate, %struct.XXBBstate, %struct.XXSharedRec*, %struct.XXState*, %struct.XXPluginState*, %struct.XXVertex*, %struct.YYFragmentAttrib*, %struct.YYFragmentAttrib*, %struct.YYFragmentAttrib*, %struct.XXProgramRec*, %struct.XXPipelineProgramRec*, %struct.YYTextures, %struct.XXStippleData, i8, i16, i8, i32, i32, i32, %struct.XXQueryRec*, %struct.XXQueryRec*, %struct.XXFallback, { void (i8*, i8*, i32, i8*)* } }
|
||||
%struct.XXConvolution = type { %struct.ZZIColor4, %struct.XXImagingColorScale, i16, i16, [0 x i32], float*, i32, i32 }
|
||||
%struct.XXCurrent16A = type { [8 x %struct.ZZIColor4], [16 x %struct.ZZIColor4], %struct.ZZIColor4, %struct.XXPointLineLimits, float, %struct.XXPointLineLimits, float, [4 x float], %struct.XXPointLineLimits, float, float, float, float, i8, i8, i8, i8 }
|
||||
%struct.XXDepthTest = type { i16, i16, i8, i8, i8, i8, double, double }
|
||||
%struct.XXDrawableWindow = type { i32, i32, i32 }
|
||||
%struct.XXFallback = type { float*, %struct.XXRenderDispatch*, %struct.XXConfig*, i8*, i8*, i32, i32 }
|
||||
%struct.XXFenceRec = type opaque
|
||||
%struct.XXFixedFunction = type { %struct.PPStreamToken* }
|
||||
%struct.XXFogMode = type { %struct.ZZIColor4, float, float, float, float, float, i16, i16, i16, i8, i8 }
|
||||
%struct.XXFormat = type { i32, i32, i32, i32, i32, i32, i32, i32, i8, i8, i8, i8, i32, i32, i32 }
|
||||
%struct.XXFragmentProgramLimits = type { i32, i32, i32, i16, i16, i32, i32 }
|
||||
%struct.XXFramebufferAttachment = type { i16, i16, i32, i32, i32 }
|
||||
%struct.XXFramebufferData = type { [10 x %struct.XXFramebufferAttachment], [8 x i16], i16, i16, i16, i8, i8, i32, i32 }
|
||||
%struct.XXFramebufferRec = type { %struct.XXFramebufferData*, %struct.XXPluginFramebufferData*, %struct.XXFormat, i8, i8, i8, i8 }
|
||||
%struct.XXGeometryShaderLimits = type { i32, i32, i32, i32, i32 }
|
||||
%struct.XXHintMode = type { i16, i16, i16, i16, i16, i16, i16, i16, i16, i16 }
|
||||
%struct.XXHistogram = type { %struct.XXProgramLimits*, i32, i16, i8, i8 }
|
||||
%struct.XXImagingColorScale = type { %struct.ZZTCoord2, %struct.ZZTCoord2, %struct.ZZTCoord2, %struct.ZZTCoord2 }
|
||||
%struct.XXImagingSubset = type { %struct.XXConvolution, %struct.XXConvolution, %struct.XXConvolution, %struct.XXColorMatrix, %struct.XXMinmax, %struct.XXHistogram, %struct.XXImagingColorScale, %struct.XXImagingColorScale, %struct.XXImagingColorScale, %struct.XXImagingColorScale, i32, [0 x i32] }
|
||||
%struct.XXLight = type { %struct.ZZIColor4, %struct.ZZIColor4, %struct.ZZIColor4, %struct.ZZIColor4, %struct.XXPointLineLimits, float, float, float, float, float, %struct.XXPointLineLimits, float, %struct.XXPointLineLimits, float, %struct.XXPointLineLimits, float, float, float, float, float }
|
||||
%struct.XXLightModel = type { %struct.ZZIColor4, [8 x %struct.XXLight], [2 x %struct.XXMaterial], i32, i16, i16, i16, i8, i8, i8, i8, i8, i8 }
|
||||
%struct.XXLightProduct = type { %struct.ZZIColor4, %struct.ZZIColor4, %struct.ZZIColor4 }
|
||||
%struct.XXLineMode = type { float, i32, i16, i16, i8, i8, i8, i8 }
|
||||
%struct.XXLogicOp = type { i16, i8, i8 }
|
||||
%struct.XXMaskMode = type { i32, [3 x i32], i8, i8, i8, i8, i8, i8, i8, i8 }
|
||||
%struct.XXMaterial = type { %struct.ZZIColor4, %struct.ZZIColor4, %struct.ZZIColor4, %struct.ZZIColor4, float, float, float, float, [8 x %struct.XXLightProduct], %struct.ZZIColor4, [8 x i32] }
|
||||
%struct.XXMinmax = type { %struct.XXMinmaxTable*, i16, i8, i8, [0 x i32] }
|
||||
%struct.XXMinmaxTable = type { %struct.ZZIColor4, %struct.ZZIColor4 }
|
||||
%struct.XXMipmaplevel = type { [4 x i32], [4 x i32], [4 x float], [4 x i32], i32, i32, float*, i8*, i16, i16, i16, i16, [2 x float] }
|
||||
%struct.XXMultisample = type { float, i8, i8, i8, i8, i8, i8, i8, i8 }
|
||||
%struct.XXPipelineProgramData = type { i16, i8, i8, i32, %struct.PPStreamToken*, i64, %struct.ZZIColor4*, i32, [0 x i32] }
|
||||
%struct.XXPipelineProgramLimits = type { i32, i16, i16, i32, i16, i16, i32, i32 }
|
||||
%struct.XXPipelineProgramRec = type { %struct.XXPipelineProgramData*, %struct.PPStreamToken*, %struct.XXContextRec*, { %struct._YYFunction*, \2, \2, [20 x i32], [64 x i32], i32, i32, i32 }*, i32, i32 }
|
||||
%struct.XXPipelineProgramState = type { i8, i8, i8, i8, [0 x i32], %struct.ZZIColor4* }
|
||||
%struct.XXPixelFormatInfo = type { i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8 }
|
||||
%struct.XXPixelMap = type { i32*, float*, float*, float*, float*, float*, float*, float*, float*, i32*, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32 }
|
||||
%struct.XXPixelMode = type { float, float, %struct.XXPixelStore, %struct.XXPixelTransfer, %struct.XXPixelMap, %struct.XXImagingSubset, i32, i32 }
|
||||
%struct.XXPixelPack = type { i32, i32, i32, i32, i32, i32, i32, i32, i8, i8, i8, i8 }
|
||||
%struct.XXPixelStore = type { %struct.XXPixelPack, %struct.XXPixelPack }
|
||||
%struct.XXPixelTransfer = type { float, float, float, float, float, float, float, float, float, float, i32, i32, float, float, float, float, float, float, float, float, float, float, float, float }
|
||||
%struct.XXPluginFramebufferData = type { [10 x %struct.XXTextureRec*], i8, i8, i8, i8 }
|
||||
%struct.XXPluginProgramData = type { [3 x %struct.XXPipelineProgramRec*], %struct.XXBBRec**, i32, [0 x i32] }
|
||||
%struct.XXPluginState = type { [16 x [5 x %struct.XXTextureRec*]], [3 x %struct.XXTextureRec*], [3 x %struct.XXPipelineProgramRec*], [3 x %struct.XXPipelineProgramRec*], %struct.XXProgramRec*, %struct.XXVertexArrayRec*, [16 x %struct.XXBBRec*], %struct.XXFramebufferRec*, %struct.XXFramebufferRec* }
|
||||
%struct.XXPointLineLimits = type { float, float, float }
|
||||
%struct.XXPointMode = type { float, float, float, float, %struct.XXPointLineLimits, float, i8, i8, i8, i8, i16, i16, i32, i16, i16 }
|
||||
%struct.XXPolygonMode = type { [128 x i8], float, float, i16, i16, i16, i16, i8, i8, i8, i8, i8, i8, i8, i8 }
|
||||
%struct.XXProgramData = type { i32, i32, i32, i32, %struct.PPStreamToken*, i32*, i32, i32, i32, i32, i8, i8, i8, i8, [0 x i32] }
|
||||
%struct.XXProgramLimits = type { i32, i32, i32, i32 }
|
||||
%struct.XXProgramRec = type { %struct.XXProgramData*, %struct.XXPluginProgramData*, %struct.ZZIColor4**, i32 }
|
||||
%struct.XXQueryRec = type { i32, i32, %struct.XXQueryRec* }
|
||||
%struct.XXRect = type { i32, i32, i32, i32, i32, i32 }
|
||||
%struct.XXRegisterCombiners = type { i8, i8, i8, i8, i32, [2 x %struct.ZZIColor4], [8 x %struct.XXRegisterCombinersPerStageState], %struct.XXRegisterCombinersFinalStageState }
|
||||
%struct.XXRegisterCombinersFinalStageState = type { i8, i8, i8, i8, [7 x %struct.XXRegisterCombinersPerVariableState] }
|
||||
%struct.XXRegisterCombinersPerPortionState = type { [4 x %struct.XXRegisterCombinersPerVariableState], i8, i8, i8, i8, i16, i16, i16, i16, i16, i16 }
|
||||
%struct.XXRegisterCombinersPerStageState = type { [2 x %struct.XXRegisterCombinersPerPortionState], [2 x %struct.ZZIColor4] }
|
||||
%struct.XXRegisterCombinersPerVariableState = type { i16, i16, i16, i16 }
|
||||
%struct.XXRenderDispatch = type { void (%struct.XXContextRec*, i32, float)*, void (%struct.XXContextRec*, i32)*, i32 (%struct.XXContextRec*, i32, i32, i32, i32, i32, i32, i8*, i32, %struct.XXBBRec*)*, i32 (%struct.XXContextRec*, %struct.XXVertex*, i32, i32, i32, i32, i8*, i32, %struct.XXBBRec*)*, void (%struct.XXContextRec*, %struct.XXVertex*, i32, i32, i32, i32, i32)*, void (%struct.XXContextRec*, %struct.XXVertex*, i32, i32, float, float, i8*, i32)*, void (%struct.XXContextRec*, %struct.XXVertex*, i32, i32)*, void (%struct.XXContextRec*, %struct.XXVertex*, i32, i32)*, void (%struct.XXContextRec*, %struct.XXVertex*, i32, i32)*, void (%struct.XXContextRec*, %struct.XXVertex*, i32, i32)*, void (%struct.XXContextRec*, %struct.XXVertex*, i32, i32)*, void (%struct.XXContextRec*, %struct.XXVertex*, i32, i32)*, void (%struct.XXContextRec*, %struct.XXVertex*, %struct.XXVertex*, i32, i32)*, void (%struct.XXContextRec*, %struct.XXVertex*, i32, i32)*, void (%struct.XXContextRec*, %struct.XXVertex*, i32, i32)*, void (%struct.XXContextRec*, %struct.XXVertex*, i32, i32)*, void (%struct.XXContextRec*, %struct.XXVertex*, i32, i32)*, void (%struct.XXContextRec*, %struct.XXVertex*, i32, i32)*, void (%struct.XXContextRec*, %struct.XXVertex*, i32, i32)*, void (%struct.XXContextRec*, %struct.XXVertex*, i32, i32)*, void (%struct.XXContextRec*, %struct.XXVertex**, i32)*, void (%struct.XXContextRec*, %struct.XXVertex**, i32, i32)*, void (%struct.XXContextRec*, %struct.XXVertex**, i32, i32)*, i8* (%struct.XXContextRec*, i32, i32*)*, void (%struct.XXContextRec*, i32, i32, i32)*, i8* (%struct.XXContextRec*, i32, i32, i32, i32, i32)*, void (%struct.XXContextRec*, i32, i32, i32, i32, i32, i8*)*, void (%struct.XXContextRec*)*, void (%struct.XXContextRec*)*, void (%struct.XXContextRec*)*, void (%struct.XXContextRec*, %struct.XXFenceRec*)*, void (%struct.XXContextRec*, i32, %struct.XXQueryRec*)*, void (%struct.XXContextRec*, %struct.XXQueryRec*)*, i32 (%struct.XXContextRec*, i32, i32, i32, i32, i32, i8*, %struct.ZZIColor4*, %struct.XXCurrent16A*)*, i32 (%struct.XXContextRec*, %struct.XXTextureRec*, i32, i32, i32, i32, i32, i32, i32, i32, i32)*, i32 (%struct.XXContextRec*, %struct.XXTextureRec*, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i8*, i32, %struct.XXBBRec*)*, i32 (%struct.XXContextRec*, %struct.XXTextureRec*, i32)*, i32 (%struct.XXContextRec*, %struct.XXBBRec*, i32, i32, i8*)*, void (%struct.XXContextRec*, i32)*, void (%struct.XXContextRec*)*, void (%struct.XXContextRec*, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32)*, i32 (%struct.XXContextRec*, %struct.XXQueryRec*)*, void (%struct.XXContextRec*)* }
|
||||
%struct.XXRenderFeatures = type { i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8 }
|
||||
%struct.XXSWRSurfaceRec = type { i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i8*, i8*, i8*, [4 x i8*], i32 }
|
||||
%struct.XXScissorTest = type { %struct.XXProgramLimits, i8, i8, i8, i8 }
|
||||
%struct.XXSharedData = type { }
|
||||
%struct.XXSharedRec = type { %struct.__ZZarrayelementDrawInfoListType, %struct.XXSharedData*, i32, i8, i8, i8, i8 }
|
||||
%struct.XXState = type <{ i16, i16, i16, i16, i32, i32, [256 x %struct.ZZIColor4], [128 x %struct.ZZIColor4], %struct.XXViewport, %struct.XXTransform, %struct.XXLightModel, %struct.XXActiveTextureTargets, %struct.XXAlphaTest, %struct.XXBlendMode, %struct.XXClearColor, %struct.XXColorBB, %struct.XXDepthTest, %struct.XXArrayRange, %struct.XXFogMode, %struct.XXHintMode, %struct.XXLineMode, %struct.XXLogicOp, %struct.XXMaskMode, %struct.XXPixelMode, %struct.XXPointMode, %struct.XXPolygonMode, %struct.XXScissorTest, i32, %struct.XXStencilTest, [8 x %struct.XXTextureMode], [16 x %struct.XXTextureImageMode], %struct.XXArrayRange, [8 x %struct.XXTextureCoordGen], %struct.XXClipPlane, %struct.XXMultisample, %struct.XXRegisterCombiners, %struct.XXArrayRange, %struct.XXArrayRange, [3 x %struct.XXPipelineProgramState], %struct.XXArrayRange, %struct.XXTransformFeedback, i32*, %struct.XXFixedFunction, [1 x i32] }>
|
||||
%struct.XXStencilTest = type { [3 x { i32, i32, i16, i16, i16, i16 }], i32, [4 x i8] }
|
||||
%struct.XXStippleData = type { i32, i16, i16, [32 x [32 x i8]] }
|
||||
%struct.XXTextureCoordGen = type { { i16, i16, %struct.ZZIColor4, %struct.ZZIColor4 }, { i16, i16, %struct.ZZIColor4, %struct.ZZIColor4 }, { i16, i16, %struct.ZZIColor4, %struct.ZZIColor4 }, { i16, i16, %struct.ZZIColor4, %struct.ZZIColor4 }, i8, i8, i8, i8 }
|
||||
%struct.XXTextureGeomState = type { i16, i16, i16, i16, i16, i8, i8, i8, i8, i16, i16, i16, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, [6 x i16], [6 x i16] }
|
||||
%struct.XXTextureImageMode = type { float }
|
||||
%struct.XXTextureLevel = type { i32, i32, i16, i16, i16, i8, i8, i16, i16, i16, i16, i8* }
|
||||
%struct.XXTextureLimits = type { float, float, i16, i16, i16, i16, i16, i16, i16, i16, i16, i8, i8, [16 x i16], i32 }
|
||||
%struct.XXTextureMode = type { %struct.ZZIColor4, i32, i16, i16, i16, i16, i16, i16, i16, i16, i16, i16, i16, i16, i16, i16, i16, i16, float, float, i16, i16, i16, i16, i16, i16, [4 x i16], i8, i8, i8, i8, [3 x float], [4 x float], float, float }
|
||||
%struct.XXTextureParamState = type { i16, i16, i16, i16, i16, i16, %struct.ZZIColor4, float, float, float, float, i16, i16, i16, i16, float, i16, i8, i8, i32, i8* }
|
||||
%struct.XXTextureRec = type { [4 x float], %struct.XXTextureState*, %struct.XXMipmaplevel*, %struct.XXMipmaplevel*, float, float, float, float, i8, i8, i8, i8, i16, i16, i16, i16, i32, float, [2 x %struct.PPStreamToken] }
|
||||
%struct.XXTextureState = type { i16, i8, i8, i16, i16, float, i32, %struct.XXSWRSurfaceRec*, %struct.XXTextureParamState, %struct.XXTextureGeomState, i16, i16, i8*, %struct.XXTextureLevel, [1 x [15 x %struct.XXTextureLevel]] }
|
||||
%struct.XXTransform = type <{ [24 x [16 x float]], [24 x [16 x float]], [16 x float], float, float, float, float, float, i8, i8, i8, i8, i32, i32, i32, i16, i16, i8, i8, i8, i8, i32 }>
|
||||
%struct.XXTransformFeedback = type { i8, i8, i8, i8, [0 x i32], [16 x i32], [16 x i32] }
|
||||
%struct.XXVertex = type { %struct.ZZIColor4, %struct.ZZIColor4, %struct.ZZIColor4, %struct.ZZIColor4, %struct.ZZIColor4, %struct.XXPointLineLimits, float, %struct.ZZIColor4, float, i8, i8, i8, i8, float, float, i32, i32, i32, i32, [4 x float], [2 x %struct.XXMaterial*], [2 x i32], [8 x %struct.ZZIColor4] }
|
||||
%struct.XXVertexArrayRec = type opaque
|
||||
%struct.XXVertexDescriptor = type { i8, i8, i8, i8, [0 x i32] }
|
||||
%struct.XXVertexProgramLimits = type { i16, i16, i32, i32 }
|
||||
%struct.XXViewport = type { float, float, float, float, float, float, float, float, float, float, float, float, float, float, float, float, double, double, i32, i32, i32, i32, float, float, float, float }
|
||||
%struct.ZZGColorTable = type { i32, i32, i32, i8* }
|
||||
%struct.ZZGOperation = type { i8*, i8*, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, float, float, %struct.ZZGColorTable, %struct.ZZGColorTable, %struct.ZZGColorTable }
|
||||
%struct.ZZGProcessor = type { void (%struct.XXPixelMode*, %struct.ZZGOperation*, %struct._ZZGProcessorData*, %union._ZZGFunctionKey*)*, %struct._YYFunction*, %union._ZZGFunctionKey*, %struct._ZZGProcessorData* }
|
||||
%struct.ZZGTransformKey = type { i32, i32 }
|
||||
%struct.ZZIColor4 = type { float, float, float, float }
|
||||
%struct.ZZSBB = type { i8* }
|
||||
%struct.ZZSDrawable = type { %struct.ZZSWindowRec* }
|
||||
%struct.ZZSWindowRec = type { %struct.ZZGTransformKey, %struct.ZZGTransformKey, i32, i32, %struct.ZZSDrawable, i8*, i8*, i8*, i8*, i8*, [4 x i8*], i32, i16, i16, i16, i16, i8, i8, i8, i8, i8, i8, i8, i8, %struct.XXDrawableWindow, i32, i32, i8*, i8* }
|
||||
%struct.ZZTCoord2 = type { float, float }
|
||||
%struct.YYFPContext = type { float, i32, i32, i32, float, [3 x float] }
|
||||
%struct.YYFragmentAttrib = type { <4 x float>, <4 x float>, <4 x float>, <4 x float>, <4 x float>, [8 x <4 x float>] }
|
||||
%struct.YYTextures = type { [16 x %struct.XXTextureRec*] }
|
||||
%struct.PPStreamToken = type { { i16, i16, i32 } }
|
||||
%struct._ZZGProcessorData = type { void (i8*, i8*, i32, i32, i32, i32, i32, i32, i32)*, void (i8*, i8*, i32, i32, i32, i32, i32, i32, i32)*, i8* (i32)*, void (i8*)* }
|
||||
%struct._YYConstants = type { <4 x float>, <4 x float>, <4 x float>, <4 x float>, <4 x float>, <4 x float>, <4 x float>, <4 x float>, <4 x float>, <4 x float>, float, float, float, float, float, float, float, float, float, float, float, float, [256 x float], [4096 x i8], [8 x float], [48 x float], [128 x float], [528 x i8], { void (i8*, i8*, i32, i8*)*, float (float)*, float (float)*, float (float)*, i32 (float)* } }
|
||||
%struct._YYFunction = type opaque
|
||||
%struct.__ZZarrayelementDrawInfoListType = type { i32, [40 x i8] }
|
||||
%union._ZZGFunctionKey = type opaque
|
||||
@llvm.used = appending global [1 x i8*] [ i8* bitcast (void (%struct.XXContextRec*, i32, i32, %struct.YYFragmentAttrib*, %struct.YYFragmentAttrib*, i32)* @t to i8*) ], section "llvm.metadata" ; <[1 x i8*]*> [#uses=0]
|
||||
|
||||
define void @t(%struct.XXContextRec* %ctx, i32 %x, i32 %y, %struct.YYFragmentAttrib* %start, %struct.YYFragmentAttrib* %deriv, i32 %num_frags) nounwind {
|
||||
entry:
|
||||
%tmp7485.i.i.i = xor <4 x i32> zeroinitializer, < i32 -1, i32 -1, i32 -1, i32 -1 > ; <<4 x i32>> [#uses=1]
|
||||
%tmp8382.i.i.i = extractelement <4 x i32> zeroinitializer, i32 1 ; <i32> [#uses=1]
|
||||
%tmp8383.i.i.i = extractelement <4 x i32> zeroinitializer, i32 2 ; <i32> [#uses=2]
|
||||
%tmp8384.i.i.i = extractelement <4 x i32> zeroinitializer, i32 3 ; <i32> [#uses=2]
|
||||
br label %bb7551.i.i.i
|
||||
|
||||
bb4426.i.i.i: ; preds = %bb7551.i.i.i
|
||||
%0 = getelementptr %struct.XXMipmaplevel* null, i32 %tmp8383.i.i.i, i32 3 ; <[4 x i32]*> [#uses=1]
|
||||
%1 = bitcast [4 x i32]* %0 to <4 x i32>* ; <<4 x i32>*> [#uses=1]
|
||||
%2 = load <4 x i32>* %1, align 16 ; <<4 x i32>> [#uses=1]
|
||||
%3 = getelementptr %struct.XXMipmaplevel* null, i32 %tmp8384.i.i.i, i32 3 ; <[4 x i32]*> [#uses=1]
|
||||
%4 = bitcast [4 x i32]* %3 to <4 x i32>* ; <<4 x i32>*> [#uses=1]
|
||||
%5 = load <4 x i32>* %4, align 16 ; <<4 x i32>> [#uses=1]
|
||||
%6 = shufflevector <4 x i32> %2, <4 x i32> %5, <4 x i32> < i32 0, i32 4, i32 1, i32 5 > ; <<4 x i32>> [#uses=1]
|
||||
%7 = bitcast <4 x i32> %6 to <2 x i64> ; <<2 x i64>> [#uses=1]
|
||||
%8 = shufflevector <2 x i64> zeroinitializer, <2 x i64> %7, <2 x i32> < i32 1, i32 3 > ; <<2 x i64>> [#uses=1]
|
||||
%9 = getelementptr %struct.XXMipmaplevel* null, i32 %tmp8382.i.i.i, i32 6 ; <float**> [#uses=1]
|
||||
%10 = load float** %9, align 4 ; <float*> [#uses=1]
|
||||
%11 = bitcast float* %10 to i8* ; <i8*> [#uses=1]
|
||||
%12 = getelementptr %struct.XXMipmaplevel* null, i32 %tmp8383.i.i.i, i32 6 ; <float**> [#uses=1]
|
||||
%13 = load float** %12, align 4 ; <float*> [#uses=1]
|
||||
%14 = bitcast float* %13 to i8* ; <i8*> [#uses=1]
|
||||
%15 = getelementptr %struct.XXMipmaplevel* null, i32 %tmp8384.i.i.i, i32 6 ; <float**> [#uses=1]
|
||||
%16 = load float** %15, align 4 ; <float*> [#uses=1]
|
||||
%17 = bitcast float* %16 to i8* ; <i8*> [#uses=1]
|
||||
%tmp7308.i.i.i = and <2 x i64> zeroinitializer, %8 ; <<2 x i64>> [#uses=1]
|
||||
%18 = bitcast <2 x i64> %tmp7308.i.i.i to <4 x i32> ; <<4 x i32>> [#uses=1]
|
||||
%19 = mul <4 x i32> %18, zeroinitializer ; <<4 x i32>> [#uses=1]
|
||||
%20 = add <4 x i32> %19, zeroinitializer ; <<4 x i32>> [#uses=3]
|
||||
%21 = load i32* null, align 4 ; <i32> [#uses=0]
|
||||
%22 = call <4 x float> @llvm.x86.sse2.cvtdq2ps(<4 x i32> zeroinitializer) nounwind readnone ; <<4 x float>> [#uses=1]
|
||||
%23 = fmul <4 x float> %22, < float 0x3F70101020000000, float 0x3F70101020000000, float 0x3F70101020000000, float 0x3F70101020000000 > ; <<4 x float>> [#uses=1]
|
||||
%tmp2114.i119.i.i = extractelement <4 x i32> %20, i32 1 ; <i32> [#uses=1]
|
||||
%24 = shl i32 %tmp2114.i119.i.i, 2 ; <i32> [#uses=1]
|
||||
%25 = getelementptr i8* %11, i32 %24 ; <i8*> [#uses=1]
|
||||
%26 = bitcast i8* %25 to i32* ; <i32*> [#uses=1]
|
||||
%27 = load i32* %26, align 4 ; <i32> [#uses=1]
|
||||
%28 = or i32 %27, -16777216 ; <i32> [#uses=1]
|
||||
%tmp1927.i120.i.i = insertelement <4 x i32> undef, i32 %28, i32 0 ; <<4 x i32>> [#uses=1]
|
||||
%29 = bitcast <4 x i32> %tmp1927.i120.i.i to <16 x i8> ; <<16 x i8>> [#uses=1]
|
||||
%30 = shufflevector <16 x i8> %29, <16 x i8> < i8 0, i8 0, i8 0, i8 0, i8 0, i8 0, i8 0, i8 0, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef >, <16 x i32> < i32 0, i32 16, i32 1, i32 17, i32 2, i32 18, i32 3, i32 19, i32 4, i32 20, i32 5, i32 21, i32 6, i32 22, i32 7, i32 23 > ; <<16 x i8>> [#uses=1]
|
||||
%31 = bitcast <16 x i8> %30 to <8 x i16> ; <<8 x i16>> [#uses=1]
|
||||
%32 = shufflevector <8 x i16> %31, <8 x i16> < i16 0, i16 0, i16 0, i16 0, i16 undef, i16 undef, i16 undef, i16 undef >, <8 x i32> < i32 0, i32 8, i32 1, i32 9, i32 2, i32 10, i32 3, i32 11 > ; <<8 x i16>> [#uses=1]
|
||||
%33 = bitcast <8 x i16> %32 to <4 x i32> ; <<4 x i32>> [#uses=1]
|
||||
%34 = shufflevector <4 x i32> %33, <4 x i32> undef, <4 x i32> < i32 2, i32 1, i32 0, i32 3 > ; <<4 x i32>> [#uses=1]
|
||||
%35 = call <4 x float> @llvm.x86.sse2.cvtdq2ps(<4 x i32> %34) nounwind readnone ; <<4 x float>> [#uses=1]
|
||||
%36 = fmul <4 x float> %35, < float 0x3F70101020000000, float 0x3F70101020000000, float 0x3F70101020000000, float 0x3F70101020000000 > ; <<4 x float>> [#uses=1]
|
||||
%tmp2113.i124.i.i = extractelement <4 x i32> %20, i32 2 ; <i32> [#uses=1]
|
||||
%37 = shl i32 %tmp2113.i124.i.i, 2 ; <i32> [#uses=1]
|
||||
%38 = getelementptr i8* %14, i32 %37 ; <i8*> [#uses=1]
|
||||
%39 = bitcast i8* %38 to i32* ; <i32*> [#uses=1]
|
||||
%40 = load i32* %39, align 4 ; <i32> [#uses=1]
|
||||
%41 = or i32 %40, -16777216 ; <i32> [#uses=1]
|
||||
%tmp1963.i125.i.i = insertelement <4 x i32> undef, i32 %41, i32 0 ; <<4 x i32>> [#uses=1]
|
||||
%42 = bitcast <4 x i32> %tmp1963.i125.i.i to <16 x i8> ; <<16 x i8>> [#uses=1]
|
||||
%43 = shufflevector <16 x i8> %42, <16 x i8> < i8 0, i8 0, i8 0, i8 0, i8 0, i8 0, i8 0, i8 0, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef >, <16 x i32> < i32 0, i32 16, i32 1, i32 17, i32 2, i32 18, i32 3, i32 19, i32 4, i32 20, i32 5, i32 21, i32 6, i32 22, i32 7, i32 23 > ; <<16 x i8>> [#uses=1]
|
||||
%44 = bitcast <16 x i8> %43 to <8 x i16> ; <<8 x i16>> [#uses=1]
|
||||
%45 = shufflevector <8 x i16> %44, <8 x i16> < i16 0, i16 0, i16 0, i16 0, i16 undef, i16 undef, i16 undef, i16 undef >, <8 x i32> < i32 0, i32 8, i32 1, i32 9, i32 2, i32 10, i32 3, i32 11 > ; <<8 x i16>> [#uses=1]
|
||||
%46 = bitcast <8 x i16> %45 to <4 x i32> ; <<4 x i32>> [#uses=1]
|
||||
%47 = shufflevector <4 x i32> %46, <4 x i32> undef, <4 x i32> < i32 2, i32 1, i32 0, i32 3 > ; <<4 x i32>> [#uses=1]
|
||||
%48 = call <4 x float> @llvm.x86.sse2.cvtdq2ps(<4 x i32> %47) nounwind readnone ; <<4 x float>> [#uses=1]
|
||||
%49 = fmul <4 x float> %48, < float 0x3F70101020000000, float 0x3F70101020000000, float 0x3F70101020000000, float 0x3F70101020000000 > ; <<4 x float>> [#uses=1]
|
||||
%tmp2112.i129.i.i = extractelement <4 x i32> %20, i32 3 ; <i32> [#uses=1]
|
||||
%50 = shl i32 %tmp2112.i129.i.i, 2 ; <i32> [#uses=1]
|
||||
%51 = getelementptr i8* %17, i32 %50 ; <i8*> [#uses=1]
|
||||
%52 = bitcast i8* %51 to i32* ; <i32*> [#uses=1]
|
||||
%53 = load i32* %52, align 4 ; <i32> [#uses=1]
|
||||
%54 = or i32 %53, -16777216 ; <i32> [#uses=1]
|
||||
%tmp1999.i130.i.i = insertelement <4 x i32> undef, i32 %54, i32 0 ; <<4 x i32>> [#uses=1]
|
||||
%55 = bitcast <4 x i32> %tmp1999.i130.i.i to <16 x i8> ; <<16 x i8>> [#uses=1]
|
||||
%56 = shufflevector <16 x i8> %55, <16 x i8> < i8 0, i8 0, i8 0, i8 0, i8 0, i8 0, i8 0, i8 0, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef >, <16 x i32> < i32 0, i32 16, i32 1, i32 17, i32 2, i32 18, i32 3, i32 19, i32 4, i32 20, i32 5, i32 21, i32 6, i32 22, i32 7, i32 23 > ; <<16 x i8>> [#uses=1]
|
||||
%57 = bitcast <16 x i8> %56 to <8 x i16> ; <<8 x i16>> [#uses=1]
|
||||
%58 = shufflevector <8 x i16> %57, <8 x i16> < i16 0, i16 0, i16 0, i16 0, i16 undef, i16 undef, i16 undef, i16 undef >, <8 x i32> < i32 0, i32 8, i32 1, i32 9, i32 2, i32 10, i32 3, i32 11 > ; <<8 x i16>> [#uses=1]
|
||||
%59 = bitcast <8 x i16> %58 to <4 x i32> ; <<4 x i32>> [#uses=1]
|
||||
%60 = shufflevector <4 x i32> %59, <4 x i32> undef, <4 x i32> < i32 2, i32 1, i32 0, i32 3 > ; <<4 x i32>> [#uses=1]
|
||||
%61 = call <4 x float> @llvm.x86.sse2.cvtdq2ps(<4 x i32> %60) nounwind readnone ; <<4 x float>> [#uses=1]
|
||||
%62 = fmul <4 x float> %61, < float 0x3F70101020000000, float 0x3F70101020000000, float 0x3F70101020000000, float 0x3F70101020000000 > ; <<4 x float>> [#uses=1]
|
||||
%63 = fmul <4 x float> %23, zeroinitializer ; <<4 x float>> [#uses=1]
|
||||
%64 = fadd <4 x float> zeroinitializer, %63 ; <<4 x float>> [#uses=1]
|
||||
%65 = fmul <4 x float> %36, zeroinitializer ; <<4 x float>> [#uses=1]
|
||||
%66 = fadd <4 x float> zeroinitializer, %65 ; <<4 x float>> [#uses=1]
|
||||
%67 = fmul <4 x float> %49, zeroinitializer ; <<4 x float>> [#uses=1]
|
||||
%68 = fadd <4 x float> zeroinitializer, %67 ; <<4 x float>> [#uses=1]
|
||||
%69 = fmul <4 x float> %62, zeroinitializer ; <<4 x float>> [#uses=1]
|
||||
%70 = fadd <4 x float> zeroinitializer, %69 ; <<4 x float>> [#uses=1]
|
||||
%tmp7452.i.i.i = bitcast <4 x float> %64 to <4 x i32> ; <<4 x i32>> [#uses=1]
|
||||
%tmp7454.i.i.i = and <4 x i32> %tmp7452.i.i.i, zeroinitializer ; <<4 x i32>> [#uses=1]
|
||||
%tmp7459.i.i.i = or <4 x i32> %tmp7454.i.i.i, zeroinitializer ; <<4 x i32>> [#uses=1]
|
||||
%tmp7460.i.i.i = bitcast <4 x i32> %tmp7459.i.i.i to <4 x float> ; <<4 x float>> [#uses=1]
|
||||
%tmp7468.i.i.i = bitcast <4 x float> %66 to <4 x i32> ; <<4 x i32>> [#uses=1]
|
||||
%tmp7470.i.i.i = and <4 x i32> %tmp7468.i.i.i, zeroinitializer ; <<4 x i32>> [#uses=1]
|
||||
%tmp7475.i.i.i = or <4 x i32> %tmp7470.i.i.i, zeroinitializer ; <<4 x i32>> [#uses=1]
|
||||
%tmp7476.i.i.i = bitcast <4 x i32> %tmp7475.i.i.i to <4 x float> ; <<4 x float>> [#uses=1]
|
||||
%tmp7479.i.i.i = bitcast <4 x float> %.279.1.i to <4 x i32> ; <<4 x i32>> [#uses=1]
|
||||
%tmp7480.i.i.i = and <4 x i32> zeroinitializer, %tmp7479.i.i.i ; <<4 x i32>> [#uses=1]
|
||||
%tmp7484.i.i.i = bitcast <4 x float> %68 to <4 x i32> ; <<4 x i32>> [#uses=1]
|
||||
%tmp7486.i.i.i = and <4 x i32> %tmp7484.i.i.i, %tmp7485.i.i.i ; <<4 x i32>> [#uses=1]
|
||||
%tmp7491.i.i.i = or <4 x i32> %tmp7486.i.i.i, %tmp7480.i.i.i ; <<4 x i32>> [#uses=1]
|
||||
%tmp7492.i.i.i = bitcast <4 x i32> %tmp7491.i.i.i to <4 x float> ; <<4 x float>> [#uses=1]
|
||||
%tmp7495.i.i.i = bitcast <4 x float> %.380.1.i to <4 x i32> ; <<4 x i32>> [#uses=1]
|
||||
%tmp7496.i.i.i = and <4 x i32> zeroinitializer, %tmp7495.i.i.i ; <<4 x i32>> [#uses=1]
|
||||
%tmp7500.i.i.i = bitcast <4 x float> %70 to <4 x i32> ; <<4 x i32>> [#uses=1]
|
||||
%tmp7502.i.i.i = and <4 x i32> %tmp7500.i.i.i, zeroinitializer ; <<4 x i32>> [#uses=1]
|
||||
%tmp7507.i.i.i = or <4 x i32> %tmp7502.i.i.i, %tmp7496.i.i.i ; <<4 x i32>> [#uses=1]
|
||||
%tmp7508.i.i.i = bitcast <4 x i32> %tmp7507.i.i.i to <4 x float> ; <<4 x float>> [#uses=1]
|
||||
%indvar.next.i.i.i = add i32 %aniso.0.i.i.i, 1 ; <i32> [#uses=1]
|
||||
br label %bb7551.i.i.i
|
||||
|
||||
bb7551.i.i.i: ; preds = %bb4426.i.i.i, %entry
|
||||
%.077.1.i = phi <4 x float> [ undef, %entry ], [ %tmp7460.i.i.i, %bb4426.i.i.i ] ; <<4 x float>> [#uses=0]
|
||||
%.178.1.i = phi <4 x float> [ undef, %entry ], [ %tmp7476.i.i.i, %bb4426.i.i.i ] ; <<4 x float>> [#uses=0]
|
||||
%.279.1.i = phi <4 x float> [ undef, %entry ], [ %tmp7492.i.i.i, %bb4426.i.i.i ] ; <<4 x float>> [#uses=1]
|
||||
%.380.1.i = phi <4 x float> [ undef, %entry ], [ %tmp7508.i.i.i, %bb4426.i.i.i ] ; <<4 x float>> [#uses=1]
|
||||
%aniso.0.i.i.i = phi i32 [ 0, %entry ], [ %indvar.next.i.i.i, %bb4426.i.i.i ] ; <i32> [#uses=1]
|
||||
br i1 false, label %glvmInterpretFPTransformFour6.exit, label %bb4426.i.i.i
|
||||
|
||||
glvmInterpretFPTransformFour6.exit: ; preds = %bb7551.i.i.i
|
||||
unreachable
|
||||
}
|
||||
|
||||
declare <4 x float> @llvm.x86.sse2.cvtdq2ps(<4 x i32>) nounwind readnone
|
|
@ -1,44 +0,0 @@
|
|||
; RUN: llc < %s
|
||||
; PR2623
|
||||
|
||||
target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f80:128:128"
|
||||
target triple = "i386-unknown-freebsd7.0"
|
||||
%.objc_id = type { %.objc_id }*
|
||||
%.objc_selector = type { i8*, i8* }*
|
||||
@.objc_sel_ptr = external constant %.objc_selector ; <%.objc_selector*> [#uses=1]
|
||||
@.objc_sel_ptr13 = external constant %.objc_selector ; <%.objc_selector*> [#uses=1]
|
||||
@.objc_sel_ptr14 = external constant %.objc_selector ; <%.objc_selector*> [#uses=1]
|
||||
@.objc_sel_ptr15 = external constant %.objc_selector ; <%.objc_selector*> [#uses=1]
|
||||
@.objc_sel_ptr16 = external constant %.objc_selector ; <%.objc_selector*> [#uses=1]
|
||||
@.objc_sel_ptr17 = external constant %.objc_selector ; <%.objc_selector*> [#uses=1]
|
||||
@.objc_sel_ptr18 = external constant %.objc_selector ; <%.objc_selector*> [#uses=1]
|
||||
@.objc_sel_ptr19 = external constant %.objc_selector ; <%.objc_selector*> [#uses=1]
|
||||
@.objc_sel_ptr20 = external constant %.objc_selector ; <%.objc_selector*> [#uses=1]
|
||||
@.objc_sel_ptr21 = external constant %.objc_selector ; <%.objc_selector*> [#uses=1]
|
||||
|
||||
@.objc_untyped_selector_alias = alias internal %.objc_selector* @.objc_sel_ptr15 ; <%.objc_selector*> [#uses=0]
|
||||
@.objc_untyped_selector_alias1 = alias internal %.objc_selector* @.objc_sel_ptr ; <%.objc_selector*> [#uses=0]
|
||||
@.objc_untyped_selector_alias2 = alias internal %.objc_selector* @.objc_sel_ptr17 ; <%.objc_selector*> [#uses=0]
|
||||
@.objc_untyped_selector_alias3 = alias internal %.objc_selector* @.objc_sel_ptr16 ; <%.objc_selector*> [#uses=0]
|
||||
@.objc_untyped_selector_alias4 = alias internal %.objc_selector* @.objc_sel_ptr13 ; <%.objc_selector*> [#uses=0]
|
||||
@.objc_untyped_selector_alias7 = alias internal %.objc_selector* @.objc_sel_ptr14 ; <%.objc_selector*> [#uses=0]
|
||||
@getRange = alias internal %.objc_selector* @.objc_sel_ptr18 ; <%.objc_selector*> [#uses=0]
|
||||
@"valueWithRange:" = alias internal %.objc_selector* @.objc_sel_ptr21 ; <%.objc_selector*> [#uses=0]
|
||||
@rangeValue = alias internal %.objc_selector* @.objc_sel_ptr20 ; <%.objc_selector*> [#uses=0]
|
||||
@"printRange:" = alias internal %.objc_selector* @.objc_sel_ptr19 ; <%.objc_selector*> [#uses=0]
|
||||
|
||||
define void @"._objc_method_SmalltalkTool()-run"(i8* %self, %.objc_selector %_cmd) {
|
||||
entry:
|
||||
br i1 false, label %small_int_messagerangeValue, label %real_object_messagerangeValue
|
||||
|
||||
small_int_messagerangeValue: ; preds = %entry
|
||||
br label %Continue
|
||||
|
||||
real_object_messagerangeValue: ; preds = %entry
|
||||
br label %Continue
|
||||
|
||||
Continue: ; preds = %real_object_messagerangeValue, %small_int_messagerangeValue
|
||||
%rangeValue = phi { i32, i32 } [ undef, %small_int_messagerangeValue ], [ undef, %real_object_messagerangeValue ] ; <{ i32, i32 }> [#uses=1]
|
||||
call void (%.objc_id, %.objc_selector, ...)* null( %.objc_id null, %.objc_selector null, { i32, i32 } %rangeValue )
|
||||
ret void
|
||||
}
|
|
@ -1,67 +0,0 @@
|
|||
; RUN: llc < %s -march=x86 | grep 59796 | count 3
|
||||
|
||||
%Args = type %Value*
|
||||
%Exec = type opaque*
|
||||
%Identifier = type opaque*
|
||||
%JSFunction = type %Value (%Exec, %Scope, %Value, %Args)
|
||||
%PropertyNameArray = type opaque*
|
||||
%Scope = type opaque*
|
||||
%Value = type opaque*
|
||||
|
||||
declare i1 @X1(%Exec) readonly
|
||||
|
||||
declare %Value @X2(%Exec)
|
||||
|
||||
declare i32 @X3(%Exec, %Value)
|
||||
|
||||
declare %Value @X4(i32) readnone
|
||||
|
||||
define internal %Value @fast3bitlookup(%Exec %exec, %Scope %scope, %Value %this, %Args %args) nounwind {
|
||||
prologue:
|
||||
%eh_check = tail call i1 @X1( %Exec %exec ) readonly ; <i1> [#uses=1]
|
||||
br i1 %eh_check, label %exception, label %no_exception
|
||||
|
||||
exception: ; preds = %no_exception, %prologue
|
||||
%rethrow_result = tail call %Value @X2( %Exec %exec ) ; <%Value> [#uses=1]
|
||||
ret %Value %rethrow_result
|
||||
|
||||
no_exception: ; preds = %prologue
|
||||
%args_intptr = bitcast %Args %args to i32* ; <i32*> [#uses=1]
|
||||
%argc_val = load i32* %args_intptr ; <i32> [#uses=1]
|
||||
%cmpParamArgc = icmp sgt i32 %argc_val, 0 ; <i1> [#uses=1]
|
||||
%arg_ptr = getelementptr %Args %args, i32 1 ; <%Args> [#uses=1]
|
||||
%arg_val = load %Args %arg_ptr ; <%Value> [#uses=1]
|
||||
%ext_arg_val = select i1 %cmpParamArgc, %Value %arg_val, %Value inttoptr (i32 5 to %Value) ; <%Value> [#uses=1]
|
||||
%toInt325 = tail call i32 @X3( %Exec %exec, %Value %ext_arg_val ) ; <i32> [#uses=3]
|
||||
%eh_check6 = tail call i1 @X1( %Exec %exec ) readonly ; <i1> [#uses=1]
|
||||
br i1 %eh_check6, label %exception, label %no_exception7
|
||||
|
||||
no_exception7: ; preds = %no_exception
|
||||
%shl_tmp_result = shl i32 %toInt325, 1 ; <i32> [#uses=1]
|
||||
%rhs_masked13 = and i32 %shl_tmp_result, 14 ; <i32> [#uses=1]
|
||||
%ashr_tmp_result = lshr i32 59796, %rhs_masked13 ; <i32> [#uses=1]
|
||||
%and_tmp_result15 = and i32 %ashr_tmp_result, 3 ; <i32> [#uses=1]
|
||||
%ashr_tmp_result3283 = lshr i32 %toInt325, 2 ; <i32> [#uses=1]
|
||||
%rhs_masked38 = and i32 %ashr_tmp_result3283, 14 ; <i32> [#uses=1]
|
||||
%ashr_tmp_result39 = lshr i32 59796, %rhs_masked38 ; <i32> [#uses=1]
|
||||
%and_tmp_result41 = and i32 %ashr_tmp_result39, 3 ; <i32> [#uses=1]
|
||||
%addconv = add i32 %and_tmp_result15, %and_tmp_result41 ; <i32> [#uses=1]
|
||||
%ashr_tmp_result6181 = lshr i32 %toInt325, 5 ; <i32> [#uses=1]
|
||||
%rhs_masked67 = and i32 %ashr_tmp_result6181, 6 ; <i32> [#uses=1]
|
||||
%ashr_tmp_result68 = lshr i32 59796, %rhs_masked67 ; <i32> [#uses=1]
|
||||
%and_tmp_result70 = and i32 %ashr_tmp_result68, 3 ; <i32> [#uses=1]
|
||||
%addconv82 = add i32 %addconv, %and_tmp_result70 ; <i32> [#uses=3]
|
||||
%rangetmp = add i32 %addconv82, 536870912 ; <i32> [#uses=1]
|
||||
%rangecmp = icmp ult i32 %rangetmp, 1073741824 ; <i1> [#uses=1]
|
||||
br i1 %rangecmp, label %NumberLiteralIntFast, label %NumberLiteralIntSlow
|
||||
|
||||
NumberLiteralIntFast: ; preds = %no_exception7
|
||||
%imm_shift = shl i32 %addconv82, 2 ; <i32> [#uses=1]
|
||||
%imm_or = or i32 %imm_shift, 3 ; <i32> [#uses=1]
|
||||
%imm_val = inttoptr i32 %imm_or to %Value ; <%Value> [#uses=1]
|
||||
ret %Value %imm_val
|
||||
|
||||
NumberLiteralIntSlow: ; preds = %no_exception7
|
||||
%toVal = call %Value @X4( i32 %addconv82 ) ; <%Value> [#uses=1]
|
||||
ret %Value %toVal
|
||||
}
|
|
@ -1,52 +0,0 @@
|
|||
; RUN: llvm-as < %s | llvm-dis > %t1.ll
|
||||
; RUN: llvm-as %t1.ll -o - | llvm-dis > %t2.ll
|
||||
; RUN: diff %t1.ll %t2.ll
|
||||
|
||||
; This test case is used to test opaque type processing, forward references,
|
||||
; and recursive types. Oh my.
|
||||
;
|
||||
|
||||
%SQ1 = type { i32 }
|
||||
%SQ2 = type { %ITy }
|
||||
%ITy = type i32
|
||||
|
||||
|
||||
%CCC = type { \2* }
|
||||
%BBB = type { \2*, \2 * }
|
||||
%AAA = type { \2*, {\2*}, [12x{\2*}], {[1x{\2*}]} }
|
||||
|
||||
; Test numbered types
|
||||
%0 = type %CCC
|
||||
%1 = type %BBB
|
||||
%Composite = type { %0, %1 }
|
||||
|
||||
; Perform a simple forward reference...
|
||||
%ty1 = type { %ty2, i32 }
|
||||
%ty2 = type float
|
||||
|
||||
; Do a recursive type...
|
||||
%list = type { %list * }
|
||||
%listp = type { %listp } *
|
||||
|
||||
; Do two mutually recursive types...
|
||||
%TyA = type { %ty2, %TyB * }
|
||||
%TyB = type { double, %TyA * }
|
||||
|
||||
; A complex recursive type...
|
||||
%Y = type { {%Y*}, %Y* }
|
||||
%Z = type { { %Z * }, [12x%Z] *, {{{ %Z * }}} }
|
||||
|
||||
; More ridiculous test cases...
|
||||
%A = type [ 123x %A*]
|
||||
%M = type %M (%M, %M) *
|
||||
%P = type %P*
|
||||
|
||||
; Recursive ptrs
|
||||
%u = type %v*
|
||||
%v = type %u*
|
||||
|
||||
; Test the parser for unnamed recursive types...
|
||||
%P1 = type \1 *
|
||||
%Y1 = type { { \3 * }, \2 * }
|
||||
%Z1 = type { { \3 * }, [12x\3] *, { { { \5 * } } } }
|
||||
|
|
@ -1,75 +0,0 @@
|
|||
; RUN: opt < %s -simplifycfg -disable-output
|
||||
; END.
|
||||
|
||||
%arraytype.1.Char = type { i32, [0 x i8] }
|
||||
%arraytype.4.Signed = type { i32, [0 x i32] }
|
||||
%functiontype.23 = type %structtype.Task* (%structtype.Task*, %structtype.Packet*, %structtype.FailedRun*)
|
||||
%functiontype.27 = type %structtype.object* ()
|
||||
%functiontype.28 = type i1 (%structtype.object*, %structtype.object_vtable*)
|
||||
%functiontype.39 = type i32 (%structtype.listiter*)
|
||||
%opaquetype.RuntimeTypeInfo = type i8* (i8*)
|
||||
%structtype.AssertionError_vtable = type { %structtype.FailedRun_vtable }
|
||||
%structtype.DeviceTask = type { %structtype.Task }
|
||||
%structtype.FailedRun = type { %structtype.object }
|
||||
%structtype.FailedRun_vtable = type { %structtype.object_vtable }
|
||||
%structtype.Packet = type { %structtype.object, %structtype.list.1*, i32, i32, i32, %structtype.Packet* }
|
||||
%structtype.Task = type { %structtype.TaskState, %structtype.FailedRun*, i32, %structtype.Packet*, %structtype.Task*, i32 }
|
||||
%structtype.TaskState = type { %structtype.object, i1, i1, i1 }
|
||||
%structtype.list.1 = type { %arraytype.4.Signed* }
|
||||
%structtype.listiter = type { %structtype.list.1*, i32 }
|
||||
%structtype.object = type { %structtype.object_vtable* }
|
||||
%structtype.object_vtable = type { %structtype.object_vtable*, %opaquetype.RuntimeTypeInfo*, %arraytype.1.Char*, %functiontype.27* }
|
||||
@structinstance.59 = external global %structtype.AssertionError_vtable ; <%structtype.AssertionError_vtable*> [#uses=0]
|
||||
|
||||
declare fastcc i1 @ll_isinstance__objectPtr_object_vtablePtr()
|
||||
|
||||
declare fastcc void @ll_listnext__listiterPtr()
|
||||
|
||||
define fastcc void @WorkTask.fn() {
|
||||
block0:
|
||||
br label %block1
|
||||
block1: ; preds = %block0
|
||||
%v2542 = call fastcc i1 @ll_isinstance__objectPtr_object_vtablePtr( ) ; <i1> [#uses=1]
|
||||
br i1 %v2542, label %block4, label %block2
|
||||
block2: ; preds = %block1
|
||||
br label %block3
|
||||
block3: ; preds = %block2
|
||||
unwind
|
||||
block4: ; preds = %block1
|
||||
br label %block5
|
||||
block5: ; preds = %block4
|
||||
%v2565 = icmp eq %structtype.Packet* null, null ; <i1> [#uses=1]
|
||||
br i1 %v2565, label %block15, label %block6
|
||||
block6: ; preds = %block5
|
||||
%self_2575 = phi %structtype.DeviceTask* [ null, %block5 ] ; <%structtype.DeviceTask*> [#uses=1]
|
||||
br i1 false, label %block14, label %block7
|
||||
block7: ; preds = %block14, %block6
|
||||
%self_2635 = phi %structtype.DeviceTask* [ %self_2575, %block6 ], [ null, %block14 ] ; <%structtype.DeviceTask*> [#uses=1]
|
||||
%tmp.124 = getelementptr %structtype.Packet* null, i32 0, i32 2 ; <i32*> [#uses=0]
|
||||
br label %block8
|
||||
block8: ; preds = %block10, %block7
|
||||
%self_2672 = phi %structtype.DeviceTask* [ %self_2635, %block7 ], [ null, %block10 ] ; <%structtype.DeviceTask*> [#uses=0]
|
||||
invoke fastcc void @ll_listnext__listiterPtr( )
|
||||
to label %block9 unwind label %block8_exception_handling
|
||||
block8_exception_handling: ; preds = %block8
|
||||
br i1 false, label %block8_exception_found_branchto_block12, label %block8_not_exception_structinstance.10
|
||||
block8_not_exception_structinstance.10: ; preds = %block8_exception_handling
|
||||
unwind
|
||||
block8_exception_found_branchto_block12: ; preds = %block8_exception_handling
|
||||
br label %block12
|
||||
block9: ; preds = %block8
|
||||
br i1 false, label %block11, label %block10
|
||||
block10: ; preds = %block11, %block9
|
||||
br label %block8
|
||||
block11: ; preds = %block9
|
||||
br label %block10
|
||||
block12: ; preds = %block8_exception_found_branchto_block12
|
||||
br label %block13
|
||||
block13: ; preds = %block15, %block12
|
||||
ret void
|
||||
block14: ; preds = %block6
|
||||
br label %block7
|
||||
block15: ; preds = %block5
|
||||
%v2586 = phi %structtype.DeviceTask* [ null, %block5 ] ; <%structtype.DeviceTask*> [#uses=0]
|
||||
br label %block13
|
||||
}
|
|
@ -1,108 +0,0 @@
|
|||
; RUN: opt < %s -simplifycfg -S | grep select
|
||||
%llvm.dbg.anchor.type = type { i32, i32 }
|
||||
%llvm.dbg.compile_unit.type = type { i32, { }*, i32, i8*, i8*, i8*, i1, i1, i8* }
|
||||
|
||||
@llvm.dbg.compile_units = linkonce constant %llvm.dbg.anchor.type { i32 458752, i32 17 }, section "llvm.metadata"
|
||||
|
||||
@.str = internal constant [4 x i8] c"a.c\00", section "llvm.metadata" ; <[4 x i8]*> [#uses=1]
|
||||
@.str1 = internal constant [6 x i8] c"/tmp/\00", section "llvm.metadata" ; <[6 x i8]*> [#uses=1]
|
||||
@.str2 = internal constant [55 x i8] c"4.2.1 (Based on Apple Inc. build 5636) (LLVM build 00)\00", section "llvm.metadata" ; <[55 x i8]*> [#uses=1]
|
||||
@llvm.dbg.compile_unit = internal constant %llvm.dbg.compile_unit.type { i32 458769, { }* bitcast (%llvm.dbg.anchor.type* @llvm.dbg.compile_units to { }*), i32 1, i8* getelementptr ([4 x i8]* @.str, i32 0, i32 0), i8* getelementptr ([6 x i8]* @.str1, i32 0, i32 0), i8* getelementptr ([55 x i8]* @.str2, i32 0, i32 0), i1 true, i1 false, i8* null }, section "llvm.metadata" ; <%llvm.dbg.compile_unit.type*> [#uses=1]
|
||||
|
||||
declare void @llvm.dbg.stoppoint(i32, i32, { }*) nounwind
|
||||
|
||||
external global <{ i8 }> ; <<{ i8 }>*>:0 [#uses=0]
|
||||
@__dso_handle = external global i8* ; <i8**> [#uses=0]
|
||||
@_ZSt3cin = external global { i32 (...)**, i32, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, { i32 (...)**, \3 }*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } } ; <{ i32 (...)**, i32, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, { i32 (...)**, \3 }*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }*> [#uses=1]
|
||||
@_ZSt4cout = external global { i32 (...)**, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, \3*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } } ; <{ i32 (...)**, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, \3*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }*> [#uses=1]
|
||||
external constant [2 x i8] ; <[2 x i8]*>:1 [#uses=1]
|
||||
@llvm.global_ctors = external global [1 x { i32, void ()* }] ; <[1 x { i32, void ()* }]*> [#uses=0]
|
||||
|
||||
define i32 @main(i32, i8**) {
|
||||
; <label>:2
|
||||
%3 = alloca [4096 x i8], align 1 ; <[4096 x i8]*> [#uses=1]
|
||||
%4 = call { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }* @_ZNKSt9basic_iosIcSt11char_traitsIcEE5rdbufEv({ { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, { i32 (...)**, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, \3*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* }* getelementptr ({ i32 (...)**, i32, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, { i32 (...)**, \3 }*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }* @_ZSt3cin, i32 0, i32 2)) ; <{ i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*> [#uses=1]
|
||||
%5 = getelementptr [4096 x i8]* %3, i32 0, i32 0 ; <i8*> [#uses=1]
|
||||
%6 = call { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }* @_ZNSt15basic_streambufIcSt11char_traitsIcEE9pubsetbufEPci({ i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }* %4, i8* %5, i32 4096) ; <{ i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*> [#uses=0]
|
||||
%7 = call { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }* @_ZNKSt9basic_iosIcSt11char_traitsIcEE5rdbufEv({ { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, { i32 (...)**, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, \3*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* }* getelementptr ({ i32 (...)**, i32, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, { i32 (...)**, \3 }*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }* @_ZSt3cin, i32 0, i32 2)) ; <{ i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*> [#uses=1]
|
||||
br label %25
|
||||
|
||||
; <label>:8 ; preds = %25
|
||||
%9 = trunc i32 %26 to i8 ; <i8> [#uses=4]
|
||||
%10 = add i32 %.02, 1 ; <i32> [#uses=3]
|
||||
%11 = icmp eq i8 %9, 10 ; <i1> [#uses=1]
|
||||
br i1 %11, label %12, label %14
|
||||
|
||||
; <label>:12 ; preds = %8
|
||||
%13 = add i32 %.1, 1 ; <i32> [#uses=1]
|
||||
br label %14
|
||||
|
||||
; <label>:14 ; preds = %12, %8
|
||||
%.0 = phi i32 [ %.1, %8 ], [ %13, %12 ] ; <i32> [#uses=3]
|
||||
%15 = icmp eq i8 %9, 32 ; <i1> [#uses=1]
|
||||
br i1 %15, label %20, label %16
|
||||
|
||||
; <label>:16 ; preds = %14
|
||||
%17 = icmp eq i8 %9, 10 ; <i1> [#uses=1]
|
||||
br i1 %17, label %20, label %18
|
||||
|
||||
; <label>:18 ; preds = %16
|
||||
%19 = icmp eq i8 %9, 9 ; <i1> [#uses=1]
|
||||
br i1 %19, label %20, label %21
|
||||
|
||||
; <label>:20 ; preds = %18, %16, %14
|
||||
br label %25
|
||||
|
||||
; <label>:21 ; preds = %18
|
||||
%22 = icmp eq i32 %.03, 0 ; <i1> [#uses=1]
|
||||
br i1 %22, label %23, label %25
|
||||
|
||||
; <label>:23 ; preds = %21
|
||||
call void @llvm.dbg.stoppoint(i32 5, i32 0, { }* bitcast (%llvm.dbg.compile_unit.type* @llvm.dbg.compile_unit to { }*))
|
||||
%24 = add i32 %.01, 1 ; <i32> [#uses=1]
|
||||
br label %25
|
||||
|
||||
; <label>:25 ; preds = %23, %21, %20, %2
|
||||
%.03 = phi i32 [ 0, %2 ], [ %.03, %21 ], [ 1, %23 ], [ 0, %20 ] ; <i32> [#uses=2]
|
||||
%.02 = phi i32 [ 0, %2 ], [ %10, %21 ], [ %10, %23 ], [ %10, %20 ] ; <i32> [#uses=2]
|
||||
%.01 = phi i32 [ 0, %2 ], [ %.01, %21 ], [ %24, %23 ], [ %.01, %20 ] ; <i32> [#uses=4]
|
||||
%.1 = phi i32 [ 0, %2 ], [ %.0, %21 ], [ %.0, %23 ], [ %.0, %20 ] ; <i32> [#uses=3]
|
||||
%26 = call i32 @_ZNSt15basic_streambufIcSt11char_traitsIcEE6sbumpcEv({ i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }* %7) ; <i32> [#uses=2]
|
||||
%27 = icmp eq i32 %26, -1 ; <i1> [#uses=1]
|
||||
br i1 %27, label %28, label %8
|
||||
|
||||
; <label>:28 ; preds = %25
|
||||
%29 = call { i32 (...)**, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, \3*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }* @_ZNSolsEi({ i32 (...)**, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, \3*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }* @_ZSt4cout, i32 %.1) ; <{ i32 (...)**, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, \3*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }*> [#uses=1]
|
||||
%30 = call { i32 (...)**, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, \3*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }* @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc({ i32 (...)**, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, \3*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }* %29, i8* getelementptr ([2 x i8]* @1, i32 0, i32 0)) ; <{ i32 (...)**, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, \3*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }*> [#uses=1]
|
||||
%31 = call { i32 (...)**, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, \3*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }* @_ZNSolsEi({ i32 (...)**, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, \3*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }* %30, i32 %.01) ; <{ i32 (...)**, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, \3*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }*> [#uses=1]
|
||||
%32 = call { i32 (...)**, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, \3*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }* @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc({ i32 (...)**, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, \3*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }* %31, i8* getelementptr ([2 x i8]* @1, i32 0, i32 0)) ; <{ i32 (...)**, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, \3*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }*> [#uses=1]
|
||||
%33 = call { i32 (...)**, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, \3*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }* @_ZNSolsEi({ i32 (...)**, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, \3*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }* %32, i32 %.02) ; <{ i32 (...)**, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, \3*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }*> [#uses=1]
|
||||
%34 = call { i32 (...)**, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, \3*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }* @_ZNSolsEPFRSoS_E({ i32 (...)**, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, \3*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }* %33, { i32 (...)**, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, \3*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }* ({ i32 (...)**, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, \3*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }*)* @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_) ; <{ i32 (...)**, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, \3*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }*> [#uses=0]
|
||||
ret i32 0
|
||||
}
|
||||
|
||||
declare void @""() section "__TEXT,__StaticInit,regular,pure_instructions"
|
||||
|
||||
declare fastcc void @""() section "__TEXT,__StaticInit,regular,pure_instructions"
|
||||
|
||||
declare void @_ZNSt8ios_base4InitC1Ev(<{ i8 }>*)
|
||||
|
||||
declare i32 @__cxa_atexit(void (i8*)*, i8*, i8*) nounwind
|
||||
|
||||
declare void @""(i8*)
|
||||
|
||||
declare void @_ZNSt8ios_base4InitD1Ev(<{ i8 }>*)
|
||||
|
||||
declare { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }* @_ZNKSt9basic_iosIcSt11char_traitsIcEE5rdbufEv({ { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, { i32 (...)**, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, \3*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* }*)
|
||||
|
||||
declare { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }* @_ZNSt15basic_streambufIcSt11char_traitsIcEE9pubsetbufEPci({ i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, i8*, i32)
|
||||
|
||||
declare i32 @_ZNSt15basic_streambufIcSt11char_traitsIcEE6sbumpcEv({ i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*)
|
||||
|
||||
declare { i32 (...)**, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, \3*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }* @_ZNSolsEi({ i32 (...)**, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, \3*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }*, i32)
|
||||
|
||||
declare { i32 (...)**, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, \3*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }* @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc({ i32 (...)**, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, \3*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }*, i8*)
|
||||
|
||||
declare { i32 (...)**, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, \3*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }* @_ZNSolsEPFRSoS_E({ i32 (...)**, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, \3*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }*, { i32 (...)**, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, \3*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }* ({ i32 (...)**, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, \3*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }*)*)
|
||||
|
||||
declare { i32 (...)**, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, \3*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }* @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_({ i32 (...)**, { { i32 (...)**, i32, i32, i32, i32, i32, { \2, void (i32, \6*, i32)*, i32, i32 }*, { i8*, i32 }, [8 x { i8*, i32 }], i32, { i8*, i32 }*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }, \3*, i8, i8, { i32 (...)**, i8*, i8*, i8*, i8*, i8*, i8*, { { i32, { i32 (...)**, i32 }**, i32, { i32 (...)**, i32 }**, i8** }* } }*, { { i32 (...)**, i32 }, i32*, i8, i32*, i32*, i32*, i8, [256 x i8], [256 x i8], i8 }*, { { i32 (...)**, i32 } }*, { { i32 (...)**, i32 } }* } }*)
|
|
@ -1,4 +0,0 @@
|
|||
; RUN: not llvm-as < %s >& /dev/null
|
||||
; PR2711
|
||||
%s = type opaque
|
||||
declare void @h(%s* byval %num)
|
Loading…
Reference in New Issue