| Index: src/x64/lithium-codegen-x64.cc
|
| ===================================================================
|
| --- src/x64/lithium-codegen-x64.cc (revision 6472)
|
| +++ src/x64/lithium-codegen-x64.cc (working copy)
|
| @@ -1389,19 +1389,7 @@
|
|
|
|
|
| void LCodeGen::DoLoadGlobal(LLoadGlobal* instr) {
|
| - Register result = ToRegister(instr->result());
|
| - if (result.is(rax)) {
|
| - __ load_rax(instr->hydrogen()->cell().location(),
|
| - RelocInfo::GLOBAL_PROPERTY_CELL);
|
| - } else {
|
| - __ movq(result, instr->hydrogen()->cell().location(),
|
| - RelocInfo::GLOBAL_PROPERTY_CELL);
|
| - __ movq(result, Operand(result, 0));
|
| - }
|
| - if (instr->hydrogen()->check_hole_value()) {
|
| - __ CompareRoot(result, Heap::kTheHoleValueRootIndex);
|
| - DeoptimizeIf(equal, instr->environment());
|
| - }
|
| + Abort("Unimplemented: %s", "DoLoadGlobal");
|
| }
|
|
|
|
|
| @@ -1466,26 +1454,7 @@
|
|
|
|
|
| void LCodeGen::DoPushArgument(LPushArgument* instr) {
|
| - LOperand* argument = instr->InputAt(0);
|
| - if (argument->IsConstantOperand()) {
|
| - LConstantOperand* const_op = LConstantOperand::cast(argument);
|
| - Handle<Object> literal = chunk_->LookupLiteral(const_op);
|
| - Representation r = chunk_->LookupLiteralRepresentation(const_op);
|
| - if (r.IsInteger32()) {
|
| - ASSERT(literal->IsNumber());
|
| - __ push(Immediate(static_cast<int32_t>(literal->Number())));
|
| - } else if (r.IsDouble()) {
|
| - Abort("unsupported double immediate");
|
| - } else {
|
| - ASSERT(r.IsTagged());
|
| - __ Push(literal);
|
| - }
|
| - } else if (argument->IsRegister()) {
|
| - __ push(ToRegister(argument));
|
| - } else {
|
| - ASSERT(!argument->IsDoubleRegister());
|
| - __ push(ToOperand(argument));
|
| - }
|
| + Abort("Unimplemented: %s", "DoPushArgument");
|
| }
|
|
|
|
|
| @@ -1593,12 +1562,7 @@
|
|
|
|
|
| void LCodeGen::DoCallNew(LCallNew* instr) {
|
| - ASSERT(ToRegister(instr->InputAt(0)).is(rdi));
|
| - ASSERT(ToRegister(instr->result()).is(rax));
|
| -
|
| - Handle<Code> builtin(Builtins::builtin(Builtins::JSConstructCall));
|
| - __ Set(rax, instr->arity());
|
| - CallCode(builtin, RelocInfo::CONSTRUCT_CALL, instr);
|
| + Abort("Unimplemented: %s", "DoCallNew");
|
| }
|
|
|
|
|
| @@ -1758,13 +1722,7 @@
|
|
|
|
|
| void LCodeGen::DoCheckSmi(LCheckSmi* instr) {
|
| - LOperand* input = instr->InputAt(0);
|
| - ASSERT(input->IsRegister());
|
| - Condition cc = masm()->CheckSmi(ToRegister(input));
|
| - if (instr->condition() != equal) {
|
| - cc = NegateCondition(cc);
|
| - }
|
| - DeoptimizeIf(cc, instr->environment());
|
| + Abort("Unimplemented: %s", "DoCheckSmi");
|
| }
|
|
|
|
|
| @@ -1779,12 +1737,7 @@
|
|
|
|
|
| void LCodeGen::DoCheckMap(LCheckMap* instr) {
|
| - LOperand* input = instr->InputAt(0);
|
| - ASSERT(input->IsRegister());
|
| - Register reg = ToRegister(input);
|
| - __ Cmp(FieldOperand(reg, HeapObject::kMapOffset),
|
| - instr->hydrogen()->map());
|
| - DeoptimizeIf(not_equal, instr->environment());
|
| + Abort("Unimplemented: %s", "DoCheckMap");
|
| }
|
|
|
|
|
|
|