Mercurial > hg > truffle
comparison src/share/vm/code/nmethod.hpp @ 7660:0b646334c5f7
keep track of leafGraphIds only at the StructuredGraph level (see GRAAL-60)
author | Lukas Stadler <lukas.stadler@jku.at> |
---|---|
date | Fri, 01 Feb 2013 17:32:59 +0100 |
parents | 5d0bb7d52783 |
children | b8f261ba79c6 |
comparison
equal
deleted
inserted
replaced
7656:01aeaf194641 | 7660:0b646334c5f7 |
---|---|
157 int _scopes_data_offset; | 157 int _scopes_data_offset; |
158 int _scopes_pcs_offset; | 158 int _scopes_pcs_offset; |
159 int _dependencies_offset; | 159 int _dependencies_offset; |
160 int _handler_table_offset; | 160 int _handler_table_offset; |
161 int _nul_chk_table_offset; | 161 int _nul_chk_table_offset; |
162 int _leaf_graph_ids_offset; | |
162 int _nmethod_end_offset; | 163 int _nmethod_end_offset; |
163 | 164 |
164 // location in frame (offset for sp) that deopt can store the original | 165 // location in frame (offset for sp) that deopt can store the original |
165 // pc during a deopt. | 166 // pc during a deopt. |
166 int _orig_pc_offset; | 167 int _orig_pc_offset; |
265 int frame_size, | 266 int frame_size, |
266 OopMapSet* oop_maps, | 267 OopMapSet* oop_maps, |
267 ExceptionHandlerTable* handler_table, | 268 ExceptionHandlerTable* handler_table, |
268 ImplicitExceptionTable* nul_chk_table, | 269 ImplicitExceptionTable* nul_chk_table, |
269 AbstractCompiler* compiler, | 270 AbstractCompiler* compiler, |
270 int comp_level | 271 int comp_level, |
272 GrowableArray<jlong>* leaf_graph_ids | |
271 #ifdef GRAAL | 273 #ifdef GRAAL |
272 , Handle installed_code = NULL | 274 , Handle installed_code |
273 #endif | 275 #endif |
274 ); | 276 ); |
275 | 277 |
276 // helper methods | 278 // helper methods |
277 void* operator new(size_t size, int nmethod_size); | 279 void* operator new(size_t size, int nmethod_size); |
305 int frame_size, | 307 int frame_size, |
306 OopMapSet* oop_maps, | 308 OopMapSet* oop_maps, |
307 ExceptionHandlerTable* handler_table, | 309 ExceptionHandlerTable* handler_table, |
308 ImplicitExceptionTable* nul_chk_table, | 310 ImplicitExceptionTable* nul_chk_table, |
309 AbstractCompiler* compiler, | 311 AbstractCompiler* compiler, |
310 int comp_level | 312 int comp_level, |
313 GrowableArray<jlong>* leaf_graph_ids = NULL | |
311 #ifdef GRAAL | 314 #ifdef GRAAL |
312 , Handle installed_code = NULL | 315 , Handle installed_code = NULL |
313 #endif | 316 #endif |
314 ); | 317 ); |
315 | 318 |
381 address dependencies_begin () const { return header_begin() + _dependencies_offset ; } | 384 address dependencies_begin () const { return header_begin() + _dependencies_offset ; } |
382 address dependencies_end () const { return header_begin() + _handler_table_offset ; } | 385 address dependencies_end () const { return header_begin() + _handler_table_offset ; } |
383 address handler_table_begin () const { return header_begin() + _handler_table_offset ; } | 386 address handler_table_begin () const { return header_begin() + _handler_table_offset ; } |
384 address handler_table_end () const { return header_begin() + _nul_chk_table_offset ; } | 387 address handler_table_end () const { return header_begin() + _nul_chk_table_offset ; } |
385 address nul_chk_table_begin () const { return header_begin() + _nul_chk_table_offset ; } | 388 address nul_chk_table_begin () const { return header_begin() + _nul_chk_table_offset ; } |
386 address nul_chk_table_end () const { return header_begin() + _nmethod_end_offset ; } | 389 address nul_chk_table_end () const { return header_begin() + _leaf_graph_ids_offset; } |
390 jlong* leaf_graph_ids_begin () const { return (jlong*)(header_begin() + _leaf_graph_ids_offset); } | |
391 jlong* leaf_graph_ids_end () const { return (jlong*)(header_begin() + _nmethod_end_offset) ; } | |
387 | 392 |
388 // Sizes | 393 // Sizes |
389 int consts_size () const { return consts_end () - consts_begin (); } | 394 int consts_size () const { return consts_end () - consts_begin (); } |
390 int insts_size () const { return insts_end () - insts_begin (); } | 395 int insts_size () const { return insts_end () - insts_begin (); } |
391 int stub_size () const { return stub_end () - stub_begin (); } | 396 int stub_size () const { return stub_end () - stub_begin (); } |