Mercurial > hg > graal-jvmci-8
comparison src/share/vm/runtime/thread.cpp @ 5110:0ebca2e35ca5
more preparations for disabling runtime feedback selectively based on deoptimization history
author | Christian Haeubl <christian.haeubl@oracle.com> |
---|---|
date | Thu, 15 Mar 2012 15:31:34 -0700 |
parents | 2f2c6347fce4 |
children | 422c979ff392 |
comparison
equal
deleted
inserted
replaced
5109:6766253384bf | 5110:0ebca2e35ca5 |
---|---|
2056 if (f.is_runtime_frame() || f.is_safepoint_blob_frame()) { | 2056 if (f.is_runtime_frame() || f.is_safepoint_blob_frame()) { |
2057 // BiasedLocking needs an updated RegisterMap for the revoke monitors pass | 2057 // BiasedLocking needs an updated RegisterMap for the revoke monitors pass |
2058 RegisterMap reg_map(this, UseBiasedLocking); | 2058 RegisterMap reg_map(this, UseBiasedLocking); |
2059 frame compiled_frame = f.sender(®_map); | 2059 frame compiled_frame = f.sender(®_map); |
2060 if (compiled_frame.can_be_deoptimized()) { | 2060 if (compiled_frame.can_be_deoptimized()) { |
2061 Deoptimization::deoptimize(this, compiled_frame, ®_map); | 2061 Deoptimization::deoptimize(this, compiled_frame, ®_map, Deoptimization::Reason_constraint); |
2062 } | 2062 } |
2063 } | 2063 } |
2064 } | 2064 } |
2065 | 2065 |
2066 // Set async. pending exception in thread. | 2066 // Set async. pending exception in thread. |
2518 if (!has_last_Java_frame()) return; | 2518 if (!has_last_Java_frame()) return; |
2519 // BiasedLocking needs an updated RegisterMap for the revoke monitors pass | 2519 // BiasedLocking needs an updated RegisterMap for the revoke monitors pass |
2520 StackFrameStream fst(this, UseBiasedLocking); | 2520 StackFrameStream fst(this, UseBiasedLocking); |
2521 for(; !fst.is_done(); fst.next()) { | 2521 for(; !fst.is_done(); fst.next()) { |
2522 if (fst.current()->should_be_deoptimized()) { | 2522 if (fst.current()->should_be_deoptimized()) { |
2523 Deoptimization::deoptimize(this, *fst.current(), fst.register_map()); | 2523 Deoptimization::deoptimize(this, *fst.current(), fst.register_map(), Deoptimization::Reason_constraint); |
2524 } | 2524 } |
2525 } | 2525 } |
2526 } | 2526 } |
2527 | 2527 |
2528 | 2528 |