src/share/vm/opto/compile.cpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File
*** old/src/share/vm/opto/compile.cpp Fri Oct 3 11:15:59 2014
--- new/src/share/vm/opto/compile.cpp Fri Oct 3 11:15:59 2014
*** 1151,1167 ****
--- 1151,1173 ----
if (failing())
return; // already failing
assert(s == start(), "");
}
+ /**
+ * Return the 'StartNode'. We must not have a pending failure, since the ideal graph
+ * can be in an inconsistent state, i.e., we can get segmentation faults when traversing
+ * the ideal graph.
+ */
StartNode* Compile::start() const {
! assert(!failing(), "");
! assert (!failing(), err_msg_res("Must not have pending failure. Reason is: %s", failure_reason()));
for (DUIterator_Fast imax, i = root()->fast_outs(imax); i < imax; i++) {
Node* start = root()->fast_out(i);
! if( start->is_Start() )
! if (start->is_Start()) {
return start->as_Start();
}
+ }
fatal("Did not find Start node!");
return NULL;
}
//-------------------------------immutable_memory-------------------------------------
src/share/vm/opto/compile.cpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File