Revision: 6473
Author: [email protected]
Date: Tue Jan 25 08:37:18 2011
Log: Revert change 6468: X64 Crankshaft functions added.
Review URL: http://codereview.chromium.org/6260018
http://code.google.com/p/v8/source/detail?r=6473

Modified:
 /branches/bleeding_edge/src/x64/lithium-codegen-x64.cc
 /branches/bleeding_edge/src/x64/lithium-x64.cc

=======================================
--- /branches/bleeding_edge/src/x64/lithium-codegen-x64.cc Tue Jan 25 06:03:20 2011 +++ /branches/bleeding_edge/src/x64/lithium-codegen-x64.cc Tue Jan 25 08:37:18 2011
@@ -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");
 }


=======================================
--- /branches/bleeding_edge/src/x64/lithium-x64.cc      Tue Jan 25 06:03:20 2011
+++ /branches/bleeding_edge/src/x64/lithium-x64.cc      Tue Jan 25 08:37:18 2011
@@ -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