Index: src/compiler/interpreter-assembler.cc |
diff --git a/src/compiler/interpreter-assembler.cc b/src/compiler/interpreter-assembler.cc |
index 8d470818f220c4b729e585f0299c8f5a7f935531..4807c79f1ca671f586b0fa33e772f09e3f0966e7 100644 |
--- a/src/compiler/interpreter-assembler.cc |
+++ b/src/compiler/interpreter-assembler.cc |
@@ -252,6 +252,16 @@ Node* InterpreterAssembler::BooleanConstant(bool value) { |
} |
+Node* InterpreterAssembler::NullConstant() { |
+ return raw_assembler_->NullConstant(); |
+} |
+ |
+ |
+Node* InterpreterAssembler::UndefinedConstant() { |
+ return raw_assembler_->UndefinedConstant(); |
+} |
+ |
+ |
Node* InterpreterAssembler::SmiShiftBitsConstant() { |
return Int32Constant(kSmiShiftSize + kSmiTagSize); |
} |
@@ -292,6 +302,15 @@ Node* InterpreterAssembler::LoadConstantPoolEntry(Node* index) { |
} |
+Node* InterpreterAssembler::LoadFixedArrayElement(Node* fixed_array, |
+ int index) { |
+ Node* entry_offset = |
+ IntPtrAdd(IntPtrConstant(FixedArray::kHeaderSize - kHeapObjectTag), |
+ WordShl(Int32Constant(index), kPointerSizeLog2)); |
+ return raw_assembler_->Load(kMachAnyTagged, fixed_array, entry_offset); |
+} |
+ |
+ |
Node* InterpreterAssembler::LoadObjectField(Node* object, int offset) { |
return raw_assembler_->Load(kMachAnyTagged, object, |
IntPtrConstant(offset - kHeapObjectTag)); |