Commit 31c77b13 authored by oth's avatar oth Committed by Commit bot

[interpreter] Address naming inconsistencies in bytecodes.

BUG=v8:4280
LOG=N

Review-Url: https://codereview.chromium.org/2007023003
Cr-Commit-Position: refs/heads/master@{#36509}
parent a436e3dd
...@@ -756,7 +756,7 @@ Node* BytecodeGraphBuilder::BuildNamedLoad() { ...@@ -756,7 +756,7 @@ Node* BytecodeGraphBuilder::BuildNamedLoad() {
return NewNode(op, object, GetFunctionClosure()); return NewNode(op, object, GetFunctionClosure());
} }
void BytecodeGraphBuilder::VisitLoadIC() { void BytecodeGraphBuilder::VisitLdaNamedProperty() {
FrameStateBeforeAndAfter states(this); FrameStateBeforeAndAfter states(this);
Node* node = BuildNamedLoad(); Node* node = BuildNamedLoad();
environment()->BindAccumulator(node, &states); environment()->BindAccumulator(node, &states);
...@@ -780,7 +780,7 @@ Node* BytecodeGraphBuilder::BuildKeyedLoad() { ...@@ -780,7 +780,7 @@ Node* BytecodeGraphBuilder::BuildKeyedLoad() {
return NewNode(op, object, key, GetFunctionClosure()); return NewNode(op, object, key, GetFunctionClosure());
} }
void BytecodeGraphBuilder::VisitKeyedLoadIC() { void BytecodeGraphBuilder::VisitLdaKeyedProperty() {
FrameStateBeforeAndAfter states(this); FrameStateBeforeAndAfter states(this);
Node* node = BuildKeyedLoad(); Node* node = BuildKeyedLoad();
environment()->BindAccumulator(node, &states); environment()->BindAccumulator(node, &states);
...@@ -808,11 +808,11 @@ void BytecodeGraphBuilder::BuildNamedStore(LanguageMode language_mode) { ...@@ -808,11 +808,11 @@ void BytecodeGraphBuilder::BuildNamedStore(LanguageMode language_mode) {
environment()->RecordAfterState(node, &states); environment()->RecordAfterState(node, &states);
} }
void BytecodeGraphBuilder::VisitStoreICSloppy() { void BytecodeGraphBuilder::VisitStaNamedPropertySloppy() {
BuildNamedStore(LanguageMode::SLOPPY); BuildNamedStore(LanguageMode::SLOPPY);
} }
void BytecodeGraphBuilder::VisitStoreICStrict() { void BytecodeGraphBuilder::VisitStaNamedPropertyStrict() {
BuildNamedStore(LanguageMode::STRICT); BuildNamedStore(LanguageMode::STRICT);
} }
...@@ -831,11 +831,11 @@ void BytecodeGraphBuilder::BuildKeyedStore(LanguageMode language_mode) { ...@@ -831,11 +831,11 @@ void BytecodeGraphBuilder::BuildKeyedStore(LanguageMode language_mode) {
environment()->RecordAfterState(node, &states); environment()->RecordAfterState(node, &states);
} }
void BytecodeGraphBuilder::VisitKeyedStoreICSloppy() { void BytecodeGraphBuilder::VisitStaKeyedPropertySloppy() {
BuildKeyedStore(LanguageMode::SLOPPY); BuildKeyedStore(LanguageMode::SLOPPY);
} }
void BytecodeGraphBuilder::VisitKeyedStoreICStrict() { void BytecodeGraphBuilder::VisitStaKeyedPropertyStrict() {
BuildKeyedStore(LanguageMode::STRICT); BuildKeyedStore(LanguageMode::STRICT);
} }
......
...@@ -363,8 +363,9 @@ BytecodeArrayBuilder& BytecodeArrayBuilder::LoadNamedProperty( ...@@ -363,8 +363,9 @@ BytecodeArrayBuilder& BytecodeArrayBuilder::LoadNamedProperty(
OperandScale operand_scale = Bytecodes::OperandSizesToScale( OperandScale operand_scale = Bytecodes::OperandSizesToScale(
object.SizeOfOperand(), Bytecodes::SizeForUnsignedOperand(name_index), object.SizeOfOperand(), Bytecodes::SizeForUnsignedOperand(name_index),
Bytecodes::SizeForUnsignedOperand(feedback_slot)); Bytecodes::SizeForUnsignedOperand(feedback_slot));
OutputScaled(Bytecode::kLoadIC, operand_scale, RegisterOperand(object), OutputScaled(Bytecode::kLdaNamedProperty, operand_scale,
UnsignedOperand(name_index), UnsignedOperand(feedback_slot)); RegisterOperand(object), UnsignedOperand(name_index),
UnsignedOperand(feedback_slot));
return *this; return *this;
} }
...@@ -372,15 +373,15 @@ BytecodeArrayBuilder& BytecodeArrayBuilder::LoadKeyedProperty( ...@@ -372,15 +373,15 @@ BytecodeArrayBuilder& BytecodeArrayBuilder::LoadKeyedProperty(
Register object, int feedback_slot) { Register object, int feedback_slot) {
OperandScale operand_scale = Bytecodes::OperandSizesToScale( OperandScale operand_scale = Bytecodes::OperandSizesToScale(
object.SizeOfOperand(), Bytecodes::SizeForUnsignedOperand(feedback_slot)); object.SizeOfOperand(), Bytecodes::SizeForUnsignedOperand(feedback_slot));
OutputScaled(Bytecode::kKeyedLoadIC, operand_scale, RegisterOperand(object), OutputScaled(Bytecode::kLdaKeyedProperty, operand_scale,
UnsignedOperand(feedback_slot)); RegisterOperand(object), UnsignedOperand(feedback_slot));
return *this; return *this;
} }
BytecodeArrayBuilder& BytecodeArrayBuilder::StoreNamedProperty( BytecodeArrayBuilder& BytecodeArrayBuilder::StoreNamedProperty(
Register object, const Handle<Name> name, int feedback_slot, Register object, const Handle<Name> name, int feedback_slot,
LanguageMode language_mode) { LanguageMode language_mode) {
Bytecode bytecode = BytecodeForStoreIC(language_mode); Bytecode bytecode = BytecodeForStoreNamedProperty(language_mode);
size_t name_index = GetConstantPoolEntry(name); size_t name_index = GetConstantPoolEntry(name);
OperandScale operand_scale = Bytecodes::OperandSizesToScale( OperandScale operand_scale = Bytecodes::OperandSizesToScale(
object.SizeOfOperand(), Bytecodes::SizeForUnsignedOperand(name_index), object.SizeOfOperand(), Bytecodes::SizeForUnsignedOperand(name_index),
...@@ -394,7 +395,7 @@ BytecodeArrayBuilder& BytecodeArrayBuilder::StoreNamedProperty( ...@@ -394,7 +395,7 @@ BytecodeArrayBuilder& BytecodeArrayBuilder::StoreNamedProperty(
BytecodeArrayBuilder& BytecodeArrayBuilder::StoreKeyedProperty( BytecodeArrayBuilder& BytecodeArrayBuilder::StoreKeyedProperty(
Register object, Register key, int feedback_slot, Register object, Register key, int feedback_slot,
LanguageMode language_mode) { LanguageMode language_mode) {
Bytecode bytecode = BytecodeForKeyedStoreIC(language_mode); Bytecode bytecode = BytecodeForStoreKeyedProperty(language_mode);
OperandScale operand_scale = Bytecodes::OperandSizesToScale( OperandScale operand_scale = Bytecodes::OperandSizesToScale(
object.SizeOfOperand(), key.SizeOfOperand(), object.SizeOfOperand(), key.SizeOfOperand(),
Bytecodes::SizeForUnsignedOperand(feedback_slot)); Bytecodes::SizeForUnsignedOperand(feedback_slot));
...@@ -1150,12 +1151,13 @@ Bytecode BytecodeArrayBuilder::BytecodeForCompareOperation(Token::Value op) { ...@@ -1150,12 +1151,13 @@ Bytecode BytecodeArrayBuilder::BytecodeForCompareOperation(Token::Value op) {
// static // static
Bytecode BytecodeArrayBuilder::BytecodeForStoreIC(LanguageMode language_mode) { Bytecode BytecodeArrayBuilder::BytecodeForStoreNamedProperty(
LanguageMode language_mode) {
switch (language_mode) { switch (language_mode) {
case SLOPPY: case SLOPPY:
return Bytecode::kStoreICSloppy; return Bytecode::kStaNamedPropertySloppy;
case STRICT: case STRICT:
return Bytecode::kStoreICStrict; return Bytecode::kStaNamedPropertyStrict;
default: default:
UNREACHABLE(); UNREACHABLE();
} }
...@@ -1164,13 +1166,13 @@ Bytecode BytecodeArrayBuilder::BytecodeForStoreIC(LanguageMode language_mode) { ...@@ -1164,13 +1166,13 @@ Bytecode BytecodeArrayBuilder::BytecodeForStoreIC(LanguageMode language_mode) {
// static // static
Bytecode BytecodeArrayBuilder::BytecodeForKeyedStoreIC( Bytecode BytecodeArrayBuilder::BytecodeForStoreKeyedProperty(
LanguageMode language_mode) { LanguageMode language_mode) {
switch (language_mode) { switch (language_mode) {
case SLOPPY: case SLOPPY:
return Bytecode::kKeyedStoreICSloppy; return Bytecode::kStaKeyedPropertySloppy;
case STRICT: case STRICT:
return Bytecode::kKeyedStoreICStrict; return Bytecode::kStaKeyedPropertyStrict;
default: default:
UNREACHABLE(); UNREACHABLE();
} }
......
...@@ -288,8 +288,8 @@ class BytecodeArrayBuilder final : public ZoneObject { ...@@ -288,8 +288,8 @@ class BytecodeArrayBuilder final : public ZoneObject {
static Bytecode BytecodeForBinaryOperation(Token::Value op); static Bytecode BytecodeForBinaryOperation(Token::Value op);
static Bytecode BytecodeForCountOperation(Token::Value op); static Bytecode BytecodeForCountOperation(Token::Value op);
static Bytecode BytecodeForCompareOperation(Token::Value op); static Bytecode BytecodeForCompareOperation(Token::Value op);
static Bytecode BytecodeForStoreIC(LanguageMode language_mode); static Bytecode BytecodeForStoreNamedProperty(LanguageMode language_mode);
static Bytecode BytecodeForKeyedStoreIC(LanguageMode language_mode); static Bytecode BytecodeForStoreKeyedProperty(LanguageMode language_mode);
static Bytecode BytecodeForLoadGlobal(TypeofMode typeof_mode); static Bytecode BytecodeForLoadGlobal(TypeofMode typeof_mode);
static Bytecode BytecodeForStoreGlobal(LanguageMode language_mode); static Bytecode BytecodeForStoreGlobal(LanguageMode language_mode);
static Bytecode BytecodeForStoreLookupSlot(LanguageMode language_mode); static Bytecode BytecodeForStoreLookupSlot(LanguageMode language_mode);
......
...@@ -201,10 +201,10 @@ void TransformLdaStarToLdrLdar(Bytecode new_bytecode, BytecodeNode* const last, ...@@ -201,10 +201,10 @@ void TransformLdaStarToLdrLdar(Bytecode new_bytecode, BytecodeNode* const last,
bool BytecodePeepholeOptimizer::ChangeLdaToLdr(BytecodeNode* const current) { bool BytecodePeepholeOptimizer::ChangeLdaToLdr(BytecodeNode* const current) {
if (current->bytecode() == Bytecode::kStar) { if (current->bytecode() == Bytecode::kStar) {
switch (last_.bytecode()) { switch (last_.bytecode()) {
case Bytecode::kLoadIC: case Bytecode::kLdaNamedProperty:
TransformLdaStarToLdrLdar(Bytecode::kLdrNamedProperty, &last_, current); TransformLdaStarToLdrLdar(Bytecode::kLdrNamedProperty, &last_, current);
return true; return true;
case Bytecode::kKeyedLoadIC: case Bytecode::kLdaKeyedProperty:
TransformLdaStarToLdrLdar(Bytecode::kLdrKeyedProperty, &last_, current); TransformLdaStarToLdrLdar(Bytecode::kLdrKeyedProperty, &last_, current);
return true; return true;
case Bytecode::kLdaGlobal: case Bytecode::kLdaGlobal:
......
...@@ -125,24 +125,24 @@ namespace interpreter { ...@@ -125,24 +125,24 @@ namespace interpreter {
/* Register-register transfers */ \ /* Register-register transfers */ \
V(Mov, AccumulatorUse::kNone, OperandType::kReg, OperandType::kRegOut) \ V(Mov, AccumulatorUse::kNone, OperandType::kReg, OperandType::kRegOut) \
\ \
/* LoadIC operations */ \ /* Property loads (LoadIC) operations */ \
V(LoadIC, AccumulatorUse::kWrite, OperandType::kReg, OperandType::kIdx, \ V(LdaNamedProperty, AccumulatorUse::kWrite, OperandType::kReg, \
OperandType::kIdx) \ OperandType::kIdx, OperandType::kIdx) \
V(LdrNamedProperty, AccumulatorUse::kNone, OperandType::kReg, \ V(LdrNamedProperty, AccumulatorUse::kNone, OperandType::kReg, \
OperandType::kIdx, OperandType::kIdx, OperandType::kRegOut) \ OperandType::kIdx, OperandType::kIdx, OperandType::kRegOut) \
V(KeyedLoadIC, AccumulatorUse::kReadWrite, OperandType::kReg, \ V(LdaKeyedProperty, AccumulatorUse::kReadWrite, OperandType::kReg, \
OperandType::kIdx) \ OperandType::kIdx) \
V(LdrKeyedProperty, AccumulatorUse::kRead, OperandType::kReg, \ V(LdrKeyedProperty, AccumulatorUse::kRead, OperandType::kReg, \
OperandType::kIdx, OperandType::kRegOut) \ OperandType::kIdx, OperandType::kRegOut) \
\ \
/* StoreIC operations */ \ /* Propery stores (StoreIC) operations */ \
V(StoreICSloppy, AccumulatorUse::kRead, OperandType::kReg, \ V(StaNamedPropertySloppy, AccumulatorUse::kRead, OperandType::kReg, \
OperandType::kIdx, OperandType::kIdx) \ OperandType::kIdx, OperandType::kIdx) \
V(StoreICStrict, AccumulatorUse::kRead, OperandType::kReg, \ V(StaNamedPropertyStrict, AccumulatorUse::kRead, OperandType::kReg, \
OperandType::kIdx, OperandType::kIdx) \ OperandType::kIdx, OperandType::kIdx) \
V(KeyedStoreICSloppy, AccumulatorUse::kRead, OperandType::kReg, \ V(StaKeyedPropertySloppy, AccumulatorUse::kRead, OperandType::kReg, \
OperandType::kReg, OperandType::kIdx) \ OperandType::kReg, OperandType::kIdx) \
V(KeyedStoreICStrict, AccumulatorUse::kRead, OperandType::kReg, \ V(StaKeyedPropertyStrict, AccumulatorUse::kRead, OperandType::kReg, \
OperandType::kReg, OperandType::kIdx) \ OperandType::kReg, OperandType::kIdx) \
\ \
/* Binary Operators */ \ /* Binary Operators */ \
......
...@@ -593,11 +593,11 @@ Node* Interpreter::BuildLoadNamedProperty(Callable ic, ...@@ -593,11 +593,11 @@ Node* Interpreter::BuildLoadNamedProperty(Callable ic,
smi_slot, type_feedback_vector); smi_slot, type_feedback_vector);
} }
// LoadIC <object> <name_index> <slot> // LdaNamedProperty <object> <name_index> <slot>
// //
// Calls the LoadIC at FeedBackVector slot <slot> for <object> and the name at // Calls the LoadIC at FeedBackVector slot <slot> for <object> and the name at
// constant pool entry <name_index>. // constant pool entry <name_index>.
void Interpreter::DoLoadIC(InterpreterAssembler* assembler) { void Interpreter::DoLdaNamedProperty(InterpreterAssembler* assembler) {
Callable ic = CodeFactory::LoadICInOptimizedCode(isolate_, NOT_INSIDE_TYPEOF, Callable ic = CodeFactory::LoadICInOptimizedCode(isolate_, NOT_INSIDE_TYPEOF,
UNINITIALIZED); UNINITIALIZED);
Node* result = BuildLoadNamedProperty(ic, assembler); Node* result = BuildLoadNamedProperty(ic, assembler);
...@@ -636,7 +636,7 @@ Node* Interpreter::BuildLoadKeyedProperty(Callable ic, ...@@ -636,7 +636,7 @@ Node* Interpreter::BuildLoadKeyedProperty(Callable ic,
// //
// Calls the KeyedLoadIC at FeedBackVector slot <slot> for <object> and the key // Calls the KeyedLoadIC at FeedBackVector slot <slot> for <object> and the key
// in the accumulator. // in the accumulator.
void Interpreter::DoKeyedLoadIC(InterpreterAssembler* assembler) { void Interpreter::DoLdaKeyedProperty(InterpreterAssembler* assembler) {
Callable ic = Callable ic =
CodeFactory::KeyedLoadICInOptimizedCode(isolate_, UNINITIALIZED); CodeFactory::KeyedLoadICInOptimizedCode(isolate_, UNINITIALIZED);
Node* result = BuildLoadKeyedProperty(ic, assembler); Node* result = BuildLoadKeyedProperty(ic, assembler);
...@@ -673,23 +673,23 @@ void Interpreter::DoStoreIC(Callable ic, InterpreterAssembler* assembler) { ...@@ -673,23 +673,23 @@ void Interpreter::DoStoreIC(Callable ic, InterpreterAssembler* assembler) {
__ Dispatch(); __ Dispatch();
} }
// StoreICSloppy <object> <name_index> <slot> // StaNamedPropertySloppy <object> <name_index> <slot>
// //
// Calls the sloppy mode StoreIC at FeedBackVector slot <slot> for <object> and // Calls the sloppy mode StoreIC at FeedBackVector slot <slot> for <object> and
// the name in constant pool entry <name_index> with the value in the // the name in constant pool entry <name_index> with the value in the
// accumulator. // accumulator.
void Interpreter::DoStoreICSloppy(InterpreterAssembler* assembler) { void Interpreter::DoStaNamedPropertySloppy(InterpreterAssembler* assembler) {
Callable ic = Callable ic =
CodeFactory::StoreICInOptimizedCode(isolate_, SLOPPY, UNINITIALIZED); CodeFactory::StoreICInOptimizedCode(isolate_, SLOPPY, UNINITIALIZED);
DoStoreIC(ic, assembler); DoStoreIC(ic, assembler);
} }
// StoreICStrict <object> <name_index> <slot> // StaNamedPropertyStrict <object> <name_index> <slot>
// //
// Calls the strict mode StoreIC at FeedBackVector slot <slot> for <object> and // Calls the strict mode StoreIC at FeedBackVector slot <slot> for <object> and
// the name in constant pool entry <name_index> with the value in the // the name in constant pool entry <name_index> with the value in the
// accumulator. // accumulator.
void Interpreter::DoStoreICStrict(InterpreterAssembler* assembler) { void Interpreter::DoStaNamedPropertyStrict(InterpreterAssembler* assembler) {
Callable ic = Callable ic =
CodeFactory::StoreICInOptimizedCode(isolate_, STRICT, UNINITIALIZED); CodeFactory::StoreICInOptimizedCode(isolate_, STRICT, UNINITIALIZED);
DoStoreIC(ic, assembler); DoStoreIC(ic, assembler);
...@@ -711,21 +711,21 @@ void Interpreter::DoKeyedStoreIC(Callable ic, InterpreterAssembler* assembler) { ...@@ -711,21 +711,21 @@ void Interpreter::DoKeyedStoreIC(Callable ic, InterpreterAssembler* assembler) {
__ Dispatch(); __ Dispatch();
} }
// KeyedStoreICSloppy <object> <key> <slot> // StaKeyedPropertySloppy <object> <key> <slot>
// //
// Calls the sloppy mode KeyStoreIC at FeedBackVector slot <slot> for <object> // Calls the sloppy mode KeyStoreIC at FeedBackVector slot <slot> for <object>
// and the key <key> with the value in the accumulator. // and the key <key> with the value in the accumulator.
void Interpreter::DoKeyedStoreICSloppy(InterpreterAssembler* assembler) { void Interpreter::DoStaKeyedPropertySloppy(InterpreterAssembler* assembler) {
Callable ic = Callable ic =
CodeFactory::KeyedStoreICInOptimizedCode(isolate_, SLOPPY, UNINITIALIZED); CodeFactory::KeyedStoreICInOptimizedCode(isolate_, SLOPPY, UNINITIALIZED);
DoKeyedStoreIC(ic, assembler); DoKeyedStoreIC(ic, assembler);
} }
// KeyedStoreICStrict <object> <key> <slot> // StaKeyedPropertyStrict <object> <key> <slot>
// //
// Calls the strict mode KeyStoreIC at FeedBackVector slot <slot> for <object> // Calls the strict mode KeyStoreIC at FeedBackVector slot <slot> for <object>
// and the key <key> with the value in the accumulator. // and the key <key> with the value in the accumulator.
void Interpreter::DoKeyedStoreICStrict(InterpreterAssembler* assembler) { void Interpreter::DoStaKeyedPropertyStrict(InterpreterAssembler* assembler) {
Callable ic = Callable ic =
CodeFactory::KeyedStoreICInOptimizedCode(isolate_, STRICT, UNINITIALIZED); CodeFactory::KeyedStoreICInOptimizedCode(isolate_, STRICT, UNINITIALIZED);
DoKeyedStoreIC(ic, assembler); DoKeyedStoreIC(ic, assembler);
......
...@@ -41,14 +41,14 @@ bytecodes: [ ...@@ -41,14 +41,14 @@ bytecodes: [
B(LdaZero), B(LdaZero),
B(Star), R(1), B(Star), R(1),
/* 54 E> */ B(Ldar), R(0), /* 54 E> */ B(Ldar), R(0),
B(KeyedStoreICSloppy), R(2), R(1), U8(1), B(StaKeyedPropertySloppy), R(2), R(1), U8(1),
B(LdaSmi), U8(1), B(LdaSmi), U8(1),
B(Star), R(1), B(Star), R(1),
/* 57 E> */ B(Ldar), R(0), /* 57 E> */ B(Ldar), R(0),
B(Star), R(3), B(Star), R(3),
B(LdaSmi), U8(1), B(LdaSmi), U8(1),
B(Add), R(3), B(Add), R(3),
B(KeyedStoreICSloppy), R(2), R(1), U8(1), B(StaKeyedPropertySloppy), R(2), R(1), U8(1),
B(Ldar), R(2), B(Ldar), R(2),
/* 66 S> */ B(Return), /* 66 S> */ B(Return),
] ]
...@@ -96,9 +96,9 @@ bytecodes: [ ...@@ -96,9 +96,9 @@ bytecodes: [
B(LdaZero), B(LdaZero),
B(Star), R(3), B(Star), R(3),
/* 56 E> */ B(Ldar), R(0), /* 56 E> */ B(Ldar), R(0),
B(KeyedStoreICSloppy), R(4), R(3), U8(1), B(StaKeyedPropertySloppy), R(4), R(3), U8(1),
B(Ldar), R(4), B(Ldar), R(4),
B(KeyedStoreICSloppy), R(2), R(1), U8(5), B(StaKeyedPropertySloppy), R(2), R(1), U8(5),
B(LdaSmi), U8(1), B(LdaSmi), U8(1),
B(Star), R(1), B(Star), R(1),
B(CreateArrayLiteral), U8(2), U8(1), U8(3), B(CreateArrayLiteral), U8(2), U8(1), U8(3),
...@@ -109,9 +109,9 @@ bytecodes: [ ...@@ -109,9 +109,9 @@ bytecodes: [
B(Star), R(5), B(Star), R(5),
B(LdaSmi), U8(2), B(LdaSmi), U8(2),
B(Add), R(5), B(Add), R(5),
B(KeyedStoreICSloppy), R(4), R(3), U8(3), B(StaKeyedPropertySloppy), R(4), R(3), U8(3),
B(Ldar), R(4), B(Ldar), R(4),
B(KeyedStoreICSloppy), R(2), R(1), U8(5), B(StaKeyedPropertySloppy), R(2), R(1), U8(5),
B(Ldar), R(2), B(Ldar), R(2),
/* 77 S> */ B(Return), /* 77 S> */ B(Return),
] ]
......
...@@ -171,7 +171,7 @@ bytecodes: [ ...@@ -171,7 +171,7 @@ bytecodes: [
B(CallRuntime), U16(Runtime::kThrowReferenceError), R(2), U8(1), B(CallRuntime), U16(Runtime::kThrowReferenceError), R(2), U8(1),
B(Star), R(2), B(Star), R(2),
B(LdaSmi), U8(2), B(LdaSmi), U8(2),
/* 136 E> */ B(StoreICStrict), R(2), U8(3), U8(4), /* 136 E> */ B(StaNamedPropertyStrict), R(2), U8(3), U8(4),
B(Ldar), R(this), B(Ldar), R(this),
B(JumpIfNotHole), U8(11), B(JumpIfNotHole), U8(11),
B(LdaConstant), U8(2), B(LdaConstant), U8(2),
...@@ -239,7 +239,7 @@ bytecodes: [ ...@@ -239,7 +239,7 @@ bytecodes: [
B(CallRuntime), U16(Runtime::kThrowReferenceError), R(2), U8(1), B(CallRuntime), U16(Runtime::kThrowReferenceError), R(2), U8(1),
B(Star), R(2), B(Star), R(2),
B(LdaSmi), U8(2), B(LdaSmi), U8(2),
/* 134 E> */ B(StoreICStrict), R(2), U8(3), U8(4), /* 134 E> */ B(StaNamedPropertyStrict), R(2), U8(3), U8(4),
B(Ldar), R(this), B(Ldar), R(this),
B(JumpIfNotHole), U8(11), B(JumpIfNotHole), U8(11),
B(LdaConstant), U8(2), B(LdaConstant), U8(2),
......
...@@ -69,7 +69,7 @@ bytecodes: [ ...@@ -69,7 +69,7 @@ bytecodes: [
B(LdrNamedProperty), R(1), U8(1), U8(1), R(2), B(LdrNamedProperty), R(1), U8(1), U8(1), R(2),
B(LdaSmi), U8(2), B(LdaSmi), U8(2),
B(Mul), R(2), B(Mul), R(2),
/* 61 E> */ B(StoreICSloppy), R(1), U8(1), U8(3), /* 61 E> */ B(StaNamedPropertySloppy), R(1), U8(1), U8(3),
B(LdaUndefined), B(LdaUndefined),
/* 67 S> */ B(Return), /* 67 S> */ B(Return),
] ]
...@@ -98,7 +98,7 @@ bytecodes: [ ...@@ -98,7 +98,7 @@ bytecodes: [
B(LdrKeyedProperty), R(1), U8(1), R(3), B(LdrKeyedProperty), R(1), U8(1), R(3),
B(LdaSmi), U8(2), B(LdaSmi), U8(2),
B(BitwiseXor), R(3), B(BitwiseXor), R(3),
/* 57 E> */ B(KeyedStoreICSloppy), R(1), R(2), U8(3), /* 57 E> */ B(StaKeyedPropertySloppy), R(1), R(2), U8(3),
B(LdaUndefined), B(LdaUndefined),
/* 63 S> */ B(Return), /* 63 S> */ B(Return),
] ]
......
...@@ -106,11 +106,11 @@ bytecodes: [ ...@@ -106,11 +106,11 @@ bytecodes: [
B(Star), R(1), B(Star), R(1),
B(Star), R(0), B(Star), R(0),
/* 54 S> */ B(Star), R(1), /* 54 S> */ B(Star), R(1),
B(LoadIC), R(1), U8(1), U8(1), B(LdaNamedProperty), R(1), U8(1), U8(1),
B(ToNumber), B(ToNumber),
B(Star), R(2), B(Star), R(2),
B(Inc), B(Inc),
/* 66 E> */ B(StoreICSloppy), R(1), U8(1), U8(3), /* 66 E> */ B(StaNamedPropertySloppy), R(1), U8(1), U8(3),
B(Ldar), R(2), B(Ldar), R(2),
/* 70 S> */ B(Return), /* 70 S> */ B(Return),
] ]
...@@ -134,9 +134,9 @@ bytecodes: [ ...@@ -134,9 +134,9 @@ bytecodes: [
B(Star), R(1), B(Star), R(1),
B(Star), R(0), B(Star), R(0),
/* 54 S> */ B(Star), R(1), /* 54 S> */ B(Star), R(1),
B(LoadIC), R(1), U8(1), U8(1), B(LdaNamedProperty), R(1), U8(1), U8(1),
B(Dec), B(Dec),
/* 65 E> */ B(StoreICSloppy), R(1), U8(1), U8(3), /* 65 E> */ B(StaNamedPropertySloppy), R(1), U8(1), U8(3),
/* 70 S> */ B(Return), /* 70 S> */ B(Return),
] ]
constant pool: [ constant pool: [
...@@ -163,11 +163,11 @@ bytecodes: [ ...@@ -163,11 +163,11 @@ bytecodes: [
/* 72 S> */ B(Star), R(2), /* 72 S> */ B(Star), R(2),
/* 81 E> */ B(Ldar), R(0), /* 81 E> */ B(Ldar), R(0),
B(Star), R(3), B(Star), R(3),
B(KeyedLoadIC), R(2), U8(1), B(LdaKeyedProperty), R(2), U8(1),
B(ToNumber), B(ToNumber),
B(Star), R(4), B(Star), R(4),
B(Dec), B(Dec),
/* 86 E> */ B(KeyedStoreICSloppy), R(2), R(3), U8(3), /* 86 E> */ B(StaKeyedPropertySloppy), R(2), R(3), U8(3),
B(Ldar), R(4), B(Ldar), R(4),
/* 90 S> */ B(Return), /* 90 S> */ B(Return),
] ]
...@@ -195,9 +195,9 @@ bytecodes: [ ...@@ -195,9 +195,9 @@ bytecodes: [
/* 72 S> */ B(Star), R(2), /* 72 S> */ B(Star), R(2),
/* 83 E> */ B(Ldar), R(0), /* 83 E> */ B(Ldar), R(0),
B(Star), R(3), B(Star), R(3),
B(KeyedLoadIC), R(2), U8(1), B(LdaKeyedProperty), R(2), U8(1),
B(Inc), B(Inc),
/* 87 E> */ B(KeyedStoreICSloppy), R(2), R(3), U8(3), /* 87 E> */ B(StaKeyedPropertySloppy), R(2), R(3), U8(3),
/* 90 S> */ B(Return), /* 90 S> */ B(Return),
] ]
constant pool: [ constant pool: [
...@@ -282,7 +282,7 @@ bytecodes: [ ...@@ -282,7 +282,7 @@ bytecodes: [
B(Inc), B(Inc),
/* 75 E> */ B(Star), R(0), /* 75 E> */ B(Star), R(0),
B(LdaSmi), U8(2), B(LdaSmi), U8(2),
/* 79 E> */ B(KeyedStoreICSloppy), R(2), R(3), U8(1), /* 79 E> */ B(StaKeyedPropertySloppy), R(2), R(3), U8(1),
/* 84 S> */ B(Return), /* 84 S> */ B(Return),
] ]
constant pool: [ constant pool: [
......
...@@ -43,7 +43,7 @@ bytecodes: [ ...@@ -43,7 +43,7 @@ bytecodes: [
/* 15 S> */ B(Ldar), R(0), /* 15 S> */ B(Ldar), R(0),
B(Star), R(1), B(Star), R(1),
/* 31 E> */ B(LdaZero), /* 31 E> */ B(LdaZero),
B(KeyedLoadIC), R(1), U8(1), B(LdaKeyedProperty), R(1), U8(1),
/* 36 S> */ B(Return), /* 36 S> */ B(Return),
] ]
constant pool: [ constant pool: [
...@@ -90,7 +90,7 @@ bytecodes: [ ...@@ -90,7 +90,7 @@ bytecodes: [
/* 16 S> */ B(Ldar), R(0), /* 16 S> */ B(Ldar), R(0),
B(Star), R(2), B(Star), R(2),
/* 32 E> */ B(LdaZero), /* 32 E> */ B(LdaZero),
B(KeyedLoadIC), R(2), U8(1), B(LdaKeyedProperty), R(2), U8(1),
/* 37 S> */ B(Return), /* 37 S> */ B(Return),
] ]
constant pool: [ constant pool: [
......
...@@ -71,7 +71,7 @@ bytecodes: [ ...@@ -71,7 +71,7 @@ bytecodes: [
/* 29 S> */ B(Ldar), R(0), /* 29 S> */ B(Ldar), R(0),
B(Star), R(2), B(Star), R(2),
/* 44 E> */ B(LdaZero), /* 44 E> */ B(LdaZero),
B(KeyedLoadIC), R(2), U8(1), B(LdaKeyedProperty), R(2), U8(1),
/* 49 S> */ B(Return), /* 49 S> */ B(Return),
] ]
constant pool: [ constant pool: [
...@@ -104,7 +104,7 @@ bytecodes: [ ...@@ -104,7 +104,7 @@ bytecodes: [
/* 50 E> */ B(Ldar), R(0), /* 50 E> */ B(Ldar), R(0),
B(Star), R(3), B(Star), R(3),
/* 59 E> */ B(LdaZero), /* 59 E> */ B(LdaZero),
B(KeyedLoadIC), R(3), U8(3), B(LdaKeyedProperty), R(3), U8(3),
B(Add), R(4), B(Add), R(4),
/* 64 S> */ B(Return), /* 64 S> */ B(Return),
] ]
......
...@@ -176,7 +176,7 @@ bytecodes: [ ...@@ -176,7 +176,7 @@ bytecodes: [
/* 67 E> */ B(Ldar), R(0), /* 67 E> */ B(Ldar), R(0),
B(Star), R(7), B(Star), R(7),
B(Ldar), R(6), B(Ldar), R(6),
B(StoreICSloppy), R(7), U8(2), U8(7), B(StaNamedPropertySloppy), R(7), U8(2), U8(7),
/* 62 E> */ B(StackCheck), /* 62 E> */ B(StackCheck),
/* 95 S> */ B(Ldar), R(0), /* 95 S> */ B(Ldar), R(0),
B(Star), R(6), B(Star), R(6),
...@@ -236,12 +236,12 @@ bytecodes: [ ...@@ -236,12 +236,12 @@ bytecodes: [
B(LdaZero), B(LdaZero),
B(Star), R(8), B(Star), R(8),
B(Ldar), R(6), B(Ldar), R(6),
B(KeyedStoreICSloppy), R(7), R(8), U8(5), B(StaKeyedPropertySloppy), R(7), R(8), U8(5),
/* 59 E> */ B(StackCheck), /* 59 E> */ B(StackCheck),
/* 83 S> */ B(Ldar), R(0), /* 83 S> */ B(Ldar), R(0),
B(Star), R(6), B(Star), R(6),
/* 91 E> */ B(LdaSmi), U8(3), /* 91 E> */ B(LdaSmi), U8(3),
B(KeyedLoadIC), R(6), U8(3), B(LdaKeyedProperty), R(6), U8(3),
/* 98 S> */ B(Return), /* 98 S> */ B(Return),
B(ForInStep), R(5), B(ForInStep), R(5),
B(Star), R(5), B(Star), R(5),
......
...@@ -41,7 +41,7 @@ bytecodes: [ ...@@ -41,7 +41,7 @@ bytecodes: [
B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R(13), U8(1), B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R(13), U8(1),
B(Ldar), R(2), B(Ldar), R(2),
B(Star), R(13), B(Star), R(13),
B(LoadIC), R(13), U8(3), U8(9), B(LdaNamedProperty), R(13), U8(3), U8(9),
B(JumpIfToBooleanTrue), U8(27), B(JumpIfToBooleanTrue), U8(27),
B(LdaSmi), U8(2), B(LdaSmi), U8(2),
B(Star), R(3), B(Star), R(3),
...@@ -217,7 +217,7 @@ bytecodes: [ ...@@ -217,7 +217,7 @@ bytecodes: [
B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R(14), U8(1), B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R(14), U8(1),
B(Ldar), R(2), B(Ldar), R(2),
B(Star), R(14), B(Star), R(14),
B(LoadIC), R(14), U8(3), U8(9), B(LdaNamedProperty), R(14), U8(3), U8(9),
B(JumpIfToBooleanTrue), U8(31), B(JumpIfToBooleanTrue), U8(31),
B(LdaSmi), U8(2), B(LdaSmi), U8(2),
B(Star), R(3), B(Star), R(3),
...@@ -400,7 +400,7 @@ bytecodes: [ ...@@ -400,7 +400,7 @@ bytecodes: [
B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R(13), U8(1), B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R(13), U8(1),
B(Ldar), R(2), B(Ldar), R(2),
B(Star), R(13), B(Star), R(13),
B(LoadIC), R(13), U8(3), U8(9), B(LdaNamedProperty), R(13), U8(3), U8(9),
B(JumpIfToBooleanTrue), U8(49), B(JumpIfToBooleanTrue), U8(49),
B(LdaSmi), U8(2), B(LdaSmi), U8(2),
B(Star), R(3), B(Star), R(3),
...@@ -588,7 +588,7 @@ bytecodes: [ ...@@ -588,7 +588,7 @@ bytecodes: [
B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R(12), U8(1), B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R(12), U8(1),
B(Ldar), R(1), B(Ldar), R(1),
B(Star), R(12), B(Star), R(12),
B(LoadIC), R(12), U8(4), U8(9), B(LdaNamedProperty), R(12), U8(4), U8(9),
B(JumpIfToBooleanTrue), U8(41), B(JumpIfToBooleanTrue), U8(41),
B(LdaSmi), U8(2), B(LdaSmi), U8(2),
B(Star), R(2), B(Star), R(2),
...@@ -596,8 +596,8 @@ bytecodes: [ ...@@ -596,8 +596,8 @@ bytecodes: [
B(Star), R(12), B(Star), R(12),
B(Ldar), R(1), B(Ldar), R(1),
B(Star), R(13), B(Star), R(13),
B(LoadIC), R(13), U8(5), U8(11), B(LdaNamedProperty), R(13), U8(5), U8(11),
B(StoreICSloppy), R(12), U8(6), U8(13), B(StaNamedPropertySloppy), R(12), U8(6), U8(13),
B(Ldar), R(3), B(Ldar), R(3),
/* 62 E> */ B(StackCheck), /* 62 E> */ B(StackCheck),
/* 88 S> */ B(Ldar), R(6), /* 88 S> */ B(Ldar), R(6),
......
...@@ -360,12 +360,12 @@ bytecodes: [ ...@@ -360,12 +360,12 @@ bytecodes: [
B(LdrContextSlot), R(1), U8(8), R(11), B(LdrContextSlot), R(1), U8(8), R(11),
B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R(11), U8(1), B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R(11), U8(1),
B(LdrContextSlot), R(1), U8(8), R(11), B(LdrContextSlot), R(1), U8(8), R(11),
B(LoadIC), R(11), U8(5), U8(9), B(LdaNamedProperty), R(11), U8(5), U8(9),
B(JumpIfToBooleanTrueConstant), U8(10), B(JumpIfToBooleanTrueConstant), U8(10),
B(LdaSmi), U8(2), B(LdaSmi), U8(2),
B(StaContextSlot), R(1), U8(9), B(StaContextSlot), R(1), U8(9),
B(LdrContextSlot), R(1), U8(8), R(11), B(LdrContextSlot), R(1), U8(8), R(11),
B(LoadIC), R(11), U8(6), U8(11), B(LdaNamedProperty), R(11), U8(6), U8(11),
B(StaContextSlot), R(1), U8(6), B(StaContextSlot), R(1), U8(6),
B(LdaContextSlot), R(1), U8(10), B(LdaContextSlot), R(1), U8(10),
/* 16 E> */ B(StackCheck), /* 16 E> */ B(StackCheck),
...@@ -465,7 +465,7 @@ bytecodes: [ ...@@ -465,7 +465,7 @@ bytecodes: [
B(ToBooleanLogicalNot), B(ToBooleanLogicalNot),
B(JumpIfFalseConstant), U8(16), B(JumpIfFalseConstant), U8(16),
B(LdrContextSlot), R(1), U8(7), R(10), B(LdrContextSlot), R(1), U8(7), R(10),
B(LoadIC), R(10), U8(12), U8(13), B(LdaNamedProperty), R(10), U8(12), U8(13),
B(StaContextSlot), R(1), U8(11), B(StaContextSlot), R(1), U8(11),
B(LdrContextSlot), R(1), U8(11), R(10), B(LdrContextSlot), R(1), U8(11), R(10),
B(LdaNull), B(LdaNull),
......
...@@ -59,7 +59,7 @@ bytecodes: [ ...@@ -59,7 +59,7 @@ bytecodes: [
/* 45 S> */ B(CreateObjectLiteral), U8(0), U8(0), U8(1), /* 45 S> */ B(CreateObjectLiteral), U8(0), U8(0), U8(1),
B(Star), R(1), B(Star), R(1),
/* 75 E> */ B(Ldar), R(0), /* 75 E> */ B(Ldar), R(0),
B(StoreICSloppy), R(1), U8(1), U8(1), B(StaNamedPropertySloppy), R(1), U8(1), U8(1),
B(Ldar), R(1), B(Ldar), R(1),
/* 80 S> */ B(Return), /* 80 S> */ B(Return),
] ]
...@@ -87,7 +87,7 @@ bytecodes: [ ...@@ -87,7 +87,7 @@ bytecodes: [
/* 67 E> */ B(Star), R(2), /* 67 E> */ B(Star), R(2),
B(LdaSmi), U8(1), B(LdaSmi), U8(1),
B(Add), R(2), B(Add), R(2),
B(StoreICSloppy), R(1), U8(1), U8(1), B(StaNamedPropertySloppy), R(1), U8(1), U8(1),
B(Ldar), R(1), B(Ldar), R(1),
/* 76 S> */ B(Return), /* 76 S> */ B(Return),
] ]
...@@ -110,7 +110,7 @@ bytecodes: [ ...@@ -110,7 +110,7 @@ bytecodes: [
/* 34 S> */ B(CreateObjectLiteral), U8(0), U8(0), U8(1), /* 34 S> */ B(CreateObjectLiteral), U8(0), U8(0), U8(1),
B(Star), R(0), B(Star), R(0),
B(CreateClosure), U8(1), U8(0), B(CreateClosure), U8(1), U8(0),
B(StoreICSloppy), R(0), U8(2), U8(1), B(StaNamedPropertySloppy), R(0), U8(2), U8(1),
B(Ldar), R(0), B(Ldar), R(0),
/* 67 S> */ B(Return), /* 67 S> */ B(Return),
] ]
...@@ -134,7 +134,7 @@ bytecodes: [ ...@@ -134,7 +134,7 @@ bytecodes: [
/* 34 S> */ B(CreateObjectLiteral), U8(0), U8(0), U8(1), /* 34 S> */ B(CreateObjectLiteral), U8(0), U8(0), U8(1),
B(Star), R(0), B(Star), R(0),
B(CreateClosure), U8(1), U8(0), B(CreateClosure), U8(1), U8(0),
B(StoreICSloppy), R(0), U8(2), U8(1), B(StaNamedPropertySloppy), R(0), U8(2), U8(1),
B(Ldar), R(0), B(Ldar), R(0),
/* 68 S> */ B(Return), /* 68 S> */ B(Return),
] ]
...@@ -345,7 +345,7 @@ bytecodes: [ ...@@ -345,7 +345,7 @@ bytecodes: [
/* 50 S> */ B(CreateObjectLiteral), U8(1), U8(0), U8(1), /* 50 S> */ B(CreateObjectLiteral), U8(1), U8(0), U8(1),
B(Star), R(1), B(Star), R(1),
/* 64 E> */ B(Ldar), R(0), /* 64 E> */ B(Ldar), R(0),
B(StoreICSloppy), R(1), U8(2), U8(1), B(StaNamedPropertySloppy), R(1), U8(2), U8(1),
B(Mov), R(1), R(2), B(Mov), R(1), R(2),
/* 68 E> */ B(Ldar), R(0), /* 68 E> */ B(Ldar), R(0),
B(ToName), B(ToName),
......
...@@ -20,7 +20,7 @@ bytecodes: [ ...@@ -20,7 +20,7 @@ bytecodes: [
/* 10 E> */ B(StackCheck), /* 10 E> */ B(StackCheck),
/* 16 S> */ B(Ldar), R(arg0), /* 16 S> */ B(Ldar), R(arg0),
B(Star), R(0), B(Star), R(0),
/* 24 E> */ B(LoadIC), R(0), U8(0), U8(1), /* 24 E> */ B(LdaNamedProperty), R(0), U8(0), U8(1),
/* 31 S> */ B(Return), /* 31 S> */ B(Return),
] ]
constant pool: [ constant pool: [
...@@ -41,7 +41,7 @@ bytecodes: [ ...@@ -41,7 +41,7 @@ bytecodes: [
/* 10 E> */ B(StackCheck), /* 10 E> */ B(StackCheck),
/* 16 S> */ B(Ldar), R(arg0), /* 16 S> */ B(Ldar), R(arg0),
B(Star), R(0), B(Star), R(0),
/* 24 E> */ B(LoadIC), R(0), U8(0), U8(1), /* 24 E> */ B(LdaNamedProperty), R(0), U8(0), U8(1),
/* 33 S> */ B(Return), /* 33 S> */ B(Return),
] ]
constant pool: [ constant pool: [
...@@ -63,7 +63,7 @@ bytecodes: [ ...@@ -63,7 +63,7 @@ bytecodes: [
/* 16 S> */ B(Ldar), R(arg0), /* 16 S> */ B(Ldar), R(arg0),
B(Star), R(0), B(Star), R(0),
/* 24 E> */ B(LdaSmi), U8(100), /* 24 E> */ B(LdaSmi), U8(100),
B(KeyedLoadIC), R(0), U8(1), B(LdaKeyedProperty), R(0), U8(1),
/* 31 S> */ B(Return), /* 31 S> */ B(Return),
] ]
constant pool: [ constant pool: [
...@@ -84,7 +84,7 @@ bytecodes: [ ...@@ -84,7 +84,7 @@ bytecodes: [
/* 19 S> */ B(Ldar), R(arg0), /* 19 S> */ B(Ldar), R(arg0),
B(Star), R(0), B(Star), R(0),
/* 27 E> */ B(Ldar), R(arg1), /* 27 E> */ B(Ldar), R(arg1),
B(KeyedLoadIC), R(0), U8(1), B(LdaKeyedProperty), R(0), U8(1),
/* 32 S> */ B(Return), /* 32 S> */ B(Return),
] ]
constant pool: [ constant pool: [
...@@ -108,7 +108,7 @@ bytecodes: [ ...@@ -108,7 +108,7 @@ bytecodes: [
/* 32 S> */ B(Ldar), R(arg0), /* 32 S> */ B(Ldar), R(arg0),
B(Star), R(1), B(Star), R(1),
/* 40 E> */ B(LdaSmi), U8(-124), /* 40 E> */ B(LdaSmi), U8(-124),
B(KeyedLoadIC), R(1), U8(3), B(LdaKeyedProperty), R(1), U8(3),
/* 48 S> */ B(Return), /* 48 S> */ B(Return),
] ]
constant pool: [ constant pool: [
...@@ -644,7 +644,7 @@ bytecodes: [ ...@@ -644,7 +644,7 @@ bytecodes: [
/* 1810 E> */ B(LdrNamedProperty), R(1), U8(0), U8(255), R(0), /* 1810 E> */ B(LdrNamedProperty), R(1), U8(0), U8(255), R(0),
/* 1819 S> */ B(Ldar), R(arg0), /* 1819 S> */ B(Ldar), R(arg0),
B(Star), R(1), B(Star), R(1),
/* 1827 E> */ B(Wide), B(LoadIC), R16(1), U16(0), U16(257), /* 1827 E> */ B(Wide), B(LdaNamedProperty), R16(1), U16(0), U16(257),
/* 1834 S> */ B(Return), /* 1834 S> */ B(Return),
] ]
constant pool: [ constant pool: [
...@@ -1309,7 +1309,7 @@ bytecodes: [ ...@@ -1309,7 +1309,7 @@ bytecodes: [
/* 1566 S> */ B(Ldar), R(arg0), /* 1566 S> */ B(Ldar), R(arg0),
B(Star), R(1), B(Star), R(1),
/* 1574 E> */ B(Ldar), R(arg1), /* 1574 E> */ B(Ldar), R(arg1),
B(Wide), B(KeyedLoadIC), R16(1), U16(257), B(Wide), B(LdaKeyedProperty), R16(1), U16(257),
/* 1579 S> */ B(Return), /* 1579 S> */ B(Return),
] ]
constant pool: [ constant pool: [
......
This source diff could not be displayed because it is too large. You can view the blob instead.
...@@ -29,7 +29,7 @@ bytecodes: [ ...@@ -29,7 +29,7 @@ bytecodes: [
B(CreateObjectLiteral), U8(2), U8(0), U8(1), B(CreateObjectLiteral), U8(2), U8(0), U8(1),
B(Star), R(4), B(Star), R(4),
B(CreateClosure), U8(3), U8(0), B(CreateClosure), U8(3), U8(0),
B(StoreICSloppy), R(4), U8(4), U8(3), B(StaNamedPropertySloppy), R(4), U8(4), U8(3),
B(Ldar), R(4), B(Ldar), R(4),
B(Star), R(3), B(Star), R(3),
B(CallRuntime), U16(Runtime::kInitializeVarGlobal), R(1), U8(3), B(CallRuntime), U16(Runtime::kInitializeVarGlobal), R(1), U8(3),
......
...@@ -165,14 +165,14 @@ TEST_F(BytecodeArrayIteratorTest, IteratesBytecodeArray) { ...@@ -165,14 +165,14 @@ TEST_F(BytecodeArrayIteratorTest, IteratesBytecodeArray) {
offset += Bytecodes::Size(Bytecode::kStar, OperandScale::kSingle); offset += Bytecodes::Size(Bytecode::kStar, OperandScale::kSingle);
iterator.Advance(); iterator.Advance();
CHECK_EQ(iterator.current_bytecode(), Bytecode::kLoadIC); CHECK_EQ(iterator.current_bytecode(), Bytecode::kLdaNamedProperty);
CHECK_EQ(iterator.current_offset(), offset); CHECK_EQ(iterator.current_offset(), offset);
CHECK_EQ(iterator.current_operand_scale(), OperandScale::kSingle); CHECK_EQ(iterator.current_operand_scale(), OperandScale::kSingle);
CHECK_EQ(iterator.GetRegisterOperand(0).index(), reg_1.index()); CHECK_EQ(iterator.GetRegisterOperand(0).index(), reg_1.index());
CHECK_EQ(iterator.GetIndexOperand(1), name_index); CHECK_EQ(iterator.GetIndexOperand(1), name_index);
CHECK_EQ(iterator.GetIndexOperand(2), feedback_slot); CHECK_EQ(iterator.GetIndexOperand(2), feedback_slot);
CHECK(!iterator.done()); CHECK(!iterator.done());
offset += Bytecodes::Size(Bytecode::kLoadIC, OperandScale::kSingle); offset += Bytecodes::Size(Bytecode::kLdaNamedProperty, OperandScale::kSingle);
iterator.Advance(); iterator.Advance();
CHECK_EQ(iterator.current_bytecode(), Bytecode::kAdd); CHECK_EQ(iterator.current_bytecode(), Bytecode::kAdd);
......
...@@ -388,8 +388,8 @@ TEST_F(BytecodePeepholeOptimizerTest, MergeLoadICStar) { ...@@ -388,8 +388,8 @@ TEST_F(BytecodePeepholeOptimizerTest, MergeLoadICStar) {
static_cast<uint32_t>(Register(256).ToOperand())}; static_cast<uint32_t>(Register(256).ToOperand())};
const int expected_operand_count = static_cast<int>(arraysize(operands)); const int expected_operand_count = static_cast<int>(arraysize(operands));
BytecodeNode first(Bytecode::kLoadIC, operands[0], operands[1], operands[2], BytecodeNode first(Bytecode::kLdaNamedProperty, operands[0], operands[1],
OperandScale::kSingle); operands[2], OperandScale::kSingle);
BytecodeNode second(Bytecode::kStar, operands[3], OperandScale::kDouble); BytecodeNode second(Bytecode::kStar, operands[3], OperandScale::kDouble);
BytecodeNode third(Bytecode::kReturn); BytecodeNode third(Bytecode::kReturn);
optimizer()->Write(&first); optimizer()->Write(&first);
...@@ -410,13 +410,13 @@ TEST_F(BytecodePeepholeOptimizerTest, MergeLoadICStar) { ...@@ -410,13 +410,13 @@ TEST_F(BytecodePeepholeOptimizerTest, MergeLoadICStar) {
CHECK_EQ(last_written().bytecode(), third.bytecode()); CHECK_EQ(last_written().bytecode(), third.bytecode());
} }
TEST_F(BytecodePeepholeOptimizerTest, MergeKeyedLoadICStar) { TEST_F(BytecodePeepholeOptimizerTest, MergeLdaKeyedPropertyStar) {
const uint32_t operands[] = {static_cast<uint32_t>(Register(31).ToOperand()), const uint32_t operands[] = {static_cast<uint32_t>(Register(31).ToOperand()),
9999997, 9999997,
static_cast<uint32_t>(Register(1).ToOperand())}; static_cast<uint32_t>(Register(1).ToOperand())};
const int expected_operand_count = static_cast<int>(arraysize(operands)); const int expected_operand_count = static_cast<int>(arraysize(operands));
BytecodeNode first(Bytecode::kKeyedLoadIC, operands[0], operands[1], BytecodeNode first(Bytecode::kLdaKeyedProperty, operands[0], operands[1],
OperandScale::kQuadruple); OperandScale::kQuadruple);
BytecodeNode second(Bytecode::kStar, operands[2], OperandScale::kSingle); BytecodeNode second(Bytecode::kStar, operands[2], OperandScale::kSingle);
BytecodeNode third(Bytecode::kReturn); BytecodeNode third(Bytecode::kReturn);
......
...@@ -92,10 +92,10 @@ TEST_F(BytecodeNodeTest, Constructor3) { ...@@ -92,10 +92,10 @@ TEST_F(BytecodeNodeTest, Constructor3) {
TEST_F(BytecodeNodeTest, Constructor4) { TEST_F(BytecodeNodeTest, Constructor4) {
uint32_t operands[] = {0x11, 0x22, 0x33}; uint32_t operands[] = {0x11, 0x22, 0x33};
BytecodeNode node(Bytecode::kLoadIC, operands[0], operands[1], operands[2], BytecodeNode node(Bytecode::kLdaNamedProperty, operands[0], operands[1],
OperandScale::kSingle); operands[2], OperandScale::kSingle);
CHECK_EQ(node.operand_count(), 3); CHECK_EQ(node.operand_count(), 3);
CHECK_EQ(node.bytecode(), Bytecode::kLoadIC); CHECK_EQ(node.bytecode(), Bytecode::kLdaNamedProperty);
CHECK_EQ(node.operand(0), operands[0]); CHECK_EQ(node.operand(0), operands[0]);
CHECK_EQ(node.operand(1), operands[1]); CHECK_EQ(node.operand(1), operands[1]);
CHECK_EQ(node.operand(2), operands[2]); CHECK_EQ(node.operand(2), operands[2]);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment