equal
deleted
inserted
replaced
90 relocInfo* _locs_end; // first byte after relocation information |
90 relocInfo* _locs_end; // first byte after relocation information |
91 relocInfo* _locs_limit; // first byte after relocation information buf |
91 relocInfo* _locs_limit; // first byte after relocation information buf |
92 address _locs_point; // last relocated position (grows upward) |
92 address _locs_point; // last relocated position (grows upward) |
93 bool _locs_own; // did I allocate the locs myself? |
93 bool _locs_own; // did I allocate the locs myself? |
94 bool _frozen; // no more expansion of this section |
94 bool _frozen; // no more expansion of this section |
|
95 bool _scratch_emit; // Buffer is used for scratch emit, don't relocate. |
95 char _index; // my section number (SECT_INST, etc.) |
96 char _index; // my section number (SECT_INST, etc.) |
96 CodeBuffer* _outer; // enclosing CodeBuffer |
97 CodeBuffer* _outer; // enclosing CodeBuffer |
97 |
98 |
98 // (Note: _locs_point used to be called _last_reloc_offset.) |
99 // (Note: _locs_point used to be called _last_reloc_offset.) |
99 |
100 |
106 _locs_end = NULL; |
107 _locs_end = NULL; |
107 _locs_limit = NULL; |
108 _locs_limit = NULL; |
108 _locs_point = NULL; |
109 _locs_point = NULL; |
109 _locs_own = false; |
110 _locs_own = false; |
110 _frozen = false; |
111 _frozen = false; |
|
112 _scratch_emit = false; |
111 debug_only(_index = (char)-1); |
113 debug_only(_index = (char)-1); |
112 debug_only(_outer = (CodeBuffer*)badAddress); |
114 debug_only(_outer = (CodeBuffer*)badAddress); |
113 } |
115 } |
114 |
116 |
115 void initialize_outer(CodeBuffer* outer, int index) { |
117 void initialize_outer(CodeBuffer* outer, int index) { |
163 int index() const { return _index; } |
165 int index() const { return _index; } |
164 bool is_allocated() const { return _start != NULL; } |
166 bool is_allocated() const { return _start != NULL; } |
165 bool is_empty() const { return _start == _end; } |
167 bool is_empty() const { return _start == _end; } |
166 bool is_frozen() const { return _frozen; } |
168 bool is_frozen() const { return _frozen; } |
167 bool has_locs() const { return _locs_end != NULL; } |
169 bool has_locs() const { return _locs_end != NULL; } |
|
170 |
|
171 // Mark scratch buffer. |
|
172 void set_scratch_emit() { _scratch_emit = true; } |
|
173 bool scratch_emit() { return _scratch_emit; } |
168 |
174 |
169 CodeBuffer* outer() const { return _outer; } |
175 CodeBuffer* outer() const { return _outer; } |
170 |
176 |
171 // is a given address in this section? (2nd version is end-inclusive) |
177 // is a given address in this section? (2nd version is end-inclusive) |
172 bool contains(address pc) const { return pc >= _start && pc < _end; } |
178 bool contains(address pc) const { return pc >= _start && pc < _end; } |