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 91253e3fd2cc38df1d3577bb226bb76e3da22e3b..ec26a9ed75c867ca599a3e1ac5e9a0cc1ddc3d84 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); |