| Index: runtime/vm/raw_object.h
|
| diff --git a/runtime/vm/raw_object.h b/runtime/vm/raw_object.h
|
| index dd0d7e08e8011a032d4cb6a2e05eecf0fa786326..b987a299a776c7068f5e0b359d04e82420374726 100644
|
| --- a/runtime/vm/raw_object.h
|
| +++ b/runtime/vm/raw_object.h
|
| @@ -766,10 +766,6 @@ class RawCode : public RawObject {
|
| // This cannot be boolean because of alignment issues on x64 architectures.
|
| intptr_t is_optimized_;
|
|
|
| - // The number of spill slots used by an optimized code object. This is
|
| - // used as the length of each stackmap in the code.
|
| - intptr_t spill_slot_count_;
|
| -
|
| // Variable length data follows here.
|
| int32_t data_[0];
|
|
|
| @@ -807,28 +803,20 @@ class RawPcDescriptors : public RawObject {
|
| };
|
|
|
|
|
| -// Stackmap is an immutable representation of the layout of the stack at
|
| -// a PC. The stack map representation consists of a bit map which marks
|
| -// each stack slot index starting from the FP (frame pointer) as an object
|
| -// or regular untagged value.
|
| -// The Stackmap also consists of a link to code object corresponding to
|
| -// the frame which the stack map is describing.
|
| -// The bit map representation is optimized for dense and small bit maps,
|
| -// without any upper bound.
|
| +// Stackmap is an immutable representation of the layout of the stack at a
|
| +// PC. The stack map representation consists of a bit map which marks each
|
| +// live object index starting from the base of the frame.
|
| +//
|
| +// The Stackmap also consists of a link to the code object corresponding to
|
| +// the frame which the stack map is describing. The bit map representation
|
| +// is optimized for dense and small bit maps, without any upper bound.
|
| class RawStackmap : public RawObject {
|
| RAW_HEAP_OBJECT_IMPLEMENTATION(Stackmap);
|
|
|
| - RawObject** from() {
|
| - return reinterpret_cast<RawObject**>(&ptr()->code_);
|
| - }
|
| RawCode* code_; // Code object corresponding to the frame described.
|
| - RawSmi* bitmap_size_in_bytes_; // Size of the bit map in bytes.
|
| - RawObject** to() {
|
| - return reinterpret_cast<RawObject**>(&ptr()->bitmap_size_in_bytes_);
|
| - }
|
| +
|
| + intptr_t length_; // Length of payload, in bits.
|
| uword pc_; // PC corresponding to this stack map representation.
|
| - intptr_t min_set_bit_index_; // Minimum bit offset which is set.
|
| - intptr_t max_set_bit_index_; // Maximum bit offset which is set.
|
|
|
| // Variable length data follows here (bitmap of the stack layout).
|
| uint8_t data_[0];
|
|
|