comparison src/share/vm/c1x/c1x_VMExits.cpp @ 1465:2c754f3a2722

Inlining of static final field values. Java mirror instead of VmID. Support for PrintMetrics option.
author Thomas Wuerthinger <wuerthinger@ssw.jku.at>
date Thu, 18 Nov 2010 17:27:43 +0100
parents 9e5e83ca2259
children ef7761803480
comparison
equal deleted inserted replaced
1463:7bc14f75a077 1465:2c754f3a2722
172 JavaCalls::call_interface(&result, vmExitsKlass(), vmSymbols::createRiSignature_name(), vmSymbols::createRiSignature_signature(), &args, THREAD); 172 JavaCalls::call_interface(&result, vmExitsKlass(), vmSymbols::createRiSignature_name(), vmSymbols::createRiSignature_signature(), &args, THREAD);
173 check_pending_exception("Error while calling createRiSignature"); 173 check_pending_exception("Error while calling createRiSignature");
174 return (oop) result.get_jobject(); 174 return (oop) result.get_jobject();
175 } 175 }
176 176
177 oop VMExits::createCiConstantInt(jint value, TRAPS) {
178 JavaValue result(T_OBJECT);
179 JavaCallArguments args;
180 args.push_oop(instance());
181 args.push_int(value);
182 JavaCalls::call_interface(&result, vmExitsKlass(), vmSymbols::createCiConstantInt_name(), vmSymbols::createCiConstantInt_signature(), &args, THREAD);
183 check_pending_exception("Error while calling createCiConstantInt");
184 return (oop) result.get_jobject();
185
186 }
187
188 oop VMExits::createCiConstantLong(jlong value, TRAPS) { 177 oop VMExits::createCiConstantLong(jlong value, TRAPS) {
189 JavaValue result(T_OBJECT); 178 JavaValue result(T_OBJECT);
190 JavaCallArguments args; 179 JavaCallArguments args;
191 args.push_oop(instance()); 180 args.push_oop(instance());
192 args.push_long(value); 181 args.push_long(value);
215 JavaCalls::call_interface(&result, vmExitsKlass(), vmSymbols::createCiConstantDouble_name(), vmSymbols::createCiConstantDouble_signature(), &args, THREAD); 204 JavaCalls::call_interface(&result, vmExitsKlass(), vmSymbols::createCiConstantDouble_name(), vmSymbols::createCiConstantDouble_signature(), &args, THREAD);
216 check_pending_exception("Error while calling createCiConstantDouble"); 205 check_pending_exception("Error while calling createCiConstantDouble");
217 return (oop) result.get_jobject(); 206 return (oop) result.get_jobject();
218 } 207 }
219 208
220 oop VMExits::createCiConstantObject(jlong vmId, TRAPS) { 209 oop VMExits::createCiConstantObject(Handle object, TRAPS) {
221 JavaValue result(T_OBJECT); 210 JavaValue result(T_OBJECT);
222 JavaCallArguments args; 211 JavaCallArguments args;
223 args.push_oop(instance()); 212 args.push_oop(instance());
224 args.push_long(vmId); 213 args.push_oop(object);
225 JavaCalls::call_interface(&result, vmExitsKlass(), vmSymbols::createCiConstantObject_name(), vmSymbols::createCiConstantLong_signature(), &args, THREAD); 214 JavaCalls::call_interface(&result, vmExitsKlass(), vmSymbols::createCiConstantObject_name(), vmSymbols::createCiConstantObject_signature(), &args, THREAD);
226 check_pending_exception("Error while calling createCiConstantObject"); 215 check_pending_exception("Error while calling createCiConstantObject");
227 return (oop) result.get_jobject(); 216 return (oop) result.get_jobject();
228 } 217 }