equal
deleted
inserted
replaced
136 |
136 |
137 #ifdef ASSERT |
137 #ifdef ASSERT |
138 Node* uniqc = proj_true->unique_ctrl_out(); |
138 Node* uniqc = proj_true->unique_ctrl_out(); |
139 Node* entry = head->skip_strip_mined()->in(LoopNode::EntryControl); |
139 Node* entry = head->skip_strip_mined()->in(LoopNode::EntryControl); |
140 Node* predicate = find_predicate(entry); |
140 Node* predicate = find_predicate(entry); |
|
141 if (predicate != NULL) { |
|
142 entry = skip_loop_predicates(entry); |
|
143 } |
141 if (predicate != NULL && UseLoopPredicate) { |
144 if (predicate != NULL && UseLoopPredicate) { |
142 // We may have two predicates, find first. |
145 // We may have two predicates, find first. |
143 entry = find_predicate(entry->in(0)->in(0)); |
146 Node* n = find_predicate(entry); |
|
147 if (n != NULL) { |
|
148 predicate = n; |
|
149 entry = skip_loop_predicates(entry); |
|
150 } |
|
151 } |
|
152 if (predicate != NULL && UseProfiledLoopPredicate) { |
|
153 entry = find_predicate(entry); |
144 if (entry != NULL) predicate = entry; |
154 if (entry != NULL) predicate = entry; |
145 } |
155 } |
146 if (predicate != NULL) predicate = predicate->in(0); |
156 if (predicate != NULL) predicate = predicate->in(0); |
147 assert(proj_true->is_IfTrue() && |
157 assert(proj_true->is_IfTrue() && |
148 (predicate == NULL && uniqc == head && !head->is_strip_mined() || |
158 (predicate == NULL && uniqc == head && !head->is_strip_mined() || |