139 ciKlass* get_klass_by_index_impl(const constantPoolHandle& cpool,
140 int klass_index,
141 bool& is_accessible,
142 ciInstanceKlass* loading_klass);
143 ciConstant get_constant_by_index_impl(const constantPoolHandle& cpool,
144 int pool_index, int cache_index,
145 ciInstanceKlass* loading_klass);
146 ciField* get_field_by_index_impl(ciInstanceKlass* loading_klass,
147 int field_index);
148 ciMethod* get_method_by_index_impl(const constantPoolHandle& cpool,
149 int method_index, Bytecodes::Code bc,
150 ciInstanceKlass* loading_klass);
151
152 // Helper methods
153 bool check_klass_accessibility(ciKlass* accessing_klass,
154 Klass* resolved_klass);
155 Method* lookup_method(InstanceKlass* accessor,
156 InstanceKlass* holder,
157 Symbol* name,
158 Symbol* sig,
159 Bytecodes::Code bc);
160
161 // Get a ciObject from the object factory. Ensures uniqueness
162 // of ciObjects.
163 ciObject* get_object(oop o) {
164 if (o == NULL) {
165 return _null_object_instance;
166 } else {
167 return _factory->get(o);
168 }
169 }
170
171 ciSymbol* get_symbol(Symbol* o) {
172 if (o == NULL) {
173 ShouldNotReachHere();
174 return NULL;
175 } else {
176 return _factory->get_symbol(o);
177 }
178 }
179
|
139 ciKlass* get_klass_by_index_impl(const constantPoolHandle& cpool,
140 int klass_index,
141 bool& is_accessible,
142 ciInstanceKlass* loading_klass);
143 ciConstant get_constant_by_index_impl(const constantPoolHandle& cpool,
144 int pool_index, int cache_index,
145 ciInstanceKlass* loading_klass);
146 ciField* get_field_by_index_impl(ciInstanceKlass* loading_klass,
147 int field_index);
148 ciMethod* get_method_by_index_impl(const constantPoolHandle& cpool,
149 int method_index, Bytecodes::Code bc,
150 ciInstanceKlass* loading_klass);
151
152 // Helper methods
153 bool check_klass_accessibility(ciKlass* accessing_klass,
154 Klass* resolved_klass);
155 Method* lookup_method(InstanceKlass* accessor,
156 InstanceKlass* holder,
157 Symbol* name,
158 Symbol* sig,
159 Bytecodes::Code bc,
160 constantTag tag);
161
162 // Get a ciObject from the object factory. Ensures uniqueness
163 // of ciObjects.
164 ciObject* get_object(oop o) {
165 if (o == NULL) {
166 return _null_object_instance;
167 } else {
168 return _factory->get(o);
169 }
170 }
171
172 ciSymbol* get_symbol(Symbol* o) {
173 if (o == NULL) {
174 ShouldNotReachHere();
175 return NULL;
176 } else {
177 return _factory->get_symbol(o);
178 }
179 }
180
|