Index: src/x64/macro-assembler-x64.h |
diff --git a/src/x64/macro-assembler-x64.h b/src/x64/macro-assembler-x64.h |
index 6408e6d6f76e25ad67802797d277c25fdab93442..dbf46782a4dff046b88c6a055cc54aad9fae6f07 100644 |
--- a/src/x64/macro-assembler-x64.h |
+++ b/src/x64/macro-assembler-x64.h |
@@ -153,6 +153,12 @@ class MacroAssembler: public Assembler { |
CompareRoot(with, index); |
j(equal, if_equal, if_equal_distance); |
} |
+ void JumpIfRoot(const Operand& with, Heap::RootListIndex index, |
+ Label* if_equal, |
+ Label::Distance if_equal_distance = Label::kNear) { |
+ CompareRoot(with, index); |
+ j(equal, if_equal, if_equal_distance); |
+ } |
// Compare the object in a register to a value and jump if they are not equal. |
void JumpIfNotRoot(Register with, Heap::RootListIndex index, |
@@ -161,6 +167,12 @@ class MacroAssembler: public Assembler { |
CompareRoot(with, index); |
j(not_equal, if_not_equal, if_not_equal_distance); |
} |
+ void JumpIfNotRoot(const Operand& with, Heap::RootListIndex index, |
+ Label* if_not_equal, |
+ Label::Distance if_not_equal_distance = Label::kNear) { |
+ CompareRoot(with, index); |
+ j(not_equal, if_not_equal, if_not_equal_distance); |
+ } |
// These functions do not arrange the registers in any particular order so |
// they are not useful for calls that can cause a GC. The caller can |