Reviewers: fschneider,

Description:
Revert change 6468: X64 Crankshaft functions added.

Please review this at http://codereview.chromium.org/6260018/

SVN Base: http://v8.googlecode.com/svn/branches/bleeding_edge/

Affected files:
  M     src/x64/lithium-codegen-x64.cc
  M     src/x64/lithium-x64.cc


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");
 }


Index: src/x64/lithium-x64.cc
===================================================================
--- src/x64/lithium-x64.cc      (revision 6472)
+++ src/x64/lithium-x64.cc      (working copy)
@@ -1027,9 +1027,8 @@


 LInstruction* LChunkBuilder::DoPushArgument(HPushArgument* instr) {
-  ++argument_count_;
-  LOperand* argument = UseOrConstant(instr->argument());
-  return new LPushArgument(argument);
+  Abort("Unimplemented: %s", "DoPushArgument");
+  return NULL;
 }


@@ -1082,10 +1081,8 @@


 LInstruction* LChunkBuilder::DoCallNew(HCallNew* instr) {
-  LOperand* constructor = UseFixed(instr->constructor(), rdi);
-  argument_count_ -= instr->argument_count();
-  LCallNew* result = new LCallNew(constructor);
-  return MarkAsCall(DefineFixed(result, rax), instr);
+  Abort("Unimplemented: %s", "DoCallNew");
+  return NULL;
 }


@@ -1381,8 +1378,8 @@


 LInstruction* LChunkBuilder::DoCheckNonSmi(HCheckNonSmi* instr) {
-  LOperand* value = UseRegisterAtStart(instr->value());
-  return AssignEnvironment(new LCheckSmi(value, zero));
+  Abort("Unimplemented: %s", "DoCheckNonSmi");
+  return NULL;
 }


@@ -1399,8 +1396,8 @@


 LInstruction* LChunkBuilder::DoCheckSmi(HCheckSmi* instr) {
-  LOperand* value = UseRegisterAtStart(instr->value());
-  return AssignEnvironment(new LCheckSmi(value, not_zero));
+  Abort("Unimplemented: %s", "DoCheckSmi");
+  return NULL;
 }


@@ -1411,9 +1408,8 @@


 LInstruction* LChunkBuilder::DoCheckMap(HCheckMap* instr) {
-  LOperand* value = UseRegisterAtStart(instr->value());
-  LCheckMap* result = new LCheckMap(value);
-  return AssignEnvironment(result);
+  Abort("Unimplemented: %s", "DoCheckMap");
+  return NULL;
 }


@@ -1441,10 +1437,8 @@


 LInstruction* LChunkBuilder::DoLoadGlobal(HLoadGlobal* instr) {
-  LLoadGlobal* result = new LLoadGlobal;
-  return instr->check_hole_value()
-      ? AssignEnvironment(DefineAsRegister(result))
-      : DefineAsRegister(result);
+  Abort("Unimplemented: %s", "DoLoadGlobal");
+  return NULL;
 }




--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to