diff src/share/vm/c1x/c1x_VMExits.cpp @ 2288:8c426c2891c8

client/server: new interface Remote marks classes that should not be serialized, but called remotely
author Lukas Stadler <lukas.stadler@jku.at>
date Mon, 11 Apr 2011 10:37:24 +0200
parents 762de4b26788
children 6190d20bd6d6
line wrap: on
line diff
--- a/src/share/vm/c1x/c1x_VMExits.cpp	Fri Apr 08 13:47:56 2011 +0200
+++ b/src/share/vm/c1x/c1x_VMExits.cpp	Mon Apr 11 10:37:24 2011 +0200
@@ -223,9 +223,16 @@
 oop VMExits::createCiConstantObject(Handle object, TRAPS) {
   JavaValue result(T_OBJECT);
   JavaCallArguments args;
+  /*
   args.push_oop(instance());
   args.push_oop(object);
   JavaCalls::call_interface(&result, vmExitsKlass(), vmSymbols::createCiConstantObject_name(), vmSymbols::createCiConstantObject_signature(), &args, THREAD);
   check_pending_exception("Error while calling createCiConstantObject");
+  */
+
+
+  KlassHandle klass = SystemDictionary::resolve_or_null(vmSymbols::com_sun_cri_ci_CiConstant(), SystemDictionary::java_system_loader(), NULL, Thread::current());
+  JavaCalls::call_static(&result, klass(), vmSymbols::forObject_name(), vmSymbols::forObject_signature(), object, THREAD);
+  check_pending_exception("Error while calling CiConstant.forObject");
   return (oop) result.get_jobject();
 }