Index: src/x64/code-stubs-x64.cc |
diff --git a/src/x64/code-stubs-x64.cc b/src/x64/code-stubs-x64.cc |
index 5fb59f5469f9229b3abb24cf67766997d1f4ebce..a7fc1ed5146ded3698da5aeb4219f63c8e8004c6 100644 |
--- a/src/x64/code-stubs-x64.cc |
+++ b/src/x64/code-stubs-x64.cc |
@@ -3014,8 +3014,8 @@ void RegExpExecStub::Generate(MacroAssembler* masm) { |
// r15: original subject string |
__ testb(rcx, rcx); // Last use of rcx as encoding of subject string. |
__ j(zero, &setup_two_byte, Label::kNear); |
- __ lea(arg4, FieldOperand(rdi, r14, times_1, SeqAsciiString::kHeaderSize)); |
- __ lea(arg3, FieldOperand(rdi, rbx, times_1, SeqAsciiString::kHeaderSize)); |
+ __ lea(arg4, FieldOperand(rdi, r14, times_1, SeqOneByteString::kHeaderSize)); |
+ __ lea(arg3, FieldOperand(rdi, rbx, times_1, SeqOneByteString::kHeaderSize)); |
__ jmp(&setup_rest, Label::kNear); |
__ bind(&setup_two_byte); |
__ lea(arg4, FieldOperand(rdi, r14, times_2, SeqTwoByteString::kHeaderSize)); |
@@ -3155,7 +3155,7 @@ void RegExpExecStub::Generate(MacroAssembler* masm) { |
} |
__ movq(rdi, FieldOperand(rdi, ExternalString::kResourceDataOffset)); |
// Move the pointer so that offset-wise, it looks like a sequential string. |
- STATIC_ASSERT(SeqTwoByteString::kHeaderSize == SeqAsciiString::kHeaderSize); |
+ STATIC_ASSERT(SeqTwoByteString::kHeaderSize == SeqOneByteString::kHeaderSize); |
__ subq(rdi, Immediate(SeqTwoByteString::kHeaderSize - kHeapObjectTag)); |
STATIC_ASSERT(kTwoByteStringTag == 0); |
__ testb(rbx, Immediate(kStringEncodingMask)); |
@@ -4656,8 +4656,8 @@ void StringAddStub::Generate(MacroAssembler* masm) { |
&call_runtime); |
// Get the two characters forming the sub string. |
- __ movzxbq(rbx, FieldOperand(rax, SeqAsciiString::kHeaderSize)); |
- __ movzxbq(rcx, FieldOperand(rdx, SeqAsciiString::kHeaderSize)); |
+ __ movzxbq(rbx, FieldOperand(rax, SeqOneByteString::kHeaderSize)); |
+ __ movzxbq(rcx, FieldOperand(rdx, SeqOneByteString::kHeaderSize)); |
// Try to lookup two character string in symbol table. If it is not found |
// just allocate a new one. |
@@ -4673,11 +4673,11 @@ void StringAddStub::Generate(MacroAssembler* masm) { |
// rbx - first byte: first character |
// rbx - second byte: *maybe* second character |
// Make sure that the second byte of rbx contains the second character. |
- __ movzxbq(rcx, FieldOperand(rdx, SeqAsciiString::kHeaderSize)); |
+ __ movzxbq(rcx, FieldOperand(rdx, SeqOneByteString::kHeaderSize)); |
__ shll(rcx, Immediate(kBitsPerByte)); |
__ orl(rbx, rcx); |
// Write both characters to the new string. |
- __ movw(FieldOperand(rax, SeqAsciiString::kHeaderSize), rbx); |
+ __ movw(FieldOperand(rax, SeqOneByteString::kHeaderSize), rbx); |
__ IncrementCounter(counters->string_add_native(), 1); |
__ ret(2 * kPointerSize); |
@@ -4754,8 +4754,8 @@ void StringAddStub::Generate(MacroAssembler* masm) { |
__ movq(rcx, FieldOperand(rax, ExternalString::kResourceDataOffset)); |
__ jmp(&first_prepared, Label::kNear); |
__ bind(&first_is_sequential); |
- STATIC_ASSERT(SeqAsciiString::kHeaderSize == SeqTwoByteString::kHeaderSize); |
- __ lea(rcx, FieldOperand(rax, SeqAsciiString::kHeaderSize)); |
+ STATIC_ASSERT(SeqOneByteString::kHeaderSize == SeqTwoByteString::kHeaderSize); |
+ __ lea(rcx, FieldOperand(rax, SeqOneByteString::kHeaderSize)); |
__ bind(&first_prepared); |
// Check whether both strings have same encoding. |
@@ -4775,8 +4775,8 @@ void StringAddStub::Generate(MacroAssembler* masm) { |
__ movq(rdx, FieldOperand(rdx, ExternalString::kResourceDataOffset)); |
__ jmp(&second_prepared, Label::kNear); |
__ bind(&second_is_sequential); |
- STATIC_ASSERT(SeqAsciiString::kHeaderSize == SeqTwoByteString::kHeaderSize); |
- __ lea(rdx, FieldOperand(rdx, SeqAsciiString::kHeaderSize)); |
+ STATIC_ASSERT(SeqOneByteString::kHeaderSize == SeqTwoByteString::kHeaderSize); |
+ __ lea(rdx, FieldOperand(rdx, SeqOneByteString::kHeaderSize)); |
__ bind(&second_prepared); |
Label non_ascii_string_add_flat_result; |
@@ -4792,7 +4792,7 @@ void StringAddStub::Generate(MacroAssembler* masm) { |
__ AllocateAsciiString(rax, rbx, rdi, r8, r9, &call_runtime); |
// rax: result string |
// Locate first character of result. |
- __ lea(rbx, FieldOperand(rax, SeqAsciiString::kHeaderSize)); |
+ __ lea(rbx, FieldOperand(rax, SeqOneByteString::kHeaderSize)); |
// rcx: first char of first string |
// rbx: first character of result |
// r14: length of first string |
@@ -5065,7 +5065,7 @@ void StringHelper::GenerateTwoCharacterSymbolTableProbe(MacroAssembler* masm, |
temp, temp, &next_probe[i]); |
// Check if the two characters match. |
- __ movl(temp, FieldOperand(candidate, SeqAsciiString::kHeaderSize)); |
+ __ movl(temp, FieldOperand(candidate, SeqOneByteString::kHeaderSize)); |
__ andl(temp, Immediate(0x0000ffff)); |
__ cmpl(chars, temp); |
__ j(equal, &found_in_symbol_table); |
@@ -5283,7 +5283,7 @@ void SubStringStub::Generate(MacroAssembler* masm) { |
__ j(not_zero, &runtime); |
__ movq(rdi, FieldOperand(rdi, ExternalString::kResourceDataOffset)); |
// Move the pointer so that offset-wise, it looks like a sequential string. |
- STATIC_ASSERT(SeqTwoByteString::kHeaderSize == SeqAsciiString::kHeaderSize); |
+ STATIC_ASSERT(SeqTwoByteString::kHeaderSize == SeqOneByteString::kHeaderSize); |
__ subq(rdi, Immediate(SeqTwoByteString::kHeaderSize - kHeapObjectTag)); |
__ bind(&sequential_string); |
@@ -5300,10 +5300,10 @@ void SubStringStub::Generate(MacroAssembler* masm) { |
{ // Locate character of sub string start. |
SmiIndex smi_as_index = masm->SmiToIndex(rdx, rdx, times_1); |
__ lea(rsi, Operand(rdi, smi_as_index.reg, smi_as_index.scale, |
- SeqAsciiString::kHeaderSize - kHeapObjectTag)); |
+ SeqOneByteString::kHeaderSize - kHeapObjectTag)); |
} |
// Locate first character of result. |
- __ lea(rdi, FieldOperand(rax, SeqAsciiString::kHeaderSize)); |
+ __ lea(rdi, FieldOperand(rax, SeqOneByteString::kHeaderSize)); |
// rax: result string |
// rcx: result length |
@@ -5325,7 +5325,7 @@ void SubStringStub::Generate(MacroAssembler* masm) { |
{ // Locate character of sub string start. |
SmiIndex smi_as_index = masm->SmiToIndex(rdx, rdx, times_2); |
__ lea(rsi, Operand(rdi, smi_as_index.reg, smi_as_index.scale, |
- SeqAsciiString::kHeaderSize - kHeapObjectTag)); |
+ SeqOneByteString::kHeaderSize - kHeapObjectTag)); |
} |
// Locate first character of result. |
__ lea(rdi, FieldOperand(rax, SeqTwoByteString::kHeaderSize)); |
@@ -5465,9 +5465,9 @@ void StringCompareStub::GenerateAsciiCharsCompareLoop( |
// doesn't need an additional compare. |
__ SmiToInteger32(length, length); |
__ lea(left, |
- FieldOperand(left, length, times_1, SeqAsciiString::kHeaderSize)); |
+ FieldOperand(left, length, times_1, SeqOneByteString::kHeaderSize)); |
__ lea(right, |
- FieldOperand(right, length, times_1, SeqAsciiString::kHeaderSize)); |
+ FieldOperand(right, length, times_1, SeqOneByteString::kHeaderSize)); |
__ neg(length); |
Register index = length; // index = -length; |