Index: runtime/vm/assembler_arm.h |
=================================================================== |
--- runtime/vm/assembler_arm.h (revision 25638) |
+++ runtime/vm/assembler_arm.h (working copy) |
@@ -297,10 +297,11 @@ |
class Assembler : public ValueObject { |
public: |
- Assembler() |
+ explicit Assembler(bool use_far_branches = false) |
: buffer_(), |
object_pool_(GrowableObjectArray::Handle()), |
prologue_offset_(-1), |
+ use_far_branches_(use_far_branches), |
comments_() { } |
~Assembler() { } |
@@ -317,6 +318,8 @@ |
} |
const GrowableObjectArray& object_pool() const { return object_pool_; } |
+ bool use_far_branches() const { return use_far_branches_; } |
+ |
void FinalizeInstructions(const MemoryRegion& region) { |
buffer_.FinalizeInstructions(region); |
} |
@@ -733,6 +736,8 @@ |
GrowableObjectArray& object_pool_; // Objects and patchable jump targets. |
int32_t prologue_offset_; |
+ bool use_far_branches_; |
+ |
int32_t AddObject(const Object& obj); |
int32_t AddExternalLabel(const ExternalLabel* label); |