Index: runtime/vm/assembler_ia32.h |
diff --git a/runtime/vm/assembler_ia32.h b/runtime/vm/assembler_ia32.h |
index bac86c487ea0ac590ad8640caa54030f65c090a6..44ba10ef3c0dbbfde092641afb8ed863dba18feb 100644 |
--- a/runtime/vm/assembler_ia32.h |
+++ b/runtime/vm/assembler_ia32.h |
@@ -305,7 +305,8 @@ class Assembler : public ValueObject { |
: buffer_(), |
prologue_offset_(-1), |
jit_cookie_(0), |
- comments_() { |
+ comments_(), |
+ code_(Code::ZoneHandle()) { |
// This mode is only needed and implemented for MIPS and ARM. |
ASSERT(!use_far_branches); |
} |
@@ -957,6 +958,12 @@ class Assembler : public ValueObject { |
return !object.IsSmi() || IsSafeSmi(object); |
} |
+ void set_code_object(const Code& code) { |
+ code_ ^= code.raw(); |
+ } |
+ |
+ void PushCodeObject(); |
+ |
private: |
class CodeComment : public ZoneAllocated { |
public: |
@@ -1017,6 +1024,7 @@ class Assembler : public ValueObject { |
intptr_t prologue_offset_; |
int32_t jit_cookie_; |
GrowableArray<CodeComment*> comments_; |
+ Code& code_; |
DISALLOW_ALLOCATION(); |
DISALLOW_COPY_AND_ASSIGN(Assembler); |