Mercurial > hg > truffle
comparison src/share/vm/code/compiledIC.cpp @ 8154:a2a67458a7b6
Fix issue that caused IC stub to be uncleared for C1/C2.
author | Thomas Wuerthinger <thomas.wuerthinger@oracle.com> |
---|---|
date | Thu, 07 Mar 2013 21:24:17 +0100 |
parents | b8f261ba79c6 |
children | 3c29f7da5c66 |
comparison
equal
deleted
inserted
replaced
8153:466de7e331ef | 8154:a2a67458a7b6 |
---|---|
93 assert(!is_icholder || is_icholder_entry(entry_point), "must be"); | 93 assert(!is_icholder || is_icholder_entry(entry_point), "must be"); |
94 | 94 |
95 // Don't use ic_destination for this test since that forwards | 95 // Don't use ic_destination for this test since that forwards |
96 // through ICBuffer instead of returning the actual current state of | 96 // through ICBuffer instead of returning the actual current state of |
97 // the CompiledIC. | 97 // the CompiledIC. |
98 if (is_icholder_entry(_ic_call->destination()) && !_is_optimized) { | 98 if (is_icholder_entry(_ic_call->destination()) GRAAL_ONLY(&& _value != NULL)) { |
99 // When patching for the ICStub case the cached value isn't | 99 // When patching for the ICStub case the cached value isn't |
100 // overwritten until the ICStub copied into the CompiledIC during | 100 // overwritten until the ICStub copied into the CompiledIC during |
101 // the next safepoint. Make sure that the CompiledICHolder* is | 101 // the next safepoint. Make sure that the CompiledICHolder* is |
102 // marked for release at this point since it won't be identifiable | 102 // marked for release at this point since it won't be identifiable |
103 // once the entry point is overwritten. | 103 // once the entry point is overwritten. |