Mercurial > hg > graal-jvmci-8
comparison src/share/vm/runtime/fieldDescriptor.cpp @ 6275:957c266d8bc5
Merge with http://hg.openjdk.java.net/hsx/hsx24/hotspot/
author | Doug Simon <doug.simon@oracle.com> |
---|---|
date | Tue, 21 Aug 2012 10:39:19 +0200 |
parents | 634b8615a6ba |
children | da91efe96a93 |
comparison
equal
deleted
inserted
replaced
5891:fd8832ae511d | 6275:957c266d8bc5 |
---|---|
26 #include "classfile/systemDictionary.hpp" | 26 #include "classfile/systemDictionary.hpp" |
27 #include "classfile/vmSymbols.hpp" | 27 #include "classfile/vmSymbols.hpp" |
28 #include "memory/resourceArea.hpp" | 28 #include "memory/resourceArea.hpp" |
29 #include "memory/universe.inline.hpp" | 29 #include "memory/universe.inline.hpp" |
30 #include "oops/instanceKlass.hpp" | 30 #include "oops/instanceKlass.hpp" |
31 #include "oops/fieldStreams.hpp" | |
31 #include "runtime/fieldDescriptor.hpp" | 32 #include "runtime/fieldDescriptor.hpp" |
32 #include "runtime/handles.inline.hpp" | 33 #include "runtime/handles.inline.hpp" |
33 #include "runtime/signature.hpp" | 34 #include "runtime/signature.hpp" |
34 | 35 |
35 | 36 |
36 oop fieldDescriptor::loader() const { | 37 oop fieldDescriptor::loader() const { |
37 return instanceKlass::cast(_cp->pool_holder())->class_loader(); | 38 return instanceKlass::cast(_cp->pool_holder())->class_loader(); |
39 } | |
40 | |
41 Symbol* fieldDescriptor::generic_signature() const { | |
42 if (!has_generic_signature()) { | |
43 return NULL; | |
44 } | |
45 | |
46 int idx = 0; | |
47 instanceKlass* ik = instanceKlass::cast(field_holder()); | |
48 for (AllFieldStream fs(ik); !fs.done(); fs.next()) { | |
49 if (idx == _index) { | |
50 return fs.generic_signature(); | |
51 } else { | |
52 idx ++; | |
53 } | |
54 } | |
55 assert(false, "should never happen"); | |
56 return NULL; | |
38 } | 57 } |
39 | 58 |
40 typeArrayOop fieldDescriptor::annotations() const { | 59 typeArrayOop fieldDescriptor::annotations() const { |
41 instanceKlass* ik = instanceKlass::cast(field_holder()); | 60 instanceKlass* ik = instanceKlass::cast(field_holder()); |
42 objArrayOop md = ik->fields_annotations(); | 61 objArrayOop md = ik->fields_annotations(); |