Chromium Code Reviews| Index: runtime/vm/raw_object.h |
| =================================================================== |
| --- runtime/vm/raw_object.h (revision 37464) |
| +++ runtime/vm/raw_object.h (working copy) |
| @@ -852,16 +852,16 @@ |
| // Compilation timestamp. |
| int64_t compile_timestamp_; |
| - intptr_t pointer_offsets_length_; |
| + int32_t pointer_offsets_length_; |
| // Alive: If true, the embedded object pointers will be visited during GC. |
| // This field cannot be shorter because of alignment issues on x64 |
| // architectures. |
| - intptr_t state_bits_; // state, is_optimized, is_alive. |
| + int32_t state_bits_; // state, is_optimized, is_alive. |
|
Ivan Posva
2014/06/26 09:02:04
Can we merge some of these fields into a bit field
zra
2014/07/01 20:37:01
Combined pointer_offsets_length_ and state_bits_ w
|
| // PC offsets for code patching. |
| - intptr_t entry_patch_pc_offset_; |
| - intptr_t patch_code_pc_offset_; |
| - intptr_t lazy_deopt_pc_offset_; |
| + int32_t entry_patch_pc_offset_; |
| + int32_t patch_code_pc_offset_; |
| + int32_t lazy_deopt_pc_offset_; |
| // Variable length data follows here. |
| int32_t* data() { OPEN_ARRAY_START(int32_t, int32_t); } |
| @@ -883,7 +883,7 @@ |
| RawObject** to() { |
| return reinterpret_cast<RawObject**>(&ptr()->object_pool_); |
| } |
| - intptr_t size_; |
| + int32_t size_; |
|
siva
2014/08/25 17:33:20
Instructions::kMaxElements should be changed to re
zra
2014/09/02 17:37:56
Done.
|
| // Variable length data follows here. |
| uint8_t* data() { OPEN_ARRAY_START(uint8_t, uint8_t); } |
| @@ -904,7 +904,7 @@ |
| class RawPcDescriptors : public RawObject { |
| RAW_HEAP_OBJECT_IMPLEMENTATION(PcDescriptors); |
| - intptr_t length_; // Number of descriptors. |
| + int32_t length_; // Number of descriptors. |
|
siva
2014/08/25 17:33:20
PcDescriptors::kMaxElements should be changed to r
zra
2014/09/02 17:37:56
Done.
|
| // Variable length data follows here. |
| intptr_t* data() { OPEN_ARRAY_START(intptr_t, intptr_t); } |
| @@ -925,8 +925,8 @@ |
| // TODO(kmillikin): We need a small number of bits to encode the register |
| // count. Consider packing them in with the length. |
| - intptr_t length_; // Length of payload, in bits. |
| - intptr_t register_bit_count_; // Live register bits, included in length_. |
| + int32_t length_; // Length of payload, in bits. |
| + int32_t register_bit_count_; // Live register bits, included in length_. |
|
Ivan Posva
2014/06/26 09:02:04
BitField?
zra
2014/07/01 20:37:01
On arm64 register_bit_count_ could be as high as 9
siva
2014/08/25 17:33:20
should the signatures of
RegisterBitCount
SetRegis
zra
2014/09/02 17:37:56
Added ASSERT to SetRegisterBitCount. Thoughts on c
|
| uword pc_; // PC corresponding to this stack map representation. |
|
Ivan Posva
2014/06/26 09:02:04
We should encode most of these PCs as offset from
zra
2014/07/01 20:37:01
This one done.
|
| @@ -946,16 +946,16 @@ |
| }; |
| struct VarInfo { |
| - intptr_t index; // Slot index on stack or in context. |
| + int32_t index; // Slot index on stack or in context. |
| int8_t kind; // Entry kind of type VarInfoKind. |
|
Ivan Posva
2014/06/26 09:02:04
The index and kind field could be merged into a bi
zra
2014/07/01 20:37:01
Done.
|
| int16_t scope_id; // Scope to which the variable belongs. |
| - intptr_t begin_pos; // Token position of scope start. |
| - intptr_t end_pos; // Token position of scope end. |
| + int32_t begin_pos; // Token position of scope start. |
| + int32_t end_pos; // Token position of scope end. |
| }; |
| private: |
| RAW_HEAP_OBJECT_IMPLEMENTATION(LocalVarDescriptors); |
| - intptr_t length_; // Number of descriptors. |
| + int32_t length_; // Number of descriptors. |
| RawArray* names_; // Array of [length_] variable names. |
|
Ivan Posva
2014/06/26 09:02:04
These two fields should be swapped to get better a
zra
2014/07/01 20:37:01
Done.
|
| // Variable info with [length_] entries. |
| @@ -978,7 +978,7 @@ |
| RAW_HEAP_OBJECT_IMPLEMENTATION(ExceptionHandlers); |
| // Number of exception handler entries. |
| - intptr_t length_; |
| + int32_t length_; |
| // Array with [length_] entries. Each entry is an array of all handled |
| // exception types. |
| @@ -1004,7 +1004,7 @@ |
| class RawContext : public RawObject { |
| RAW_HEAP_OBJECT_IMPLEMENTATION(Context); |
| - intptr_t num_variables_; |
| + int32_t num_variables_; |
| Isolate* isolate_; |
| RawObject** from() { return reinterpret_cast<RawObject**>(&ptr()->parent_); } |
| @@ -1023,7 +1023,7 @@ |
| class RawContextScope : public RawObject { |
| RAW_HEAP_OBJECT_IMPLEMENTATION(ContextScope); |
| - // TODO(iposva): Switch to convential enum offset based structure to avoid |
| + // TODO(iposva): Switch to conventional enum offset based structure to avoid |
| // alignment mishaps. |
| struct VariableDesc { |
| RawSmi* token_pos; |
| @@ -1038,7 +1038,7 @@ |
| RawSmi* context_level; |
| }; |
| - intptr_t num_variables_; |
| + int32_t num_variables_; |
| RawObject** from() { |
| return reinterpret_cast<RawObject**>(&ptr()->data()[0]); |
| @@ -1307,12 +1307,12 @@ |
| // Actual length in chunks at the time of allocation (later we may |
| // clamp the operational length but we need to maintain a consistent |
| // object length so that the object can be traversed during GC). |
| - intptr_t allocated_length_; |
| + int32_t allocated_length_; |
| // Operational length in chunks of the bigint object, clamping can |
| // cause this length to be reduced. If the signed_length_ is |
| // negative then the number is negative. |
| - intptr_t signed_length_; |
| + int32_t signed_length_; |
| // A sequence of Chunks (typedef in Bignum) representing bignum digits. |
| // Bignum::Chunk chunks_[Utils::Abs(signed_length_)]; |
| @@ -1606,8 +1606,8 @@ |
| return reinterpret_cast<RawObject**>(&ptr()->pattern_); |
| } |
| - intptr_t type_; // Uninitialized, simple or complex. |
| - intptr_t flags_; // Represents global/local, case insensitive, multiline. |
| + int32_t type_; // Uninitialized, simple or complex. |
| + int32_t flags_; // Represents global/local, case insensitive, multiline. |
|
Ivan Posva
2014/06/26 09:02:04
How many values can each of these fields contain?
zra
2014/07/01 20:37:01
type_ can be 3, and flags can be 4. I've changed t
|
| // Variable length data follows here. |
| uint8_t* data() { OPEN_ARRAY_START(uint8_t, uint8_t); } |