Index: src/compiler/instruction-selector.h |
diff --git a/src/compiler/instruction-selector.h b/src/compiler/instruction-selector.h |
index 33c0b9bba01a43c28f4a80ab5b81ce6340a57d32..a01cab4dab5232390bdb8413d8f451722f360247 100644 |
--- a/src/compiler/instruction-selector.h |
+++ b/src/compiler/instruction-selector.h |
@@ -149,6 +149,9 @@ class InstructionSelector final { |
// Checks if {node} is currently live. |
bool IsLive(Node* node) const { return !IsDefined(node) && IsUsed(node); } |
+ // Gets the effect level of {node}. |
+ int GetEffectLevel(Node* node) const; |
+ |
int GetVirtualRegister(const Node* node); |
const std::map<NodeId, int> GetVirtualRegistersForTesting() const; |
@@ -168,6 +171,9 @@ class InstructionSelector final { |
// will need to generate code for it. |
void MarkAsUsed(Node* node); |
+ // Sets the effect level of {node}. |
+ void SetEffectLevel(Node* node, int effect_level); |
+ |
// Inform the register allocation of the representation of the value produced |
// by {node}. |
void MarkAsRepresentation(MachineRepresentation rep, Node* node); |
@@ -269,6 +275,7 @@ class InstructionSelector final { |
ZoneVector<Instruction*> instructions_; |
BoolVector defined_; |
BoolVector used_; |
+ IntVector effect_level_; |
IntVector virtual_registers_; |
InstructionScheduler* scheduler_; |
Frame* frame_; |