Index: src/arm/macro-assembler-arm.cc |
diff --git a/src/arm/macro-assembler-arm.cc b/src/arm/macro-assembler-arm.cc |
index f9d2fddd0b0fc9877691ae35db9b0a8da7c0efcd..92615e1bb59122b8acc4f5e4eef4355cccbf6682 100644 |
--- a/src/arm/macro-assembler-arm.cc |
+++ b/src/arm/macro-assembler-arm.cc |
@@ -1990,12 +1990,10 @@ void MacroAssembler::AllocateTwoByteString(Register result, |
} |
-void MacroAssembler::AllocateAsciiString(Register result, |
- Register length, |
- Register scratch1, |
- Register scratch2, |
- Register scratch3, |
- Label* gc_required) { |
+void MacroAssembler::AllocateOneByteString(Register result, Register length, |
+ Register scratch1, Register scratch2, |
+ Register scratch3, |
+ Label* gc_required) { |
// Calculate the number of bytes needed for the characters in the string while |
// observing object alignment. |
DCHECK((SeqOneByteString::kHeaderSize & kObjectAlignmentMask) == 0); |
@@ -2004,7 +2002,7 @@ void MacroAssembler::AllocateAsciiString(Register result, |
Operand(kObjectAlignmentMask + SeqOneByteString::kHeaderSize)); |
and_(scratch1, scratch1, Operand(~kObjectAlignmentMask)); |
- // Allocate ASCII string in new space. |
+ // Allocate one-byte string in new space. |
Allocate(scratch1, |
result, |
scratch2, |
@@ -2013,11 +2011,8 @@ void MacroAssembler::AllocateAsciiString(Register result, |
TAG_OBJECT); |
// Set the map, length and hash field. |
- InitializeNewString(result, |
- length, |
- Heap::kAsciiStringMapRootIndex, |
- scratch1, |
- scratch2); |
+ InitializeNewString(result, length, Heap::kOneByteStringMapRootIndex, |
+ scratch1, scratch2); |
} |
@@ -2037,11 +2032,10 @@ void MacroAssembler::AllocateTwoByteConsString(Register result, |
} |
-void MacroAssembler::AllocateAsciiConsString(Register result, |
- Register length, |
- Register scratch1, |
- Register scratch2, |
- Label* gc_required) { |
+void MacroAssembler::AllocateOneByteConsString(Register result, Register length, |
+ Register scratch1, |
+ Register scratch2, |
+ Label* gc_required) { |
Allocate(ConsString::kSize, |
result, |
scratch1, |
@@ -2049,11 +2043,8 @@ void MacroAssembler::AllocateAsciiConsString(Register result, |
gc_required, |
TAG_OBJECT); |
- InitializeNewString(result, |
- length, |
- Heap::kConsAsciiStringMapRootIndex, |
- scratch1, |
- scratch2); |
+ InitializeNewString(result, length, Heap::kConsOneByteStringMapRootIndex, |
+ scratch1, scratch2); |
} |
@@ -2073,19 +2064,16 @@ void MacroAssembler::AllocateTwoByteSlicedString(Register result, |
} |
-void MacroAssembler::AllocateAsciiSlicedString(Register result, |
- Register length, |
- Register scratch1, |
- Register scratch2, |
- Label* gc_required) { |
+void MacroAssembler::AllocateOneByteSlicedString(Register result, |
+ Register length, |
+ Register scratch1, |
+ Register scratch2, |
+ Label* gc_required) { |
Allocate(SlicedString::kSize, result, scratch1, scratch2, gc_required, |
TAG_OBJECT); |
- InitializeNewString(result, |
- length, |
- Heap::kSlicedAsciiStringMapRootIndex, |
- scratch1, |
- scratch2); |
+ InitializeNewString(result, length, Heap::kSlicedOneByteStringMapRootIndex, |
+ scratch1, scratch2); |
} |
@@ -3184,39 +3172,30 @@ void MacroAssembler::LookupNumberStringCache(Register object, |
} |
-void MacroAssembler::JumpIfNonSmisNotBothSequentialAsciiStrings( |
- Register first, |
- Register second, |
- Register scratch1, |
- Register scratch2, |
+void MacroAssembler::JumpIfNonSmisNotBothSequentialOneByteStrings( |
+ Register first, Register second, Register scratch1, Register scratch2, |
Label* failure) { |
- // Test that both first and second are sequential ASCII strings. |
+ // Test that both first and second are sequential one-byte strings. |
// Assume that they are non-smis. |
ldr(scratch1, FieldMemOperand(first, HeapObject::kMapOffset)); |
ldr(scratch2, FieldMemOperand(second, HeapObject::kMapOffset)); |
ldrb(scratch1, FieldMemOperand(scratch1, Map::kInstanceTypeOffset)); |
ldrb(scratch2, FieldMemOperand(scratch2, Map::kInstanceTypeOffset)); |
- JumpIfBothInstanceTypesAreNotSequentialAscii(scratch1, |
- scratch2, |
- scratch1, |
- scratch2, |
- failure); |
+ JumpIfBothInstanceTypesAreNotSequentialOneByte(scratch1, scratch2, scratch1, |
+ scratch2, failure); |
} |
-void MacroAssembler::JumpIfNotBothSequentialAsciiStrings(Register first, |
- Register second, |
- Register scratch1, |
- Register scratch2, |
- Label* failure) { |
+void MacroAssembler::JumpIfNotBothSequentialOneByteStrings(Register first, |
+ Register second, |
+ Register scratch1, |
+ Register scratch2, |
+ Label* failure) { |
// Check that neither is a smi. |
and_(scratch1, first, Operand(second)); |
JumpIfSmi(scratch1, failure); |
- JumpIfNonSmisNotBothSequentialAsciiStrings(first, |
- second, |
- scratch1, |
- scratch2, |
- failure); |
+ JumpIfNonSmisNotBothSequentialOneByteStrings(first, second, scratch1, |
+ scratch2, failure); |
} |
@@ -3386,34 +3365,31 @@ void MacroAssembler::RestoreFPRegs(Register location, Register scratch) { |
} |
-void MacroAssembler::JumpIfBothInstanceTypesAreNotSequentialAscii( |
- Register first, |
- Register second, |
- Register scratch1, |
- Register scratch2, |
+void MacroAssembler::JumpIfBothInstanceTypesAreNotSequentialOneByte( |
+ Register first, Register second, Register scratch1, Register scratch2, |
Label* failure) { |
- const int kFlatAsciiStringMask = |
+ const int kFlatOneByteStringMask = |
kIsNotStringMask | kStringEncodingMask | kStringRepresentationMask; |
- const int kFlatAsciiStringTag = |
+ const int kFlatOneByteStringTag = |
kStringTag | kOneByteStringTag | kSeqStringTag; |
- and_(scratch1, first, Operand(kFlatAsciiStringMask)); |
- and_(scratch2, second, Operand(kFlatAsciiStringMask)); |
- cmp(scratch1, Operand(kFlatAsciiStringTag)); |
+ and_(scratch1, first, Operand(kFlatOneByteStringMask)); |
+ and_(scratch2, second, Operand(kFlatOneByteStringMask)); |
+ cmp(scratch1, Operand(kFlatOneByteStringTag)); |
// Ignore second test if first test failed. |
- cmp(scratch2, Operand(kFlatAsciiStringTag), eq); |
+ cmp(scratch2, Operand(kFlatOneByteStringTag), eq); |
b(ne, failure); |
} |
-void MacroAssembler::JumpIfInstanceTypeIsNotSequentialAscii(Register type, |
- Register scratch, |
- Label* failure) { |
- const int kFlatAsciiStringMask = |
+void MacroAssembler::JumpIfInstanceTypeIsNotSequentialOneByte(Register type, |
+ Register scratch, |
+ Label* failure) { |
+ const int kFlatOneByteStringMask = |
kIsNotStringMask | kStringEncodingMask | kStringRepresentationMask; |
- const int kFlatAsciiStringTag = |
+ const int kFlatOneByteStringTag = |
kStringTag | kOneByteStringTag | kSeqStringTag; |
- and_(scratch, type, Operand(kFlatAsciiStringMask)); |
- cmp(scratch, Operand(kFlatAsciiStringTag)); |
+ and_(scratch, type, Operand(kFlatOneByteStringMask)); |
+ cmp(scratch, Operand(kFlatOneByteStringTag)); |
b(ne, failure); |
} |
@@ -3827,8 +3803,8 @@ void MacroAssembler::EnsureNotWhite( |
mov(length, Operand(ExternalString::kSize), LeaveCC, ne); |
b(ne, &is_data_object); |
- // Sequential string, either ASCII or UC16. |
- // For ASCII (char-size of 1) we shift the smi tag away to get the length. |
+ // Sequential string, either Latin1 or UC16. |
+ // For Latin1 (char-size of 1) we shift the smi tag away to get the length. |
// For UC16 (char-size of 2) we just leave the smi tag in place, thereby |
// getting the length multiplied by 2. |
DCHECK(kOneByteStringTag == 4 && kStringEncodingMask == 4); |