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

Unified Diff: src/compiler/instruction-selector.h

Issue 1534593004: [turbofan] Pass type information of arguments to EmitPrepareArguments. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 5 years 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/instruction-selector.h
diff --git a/src/compiler/instruction-selector.h b/src/compiler/instruction-selector.h
index 26a27b9af4c6b5828a20c170f4302505405168fa..81a61671fb198292f03b0693605a5c675f3f156b 100644
--- a/src/compiler/instruction-selector.h
+++ b/src/compiler/instruction-selector.h
@@ -28,6 +28,21 @@ struct SwitchInfo;
typedef ZoneVector<InstructionOperand> InstructionOperandVector;
+// This struct connects nodes of parameters which are going to be pushed on the
+// call stack with their parameter index in the call descriptor of the callee.
+class PushParameter {
+ public:
+ PushParameter() : node_(nullptr), parameter_index_(0) {}
+ PushParameter(Node* node, size_t parameter_index)
+ : node_(node), parameter_index_(parameter_index) {}
+
+ Node* node() const { return node_; }
+ size_t parameter_index() const { return parameter_index_; }
+
+ private:
+ Node* node_;
+ size_t parameter_index_;
+};
// Instruction selection generates an InstructionSequence for a given Schedule.
class InstructionSelector final {
@@ -233,7 +248,7 @@ class InstructionSelector final {
void VisitReturn(Node* ret);
void VisitThrow(Node* value);
- void EmitPrepareArguments(NodeVector* arguments,
+ void EmitPrepareArguments(ZoneVector<compiler::PushParameter>* arguments,
const CallDescriptor* descriptor, Node* node);
// ===========================================================================

Powered by Google App Engine
This is Rietveld 408576698