| Index: src/hydrogen-instructions.h
|
| ===================================================================
|
| --- src/hydrogen-instructions.h (revision 13123)
|
| +++ src/hydrogen-instructions.h (working copy)
|
| @@ -4342,11 +4342,12 @@
|
|
|
|
|
| class HLoadKeyed
|
| - : public HTemplateInstruction<3>, public ArrayInstructionInterface {
|
| + : public HTemplateInstruction<4>, public ArrayInstructionInterface {
|
| public:
|
| HLoadKeyed(HValue* obj,
|
| HValue* key,
|
| HValue* dependency,
|
| + HValue* prefetch_distance,
|
| ElementsKind elements_kind)
|
| : bit_field_(0) {
|
| bit_field_ = ElementsKindField::encode(elements_kind);
|
| @@ -4354,6 +4355,7 @@
|
| SetOperandAt(0, obj);
|
| SetOperandAt(1, key);
|
| SetOperandAt(2, dependency);
|
| + SetOperandAt(3, prefetch_distance);
|
|
|
| if (!is_external()) {
|
| // I can detect the case between storing double (holey and fast) and
|
| @@ -4395,6 +4397,10 @@
|
| HValue* elements() { return OperandAt(0); }
|
| HValue* key() { return OperandAt(1); }
|
| HValue* dependency() { return OperandAt(2); }
|
| + HValue* prefetch_distance() { return OperandAt(3); }
|
| + void SetPrefetchDistance(HValue* prefetch_distance) {
|
| + SetOperandAt(3, prefetch_distance);
|
| + }
|
| uint32_t index_offset() { return IndexOffsetField::decode(bit_field_); }
|
| void SetIndexOffset(uint32_t index_offset) {
|
| bit_field_ = IndexOffsetField::update(bit_field_, index_offset);
|
|
|