equal
deleted
inserted
replaced
1139 JavaCalls::call(&result, h_method, &args, CHECK); // Static call (no args) |
1139 JavaCalls::call(&result, h_method, &args, CHECK); // Static call (no args) |
1140 } |
1140 } |
1141 } |
1141 } |
1142 |
1142 |
1143 |
1143 |
1144 void InstanceKlass::mask_for(methodHandle method, int bci, |
1144 void InstanceKlass::mask_for(const methodHandle& method, int bci, |
1145 InterpreterOopMap* entry_for) { |
1145 InterpreterOopMap* entry_for) { |
1146 // Dirty read, then double-check under a lock. |
1146 // Dirty read, then double-check under a lock. |
1147 if (_oop_map_cache == NULL) { |
1147 if (_oop_map_cache == NULL) { |
1148 // Otherwise, allocate a new one. |
1148 // Otherwise, allocate a new one. |
1149 MutexLocker x(OopMapCacheAlloc_lock); |
1149 MutexLocker x(OopMapCacheAlloc_lock); |
1643 // Lookup or create a jmethodID. |
1643 // Lookup or create a jmethodID. |
1644 // This code is called by the VMThread and JavaThreads so the |
1644 // This code is called by the VMThread and JavaThreads so the |
1645 // locking has to be done very carefully to avoid deadlocks |
1645 // locking has to be done very carefully to avoid deadlocks |
1646 // and/or other cache consistency problems. |
1646 // and/or other cache consistency problems. |
1647 // |
1647 // |
1648 jmethodID InstanceKlass::get_jmethod_id(instanceKlassHandle ik_h, methodHandle method_h) { |
1648 jmethodID InstanceKlass::get_jmethod_id(instanceKlassHandle ik_h, const methodHandle& method_h) { |
1649 size_t idnum = (size_t)method_h->method_idnum(); |
1649 size_t idnum = (size_t)method_h->method_idnum(); |
1650 jmethodID* jmeths = ik_h->methods_jmethod_ids_acquire(); |
1650 jmethodID* jmeths = ik_h->methods_jmethod_ids_acquire(); |
1651 size_t length = 0; |
1651 size_t length = 0; |
1652 jmethodID id = NULL; |
1652 jmethodID id = NULL; |
1653 |
1653 |
2411 // Returns true iff super_method can be overridden by a method in targetclassname |
2411 // Returns true iff super_method can be overridden by a method in targetclassname |
2412 // See JSL 3rd edition 8.4.6.1 |
2412 // See JSL 3rd edition 8.4.6.1 |
2413 // Assumes name-signature match |
2413 // Assumes name-signature match |
2414 // "this" is InstanceKlass of super_method which must exist |
2414 // "this" is InstanceKlass of super_method which must exist |
2415 // note that the InstanceKlass of the method in the targetclassname has not always been created yet |
2415 // note that the InstanceKlass of the method in the targetclassname has not always been created yet |
2416 bool InstanceKlass::is_override(methodHandle super_method, Handle targetclassloader, Symbol* targetclassname, TRAPS) { |
2416 bool InstanceKlass::is_override(const methodHandle& super_method, Handle targetclassloader, Symbol* targetclassname, TRAPS) { |
2417 // Private methods can not be overridden |
2417 // Private methods can not be overridden |
2418 if (super_method->is_private()) { |
2418 if (super_method->is_private()) { |
2419 return false; |
2419 return false; |
2420 } |
2420 } |
2421 // If super method is accessible, then override |
2421 // If super method is accessible, then override |