Mercurial > hg > truffle
comparison src/share/vm/code/codeBlob.hpp @ 2059:9508a52cbd32
Add deoptimization blob support.
author | Thomas Wuerthinger <wuerthinger@ssw.jku.at> |
---|---|
date | Wed, 19 Jan 2011 15:48:15 +0100 |
parents | f95d63e2154a |
children | 98fa88528319 |
comparison
equal
deleted
inserted
replaced
2058:8f033d37798a | 2059:9508a52cbd32 |
---|---|
350 int _unpack_with_exception; | 350 int _unpack_with_exception; |
351 int _unpack_with_reexecution; | 351 int _unpack_with_reexecution; |
352 | 352 |
353 int _unpack_with_exception_in_tls; | 353 int _unpack_with_exception_in_tls; |
354 | 354 |
355 // (tw) Offset when C1X calls uncommon_trap. | |
356 int _uncommon_trap_offset; | |
357 | |
358 | |
355 // Creation support | 359 // Creation support |
356 DeoptimizationBlob( | 360 DeoptimizationBlob( |
357 CodeBuffer* cb, | 361 CodeBuffer* cb, |
358 int size, | 362 int size, |
359 OopMapSet* oop_maps, | 363 OopMapSet* oop_maps, |
405 void set_unpack_with_exception_in_tls_offset(int offset) { | 409 void set_unpack_with_exception_in_tls_offset(int offset) { |
406 _unpack_with_exception_in_tls = offset; | 410 _unpack_with_exception_in_tls = offset; |
407 assert(code_contains(code_begin() + _unpack_with_exception_in_tls), "must be PC inside codeblob"); | 411 assert(code_contains(code_begin() + _unpack_with_exception_in_tls), "must be PC inside codeblob"); |
408 } | 412 } |
409 address unpack_with_exception_in_tls() const { return code_begin() + _unpack_with_exception_in_tls; } | 413 address unpack_with_exception_in_tls() const { return code_begin() + _unpack_with_exception_in_tls; } |
414 | |
415 // (tw) Offset when C1X calls uncommon_trap. | |
416 void set_uncommon_trap_offset(int offset) { | |
417 _uncommon_trap_offset = offset; | |
418 assert(contains(code_begin() + _uncommon_trap_offset), "must be PC inside codeblob"); | |
419 } | |
420 address uncommon_trap() const { return code_begin() + _uncommon_trap_offset; } | |
421 | |
410 }; | 422 }; |
411 | 423 |
412 | 424 |
413 //---------------------------------------------------------------------------------------------------- | 425 //---------------------------------------------------------------------------------------------------- |
414 // UncommonTrapBlob (currently only used by Compiler 2) | 426 // UncommonTrapBlob (currently only used by Compiler 2) |