mirror of
https://github.com/openjdk/jdk.git
synced 2025-09-18 01:54:47 +02:00
8264805: Remove the experimental Ahead-of-Time Compiler
Reviewed-by: coleenp, erikj, stefank, iignatyev, dholmes, aph, shade, iklam, mchung, iveresov
This commit is contained in:
parent
15d4787724
commit
694acedf18
378 changed files with 200 additions and 26970 deletions
|
@ -898,9 +898,7 @@ void Deoptimization::deoptimize_all_marked(nmethod* nmethod_only) {
|
|||
Deoptimization::DeoptAction Deoptimization::_unloaded_action
|
||||
= Deoptimization::Action_reinterpret;
|
||||
|
||||
|
||||
|
||||
#if COMPILER2_OR_JVMCI || INCLUDE_AOT
|
||||
#if COMPILER2_OR_JVMCI
|
||||
template<typename CacheType>
|
||||
class BoxCacheBase : public CHeapObj<mtCompiler> {
|
||||
protected:
|
||||
|
@ -1028,9 +1026,7 @@ oop Deoptimization::get_cached_box(AutoBoxObjectValue* bv, frame* fr, RegisterMa
|
|||
}
|
||||
return NULL;
|
||||
}
|
||||
#endif // COMPILER2_OR_JVMCI || INCLUDE_AOT
|
||||
|
||||
#if COMPILER2_OR_JVMCI
|
||||
bool Deoptimization::realloc_objects(JavaThread* thread, frame* fr, RegisterMap* reg_map, GrowableArray<ScopeValue*>* objects, TRAPS) {
|
||||
Handle pending_exception(THREAD, thread->pending_exception());
|
||||
const char* exception_file = thread->exception_file();
|
||||
|
@ -1047,7 +1043,6 @@ bool Deoptimization::realloc_objects(JavaThread* thread, frame* fr, RegisterMap*
|
|||
oop obj = NULL;
|
||||
|
||||
if (k->is_instance_klass()) {
|
||||
#if COMPILER2_OR_JVMCI || INCLUDE_AOT
|
||||
if (sv->is_auto_box()) {
|
||||
AutoBoxObjectValue* abv = (AutoBoxObjectValue*) sv;
|
||||
obj = get_cached_box(abv, fr, reg_map, THREAD);
|
||||
|
@ -1056,7 +1051,7 @@ bool Deoptimization::realloc_objects(JavaThread* thread, frame* fr, RegisterMap*
|
|||
abv->set_cached(true);
|
||||
}
|
||||
}
|
||||
#endif // COMPILER2_OR_JVMCI || INCLUDE_AOT
|
||||
|
||||
InstanceKlass* ik = InstanceKlass::cast(k);
|
||||
if (obj == NULL) {
|
||||
#ifdef COMPILER2
|
||||
|
@ -1398,12 +1393,11 @@ void Deoptimization::reassign_fields(frame* fr, RegisterMap* reg_map, GrowableAr
|
|||
if (obj.is_null()) {
|
||||
continue;
|
||||
}
|
||||
#if COMPILER2_OR_JVMCI || INCLUDE_AOT
|
||||
|
||||
// Don't reassign fields of boxes that came from a cache. Caches may be in CDS.
|
||||
if (sv->is_auto_box() && ((AutoBoxObjectValue*) sv)->is_cached()) {
|
||||
continue;
|
||||
}
|
||||
#endif // COMPILER2_OR_JVMCI || INCLUDE_AOT
|
||||
#ifdef COMPILER2
|
||||
if (EnableVectorSupport && VectorSupport::is_vector(k)) {
|
||||
assert(sv->field_size() == 1, "%s not a vector", k->name()->as_C_string());
|
||||
|
@ -1976,7 +1970,7 @@ JRT_ENTRY(void, Deoptimization::uncommon_trap_inner(JavaThread* current, jint tr
|
|||
int trap_bci = trap_scope->bci();
|
||||
#if INCLUDE_JVMCI
|
||||
jlong speculation = current->pending_failed_speculation();
|
||||
if (nm->is_compiled_by_jvmci() && nm->is_nmethod()) { // Exclude AOTed methods
|
||||
if (nm->is_compiled_by_jvmci()) {
|
||||
nm->as_nmethod()->update_speculation(current);
|
||||
} else {
|
||||
assert(speculation == 0, "There should not be a speculation for methods compiled by non-JVMCI compilers");
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue