src/share/vm/runtime/simpleThresholdPolicy.inline.hpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File
hotspot Cdiff src/share/vm/runtime/simpleThresholdPolicy.inline.hpp
src/share/vm/runtime/simpleThresholdPolicy.inline.hpp
Print this page
*** 52,68 ****
}
// Simple methods are as good being compiled with C1 as C2.
// Determine if a given method is such a case.
bool SimpleThresholdPolicy::is_trivial(Method* method) {
! if (method->is_accessor()) return true;
! if (method->code() != NULL) {
MethodData* mdo = method->method_data();
! if (mdo != NULL && mdo->num_loops() == 0 &&
! (method->code_size() < 5 || (mdo->num_blocks() < 4) && (method->code_size() < 15))) {
return !mdo->would_profile();
}
- }
return false;
}
#endif // SHARE_VM_RUNTIME_SIMPLETHRESHOLDPOLICY_INLINE_HPP
--- 52,69 ----
}
// Simple methods are as good being compiled with C1 as C2.
// Determine if a given method is such a case.
bool SimpleThresholdPolicy::is_trivial(Method* method) {
! if (method->is_accessor() ||
! method->is_constant_getter()) {
! return true;
! }
MethodData* mdo = method->method_data();
! if (mdo != NULL && mdo->stats_valid() && mdo->num_loops() == 0 &&
! (method->code_size() < 5 || ((mdo->num_blocks() < 4) && (method->code_size() < 15)))) {
return !mdo->would_profile();
}
return false;
}
#endif // SHARE_VM_RUNTIME_SIMPLETHRESHOLDPOLICY_INLINE_HPP
src/share/vm/runtime/simpleThresholdPolicy.inline.hpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File