Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 1 | ; RUN: llvm-as < %s | llc |
Tanya Lattner | 2393a24 | 2004-11-06 23:08:26 +0000 | [diff] [blame] | 2 | |
John Criswell | cf21d4f | 2003-10-03 18:24:47 +0000 | [diff] [blame] | 3 | ;; Register allocation is doing a very poor job on this routine from yyparse |
| 4 | ;; in Burg: |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 5 | ;; -- at least two long-lived values are being allocated to %o? registers |
| 6 | ;; -- even worse, those registers are being saved and restored repeatedly |
| 7 | ;; at function calls, even though there are no intervening uses. |
| 8 | ;; -- outgoing args of some function calls have to be swapped, causing |
| 9 | ;; another write/read from stack to do the exchange (use -dregalloc=y). |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 10 | ;; |
| 11 | %Arity = type %struct.arity* |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 12 | %Binding = type %struct.binding* |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 13 | %DeltaCost = type [4 x i16] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 14 | %Dimension = type %struct.dimension* |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 15 | %Index_Map = type { i32, %Item_Set* } |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 16 | %IntList = type %struct.intlist* |
| 17 | %Item = type { %DeltaCost, %Rule } |
| 18 | %ItemArray = type %Item* |
| 19 | %Item_Set = type %struct.item_set* |
| 20 | %List = type %struct.list* |
| 21 | %Mapping = type %struct.mapping* |
| 22 | %NonTerminal = type %struct.nonterminal* |
| 23 | %Operator = type %struct.operator* |
| 24 | %Pattern = type %struct.pattern* |
| 25 | %PatternAST = type %struct.patternAST* |
| 26 | %Plank = type %struct.plank* |
| 27 | %PlankMap = type %struct.plankMap* |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 28 | %ReadFn = type i32 ()* |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 29 | %Rule = type %struct.rule* |
| 30 | %RuleAST = type %struct.ruleAST* |
| 31 | %StateMap = type %struct.stateMap* |
| 32 | %StrTableElement = type %struct.strTableElement* |
| 33 | %Symbol = type %struct.symbol* |
| 34 | %Table = type %struct.table* |
| 35 | %YYSTYPE = type { %IntList } |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 36 | %struct.arity = type { i32, %List } |
| 37 | %struct.binding = type { i8*, i32 } |
| 38 | %struct.dimension = type { i16*, %Index_Map, %Mapping, i32, %PlankMap } |
| 39 | %struct.index_map = type { i32, %Item_Set* } |
| 40 | %struct.intlist = type { i32, %IntList } |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 41 | %struct.item = type { %DeltaCost, %Rule } |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 42 | %struct.item_set = type { i32, i32, %Operator, [2 x %Item_Set], %Item_Set, i16*, %ItemArray, %ItemArray } |
| 43 | %struct.list = type { i8*, %List } |
| 44 | %struct.mapping = type { %List*, i32, i32, i32, %Item_Set* } |
| 45 | %struct.nonterminal = type { i8*, i32, i32, i32, %PlankMap, %Rule } |
| 46 | %struct.operator = type { i8*, i32, i32, i32, i32, i32, %Table } |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 47 | %struct.pattern = type { %NonTerminal, %Operator, [2 x %NonTerminal] } |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 48 | %struct.patternAST = type { %Symbol, i8*, %List } |
| 49 | %struct.plank = type { i8*, %List, i32 } |
| 50 | %struct.plankMap = type { %List, i32, %StateMap } |
| 51 | %struct.rule = type { %DeltaCost, i32, i32, i32, %NonTerminal, %Pattern, i32 } |
| 52 | %struct.ruleAST = type { i8*, %PatternAST, i32, %IntList, %Rule, %StrTableElement, %StrTableElement } |
| 53 | %struct.stateMap = type { i8*, %Plank, i32, i16* } |
| 54 | %struct.strTableElement = type { i8*, %IntList, i8* } |
| 55 | %struct.symbol = type { i8*, i32, { %Operator } } |
| 56 | %struct.table = type { %Operator, %List, i16*, [2 x %Dimension], %Item_Set* } |
| 57 | @yylval = external global %YYSTYPE ; <%YYSTYPE*> [#uses=1] |
| 58 | @yylhs = external global [25 x i16] ; <[25 x i16]*> [#uses=1] |
| 59 | @yylen = external global [25 x i16] ; <[25 x i16]*> [#uses=1] |
| 60 | @yydefred = external global [43 x i16] ; <[43 x i16]*> [#uses=1] |
| 61 | @yydgoto = external global [12 x i16] ; <[12 x i16]*> [#uses=1] |
| 62 | @yysindex = external global [43 x i16] ; <[43 x i16]*> [#uses=2] |
| 63 | @yyrindex = external global [43 x i16] ; <[43 x i16]*> [#uses=1] |
| 64 | @yygindex = external global [12 x i16] ; <[12 x i16]*> [#uses=1] |
| 65 | @yytable = external global [263 x i16] ; <[263 x i16]*> [#uses=4] |
| 66 | @yycheck = external global [263 x i16] ; <[263 x i16]*> [#uses=4] |
| 67 | @yynerrs = external global i32 ; <i32*> [#uses=3] |
| 68 | @yyerrflag = external global i32 ; <i32*> [#uses=6] |
| 69 | @yychar = external global i32 ; <i32*> [#uses=15] |
| 70 | @yyssp = external global i16* ; <i16**> [#uses=15] |
| 71 | @yyvsp = external global %YYSTYPE* ; <%YYSTYPE**> [#uses=30] |
| 72 | @yyval = external global %YYSTYPE ; <%YYSTYPE*> [#uses=1] |
| 73 | @yyss = external global i16* ; <i16**> [#uses=3] |
| 74 | @yysslim = external global i16* ; <i16**> [#uses=3] |
| 75 | @yyvs = external global %YYSTYPE* ; <%YYSTYPE**> [#uses=1] |
| 76 | @.LC01 = external global [13 x i8] ; <[13 x i8]*> [#uses=1] |
| 77 | @.LC1 = external global [20 x i8] ; <[20 x i8]*> [#uses=1] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 78 | |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 79 | define i32 @yyparse() { |
| 80 | bb0: |
| 81 | store i32 0, i32* @yynerrs |
| 82 | store i32 0, i32* @yyerrflag |
| 83 | store i32 -1, i32* @yychar |
| 84 | %reg113 = load i16** @yyss ; <i16*> [#uses=1] |
| 85 | %cond581 = icmp ne i16* %reg113, null ; <i1> [#uses=1] |
| 86 | br i1 %cond581, label %bb3, label %bb2 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 87 | |
| 88 | bb2: ; preds = %bb0 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 89 | %reg584 = call i32 @yygrowstack( ) ; <i32> [#uses=1] |
| 90 | %cond584 = icmp ne i32 %reg584, 0 ; <i1> [#uses=1] |
| 91 | br i1 %cond584, label %bb113, label %bb3 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 92 | |
| 93 | bb3: ; preds = %bb2, %bb0 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 94 | %reg115 = load i16** @yyss ; <i16*> [#uses=1] |
| 95 | store i16* %reg115, i16** @yyssp |
| 96 | %reg116 = load %YYSTYPE** @yyvs ; <%YYSTYPE*> [#uses=1] |
| 97 | store %YYSTYPE* %reg116, %YYSTYPE** @yyvsp |
| 98 | %reg117 = load i16** @yyssp ; <i16*> [#uses=1] |
| 99 | store i16 0, i16* %reg117 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 100 | br label %bb4 |
| 101 | |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 102 | bb4: ; preds = %bb112, %bb102, %bb35, %bb31, %bb15, %bb14, %bb3 |
| 103 | %reg458 = phi i32 [ %reg476, %bb112 ], [ 1, %bb102 ], [ %reg458, %bb35 ], [ %cast768, %bb31 ], [ %cast658, %bb15 ], [ %cast658, %bb14 ], [ 0, %bb3 ] ; <i32> [#uses=2] |
| 104 | %reg458-idxcast = zext i32 %reg458 to i64 ; <i64> [#uses=3] |
| 105 | %reg594 = getelementptr [43 x i16]* @yydefred, i64 0, i64 %reg458-idxcast ; <i16*> [#uses=1] |
| 106 | %reg125 = load i16* %reg594 ; <i16> [#uses=1] |
| 107 | %cast599 = sext i16 %reg125 to i32 ; <i32> [#uses=2] |
| 108 | %cond600 = icmp ne i32 %cast599, 0 ; <i1> [#uses=1] |
| 109 | br i1 %cond600, label %bb36, label %bb5 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 110 | |
| 111 | bb5: ; preds = %bb4 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 112 | %reg127 = load i32* @yychar ; <i32> [#uses=1] |
| 113 | %cond603 = icmp sge i32 %reg127, 0 ; <i1> [#uses=1] |
| 114 | br i1 %cond603, label %bb8, label %bb6 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 115 | |
| 116 | bb6: ; preds = %bb5 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 117 | %reg607 = call i32 @yylex( ) ; <i32> [#uses=1] |
| 118 | store i32 %reg607, i32* @yychar |
| 119 | %reg129 = load i32* @yychar ; <i32> [#uses=1] |
| 120 | %cond609 = icmp sge i32 %reg129, 0 ; <i1> [#uses=1] |
| 121 | br i1 %cond609, label %bb8, label %bb7 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 122 | |
| 123 | bb7: ; preds = %bb6 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 124 | store i32 0, i32* @yychar |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 125 | br label %bb8 |
| 126 | |
| 127 | bb8: ; preds = %bb7, %bb6, %bb5 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 128 | %reg615 = getelementptr [43 x i16]* @yysindex, i64 0, i64 %reg458-idxcast ; <i16*> [#uses=1] |
| 129 | %reg137 = load i16* %reg615 ; <i16> [#uses=1] |
| 130 | %cast620 = sext i16 %reg137 to i32 ; <i32> [#uses=2] |
| 131 | %cond621 = icmp eq i32 %cast620, 0 ; <i1> [#uses=1] |
| 132 | br i1 %cond621, label %bb16, label %bb9 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 133 | |
| 134 | bb9: ; preds = %bb8 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 135 | %reg139 = load i32* @yychar ; <i32> [#uses=2] |
| 136 | %reg460 = add i32 %cast620, %reg139 ; <i32> [#uses=3] |
| 137 | %cond624 = icmp slt i32 %reg460, 0 ; <i1> [#uses=1] |
| 138 | br i1 %cond624, label %bb16, label %bb10 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 139 | |
| 140 | bb10: ; preds = %bb9 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 141 | %cond627 = icmp sgt i32 %reg460, 262 ; <i1> [#uses=1] |
| 142 | br i1 %cond627, label %bb16, label %bb11 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 143 | |
| 144 | bb11: ; preds = %bb10 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 145 | %reg460-idxcast = sext i32 %reg460 to i64 ; <i64> [#uses=2] |
| 146 | %reg632 = getelementptr [263 x i16]* @yycheck, i64 0, i64 %reg460-idxcast ; <i16*> [#uses=1] |
| 147 | %reg148 = load i16* %reg632 ; <i16> [#uses=1] |
| 148 | %cast637 = sext i16 %reg148 to i32 ; <i32> [#uses=1] |
| 149 | %cond639 = icmp ne i32 %cast637, %reg139 ; <i1> [#uses=1] |
| 150 | br i1 %cond639, label %bb16, label %bb12 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 151 | |
| 152 | bb12: ; preds = %bb11 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 153 | %reg150 = load i16** @yyssp ; <i16*> [#uses=1] |
| 154 | %cast640 = bitcast i16* %reg150 to i8* ; <i8*> [#uses=1] |
| 155 | %reg151 = load i16** @yysslim ; <i16*> [#uses=1] |
| 156 | %cast641 = bitcast i16* %reg151 to i8* ; <i8*> [#uses=1] |
| 157 | %cond642 = icmp ult i8* %cast640, %cast641 ; <i1> [#uses=1] |
| 158 | br i1 %cond642, label %bb14, label %bb13 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 159 | |
| 160 | bb13: ; preds = %bb12 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 161 | %reg644 = call i32 @yygrowstack( ) ; <i32> [#uses=1] |
| 162 | %cond644 = icmp ne i32 %reg644, 0 ; <i1> [#uses=1] |
| 163 | br i1 %cond644, label %bb113, label %bb14 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 164 | |
| 165 | bb14: ; preds = %bb13, %bb12 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 166 | %reg153 = load i16** @yyssp ; <i16*> [#uses=1] |
| 167 | %reg647 = getelementptr i16* %reg153, i64 1 ; <i16*> [#uses=2] |
| 168 | store i16* %reg647, i16** @yyssp |
| 169 | %reg653 = getelementptr [263 x i16]* @yytable, i64 0, i64 %reg460-idxcast ; <i16*> [#uses=1] |
| 170 | %reg162 = load i16* %reg653 ; <i16> [#uses=2] |
| 171 | %cast658 = sext i16 %reg162 to i32 ; <i32> [#uses=2] |
| 172 | store i16 %reg162, i16* %reg647 |
| 173 | %reg164 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=2] |
| 174 | %reg661 = getelementptr %YYSTYPE* %reg164, i64 1 ; <%YYSTYPE*> [#uses=1] |
| 175 | store %YYSTYPE* %reg661, %YYSTYPE** @yyvsp |
| 176 | %reg167 = load %IntList* getelementptr (%YYSTYPE* @yylval, i64 0, i32 0) ; <%IntList> [#uses=1] |
| 177 | %reg661.idx1 = getelementptr %YYSTYPE* %reg164, i64 1, i32 0 ; <%IntList*> [#uses=1] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 178 | store %IntList %reg167, %IntList* %reg661.idx1 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 179 | store i32 -1, i32* @yychar |
| 180 | %reg169 = load i32* @yyerrflag ; <i32> [#uses=2] |
| 181 | %cond669 = icmp sle i32 %reg169, 0 ; <i1> [#uses=1] |
| 182 | br i1 %cond669, label %bb4, label %bb15 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 183 | |
| 184 | bb15: ; preds = %bb14 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 185 | %reg171 = add i32 %reg169, -1 ; <i32> [#uses=1] |
| 186 | store i32 %reg171, i32* @yyerrflag |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 187 | br label %bb4 |
| 188 | |
| 189 | bb16: ; preds = %bb11, %bb10, %bb9, %bb8 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 190 | %reg677 = getelementptr [43 x i16]* @yyrindex, i64 0, i64 %reg458-idxcast ; <i16*> [#uses=1] |
| 191 | %reg178 = load i16* %reg677 ; <i16> [#uses=1] |
| 192 | %cast682 = sext i16 %reg178 to i32 ; <i32> [#uses=2] |
| 193 | %cond683 = icmp eq i32 %cast682, 0 ; <i1> [#uses=1] |
| 194 | br i1 %cond683, label %bb21, label %bb17 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 195 | |
| 196 | bb17: ; preds = %bb16 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 197 | %reg180 = load i32* @yychar ; <i32> [#uses=2] |
| 198 | %reg463 = add i32 %cast682, %reg180 ; <i32> [#uses=3] |
| 199 | %cond686 = icmp slt i32 %reg463, 0 ; <i1> [#uses=1] |
| 200 | br i1 %cond686, label %bb21, label %bb18 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 201 | |
| 202 | bb18: ; preds = %bb17 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 203 | %cond689 = icmp sgt i32 %reg463, 262 ; <i1> [#uses=1] |
| 204 | br i1 %cond689, label %bb21, label %bb19 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 205 | |
| 206 | bb19: ; preds = %bb18 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 207 | %reg463-idxcast = sext i32 %reg463 to i64 ; <i64> [#uses=2] |
| 208 | %reg694 = getelementptr [263 x i16]* @yycheck, i64 0, i64 %reg463-idxcast ; <i16*> [#uses=1] |
| 209 | %reg189 = load i16* %reg694 ; <i16> [#uses=1] |
| 210 | %cast699 = sext i16 %reg189 to i32 ; <i32> [#uses=1] |
| 211 | %cond701 = icmp ne i32 %cast699, %reg180 ; <i1> [#uses=1] |
| 212 | br i1 %cond701, label %bb21, label %bb20 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 213 | |
| 214 | bb20: ; preds = %bb19 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 215 | %reg704 = getelementptr [263 x i16]* @yytable, i64 0, i64 %reg463-idxcast ; <i16*> [#uses=1] |
| 216 | %reg197 = load i16* %reg704 ; <i16> [#uses=1] |
| 217 | %cast709 = sext i16 %reg197 to i32 ; <i32> [#uses=1] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 218 | br label %bb36 |
| 219 | |
| 220 | bb21: ; preds = %bb19, %bb18, %bb17, %bb16 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 221 | %reg198 = load i32* @yyerrflag ; <i32> [#uses=1] |
| 222 | %cond711 = icmp ne i32 %reg198, 0 ; <i1> [#uses=1] |
| 223 | br i1 %cond711, label %bb23, label %bb22 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 224 | |
| 225 | bb22: ; preds = %bb21 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 226 | call void @yyerror( i8* getelementptr ([13 x i8]* @.LC01, i64 0, i64 0) ) |
| 227 | %reg200 = load i32* @yynerrs ; <i32> [#uses=1] |
| 228 | %reg201 = add i32 %reg200, 1 ; <i32> [#uses=1] |
| 229 | store i32 %reg201, i32* @yynerrs |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 230 | br label %bb23 |
| 231 | |
| 232 | bb23: ; preds = %bb22, %bb21 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 233 | %reg202 = load i32* @yyerrflag ; <i32> [#uses=1] |
| 234 | %cond719 = icmp sgt i32 %reg202, 2 ; <i1> [#uses=1] |
| 235 | br i1 %cond719, label %bb34, label %bb24 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 236 | |
| 237 | bb24: ; preds = %bb23 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 238 | store i32 3, i32* @yyerrflag |
| 239 | %reg241 = load i16** @yyss ; <i16*> [#uses=1] |
| 240 | %cast778 = bitcast i16* %reg241 to i8* ; <i8*> [#uses=1] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 241 | br label %bb25 |
| 242 | |
| 243 | bb25: ; preds = %bb33, %bb24 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 244 | %reg204 = load i16** @yyssp ; <i16*> [#uses=4] |
| 245 | %reg206 = load i16* %reg204 ; <i16> [#uses=1] |
| 246 | %reg206-idxcast = sext i16 %reg206 to i64 ; <i64> [#uses=1] |
| 247 | %reg727 = getelementptr [43 x i16]* @yysindex, i64 0, i64 %reg206-idxcast ; <i16*> [#uses=1] |
| 248 | %reg212 = load i16* %reg727 ; <i16> [#uses=2] |
| 249 | %cast732 = sext i16 %reg212 to i32 ; <i32> [#uses=2] |
| 250 | %cond733 = icmp eq i32 %cast732, 0 ; <i1> [#uses=1] |
| 251 | br i1 %cond733, label %bb32, label %bb26 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 252 | |
| 253 | bb26: ; preds = %bb25 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 254 | %reg466 = add i32 %cast732, 256 ; <i32> [#uses=2] |
| 255 | %cond736 = icmp slt i32 %reg466, 0 ; <i1> [#uses=1] |
| 256 | br i1 %cond736, label %bb32, label %bb27 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 257 | |
| 258 | bb27: ; preds = %bb26 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 259 | %cond739 = icmp sgt i32 %reg466, 262 ; <i1> [#uses=1] |
| 260 | br i1 %cond739, label %bb32, label %bb28 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 261 | |
| 262 | bb28: ; preds = %bb27 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 263 | %reg212-idxcast = sext i16 %reg212 to i64 ; <i64> [#uses=1] |
| 264 | %reg212-idxcast-offset = add i64 %reg212-idxcast, 256 ; <i64> [#uses=2] |
| 265 | %reg744 = getelementptr [263 x i16]* @yycheck, i64 0, i64 %reg212-idxcast-offset ; <i16*> [#uses=1] |
| 266 | %reg221 = load i16* %reg744 ; <i16> [#uses=1] |
| 267 | %cond748 = icmp ne i16 %reg221, 256 ; <i1> [#uses=1] |
| 268 | br i1 %cond748, label %bb32, label %bb29 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 269 | |
| 270 | bb29: ; preds = %bb28 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 271 | %cast750 = bitcast i16* %reg204 to i8* ; <i8*> [#uses=1] |
| 272 | %reg223 = load i16** @yysslim ; <i16*> [#uses=1] |
| 273 | %cast751 = bitcast i16* %reg223 to i8* ; <i8*> [#uses=1] |
| 274 | %cond752 = icmp ult i8* %cast750, %cast751 ; <i1> [#uses=1] |
| 275 | br i1 %cond752, label %bb31, label %bb30 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 276 | |
| 277 | bb30: ; preds = %bb29 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 278 | %reg754 = call i32 @yygrowstack( ) ; <i32> [#uses=1] |
| 279 | %cond754 = icmp ne i32 %reg754, 0 ; <i1> [#uses=1] |
| 280 | br i1 %cond754, label %bb113, label %bb31 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 281 | |
| 282 | bb31: ; preds = %bb30, %bb29 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 283 | %reg225 = load i16** @yyssp ; <i16*> [#uses=1] |
| 284 | %reg757 = getelementptr i16* %reg225, i64 1 ; <i16*> [#uses=2] |
| 285 | store i16* %reg757, i16** @yyssp |
| 286 | %reg763 = getelementptr [263 x i16]* @yytable, i64 0, i64 %reg212-idxcast-offset ; <i16*> [#uses=1] |
| 287 | %reg234 = load i16* %reg763 ; <i16> [#uses=2] |
| 288 | %cast768 = sext i16 %reg234 to i32 ; <i32> [#uses=1] |
| 289 | store i16 %reg234, i16* %reg757 |
| 290 | %reg236 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=2] |
| 291 | %reg771 = getelementptr %YYSTYPE* %reg236, i64 1 ; <%YYSTYPE*> [#uses=1] |
| 292 | store %YYSTYPE* %reg771, %YYSTYPE** @yyvsp |
| 293 | %reg239 = load %IntList* getelementptr (%YYSTYPE* @yylval, i64 0, i32 0) ; <%IntList> [#uses=1] |
| 294 | %reg771.idx1 = getelementptr %YYSTYPE* %reg236, i64 1, i32 0 ; <%IntList*> [#uses=1] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 295 | store %IntList %reg239, %IntList* %reg771.idx1 |
| 296 | br label %bb4 |
| 297 | |
| 298 | bb32: ; preds = %bb28, %bb27, %bb26, %bb25 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 299 | %cast777 = bitcast i16* %reg204 to i8* ; <i8*> [#uses=1] |
| 300 | %cond779 = icmp ule i8* %cast777, %cast778 ; <i1> [#uses=1] |
| 301 | br i1 %cond779, label %UnifiedExitNode, label %bb33 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 302 | |
| 303 | bb33: ; preds = %bb32 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 304 | %reg781 = getelementptr i16* %reg204, i64 -1 ; <i16*> [#uses=1] |
| 305 | store i16* %reg781, i16** @yyssp |
| 306 | %reg244 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=1] |
| 307 | %reg786 = getelementptr %YYSTYPE* %reg244, i64 -1 ; <%YYSTYPE*> [#uses=1] |
| 308 | store %YYSTYPE* %reg786, %YYSTYPE** @yyvsp |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 309 | br label %bb25 |
| 310 | |
| 311 | bb34: ; preds = %bb23 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 312 | %reg246 = load i32* @yychar ; <i32> [#uses=1] |
| 313 | %cond791 = icmp eq i32 %reg246, 0 ; <i1> [#uses=1] |
| 314 | br i1 %cond791, label %UnifiedExitNode, label %bb35 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 315 | |
| 316 | bb35: ; preds = %bb34 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 317 | store i32 -1, i32* @yychar |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 318 | br label %bb4 |
| 319 | |
| 320 | bb36: ; preds = %bb20, %bb4 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 321 | %reg468 = phi i32 [ %cast709, %bb20 ], [ %cast599, %bb4 ] ; <i32> [#uses=31] |
| 322 | %reg468-idxcast = sext i32 %reg468 to i64 ; <i64> [#uses=2] |
| 323 | %reg796 = getelementptr [25 x i16]* @yylen, i64 0, i64 %reg468-idxcast ; <i16*> [#uses=1] |
| 324 | %reg254 = load i16* %reg796 ; <i16> [#uses=2] |
| 325 | %reg259 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=1] |
| 326 | %reg254-idxcast = sext i16 %reg254 to i64 ; <i64> [#uses=1] |
| 327 | %reg254-idxcast-scale = mul i64 %reg254-idxcast, -1 ; <i64> [#uses=1] |
| 328 | %reg254-idxcast-scale-offset = add i64 %reg254-idxcast-scale, 1 ; <i64> [#uses=1] |
| 329 | %reg261.idx1 = getelementptr %YYSTYPE* %reg259, i64 %reg254-idxcast-scale-offset, i32 0 ; <%IntList*> [#uses=1] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 330 | %reg261 = load %IntList* %reg261.idx1 ; <%IntList> [#uses=1] |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 331 | store %IntList %reg261, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0) |
| 332 | %cond812 = icmp eq i32 %reg468, 13 ; <i1> [#uses=1] |
| 333 | br i1 %cond812, label %bb85, label %bb37 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 334 | |
| 335 | bb37: ; preds = %bb36 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 336 | %cond814 = icmp sgt i32 %reg468, 13 ; <i1> [#uses=1] |
| 337 | br i1 %cond814, label %bb56, label %bb38 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 338 | |
| 339 | bb38: ; preds = %bb37 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 340 | %cond817 = icmp eq i32 %reg468, 7 ; <i1> [#uses=1] |
| 341 | br i1 %cond817, label %bb79, label %bb39 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 342 | |
| 343 | bb39: ; preds = %bb38 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 344 | %cond819 = icmp sgt i32 %reg468, 7 ; <i1> [#uses=1] |
| 345 | br i1 %cond819, label %bb48, label %bb40 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 346 | |
| 347 | bb40: ; preds = %bb39 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 348 | %cond822 = icmp eq i32 %reg468, 4 ; <i1> [#uses=1] |
| 349 | br i1 %cond822, label %bb76, label %bb41 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 350 | |
| 351 | bb41: ; preds = %bb40 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 352 | %cond824 = icmp sgt i32 %reg468, 4 ; <i1> [#uses=1] |
| 353 | br i1 %cond824, label %bb45, label %bb42 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 354 | |
| 355 | bb42: ; preds = %bb41 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 356 | %cond827 = icmp eq i32 %reg468, 2 ; <i1> [#uses=1] |
| 357 | br i1 %cond827, label %bb74, label %bb43 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 358 | |
| 359 | bb43: ; preds = %bb42 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 360 | %cond829 = icmp eq i32 %reg468, 3 ; <i1> [#uses=1] |
| 361 | br i1 %cond829, label %bb75, label %bb97 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 362 | |
| 363 | bb45: ; preds = %bb41 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 364 | %cond831 = icmp eq i32 %reg468, 5 ; <i1> [#uses=1] |
| 365 | br i1 %cond831, label %bb77, label %bb46 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 366 | |
| 367 | bb46: ; preds = %bb45 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 368 | %cond833 = icmp eq i32 %reg468, 6 ; <i1> [#uses=1] |
| 369 | br i1 %cond833, label %bb78, label %bb97 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 370 | |
| 371 | bb48: ; preds = %bb39 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 372 | %cond835 = icmp eq i32 %reg468, 10 ; <i1> [#uses=1] |
| 373 | br i1 %cond835, label %bb82, label %bb49 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 374 | |
| 375 | bb49: ; preds = %bb48 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 376 | %cond837 = icmp sgt i32 %reg468, 10 ; <i1> [#uses=1] |
| 377 | br i1 %cond837, label %bb53, label %bb50 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 378 | |
| 379 | bb50: ; preds = %bb49 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 380 | %cond840 = icmp eq i32 %reg468, 8 ; <i1> [#uses=1] |
| 381 | br i1 %cond840, label %bb80, label %bb51 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 382 | |
| 383 | bb51: ; preds = %bb50 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 384 | %cond842 = icmp eq i32 %reg468, 9 ; <i1> [#uses=1] |
| 385 | br i1 %cond842, label %bb81, label %bb97 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 386 | |
| 387 | bb53: ; preds = %bb49 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 388 | %cond844 = icmp eq i32 %reg468, 11 ; <i1> [#uses=1] |
| 389 | br i1 %cond844, label %bb83, label %bb54 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 390 | |
| 391 | bb54: ; preds = %bb53 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 392 | %cond846 = icmp eq i32 %reg468, 12 ; <i1> [#uses=1] |
| 393 | br i1 %cond846, label %bb84, label %bb97 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 394 | |
| 395 | bb56: ; preds = %bb37 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 396 | %cond848 = icmp eq i32 %reg468, 19 ; <i1> [#uses=1] |
| 397 | br i1 %cond848, label %bb91, label %bb57 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 398 | |
| 399 | bb57: ; preds = %bb56 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 400 | %cond850 = icmp sgt i32 %reg468, 19 ; <i1> [#uses=1] |
| 401 | br i1 %cond850, label %bb66, label %bb58 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 402 | |
| 403 | bb58: ; preds = %bb57 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 404 | %cond853 = icmp eq i32 %reg468, 16 ; <i1> [#uses=1] |
| 405 | br i1 %cond853, label %bb88, label %bb59 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 406 | |
| 407 | bb59: ; preds = %bb58 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 408 | %cond855 = icmp sgt i32 %reg468, 16 ; <i1> [#uses=1] |
| 409 | br i1 %cond855, label %bb63, label %bb60 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 410 | |
| 411 | bb60: ; preds = %bb59 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 412 | %cond858 = icmp eq i32 %reg468, 14 ; <i1> [#uses=1] |
| 413 | br i1 %cond858, label %bb86, label %bb61 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 414 | |
| 415 | bb61: ; preds = %bb60 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 416 | %cond860 = icmp eq i32 %reg468, 15 ; <i1> [#uses=1] |
| 417 | br i1 %cond860, label %bb87, label %bb97 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 418 | |
| 419 | bb63: ; preds = %bb59 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 420 | %cond862 = icmp eq i32 %reg468, 17 ; <i1> [#uses=1] |
| 421 | br i1 %cond862, label %bb89, label %bb64 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 422 | |
| 423 | bb64: ; preds = %bb63 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 424 | %cond864 = icmp eq i32 %reg468, 18 ; <i1> [#uses=1] |
| 425 | br i1 %cond864, label %bb90, label %bb97 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 426 | |
| 427 | bb66: ; preds = %bb57 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 428 | %cond866 = icmp eq i32 %reg468, 22 ; <i1> [#uses=1] |
| 429 | br i1 %cond866, label %bb94, label %bb67 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 430 | |
| 431 | bb67: ; preds = %bb66 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 432 | %cond868 = icmp sgt i32 %reg468, 22 ; <i1> [#uses=1] |
| 433 | br i1 %cond868, label %bb71, label %bb68 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 434 | |
| 435 | bb68: ; preds = %bb67 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 436 | %cond871 = icmp eq i32 %reg468, 20 ; <i1> [#uses=1] |
| 437 | br i1 %cond871, label %bb92, label %bb69 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 438 | |
| 439 | bb69: ; preds = %bb68 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 440 | %cond873 = icmp eq i32 %reg468, 21 ; <i1> [#uses=1] |
| 441 | br i1 %cond873, label %bb93, label %bb97 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 442 | |
| 443 | bb71: ; preds = %bb67 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 444 | %cond875 = icmp eq i32 %reg468, 23 ; <i1> [#uses=1] |
| 445 | br i1 %cond875, label %bb95, label %bb72 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 446 | |
| 447 | bb72: ; preds = %bb71 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 448 | %cond877 = icmp eq i32 %reg468, 24 ; <i1> [#uses=1] |
| 449 | br i1 %cond877, label %bb96, label %bb97 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 450 | |
| 451 | bb74: ; preds = %bb42 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 452 | call void @yyfinished( ) |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 453 | br label %bb97 |
| 454 | |
| 455 | bb75: ; preds = %bb43 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 456 | %reg262 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=2] |
| 457 | %reg264.idx1 = getelementptr %YYSTYPE* %reg262, i64 -2, i32 0 ; <%IntList*> [#uses=1] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 458 | %reg264 = load %IntList* %reg264.idx1 ; <%IntList> [#uses=1] |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 459 | %reg265.idx = getelementptr %YYSTYPE* %reg262, i64 0, i32 0 ; <%IntList*> [#uses=1] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 460 | %reg265 = load %IntList* %reg265.idx ; <%IntList> [#uses=1] |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 461 | %cast889 = bitcast %IntList %reg265 to %List ; <%List> [#uses=1] |
| 462 | %cast890 = bitcast %IntList %reg264 to %List ; <%List> [#uses=1] |
| 463 | call void @doSpec( %List %cast890, %List %cast889 ) |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 464 | br label %bb97 |
| 465 | |
| 466 | bb76: ; preds = %bb40 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 467 | store %IntList null, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0) |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 468 | br label %bb97 |
| 469 | |
| 470 | bb77: ; preds = %bb45 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 471 | %reg269 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=2] |
| 472 | %cast894 = getelementptr %YYSTYPE* %reg269, i64 0, i32 0 ; <%IntList*> [#uses=1] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 473 | %reg271 = load %IntList* %cast894 ; <%IntList> [#uses=1] |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 474 | %reg271.upgrd.1 = bitcast %IntList %reg271 to i8* ; <i8*> [#uses=1] |
| 475 | %reg272.idx1 = getelementptr %YYSTYPE* %reg269, i64 -1, i32 0 ; <%IntList*> [#uses=1] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 476 | %reg272 = load %IntList* %reg272.idx1 ; <%IntList> [#uses=1] |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 477 | %cast901 = bitcast %IntList %reg272 to %List ; <%List> [#uses=1] |
| 478 | %reg901 = call %List @newList( i8* %reg271.upgrd.1, %List %cast901 ) ; <%List> [#uses=1] |
| 479 | bitcast %List %reg901 to %IntList ; <%IntList>:0 [#uses=1] |
| 480 | store %IntList %0, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0) |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 481 | br label %bb97 |
| 482 | |
| 483 | bb78: ; preds = %bb46 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 484 | %reg275 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=1] |
| 485 | %reg277.idx = getelementptr %YYSTYPE* %reg275, i64 0, i32 0 ; <%IntList*> [#uses=1] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 486 | %reg277 = load %IntList* %reg277.idx ; <%IntList> [#uses=1] |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 487 | %cast907 = bitcast %IntList %reg277 to %List ; <%List> [#uses=1] |
| 488 | %reg907 = call %Arity @newArity( i32 -1, %List %cast907 ) ; <%Arity> [#uses=1] |
| 489 | bitcast %Arity %reg907 to %IntList ; <%IntList>:1 [#uses=1] |
| 490 | store %IntList %1, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0) |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 491 | br label %bb97 |
| 492 | |
| 493 | bb79: ; preds = %bb38 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 494 | store %IntList null, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0) |
| 495 | %reg281 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=1] |
| 496 | %cast912 = getelementptr %YYSTYPE* %reg281, i64 0, i32 0 ; <%IntList*> [#uses=1] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 497 | %reg282 = load %IntList* %cast912 ; <%IntList> [#uses=1] |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 498 | %reg282.upgrd.2 = bitcast %IntList %reg282 to %List ; <%List> [#uses=1] |
| 499 | call void @doGram( %List %reg282.upgrd.2 ) |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 500 | br label %bb97 |
| 501 | |
| 502 | bb80: ; preds = %bb50 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 503 | store %IntList null, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0) |
| 504 | %reg285 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=1] |
| 505 | %cast917 = getelementptr %YYSTYPE* %reg285, i64 0, i32 0 ; <%IntList*> [#uses=1] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 506 | %reg286 = load %IntList* %cast917 ; <%IntList> [#uses=1] |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 507 | %reg286.upgrd.3 = bitcast %IntList %reg286 to i8* ; <i8*> [#uses=1] |
| 508 | call void @doStart( i8* %reg286.upgrd.3 ) |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 509 | br label %bb97 |
| 510 | |
| 511 | bb81: ; preds = %bb51 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 512 | store %IntList null, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0) |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 513 | br label %bb97 |
| 514 | |
| 515 | bb82: ; preds = %bb48 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 516 | %reg290 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=2] |
| 517 | %cast923 = getelementptr %YYSTYPE* %reg290, i64 0, i32 0 ; <%IntList*> [#uses=1] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 518 | %reg292 = load %IntList* %cast923 ; <%IntList> [#uses=1] |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 519 | %reg292.upgrd.4 = bitcast %IntList %reg292 to i8* ; <i8*> [#uses=1] |
| 520 | %reg293.idx1 = getelementptr %YYSTYPE* %reg290, i64 -1, i32 0 ; <%IntList*> [#uses=1] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 521 | %reg293 = load %IntList* %reg293.idx1 ; <%IntList> [#uses=1] |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 522 | %cast930 = bitcast %IntList %reg293 to %List ; <%List> [#uses=1] |
| 523 | %reg930 = call %List @newList( i8* %reg292.upgrd.4, %List %cast930 ) ; <%List> [#uses=1] |
| 524 | bitcast %List %reg930 to %IntList ; <%IntList>:2 [#uses=1] |
| 525 | store %IntList %2, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0) |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 526 | br label %bb97 |
| 527 | |
| 528 | bb83: ; preds = %bb53 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 529 | store %IntList null, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0) |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 530 | br label %bb97 |
| 531 | |
| 532 | bb84: ; preds = %bb54 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 533 | %reg298 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=2] |
| 534 | %cast936 = getelementptr %YYSTYPE* %reg298, i64 0, i32 0 ; <%IntList*> [#uses=1] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 535 | %reg300 = load %IntList* %cast936 ; <%IntList> [#uses=1] |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 536 | %reg300.upgrd.5 = bitcast %IntList %reg300 to i8* ; <i8*> [#uses=1] |
| 537 | %reg301.idx1 = getelementptr %YYSTYPE* %reg298, i64 -1, i32 0 ; <%IntList*> [#uses=1] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 538 | %reg301 = load %IntList* %reg301.idx1 ; <%IntList> [#uses=1] |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 539 | %cast943 = bitcast %IntList %reg301 to %List ; <%List> [#uses=1] |
| 540 | %reg943 = call %List @newList( i8* %reg300.upgrd.5, %List %cast943 ) ; <%List> [#uses=1] |
| 541 | bitcast %List %reg943 to %IntList ; <%IntList>:3 [#uses=1] |
| 542 | store %IntList %3, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0) |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 543 | br label %bb97 |
| 544 | |
| 545 | bb85: ; preds = %bb36 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 546 | %reg304 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=2] |
| 547 | %cast9521 = getelementptr %YYSTYPE* %reg304, i64 -2, i32 0 ; <%IntList*> [#uses=1] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 548 | %reg306 = load %IntList* %cast9521 ; <%IntList> [#uses=1] |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 549 | %reg306.upgrd.6 = bitcast %IntList %reg306 to i8* ; <i8*> [#uses=1] |
| 550 | %cast953 = bitcast %YYSTYPE* %reg304 to i32* ; <i32*> [#uses=1] |
| 551 | %reg307 = load i32* %cast953 ; <i32> [#uses=1] |
| 552 | %reg955 = call %Binding @newBinding( i8* %reg306.upgrd.6, i32 %reg307 ) ; <%Binding> [#uses=1] |
| 553 | bitcast %Binding %reg955 to %IntList ; <%IntList>:4 [#uses=1] |
| 554 | store %IntList %4, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0) |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 555 | br label %bb97 |
| 556 | |
| 557 | bb86: ; preds = %bb60 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 558 | store %IntList null, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0) |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 559 | br label %bb97 |
| 560 | |
| 561 | bb87: ; preds = %bb61 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 562 | %reg312 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=2] |
| 563 | %cast961 = getelementptr %YYSTYPE* %reg312, i64 0, i32 0 ; <%IntList*> [#uses=1] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 564 | %reg314 = load %IntList* %cast961 ; <%IntList> [#uses=1] |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 565 | %reg314.upgrd.7 = bitcast %IntList %reg314 to i8* ; <i8*> [#uses=1] |
| 566 | %reg315.idx1 = getelementptr %YYSTYPE* %reg312, i64 -1, i32 0 ; <%IntList*> [#uses=1] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 567 | %reg315 = load %IntList* %reg315.idx1 ; <%IntList> [#uses=1] |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 568 | %cast968 = bitcast %IntList %reg315 to %List ; <%List> [#uses=1] |
| 569 | %reg968 = call %List @newList( i8* %reg314.upgrd.7, %List %cast968 ) ; <%List> [#uses=1] |
| 570 | bitcast %List %reg968 to %IntList ; <%IntList>:5 [#uses=1] |
| 571 | store %IntList %5, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0) |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 572 | br label %bb97 |
| 573 | |
| 574 | bb88: ; preds = %bb58 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 575 | %reg318 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=4] |
| 576 | %cast9791 = getelementptr %YYSTYPE* %reg318, i64 -6, i32 0 ; <%IntList*> [#uses=1] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 577 | %reg322 = load %IntList* %cast9791 ; <%IntList> [#uses=1] |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 578 | %reg322.upgrd.8 = bitcast %IntList %reg322 to i8* ; <i8*> [#uses=1] |
| 579 | %reg323.idx1 = getelementptr %YYSTYPE* %reg318, i64 -4, i32 0 ; <%IntList*> [#uses=1] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 580 | %reg323 = load %IntList* %reg323.idx1 ; <%IntList> [#uses=1] |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 581 | %reg987 = getelementptr %YYSTYPE* %reg318, i64 -2 ; <%YYSTYPE*> [#uses=1] |
| 582 | %cast989 = bitcast %YYSTYPE* %reg987 to i32* ; <i32*> [#uses=1] |
| 583 | %reg324 = load i32* %cast989 ; <i32> [#uses=1] |
| 584 | %reg325.idx1 = getelementptr %YYSTYPE* %reg318, i64 -1, i32 0 ; <%IntList*> [#uses=1] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 585 | %reg325 = load %IntList* %reg325.idx1 ; <%IntList> [#uses=1] |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 586 | %cast998 = bitcast %IntList %reg323 to %PatternAST ; <%PatternAST> [#uses=1] |
| 587 | %reg996 = call %RuleAST @newRuleAST( i8* %reg322.upgrd.8, %PatternAST %cast998, i32 %reg324, %IntList %reg325 ) ; <%RuleAST> [#uses=1] |
| 588 | bitcast %RuleAST %reg996 to %IntList ; <%IntList>:6 [#uses=1] |
| 589 | store %IntList %6, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0) |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 590 | br label %bb97 |
| 591 | |
| 592 | bb89: ; preds = %bb63 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 593 | %reg328 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=1] |
| 594 | %cast1002 = getelementptr %YYSTYPE* %reg328, i64 0, i32 0 ; <%IntList*> [#uses=1] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 595 | %reg329 = load %IntList* %cast1002 ; <%IntList> [#uses=1] |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 596 | %reg329.upgrd.9 = bitcast %IntList %reg329 to i8* ; <i8*> [#uses=1] |
| 597 | %reg1004 = call %PatternAST @newPatternAST( i8* %reg329.upgrd.9, %List null ) ; <%PatternAST> [#uses=1] |
| 598 | bitcast %PatternAST %reg1004 to %IntList ; <%IntList>:7 [#uses=1] |
| 599 | store %IntList %7, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0) |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 600 | br label %bb97 |
| 601 | |
| 602 | bb90: ; preds = %bb64 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 603 | %reg333 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=2] |
| 604 | %cast10131 = getelementptr %YYSTYPE* %reg333, i64 -1, i32 0 ; <%IntList*> [#uses=1] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 605 | %reg335 = load %IntList* %cast10131 ; <%IntList> [#uses=1] |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 606 | %reg335.upgrd.10 = bitcast %IntList %reg335 to i8* ; <i8*> [#uses=1] |
| 607 | %reg1015 = call %List @newList( i8* %reg335.upgrd.10, %List null ) ; <%List> [#uses=1] |
| 608 | %cast10211 = getelementptr %YYSTYPE* %reg333, i64 -3, i32 0 ; <%IntList*> [#uses=1] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 609 | %reg338 = load %IntList* %cast10211 ; <%IntList> [#uses=1] |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 610 | %reg338.upgrd.11 = bitcast %IntList %reg338 to i8* ; <i8*> [#uses=1] |
| 611 | %reg1023 = call %PatternAST @newPatternAST( i8* %reg338.upgrd.11, %List %reg1015 ) ; <%PatternAST> [#uses=1] |
| 612 | bitcast %PatternAST %reg1023 to %IntList ; <%IntList>:8 [#uses=1] |
| 613 | store %IntList %8, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0) |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 614 | br label %bb97 |
| 615 | |
| 616 | bb91: ; preds = %bb56 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 617 | %reg341 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=3] |
| 618 | %cast10331 = getelementptr %YYSTYPE* %reg341, i64 -1, i32 0 ; <%IntList*> [#uses=1] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 619 | %reg344 = load %IntList* %cast10331 ; <%IntList> [#uses=1] |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 620 | %reg344.upgrd.12 = bitcast %IntList %reg344 to i8* ; <i8*> [#uses=1] |
| 621 | %reg1035 = call %List @newList( i8* %reg344.upgrd.12, %List null ) ; <%List> [#uses=1] |
| 622 | %cast10411 = getelementptr %YYSTYPE* %reg341, i64 -3, i32 0 ; <%IntList*> [#uses=1] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 623 | %reg347 = load %IntList* %cast10411 ; <%IntList> [#uses=1] |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 624 | %reg347.upgrd.13 = bitcast %IntList %reg347 to i8* ; <i8*> [#uses=1] |
| 625 | %reg1043 = call %List @newList( i8* %reg347.upgrd.13, %List %reg1035 ) ; <%List> [#uses=1] |
| 626 | %cast10491 = getelementptr %YYSTYPE* %reg341, i64 -5, i32 0 ; <%IntList*> [#uses=1] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 627 | %reg349 = load %IntList* %cast10491 ; <%IntList> [#uses=1] |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 628 | %reg349.upgrd.14 = bitcast %IntList %reg349 to i8* ; <i8*> [#uses=1] |
| 629 | %reg1051 = call %PatternAST @newPatternAST( i8* %reg349.upgrd.14, %List %reg1043 ) ; <%PatternAST> [#uses=1] |
| 630 | bitcast %PatternAST %reg1051 to %IntList ; <%IntList>:9 [#uses=1] |
| 631 | store %IntList %9, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0) |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 632 | br label %bb97 |
| 633 | |
| 634 | bb92: ; preds = %bb68 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 635 | store %IntList null, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0) |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 636 | br label %bb97 |
| 637 | |
| 638 | bb93: ; preds = %bb69 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 639 | %reg354 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=2] |
| 640 | %reg1059 = getelementptr %YYSTYPE* %reg354, i64 -2 ; <%YYSTYPE*> [#uses=1] |
| 641 | %cast1061 = bitcast %YYSTYPE* %reg1059 to i32* ; <i32*> [#uses=1] |
| 642 | %reg356 = load i32* %cast1061 ; <i32> [#uses=1] |
| 643 | %reg357.idx1 = getelementptr %YYSTYPE* %reg354, i64 -1, i32 0 ; <%IntList*> [#uses=1] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 644 | %reg357 = load %IntList* %reg357.idx1 ; <%IntList> [#uses=1] |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 645 | %reg1068 = call %IntList @newIntList( i32 %reg356, %IntList %reg357 ) ; <%IntList> [#uses=1] |
| 646 | store %IntList %reg1068, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0) |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 647 | br label %bb97 |
| 648 | |
| 649 | bb94: ; preds = %bb66 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 650 | store %IntList null, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0) |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 651 | br label %bb97 |
| 652 | |
| 653 | bb95: ; preds = %bb71 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 654 | %reg362 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=2] |
| 655 | %reg1076 = getelementptr %YYSTYPE* %reg362, i64 -1 ; <%YYSTYPE*> [#uses=1] |
| 656 | %cast1078 = bitcast %YYSTYPE* %reg1076 to i32* ; <i32*> [#uses=1] |
| 657 | %reg364 = load i32* %cast1078 ; <i32> [#uses=1] |
| 658 | %reg365.idx = getelementptr %YYSTYPE* %reg362, i64 0, i32 0 ; <%IntList*> [#uses=1] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 659 | %reg365 = load %IntList* %reg365.idx ; <%IntList> [#uses=1] |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 660 | %reg1081 = call %IntList @newIntList( i32 %reg364, %IntList %reg365 ) ; <%IntList> [#uses=1] |
| 661 | store %IntList %reg1081, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0) |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 662 | br label %bb97 |
| 663 | |
| 664 | bb96: ; preds = %bb72 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 665 | %reg368 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=2] |
| 666 | %reg1088 = getelementptr %YYSTYPE* %reg368, i64 -1 ; <%YYSTYPE*> [#uses=1] |
| 667 | %cast1090 = bitcast %YYSTYPE* %reg1088 to i32* ; <i32*> [#uses=1] |
| 668 | %reg370 = load i32* %cast1090 ; <i32> [#uses=1] |
| 669 | %reg371.idx = getelementptr %YYSTYPE* %reg368, i64 0, i32 0 ; <%IntList*> [#uses=1] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 670 | %reg371 = load %IntList* %reg371.idx ; <%IntList> [#uses=1] |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 671 | %reg1093 = call %IntList @newIntList( i32 %reg370, %IntList %reg371 ) ; <%IntList> [#uses=1] |
| 672 | store %IntList %reg1093, %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0) |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 673 | br label %bb97 |
| 674 | |
| 675 | 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 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 676 | %cast1097 = sext i16 %reg254 to i64 ; <i64> [#uses=3] |
| 677 | %reg375 = add i64 %cast1097, %cast1097 ; <i64> [#uses=1] |
| 678 | %reg377 = load i16** @yyssp ; <i16*> [#uses=1] |
| 679 | %cast379 = ptrtoint i16* %reg377 to i64 ; <i64> [#uses=1] |
| 680 | %reg381 = sub i64 %cast379, %reg375 ; <i64> [#uses=1] |
| 681 | %cast1099 = inttoptr i64 %reg381 to i16* ; <i16*> [#uses=1] |
| 682 | store i16* %cast1099, i16** @yyssp |
| 683 | %reg382 = load i16** @yyssp ; <i16*> [#uses=3] |
| 684 | %reg383 = load i16* %reg382 ; <i16> [#uses=1] |
| 685 | %cast1103 = sext i16 %reg383 to i32 ; <i32> [#uses=3] |
| 686 | %reg385 = mul i64 %cast1097, 8 ; <i64> [#uses=1] |
| 687 | %reg387 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=1] |
| 688 | %cast389 = ptrtoint %YYSTYPE* %reg387 to i64 ; <i64> [#uses=1] |
| 689 | %reg391 = sub i64 %cast389, %reg385 ; <i64> [#uses=1] |
| 690 | %cast1108 = inttoptr i64 %reg391 to %YYSTYPE* ; <%YYSTYPE*> [#uses=1] |
| 691 | store %YYSTYPE* %cast1108, %YYSTYPE** @yyvsp |
| 692 | %reg1111 = getelementptr [25 x i16]* @yylhs, i64 0, i64 %reg468-idxcast ; <i16*> [#uses=1] |
| 693 | %reg398 = load i16* %reg1111 ; <i16> [#uses=2] |
| 694 | %cast1116 = sext i16 %reg398 to i32 ; <i32> [#uses=1] |
| 695 | %cond1117 = icmp ne i32 %cast1103, 0 ; <i1> [#uses=1] |
| 696 | br i1 %cond1117, label %bb104, label %bb98 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 697 | |
| 698 | bb98: ; preds = %bb97 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 699 | %cond1119 = icmp ne i32 %cast1116, 0 ; <i1> [#uses=1] |
| 700 | br i1 %cond1119, label %bb104, label %bb99 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 701 | |
| 702 | bb99: ; preds = %bb98 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 703 | %reg1122 = getelementptr i16* %reg382, i64 1 ; <i16*> [#uses=2] |
| 704 | store i16* %reg1122, i16** @yyssp |
| 705 | store i16 1, i16* %reg1122 |
| 706 | %reg403 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=2] |
| 707 | %reg1128 = getelementptr %YYSTYPE* %reg403, i64 1 ; <%YYSTYPE*> [#uses=1] |
| 708 | store %YYSTYPE* %reg1128, %YYSTYPE** @yyvsp |
| 709 | %reg406 = load %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0) ; <%IntList> [#uses=1] |
| 710 | %reg1128.idx1 = getelementptr %YYSTYPE* %reg403, i64 1, i32 0 ; <%IntList*> [#uses=1] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 711 | store %IntList %reg406, %IntList* %reg1128.idx1 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 712 | %reg407 = load i32* @yychar ; <i32> [#uses=1] |
| 713 | %cond1135 = icmp sge i32 %reg407, 0 ; <i1> [#uses=1] |
| 714 | br i1 %cond1135, label %bb102, label %bb100 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 715 | |
| 716 | bb100: ; preds = %bb99 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 717 | %reg1139 = call i32 @yylex( ) ; <i32> [#uses=1] |
| 718 | store i32 %reg1139, i32* @yychar |
| 719 | %reg409 = load i32* @yychar ; <i32> [#uses=1] |
| 720 | %cond1141 = icmp sge i32 %reg409, 0 ; <i1> [#uses=1] |
| 721 | br i1 %cond1141, label %bb102, label %bb101 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 722 | |
| 723 | bb101: ; preds = %bb100 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 724 | store i32 0, i32* @yychar |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 725 | br label %bb102 |
| 726 | |
| 727 | bb102: ; preds = %bb101, %bb100, %bb99 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 728 | %reg411 = load i32* @yychar ; <i32> [#uses=1] |
| 729 | %cond1146 = icmp ne i32 %reg411, 0 ; <i1> [#uses=1] |
| 730 | br i1 %cond1146, label %bb4, label %UnifiedExitNode |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 731 | |
| 732 | bb104: ; preds = %bb98, %bb97 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 733 | %reg398-idxcast = sext i16 %reg398 to i64 ; <i64> [#uses=2] |
| 734 | %reg1150 = getelementptr [12 x i16]* @yygindex, i64 0, i64 %reg398-idxcast ; <i16*> [#uses=1] |
| 735 | %reg418 = load i16* %reg1150 ; <i16> [#uses=1] |
| 736 | %cast1155 = sext i16 %reg418 to i32 ; <i32> [#uses=2] |
| 737 | %cond1156 = icmp eq i32 %cast1155, 0 ; <i1> [#uses=1] |
| 738 | br i1 %cond1156, label %bb109, label %bb105 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 739 | |
| 740 | bb105: ; preds = %bb104 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 741 | %reg473 = add i32 %cast1155, %cast1103 ; <i32> [#uses=3] |
| 742 | %cond1158 = icmp slt i32 %reg473, 0 ; <i1> [#uses=1] |
| 743 | br i1 %cond1158, label %bb109, label %bb106 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 744 | |
| 745 | bb106: ; preds = %bb105 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 746 | %cond1161 = icmp sgt i32 %reg473, 262 ; <i1> [#uses=1] |
| 747 | br i1 %cond1161, label %bb109, label %bb107 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 748 | |
| 749 | bb107: ; preds = %bb106 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 750 | %reg473-idxcast = sext i32 %reg473 to i64 ; <i64> [#uses=2] |
| 751 | %reg1166 = getelementptr [263 x i16]* @yycheck, i64 0, i64 %reg473-idxcast ; <i16*> [#uses=1] |
| 752 | %reg428 = load i16* %reg1166 ; <i16> [#uses=1] |
| 753 | %cast1171 = sext i16 %reg428 to i32 ; <i32> [#uses=1] |
| 754 | %cond1172 = icmp ne i32 %cast1171, %cast1103 ; <i1> [#uses=1] |
| 755 | br i1 %cond1172, label %bb109, label %bb108 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 756 | |
| 757 | bb108: ; preds = %bb107 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 758 | %reg1175 = getelementptr [263 x i16]* @yytable, i64 0, i64 %reg473-idxcast ; <i16*> [#uses=1] |
| 759 | %reg435 = load i16* %reg1175 ; <i16> [#uses=1] |
| 760 | %cast1180 = sext i16 %reg435 to i32 ; <i32> [#uses=1] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 761 | br label %bb110 |
| 762 | |
| 763 | bb109: ; preds = %bb107, %bb106, %bb105, %bb104 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 764 | %reg1183 = getelementptr [12 x i16]* @yydgoto, i64 0, i64 %reg398-idxcast ; <i16*> [#uses=1] |
| 765 | %reg442 = load i16* %reg1183 ; <i16> [#uses=1] |
| 766 | %cast1188 = sext i16 %reg442 to i32 ; <i32> [#uses=1] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 767 | br label %bb110 |
| 768 | |
| 769 | bb110: ; preds = %bb109, %bb108 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 770 | %reg476 = phi i32 [ %cast1188, %bb109 ], [ %cast1180, %bb108 ] ; <i32> [#uses=2] |
| 771 | %cast1189 = bitcast i16* %reg382 to i8* ; <i8*> [#uses=1] |
| 772 | %reg444 = load i16** @yysslim ; <i16*> [#uses=1] |
| 773 | %cast1190 = bitcast i16* %reg444 to i8* ; <i8*> [#uses=1] |
| 774 | %cond1191 = icmp ult i8* %cast1189, %cast1190 ; <i1> [#uses=1] |
| 775 | br i1 %cond1191, label %bb112, label %bb111 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 776 | |
| 777 | bb111: ; preds = %bb110 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 778 | %reg1193 = call i32 @yygrowstack( ) ; <i32> [#uses=1] |
| 779 | %cond1193 = icmp ne i32 %reg1193, 0 ; <i1> [#uses=1] |
| 780 | br i1 %cond1193, label %bb113, label %bb112 |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 781 | |
| 782 | bb112: ; preds = %bb111, %bb110 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 783 | %reg446 = load i16** @yyssp ; <i16*> [#uses=1] |
| 784 | %reg1196 = getelementptr i16* %reg446, i64 1 ; <i16*> [#uses=2] |
| 785 | store i16* %reg1196, i16** @yyssp |
| 786 | %cast1357 = trunc i32 %reg476 to i16 ; <i16> [#uses=1] |
| 787 | store i16 %cast1357, i16* %reg1196 |
| 788 | %reg449 = load %YYSTYPE** @yyvsp ; <%YYSTYPE*> [#uses=2] |
| 789 | %reg1202 = getelementptr %YYSTYPE* %reg449, i64 1 ; <%YYSTYPE*> [#uses=1] |
| 790 | store %YYSTYPE* %reg1202, %YYSTYPE** @yyvsp |
| 791 | %reg452 = load %IntList* getelementptr (%YYSTYPE* @yyval, i64 0, i32 0) ; <%IntList> [#uses=1] |
| 792 | %reg1202.idx1 = getelementptr %YYSTYPE* %reg449, i64 1, i32 0 ; <%IntList*> [#uses=1] |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 793 | store %IntList %reg452, %IntList* %reg1202.idx1 |
| 794 | br label %bb4 |
| 795 | |
| 796 | bb113: ; preds = %bb111, %bb30, %bb13, %bb2 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 797 | call void @yyerror( i8* getelementptr ([20 x i8]* @.LC1, i64 0, i64 0) ) |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 798 | br label %UnifiedExitNode |
| 799 | |
| 800 | UnifiedExitNode: ; preds = %bb113, %bb102, %bb34, %bb32 |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 801 | %UnifiedRetVal = phi i32 [ 1, %bb113 ], [ 1, %bb34 ], [ 1, %bb32 ], [ 0, %bb102 ] ; <i32> [#uses=1] |
| 802 | ret i32 %UnifiedRetVal |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 803 | } |
| 804 | |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 805 | declare %List @newList(i8*, %List) |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 806 | |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 807 | declare %IntList @newIntList(i32, %IntList) |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 808 | |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 809 | declare void @doStart(i8*) |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 810 | |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 811 | declare void @yyerror(i8*) |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 812 | |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 813 | declare void @doSpec(%List, %List) |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 814 | |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 815 | declare %Arity @newArity(i32, %List) |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 816 | |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 817 | declare %Binding @newBinding(i8*, i32) |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 818 | |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 819 | declare %PatternAST @newPatternAST(i8*, %List) |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 820 | |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 821 | declare %RuleAST @newRuleAST(i8*, %PatternAST, i32, %IntList) |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 822 | |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 823 | declare void @yyfinished() |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 824 | |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 825 | declare i32 @yylex() |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 826 | |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 827 | declare void @doGram(%List) |
Vikram S. Adve | 8becaed | 2002-10-14 14:53:06 +0000 | [diff] [blame] | 828 | |
Tanya Lattner | 53a66d1 | 2008-02-19 01:41:04 +0000 | [diff] [blame^] | 829 | declare i32 @yygrowstack() |