Mercurial > hg > truffle
diff src/share/vm/ci/ciObjectFactory.cpp @ 6275:957c266d8bc5
Merge with http://hg.openjdk.java.net/hsx/hsx24/hotspot/
author | Doug Simon <doug.simon@oracle.com> |
---|---|
date | Tue, 21 Aug 2012 10:39:19 +0200 |
parents | 532be189cf09 1d7922586cf6 |
children | e522a00b91aa |
line wrap: on
line diff
--- a/src/share/vm/ci/ciObjectFactory.cpp Mon Aug 20 15:21:31 2012 +0200 +++ b/src/share/vm/ci/ciObjectFactory.cpp Tue Aug 21 10:39:19 2012 +0200 @@ -28,6 +28,7 @@ #include "ci/ciInstance.hpp" #include "ci/ciInstanceKlass.hpp" #include "ci/ciInstanceKlassKlass.hpp" +#include "ci/ciMemberName.hpp" #include "ci/ciMethod.hpp" #include "ci/ciMethodData.hpp" #include "ci/ciMethodHandle.hpp" @@ -112,7 +113,7 @@ // This Arena is long lived and exists in the resource mark of the // compiler thread that initializes the initial ciObjectFactory which // creates the shared ciObjects that all later ciObjectFactories use. - Arena* arena = new Arena(); + Arena* arena = new (mtCompiler) Arena(); ciEnv initial(arena); ciEnv* env = ciEnv::current(); env->_factory->init_shared_objects(); @@ -348,6 +349,8 @@ instanceHandle h_i(THREAD, (instanceOop)o); if (java_lang_invoke_CallSite::is_instance(o)) return new (arena()) ciCallSite(h_i); + else if (java_lang_invoke_MemberName::is_instance(o)) + return new (arena()) ciMemberName(h_i); else if (java_lang_invoke_MethodHandle::is_instance(o)) return new (arena()) ciMethodHandle(h_i); else