OLD | NEW |
---|---|
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 #ifndef VM_ASSEMBLER_MIPS_H_ | 5 #ifndef VM_ASSEMBLER_MIPS_H_ |
6 #define VM_ASSEMBLER_MIPS_H_ | 6 #define VM_ASSEMBLER_MIPS_H_ |
7 | 7 |
8 #ifndef VM_ASSEMBLER_H_ | 8 #ifndef VM_ASSEMBLER_H_ |
9 #error Do not include assembler_mips.h directly; use assembler.h instead. | 9 #error Do not include assembler_mips.h directly; use assembler.h instead. |
10 #endif | 10 #endif |
(...skipping 145 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
156 comments_() { } | 156 comments_() { } |
157 ~Assembler() { } | 157 ~Assembler() { } |
158 | 158 |
159 void PopRegister(Register r) { Pop(r); } | 159 void PopRegister(Register r) { Pop(r); } |
160 | 160 |
161 void Bind(Label* label); | 161 void Bind(Label* label); |
162 | 162 |
163 // Misc. functionality | 163 // Misc. functionality |
164 intptr_t CodeSize() const { return buffer_.Size(); } | 164 intptr_t CodeSize() const { return buffer_.Size(); } |
165 intptr_t prologue_offset() const { return prologue_offset_; } | 165 intptr_t prologue_offset() const { return prologue_offset_; } |
166 | |
167 // Count the fixups that produce a pointer offset, without processing | |
168 // the fixups. | |
169 intptr_t CountPointerOffsets() const { | |
170 return buffer_.CountPointerOffsets(); | |
Ivan Posva
2014/02/03 05:44:35
Does MIPS code really contain pointer offsets?
| |
171 } | |
172 | |
166 const ZoneGrowableArray<intptr_t>& GetPointerOffsets() const { | 173 const ZoneGrowableArray<intptr_t>& GetPointerOffsets() const { |
167 return buffer_.pointer_offsets(); | 174 return buffer_.pointer_offsets(); |
168 } | 175 } |
169 const GrowableObjectArray& object_pool() const { return object_pool_; } | 176 const GrowableObjectArray& object_pool() const { return object_pool_; } |
170 void FinalizeInstructions(const MemoryRegion& region) { | 177 void FinalizeInstructions(const MemoryRegion& region) { |
171 buffer_.FinalizeInstructions(region); | 178 buffer_.FinalizeInstructions(region); |
172 } | 179 } |
173 | 180 |
174 bool use_far_branches() const { | 181 bool use_far_branches() const { |
175 return FLAG_use_far_branches || use_far_branches_; | 182 return FLAG_use_far_branches || use_far_branches_; |
(...skipping 1126 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1302 Register value, | 1309 Register value, |
1303 Label* no_update); | 1310 Label* no_update); |
1304 | 1311 |
1305 DISALLOW_ALLOCATION(); | 1312 DISALLOW_ALLOCATION(); |
1306 DISALLOW_COPY_AND_ASSIGN(Assembler); | 1313 DISALLOW_COPY_AND_ASSIGN(Assembler); |
1307 }; | 1314 }; |
1308 | 1315 |
1309 } // namespace dart | 1316 } // namespace dart |
1310 | 1317 |
1311 #endif // VM_ASSEMBLER_MIPS_H_ | 1318 #endif // VM_ASSEMBLER_MIPS_H_ |
OLD | NEW |