| Index: src/full-codegen/arm/full-codegen-arm.cc
|
| diff --git a/src/full-codegen/arm/full-codegen-arm.cc b/src/full-codegen/arm/full-codegen-arm.cc
|
| index 5b1f8b34ade96e5d6966da420bbbfdf3798e958d..e3117e67d7ca37ad65255acf653e481587b7485b 100644
|
| --- a/src/full-codegen/arm/full-codegen-arm.cc
|
| +++ b/src/full-codegen/arm/full-codegen-arm.cc
|
| @@ -2901,73 +2901,6 @@ void FullCodeGenerator::EmitValueOf(CallRuntime* expr) {
|
| }
|
|
|
|
|
| -void FullCodeGenerator::EmitOneByteSeqStringSetChar(CallRuntime* expr) {
|
| - ZoneList<Expression*>* args = expr->arguments();
|
| - DCHECK_EQ(3, args->length());
|
| -
|
| - Register string = r0;
|
| - Register index = r1;
|
| - Register value = r2;
|
| -
|
| - VisitForStackValue(args->at(0)); // index
|
| - VisitForStackValue(args->at(1)); // value
|
| - VisitForAccumulatorValue(args->at(2)); // string
|
| - PopOperands(index, value);
|
| -
|
| - if (FLAG_debug_code) {
|
| - __ SmiTst(value);
|
| - __ Check(eq, kNonSmiValue);
|
| - __ SmiTst(index);
|
| - __ Check(eq, kNonSmiIndex);
|
| - __ SmiUntag(index, index);
|
| - static const uint32_t one_byte_seq_type = kSeqStringTag | kOneByteStringTag;
|
| - __ EmitSeqStringSetCharCheck(string, index, value, one_byte_seq_type);
|
| - __ SmiTag(index, index);
|
| - }
|
| -
|
| - __ SmiUntag(value, value);
|
| - __ add(ip,
|
| - string,
|
| - Operand(SeqOneByteString::kHeaderSize - kHeapObjectTag));
|
| - __ strb(value, MemOperand(ip, index, LSR, kSmiTagSize));
|
| - context()->Plug(string);
|
| -}
|
| -
|
| -
|
| -void FullCodeGenerator::EmitTwoByteSeqStringSetChar(CallRuntime* expr) {
|
| - ZoneList<Expression*>* args = expr->arguments();
|
| - DCHECK_EQ(3, args->length());
|
| -
|
| - Register string = r0;
|
| - Register index = r1;
|
| - Register value = r2;
|
| -
|
| - VisitForStackValue(args->at(0)); // index
|
| - VisitForStackValue(args->at(1)); // value
|
| - VisitForAccumulatorValue(args->at(2)); // string
|
| - PopOperands(index, value);
|
| -
|
| - if (FLAG_debug_code) {
|
| - __ SmiTst(value);
|
| - __ Check(eq, kNonSmiValue);
|
| - __ SmiTst(index);
|
| - __ Check(eq, kNonSmiIndex);
|
| - __ SmiUntag(index, index);
|
| - static const uint32_t two_byte_seq_type = kSeqStringTag | kTwoByteStringTag;
|
| - __ EmitSeqStringSetCharCheck(string, index, value, two_byte_seq_type);
|
| - __ SmiTag(index, index);
|
| - }
|
| -
|
| - __ SmiUntag(value, value);
|
| - __ add(ip,
|
| - string,
|
| - Operand(SeqTwoByteString::kHeaderSize - kHeapObjectTag));
|
| - STATIC_ASSERT(kSmiTagSize == 1 && kSmiTag == 0);
|
| - __ strh(value, MemOperand(ip, index));
|
| - context()->Plug(string);
|
| -}
|
| -
|
| -
|
| void FullCodeGenerator::EmitStringCharFromCode(CallRuntime* expr) {
|
| ZoneList<Expression*>* args = expr->arguments();
|
| DCHECK(args->length() == 1);
|
|
|