Mercurial > hg > truffle
changeset 2182:9569fdf936ff
Made merge compile.
author | Thomas Wuerthinger <wuerthinger@ssw.jku.at> |
---|---|
date | Wed, 16 Feb 2011 14:21:52 +0100 |
parents | d25d4ca69222 |
children | eed52202caea |
files | src/share/vm/c1x/c1x_CodeInstaller.cpp src/share/vm/c1x/c1x_Compiler.cpp src/share/vm/c1x/c1x_JavaAccess.cpp src/share/vm/c1x/c1x_VMEntries.cpp src/share/vm/c1x/c1x_VmIds.hpp src/share/vm/ci/ciSymbol.hpp src/share/vm/runtime/javaCalls.cpp src/share/vm/runtime/javaCalls.hpp |
diffstat | 8 files changed, 24 insertions(+), 35 deletions(-) [+] |
line wrap: on
line diff
--- a/src/share/vm/c1x/c1x_CodeInstaller.cpp Wed Feb 16 13:47:20 2011 +0100 +++ b/src/share/vm/c1x/c1x_CodeInstaller.cpp Wed Feb 16 14:21:52 2011 +0100 @@ -409,7 +409,7 @@ if (bci == -1) { reexecute = false; } else { - Bytecodes::Code code = Bytecodes::java_code_at(method->bcp_from(bci)); + Bytecodes::Code code = Bytecodes::java_code_at(method, method->bcp_from(bci)); reexecute = Interpreter::bytecode_should_reexecute(code); }
--- a/src/share/vm/c1x/c1x_Compiler.cpp Wed Feb 16 13:47:20 2011 +0100 +++ b/src/share/vm/c1x/c1x_Compiler.cpp Wed Feb 16 14:21:52 2011 +0100 @@ -121,7 +121,7 @@ Handle name = VmIds::toString<Handle>(klass->name(), THREAD); return createHotSpotTypeResolved(klass, name, CHECK_NULL); } else { - symbolOop name = ((ciKlass *) type)->name()->get_symbolOop(); + Symbol* name = ((ciKlass *) type)->name()->get_symbol(); return VMExits::createRiTypeUnresolved(VmIds::toString<Handle>(name, THREAD), THREAD); } } @@ -129,7 +129,7 @@ oop C1XCompiler::get_RiField(ciField *field, ciInstanceKlass* accessor_klass, KlassHandle accessor, Bytecodes::Code byteCode, TRAPS) { bool will_link = field->will_link_from_vm(accessor_klass, byteCode); int offset = (field->holder()->is_loaded() && will_link) ? field->offset() : -1; - Handle field_name = VmIds::toString<Handle>(field->name()->get_symbolOop(), CHECK_0); + Handle field_name = VmIds::toString<Handle>(field->name()->get_symbol(), CHECK_0); Handle field_holder = get_RiType(field->holder(), accessor, CHECK_0); Handle field_type = get_RiType(field->type(), accessor, CHECK_0);
--- a/src/share/vm/c1x/c1x_JavaAccess.cpp Wed Feb 16 13:47:20 2011 +0100 +++ b/src/share/vm/c1x/c1x_JavaAccess.cpp Wed Feb 16 14:21:52 2011 +0100 @@ -29,8 +29,8 @@ // It looks up the name and signature symbols without creating new ones, all the symbols of these classes need to be already loaded. static void compute_offset(int &dest_offset, klassOop klass_oop, const char* name, const char* signature, bool static_field) { - symbolOop name_symbol = SymbolTable::probe(name, strlen(name)); - symbolOop signature_symbol = SymbolTable::probe(signature, strlen(signature)); + Symbol* name_symbol = SymbolTable::probe(name, strlen(name)); + Symbol* signature_symbol = SymbolTable::probe(signature, strlen(signature)); #ifdef DEBUG if (name_symbol == NULL) { tty->print_cr("symbol with name %s was not found in symbol table (klass=%s)", name, klass_oop->klass_part()->name()->as_C_string());
--- a/src/share/vm/c1x/c1x_VMEntries.cpp Wed Feb 16 13:47:20 2011 +0100 +++ b/src/share/vm/c1x/c1x_VMEntries.cpp Wed Feb 16 14:21:52 2011 +0100 @@ -154,7 +154,7 @@ JNIEXPORT jobject JNICALL Java_com_sun_hotspot_c1x_VMEntries_RiSignature_1lookupType(JNIEnv *env, jobject, jstring jname, jobject accessingClass) { VM_ENTRY_MARK; - symbolOop nameSymbol = VmIds::toSymbol(jname); + Symbol* nameSymbol = VmIds::toSymbol(jname); Handle name = JNIHandles::resolve(jname); oop result; @@ -261,8 +261,8 @@ Handle name = VmIds::toString<Handle>(method->name(), CHECK_NULL); return JNIHandles::make_local(THREAD, VMExits::createRiMethodResolved(VmIds::add<methodOop>(method), name, THREAD)); } else { - Handle name = VmIds::toString<Handle>((symbolOop) cimethod->name()->get_oop(), CHECK_NULL); - Handle signature = VmIds::toString<Handle>((symbolOop) cimethod->signature()->as_symbol()->get_oop(), CHECK_NULL); + Handle name = VmIds::toString<Handle>(cimethod->name()->get_symbol(), CHECK_NULL); + Handle signature = VmIds::toString<Handle>(cimethod->signature()->as_symbol()->get_symbol(), CHECK_NULL); Handle holder = C1XCompiler::get_RiType(cimethod->holder(), cp->klass(), THREAD); return JNIHandles::make_local(THREAD, VMExits::createRiMethodUnresolved(name, signature, holder, THREAD)); } @@ -363,8 +363,8 @@ assert(JNIHandles::resolve(resolved_type) != NULL, ""); klassOop klass = java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(resolved_type)); - symbolOop name_symbol = VmIds::toSymbol(name); - symbolOop signature_symbol = VmIds::toSymbol(signature); + Symbol* name_symbol = VmIds::toSymbol(name); + Symbol* signature_symbol = VmIds::toSymbol(signature); methodOop method = klass->klass_part()->lookup_method(name_symbol, signature_symbol); if (method == NULL) { if (TraceC1X >= 3) {
--- a/src/share/vm/c1x/c1x_VmIds.hpp Wed Feb 16 13:47:20 2011 +0100 +++ b/src/share/vm/c1x/c1x_VmIds.hpp Wed Feb 16 14:21:52 2011 +0100 @@ -22,6 +22,8 @@ * */ +class Thread; + class VmIds : public AllStatic { private: @@ -36,7 +38,6 @@ STUB = 0x100000000000000l, // address METHOD = 0x200000000000000l, // methodOop CLASS = 0x300000000000000l, // klassOop - SYMBOL = 0x400000000000000l, // symbolOop CONSTANT_POOL = 0x500000000000000l, // constantPoolOop CONSTANT = 0x600000000000000l, // oop TYPE_MASK = 0xf00000000000000l, @@ -67,11 +68,11 @@ template <typename T> static T get(jlong id); - // Helper function to convert a symbolOop to a java.lang.String object - template <typename T> static T toString(symbolOop symbol, TRAPS); + // Helper function to convert a symbol to a java.lang.String object + template <typename T> static T toString(Symbol* symbol, TRAPS); - // Helper function to convert a java.lang.String object to a symbolOop (this will return NULL if the symbol doesn't exist in the system) - static symbolOop toSymbol(jstring string); + // Helper function to convert a java.lang.String object to a symbol (this will return NULL if the symbol doesn't exist in the system) + static Symbol* toSymbol(jstring string); // Helper function to get the contents of a java.lang.Long static jlong getBoxedLong(oop obj); @@ -88,11 +89,6 @@ assert(obj->is_klass(), "trying to add mistyped object"); return add(Handle(obj), CLASS); } -template <> inline jlong VmIds::add<symbolOop>(symbolOop obj) { - assert(obj != NULL, "trying to add NULL<symbolOop>"); - assert(obj->is_symbol(), "trying to add mistyped object"); - return add(Handle(obj), SYMBOL); -} template <> inline jlong VmIds::add<constantPoolOop>(constantPoolOop obj) { assert(obj != NULL, "trying to add NULL<constantPoolOop>"); assert(obj->is_constantPool(), "trying to add mistyped object"); @@ -115,11 +111,6 @@ assert(getObject(id)->is_klass(), "klassOop expected"); return (klassOop)getObject(id); } -template <> inline symbolOop VmIds::get<symbolOop>(jlong id) { - assert((id & TYPE_MASK) == SYMBOL, "SYMBOL expected"); - assert(getObject(id)->is_symbol(), "symbolOop expected"); - return (symbolOop)getObject(id); -} template <> inline constantPoolOop VmIds::get<constantPoolOop>(jlong id) { assert((id & TYPE_MASK) == CONSTANT_POOL, "CONSTANT_POOL expected"); assert(getObject(id)->is_constantPool(), "constantPoolOop expected"); @@ -135,20 +126,20 @@ return getStub(getBoxedLong(obj)); } -template <> inline Handle VmIds::toString<Handle>(symbolOop symbol, TRAPS) { +template <> inline Handle VmIds::toString<Handle>(Symbol* symbol, TRAPS) { return java_lang_String::create_from_symbol(symbol, THREAD); } -template <> inline oop VmIds::toString<oop>(symbolOop symbol, TRAPS) { +template <> inline oop VmIds::toString<oop>(Symbol* symbol, TRAPS) { return toString<Handle>(symbol, THREAD)(); } -template <> inline jstring VmIds::toString<jstring>(symbolOop symbol, TRAPS) { +template <> inline jstring VmIds::toString<jstring>(Symbol* symbol, TRAPS) { return (jstring)JNIHandles::make_local(toString<oop>(symbol, THREAD)); } -template <> inline jobject VmIds::toString<jobject>(symbolOop symbol, TRAPS) { +template <> inline jobject VmIds::toString<jobject>(Symbol* symbol, TRAPS) { return JNIHandles::make_local(toString<oop>(symbol, THREAD)); } -inline symbolOop VmIds::toSymbol(jstring string) { +inline Symbol* VmIds::toSymbol(jstring string) { return java_lang_String::as_symbol_or_null(JNIHandles::resolve(string)); }
--- a/src/share/vm/ci/ciSymbol.hpp Wed Feb 16 13:47:20 2011 +0100 +++ b/src/share/vm/ci/ciSymbol.hpp Wed Feb 16 14:21:52 2011 +0100 @@ -53,11 +53,9 @@ ciSymbol(Symbol* s); // normal case, for symbols not mentioned in vmSymbols ciSymbol(Symbol* s, vmSymbols::SID sid); // for use with vmSymbols +public: Symbol* get_symbol() const { return _symbol; } -public: - symbolOop get_symbolOop() const { return (symbolOop)get_oop(); } - private: const char* type_string() { return "ciSymbol"; }
--- a/src/share/vm/runtime/javaCalls.cpp Wed Feb 16 13:47:20 2011 +0100 +++ b/src/share/vm/runtime/javaCalls.cpp Wed Feb 16 14:21:52 2011 +0100 @@ -201,7 +201,7 @@ // ============ Interface calls ============ -void JavaCalls::call_interface(JavaValue* result, KlassHandle spec_klass, symbolHandle name, symbolHandle signature, JavaCallArguments* args, TRAPS) { +void JavaCalls::call_interface(JavaValue* result, KlassHandle spec_klass, Symbol* name, Symbol* signature, JavaCallArguments* args, TRAPS) { CallInfo callinfo; Handle receiver = args->receiver(); KlassHandle recvrKlass(THREAD, receiver.is_null() ? (klassOop)NULL : receiver->klass());
--- a/src/share/vm/runtime/javaCalls.hpp Wed Feb 16 13:47:20 2011 +0100 +++ b/src/share/vm/runtime/javaCalls.hpp Wed Feb 16 14:21:52 2011 +0100 @@ -199,7 +199,7 @@ // ------------ // The receiver must be first oop in argument list - static void call_interface(JavaValue* result, KlassHandle spec_klass, symbolHandle name, symbolHandle signature, JavaCallArguments* args, TRAPS); + static void call_interface(JavaValue* result, KlassHandle spec_klass, Symbol* name, Symbol* signature, JavaCallArguments* args, TRAPS); // virtual call // ------------