| Index: src/ia32/macro-assembler-ia32.cc
|
| ===================================================================
|
| --- src/ia32/macro-assembler-ia32.cc (revision 4579)
|
| +++ src/ia32/macro-assembler-ia32.cc (working copy)
|
| @@ -910,7 +910,9 @@
|
| // Set the map, length and hash field.
|
| mov(FieldOperand(result, HeapObject::kMapOffset),
|
| Immediate(Factory::string_map()));
|
| - mov(FieldOperand(result, String::kLengthOffset), length);
|
| + mov(scratch1, length);
|
| + SmiTag(scratch1);
|
| + mov(FieldOperand(result, String::kLengthOffset), scratch1);
|
| mov(FieldOperand(result, String::kHashFieldOffset),
|
| Immediate(String::kEmptyHashField));
|
| }
|
| @@ -943,7 +945,9 @@
|
| // Set the map, length and hash field.
|
| mov(FieldOperand(result, HeapObject::kMapOffset),
|
| Immediate(Factory::ascii_string_map()));
|
| - mov(FieldOperand(result, String::kLengthOffset), length);
|
| + mov(scratch1, length);
|
| + SmiTag(scratch1);
|
| + mov(FieldOperand(result, String::kLengthOffset), scratch1);
|
| mov(FieldOperand(result, String::kHashFieldOffset),
|
| Immediate(String::kEmptyHashField));
|
| }
|
|
|