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

Unified Diff: src/compiler/js-operator.cc

Issue 2729143002: [compiler] Simplify paramerters for spread call. (Closed)
Patch Set: Address nits. 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
« no previous file with comments | « src/compiler/js-operator.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/compiler/js-operator.cc
diff --git a/src/compiler/js-operator.cc b/src/compiler/js-operator.cc
index a8f5692d54d4dce8c42f53895088f7736c4865f3..28e239e734d3b8b1667008b3994f8c4cbf7ad743 100644
--- a/src/compiler/js-operator.cc
+++ b/src/compiler/js-operator.cc
@@ -76,29 +76,29 @@ ConstructParameters const& ConstructParametersOf(Operator const* op) {
return OpParameter<ConstructParameters>(op);
}
-bool operator==(ConstructWithSpreadParameters const& lhs,
- ConstructWithSpreadParameters const& rhs) {
+bool operator==(SpreadWithArityParameters const& lhs,
+ SpreadWithArityParameters const& rhs) {
return lhs.arity() == rhs.arity();
}
-bool operator!=(ConstructWithSpreadParameters const& lhs,
- ConstructWithSpreadParameters const& rhs) {
+bool operator!=(SpreadWithArityParameters const& lhs,
+ SpreadWithArityParameters const& rhs) {
return !(lhs == rhs);
}
-size_t hash_value(ConstructWithSpreadParameters const& p) {
+size_t hash_value(SpreadWithArityParameters const& p) {
return base::hash_combine(p.arity());
}
-std::ostream& operator<<(std::ostream& os,
- ConstructWithSpreadParameters const& p) {
+std::ostream& operator<<(std::ostream& os, SpreadWithArityParameters const& p) {
return os << p.arity();
}
-ConstructWithSpreadParameters const& ConstructWithSpreadParametersOf(
+SpreadWithArityParameters const& SpreadWithArityParametersOf(
Operator const* op) {
- DCHECK_EQ(IrOpcode::kJSConstructWithSpread, op->opcode());
- return OpParameter<ConstructWithSpreadParameters>(op);
+ DCHECK(op->opcode() == IrOpcode::kJSConstructWithSpread ||
+ op->opcode() == IrOpcode::kJSCallWithSpread);
+ return OpParameter<SpreadWithArityParameters>(op);
}
std::ostream& operator<<(std::ostream& os, CallParameters const& p) {
@@ -123,28 +123,6 @@ CallForwardVarargsParameters const& CallForwardVarargsParametersOf(
return OpParameter<CallForwardVarargsParameters>(op);
}
-bool operator==(CallWithSpreadParameters const& lhs,
- CallWithSpreadParameters const& rhs) {
- return lhs.arity() == rhs.arity();
-}
-
-bool operator!=(CallWithSpreadParameters const& lhs,
- CallWithSpreadParameters const& rhs) {
- return !(lhs == rhs);
-}
-
-size_t hash_value(CallWithSpreadParameters const& p) {
- return base::hash_combine(p.arity());
-}
-
-std::ostream& operator<<(std::ostream& os, CallWithSpreadParameters const& p) {
- return os << p.arity();
-}
-
-CallWithSpreadParameters const& CallWithSpreadParametersOf(Operator const* op) {
- DCHECK_EQ(IrOpcode::kJSCallWithSpread, op->opcode());
- return OpParameter<CallWithSpreadParameters>(op);
-}
bool operator==(CallRuntimeParameters const& lhs,
CallRuntimeParameters const& rhs) {
@@ -765,8 +743,8 @@ const Operator* JSOperatorBuilder::Call(size_t arity, float frequency,
}
const Operator* JSOperatorBuilder::CallWithSpread(uint32_t arity) {
- CallWithSpreadParameters parameters(arity);
- return new (zone()) Operator1<CallWithSpreadParameters>( // --
+ SpreadWithArityParameters parameters(arity);
+ return new (zone()) Operator1<SpreadWithArityParameters>( // --
IrOpcode::kJSCallWithSpread, Operator::kNoProperties, // opcode
"JSCallWithSpread", // name
parameters.arity(), 1, 1, 1, 1, 2, // counts
@@ -808,8 +786,8 @@ const Operator* JSOperatorBuilder::Construct(uint32_t arity, float frequency,
}
const Operator* JSOperatorBuilder::ConstructWithSpread(uint32_t arity) {
- ConstructWithSpreadParameters parameters(arity);
- return new (zone()) Operator1<ConstructWithSpreadParameters>( // --
+ SpreadWithArityParameters parameters(arity);
+ return new (zone()) Operator1<SpreadWithArityParameters>( // --
IrOpcode::kJSConstructWithSpread, Operator::kNoProperties, // opcode
"JSConstructWithSpread", // name
parameters.arity(), 1, 1, 1, 1, 2, // counts
« no previous file with comments | « src/compiler/js-operator.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698