comparison src/share/vm/oops/klass.hpp @ 18046:096a7e12d63f

8036805: Correct linker method lookup. Summary: Correct handling of array of primitive type qualifiers during field and method resolution. Reviewed-by: acorn, hseigel, ahgross
author lfoltan
date Tue, 15 Apr 2014 16:17:20 -0400
parents b2e698d2276c
children 54bc75c144b0
comparison
equal deleted inserted replaced
17583:b5ae226b7516 18046:096a7e12d63f
1 /* 1 /*
2 * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved. 2 * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 * 4 *
5 * This code is free software; you can redistribute it and/or modify it 5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as 6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation. 7 * published by the Free Software Foundation.
89 template <class T> class GrowableArray; 89 template <class T> class GrowableArray;
90 class ClassLoaderData; 90 class ClassLoaderData;
91 class klassVtable; 91 class klassVtable;
92 class ParCompactionManager; 92 class ParCompactionManager;
93 class KlassSizeStats; 93 class KlassSizeStats;
94 class fieldDescriptor;
94 95
95 class Klass : public Metadata { 96 class Klass : public Metadata {
96 friend class VMStructs; 97 friend class VMStructs;
97 protected: 98 protected:
98 // note: put frequently-used fields together at start of klass structure 99 // note: put frequently-used fields together at start of klass structure
419 virtual bool should_be_initialized() const { return false; } 420 virtual bool should_be_initialized() const { return false; }
420 // initializes the klass 421 // initializes the klass
421 virtual void initialize(TRAPS); 422 virtual void initialize(TRAPS);
422 // lookup operation for MethodLookupCache 423 // lookup operation for MethodLookupCache
423 friend class MethodLookupCache; 424 friend class MethodLookupCache;
425 virtual Klass* find_field(Symbol* name, Symbol* signature, fieldDescriptor* fd) const;
424 virtual Method* uncached_lookup_method(Symbol* name, Symbol* signature) const; 426 virtual Method* uncached_lookup_method(Symbol* name, Symbol* signature) const;
425 public: 427 public:
426 Method* lookup_method(Symbol* name, Symbol* signature) const { 428 Method* lookup_method(Symbol* name, Symbol* signature) const {
427 return uncached_lookup_method(name, signature); 429 return uncached_lookup_method(name, signature);
428 } 430 }