Index: src/ia32/lithium-codegen-ia32.cc |
diff --git a/src/ia32/lithium-codegen-ia32.cc b/src/ia32/lithium-codegen-ia32.cc |
index 7089c762242e5b500a65722944f5c161a28bda27..33cfd011af44a9a469285e5b9377b6c2ba96f7e2 100644 |
--- a/src/ia32/lithium-codegen-ia32.cc |
+++ b/src/ia32/lithium-codegen-ia32.cc |
@@ -2317,46 +2317,6 @@ void LCodeGen::DoCmpConstantEqAndBranch(LCmpConstantEqAndBranch* instr) { |
} |
-void LCodeGen::DoIsNilAndBranch(LIsNilAndBranch* instr) { |
- Register reg = ToRegister(instr->value()); |
- int false_block = chunk_->LookupDestination(instr->false_block_id()); |
- |
- // If the expression is known to be untagged or a smi, then it's definitely |
- // not null, and it can't be a an undetectable object. |
- if (instr->hydrogen()->representation().IsSpecialization() || |
- instr->hydrogen()->type().IsSmi()) { |
- EmitGoto(false_block); |
- return; |
- } |
- |
- int true_block = chunk_->LookupDestination(instr->true_block_id()); |
- Handle<Object> nil_value = instr->nil() == kNullValue ? |
- factory()->null_value() : |
- factory()->undefined_value(); |
- __ cmp(reg, nil_value); |
- if (instr->kind() == kStrictEquality) { |
- EmitBranch(true_block, false_block, equal); |
- } else { |
- Handle<Object> other_nil_value = instr->nil() == kNullValue ? |
- factory()->undefined_value() : |
- factory()->null_value(); |
- Label* true_label = chunk_->GetAssemblyLabel(true_block); |
- Label* false_label = chunk_->GetAssemblyLabel(false_block); |
- __ j(equal, true_label); |
- __ cmp(reg, other_nil_value); |
- __ j(equal, true_label); |
- __ JumpIfSmi(reg, false_label); |
- // Check for undetectable objects by looking in the bit field in |
- // the map. The object has already been smi checked. |
- Register scratch = ToRegister(instr->temp()); |
- __ mov(scratch, FieldOperand(reg, HeapObject::kMapOffset)); |
- __ movzx_b(scratch, FieldOperand(scratch, Map::kBitFieldOffset)); |
- __ test(scratch, Immediate(1 << Map::kIsUndetectable)); |
- EmitBranch(true_block, false_block, not_zero); |
- } |
-} |
- |
- |
Condition LCodeGen::EmitIsObject(Register input, |
Register temp1, |
Label* is_not_object, |