Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(85)

Unified Diff: src/compiler/arm/instruction-selector-arm.cc

Issue 508863002: [turbofan] Refactor code generation for calls. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: src/compiler/arm/instruction-selector-arm.cc
diff --git a/src/compiler/arm/instruction-selector-arm.cc b/src/compiler/arm/instruction-selector-arm.cc
index 96f95e95bfa123849595d408ccfa1f50143288c1..3c999c8cd5bc65a87b4d6033dc4b519c42260bdc 100644
--- a/src/compiler/arm/instruction-selector-arm.cc
+++ b/src/compiler/arm/instruction-selector-arm.cc
@@ -74,10 +74,14 @@ class ArmOperandGenerator V8_FINAL : public OperandGenerator {
case kArmStrh:
return value >= -255 && value <= 255;
+ case kArchCallAddress:
+ case kArchCallCodeObject:
+ case kArchCallJSFunction:
+ case kArchDeoptimize:
+ case kArchDrop:
case kArchJmp:
case kArchNop:
case kArchRet:
- case kArchDeoptimize:
case kArchTruncateDoubleToI:
case kArmMul:
case kArmMla:
@@ -86,11 +90,6 @@ class ArmOperandGenerator V8_FINAL : public OperandGenerator {
case kArmUdiv:
case kArmBfc:
case kArmUbfx:
- case kArmCallCodeObject:
- case kArmCallJSFunction:
- case kArmCallAddress:
- case kArmPush:
- case kArmDrop:
case kArmVcmpF64:
case kArmVaddF64:
case kArmVsubF64:
@@ -104,6 +103,7 @@ class ArmOperandGenerator V8_FINAL : public OperandGenerator {
case kArmVcvtF64U32:
case kArmVcvtS32F64:
case kArmVcvtU32F64:
+ case kArmPush:
return false;
}
UNREACHABLE();
@@ -808,14 +808,14 @@ void InstructionSelector::VisitCall(Node* call, BasicBlock* continuation,
InstructionCode opcode;
switch (descriptor->kind()) {
case CallDescriptor::kCallCodeObject: {
- opcode = kArmCallCodeObject;
+ opcode = kArchCallCodeObject;
break;
}
case CallDescriptor::kCallAddress:
- opcode = kArmCallAddress;
+ opcode = kArchCallAddress;
break;
case CallDescriptor::kCallJSFunction:
- opcode = kArmCallJSFunction;
+ opcode = kArchCallJSFunction;
break;
default:
UNREACHABLE();
@@ -838,7 +838,7 @@ void InstructionSelector::VisitCall(Node* call, BasicBlock* continuation,
if (descriptor->kind() == CallDescriptor::kCallAddress &&
!buffer.pushed_nodes.empty()) {
DCHECK(deoptimization == NULL && continuation == NULL);
- Emit(kArmDrop | MiscField::encode(buffer.pushed_nodes.size()), NULL);
+ Emit(kArchDrop | MiscField::encode(buffer.pushed_nodes.size()), NULL);
}
}

Powered by Google App Engine
This is Rietveld 408576698