| Index: src/ia32/lithium-codegen-ia32.cc
|
| ===================================================================
|
| --- src/ia32/lithium-codegen-ia32.cc (revision 6255)
|
| +++ src/ia32/lithium-codegen-ia32.cc (working copy)
|
| @@ -2009,32 +2009,15 @@
|
| void LCodeGen::DoLoadKeyedFastElement(LLoadKeyedFastElement* instr) {
|
| Register elements = ToRegister(instr->elements());
|
| Register key = ToRegister(instr->key());
|
| - Register result;
|
| - if (instr->load_result() != NULL) {
|
| - result = ToRegister(instr->load_result());
|
| - } else {
|
| - result = ToRegister(instr->result());
|
| - ASSERT(result.is(elements));
|
| - }
|
| + Register result = ToRegister(instr->result());
|
| + ASSERT(result.is(elements));
|
|
|
| // Load the result.
|
| __ mov(result, FieldOperand(elements, key, times_4, FixedArray::kHeaderSize));
|
|
|
| - Representation r = instr->hydrogen()->representation();
|
| - if (r.IsInteger32()) {
|
| - // Untag and check for smi.
|
| - __ SmiUntag(result);
|
| - DeoptimizeIf(carry, instr->environment());
|
| - } else if (r.IsDouble()) {
|
| - EmitNumberUntagD(result,
|
| - ToDoubleRegister(instr->result()),
|
| - instr->environment());
|
| - } else {
|
| - // Check for the hole value.
|
| - ASSERT(r.IsTagged());
|
| - __ cmp(result, Factory::the_hole_value());
|
| - DeoptimizeIf(equal, instr->environment());
|
| - }
|
| + // Check for the hole value.
|
| + __ cmp(result, Factory::the_hole_value());
|
| + DeoptimizeIf(equal, instr->environment());
|
| }
|
|
|
|
|
|
|