Index: src/full-codegen/mips64/full-codegen-mips64.cc |
diff --git a/src/full-codegen/mips64/full-codegen-mips64.cc b/src/full-codegen/mips64/full-codegen-mips64.cc |
index c7a9956a2a659fbef9bfeac3f5909ba2bb49b18b..00f51e5fec2b9afda20f232a8fb3b68854acf978 100644 |
--- a/src/full-codegen/mips64/full-codegen-mips64.cc |
+++ b/src/full-codegen/mips64/full-codegen-mips64.cc |
@@ -2907,81 +2907,6 @@ void FullCodeGenerator::EmitValueOf(CallRuntime* expr) { |
} |
-void FullCodeGenerator::EmitOneByteSeqStringSetChar(CallRuntime* expr) { |
- ZoneList<Expression*>* args = expr->arguments(); |
- DCHECK_EQ(3, args->length()); |
- |
- Register string = v0; |
- Register index = a1; |
- Register value = a2; |
- |
- VisitForStackValue(args->at(0)); // index |
- VisitForStackValue(args->at(1)); // value |
- VisitForAccumulatorValue(args->at(2)); // string |
- PopOperands(index, value); |
- |
- if (FLAG_debug_code) { |
- __ SmiTst(value, at); |
- __ Check(eq, kNonSmiValue, at, Operand(zero_reg)); |
- __ SmiTst(index, at); |
- __ Check(eq, kNonSmiIndex, at, Operand(zero_reg)); |
- __ SmiUntag(index, index); |
- static const uint32_t one_byte_seq_type = kSeqStringTag | kOneByteStringTag; |
- Register scratch = t1; |
- __ EmitSeqStringSetCharCheck( |
- string, index, value, scratch, one_byte_seq_type); |
- __ SmiTag(index, index); |
- } |
- |
- __ SmiUntag(value, value); |
- __ Daddu(at, |
- string, |
- Operand(SeqOneByteString::kHeaderSize - kHeapObjectTag)); |
- __ SmiUntag(index); |
- __ Daddu(at, at, index); |
- __ sb(value, MemOperand(at)); |
- context()->Plug(string); |
-} |
- |
- |
-void FullCodeGenerator::EmitTwoByteSeqStringSetChar(CallRuntime* expr) { |
- ZoneList<Expression*>* args = expr->arguments(); |
- DCHECK_EQ(3, args->length()); |
- |
- Register string = v0; |
- Register index = a1; |
- Register value = a2; |
- |
- VisitForStackValue(args->at(0)); // index |
- VisitForStackValue(args->at(1)); // value |
- VisitForAccumulatorValue(args->at(2)); // string |
- PopOperands(index, value); |
- |
- if (FLAG_debug_code) { |
- __ SmiTst(value, at); |
- __ Check(eq, kNonSmiValue, at, Operand(zero_reg)); |
- __ SmiTst(index, at); |
- __ Check(eq, kNonSmiIndex, at, Operand(zero_reg)); |
- __ SmiUntag(index, index); |
- static const uint32_t two_byte_seq_type = kSeqStringTag | kTwoByteStringTag; |
- Register scratch = t1; |
- __ EmitSeqStringSetCharCheck( |
- string, index, value, scratch, two_byte_seq_type); |
- __ SmiTag(index, index); |
- } |
- |
- __ SmiUntag(value, value); |
- __ Daddu(at, |
- string, |
- Operand(SeqTwoByteString::kHeaderSize - kHeapObjectTag)); |
- __ dsra(index, index, 32 - 1); |
- __ Daddu(at, at, index); |
- STATIC_ASSERT(kSmiTagSize == 1 && kSmiTag == 0); |
- __ sh(value, MemOperand(at)); |
- context()->Plug(string); |
-} |
- |
- |
void FullCodeGenerator::EmitStringCharFromCode(CallRuntime* expr) { |
ZoneList<Expression*>* args = expr->arguments(); |
DCHECK(args->length() == 1); |