Mercurial > hg > truffle
diff src/share/vm/opto/callGenerator.cpp @ 6725:da91efe96a93
6964458: Reimplement class meta-data storage to use native memory
Summary: Remove PermGen, allocate meta-data in metaspace linked to class loaders, rewrite GC walking, rewrite and rename metadata to be C++ classes
Reviewed-by: jmasa, stefank, never, coleenp, kvn, brutisso, mgerdin, dholmes, jrose, twisti, roland
Contributed-by: jmasa <jon.masamitsu@oracle.com>, stefank <stefan.karlsson@oracle.com>, mgerdin <mikael.gerdin@oracle.com>, never <tom.rodriguez@oracle.com>
author | coleenp |
---|---|
date | Sat, 01 Sep 2012 13:25:18 -0400 |
parents | 7a302948f5a4 |
children | e626685e9f6c |
line wrap: on
line diff
--- a/src/share/vm/opto/callGenerator.cpp Fri Aug 31 16:39:35 2012 -0700 +++ b/src/share/vm/opto/callGenerator.cpp Sat Sep 01 13:25:18 2012 -0400 @@ -25,7 +25,7 @@ #include "precompiled.hpp" #include "ci/bcEscapeAnalyzer.hpp" #include "ci/ciCallSite.hpp" -#include "ci/ciCPCache.hpp" +#include "ci/ciObjArray.hpp" #include "ci/ciMemberName.hpp" #include "ci/ciMethodHandle.hpp" #include "classfile/javaClasses.hpp" @@ -167,7 +167,7 @@ VirtualCallGenerator(ciMethod* method, int vtable_index) : CallGenerator(method), _vtable_index(vtable_index) { - assert(vtable_index == methodOopDesc::invalid_vtable_index || + assert(vtable_index == Method::invalid_vtable_index || vtable_index >= 0, "either invalid or usable"); } virtual bool is_virtual() const { return true; } @@ -217,7 +217,7 @@ assert(!method()->is_static(), "virtual call must not be to static"); assert(!method()->is_final(), "virtual call should not be to final"); assert(!method()->is_private(), "virtual call should not be to private"); - assert(_vtable_index == methodOopDesc::invalid_vtable_index || !UseInlineCaches, + assert(_vtable_index == Method::invalid_vtable_index || !UseInlineCaches, "no vtable calls if +UseInlineCaches "); address target = SharedRuntime::get_resolve_virtual_call_stub(); // Normal inline cache used for call @@ -603,7 +603,7 @@ const TypeOopPtr* oop_ptr = receiver->bottom_type()->is_oopptr(); ciMethod* target = oop_ptr->const_oop()->as_method_handle()->get_vmtarget(); guarantee(!target->is_method_handle_intrinsic(), "should not happen"); // XXX remove - const int vtable_index = methodOopDesc::invalid_vtable_index; + const int vtable_index = Method::invalid_vtable_index; CallGenerator* cg = C->call_generator(target, vtable_index, false, jvms, true, PROB_ALWAYS); if (cg != NULL && cg->is_inline()) return cg; @@ -653,7 +653,7 @@ } } } - const int vtable_index = methodOopDesc::invalid_vtable_index; + const int vtable_index = Method::invalid_vtable_index; const bool call_is_virtual = target->is_abstract(); // FIXME workaround CallGenerator* cg = C->call_generator(target, vtable_index, call_is_virtual, jvms, true, PROB_ALWAYS); if (cg != NULL && cg->is_inline())