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

Unified Diff: src/compiler/simplified-lowering.cc

Issue 2692753004: [turbofan] escape analysis supports arguments object and rest elements (Closed)
Patch Set: replaced obscure for-loop Created 3 years, 10 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/simplified-lowering.cc
diff --git a/src/compiler/simplified-lowering.cc b/src/compiler/simplified-lowering.cc
index 715e4189b6298f8eedce5cf73ffc267b4e8a2b89..5e603b66174dd2140be133f63037498d5c7d181f 100644
--- a/src/compiler/simplified-lowering.cc
+++ b/src/compiler/simplified-lowering.cc
@@ -2547,10 +2547,18 @@ class RepresentationSelector {
VisitObjectIs(node, Type::Undetectable(), lowering);
return;
}
- case IrOpcode::kNewRestParameterElements:
+ case IrOpcode::kArgumentsFrame: {
+ SetOutput(node, MachineType::PointerRepresentation());
+ return;
+ }
+ case IrOpcode::kArgumentsLength: {
+ VisitUnop(node, UseInfo::PointerInt(),
+ MachineRepresentation::kTaggedSigned);
+ return;
+ }
case IrOpcode::kNewUnmappedArgumentsElements: {
- ProcessRemainingInputs(node, 0);
- SetOutput(node, MachineRepresentation::kTaggedPointer);
+ VisitBinop(node, UseInfo::PointerInt(), UseInfo::TaggedSigned(),
+ MachineRepresentation::kTaggedPointer);
return;
}
case IrOpcode::kArrayBufferWasNeutered: {
@@ -2664,7 +2672,7 @@ class RepresentationSelector {
case IrOpcode::kBeginRegion:
case IrOpcode::kProjection:
case IrOpcode::kOsrValue:
- case IrOpcode::kArgumentsObjectState:
+ case IrOpcode::kArgumentsElementsState:
// All JavaScript operators except JSToNumber have uniform handling.
#define OPCODE_CASE(name) case IrOpcode::k##name:
JS_SIMPLE_BINOP_LIST(OPCODE_CASE)

Powered by Google App Engine
This is Rietveld 408576698