Lines Matching refs:InstructionNode
37 // the number of InstructionNode objects should dwindle, while the
39 class InstructionNode: public SeaNode {
41 static std::vector<sea_ir::InstructionNode*> Create(const art::Instruction* in);
42 // Returns the Dalvik instruction around which this InstructionNode is wrapped.
44 DCHECK(NULL != instruction_) << "Tried to access NULL instruction in an InstructionNode.";
57 void RenameToSSA(int reg_no, InstructionNode* definition) {
58 definition_edges_.insert(std::pair<int, InstructionNode*>(reg_no, definition));
65 virtual std::vector<InstructionNode*> GetSSAProducers() {
67 std::vector<InstructionNode*> ssa_uses;
73 std::map<int, InstructionNode* >* GetSSAProducersMap() {
76 std::vector<InstructionNode*>* GetSSAConsumers() {
79 virtual void AddSSAUse(InstructionNode* use) {
97 explicit InstructionNode(const art::Instruction* in):
102 std::map<int, InstructionNode* > definition_edges_; // Maps used registers to their definitions.
104 std::vector<InstructionNode*> used_in_;
109 class ConstInstructionNode: public InstructionNode {
112 InstructionNode(inst) { }
146 class ReturnInstructionNode: public InstructionNode {
148 explicit ReturnInstructionNode(const art::Instruction* inst): InstructionNode(inst) { }
155 class IfNeInstructionNode: public InstructionNode {
157 explicit IfNeInstructionNode(const art::Instruction* inst): InstructionNode(inst) {
168 class MoveResultInstructionNode: public InstructionNode {
170 explicit MoveResultInstructionNode(const art::Instruction* inst): InstructionNode(inst) { }
182 class InvokeStaticInstructionNode: public InstructionNode {
184 explicit InvokeStaticInstructionNode(const art::Instruction* inst): InstructionNode(inst),
202 class AddIntInstructionNode: public InstructionNode {
204 explicit AddIntInstructionNode(const art::Instruction* inst): InstructionNode(inst) { }
228 class GotoInstructionNode: public InstructionNode {
230 explicit GotoInstructionNode(const art::Instruction* inst): InstructionNode(inst) { }
237 class IfEqzInstructionNode: public InstructionNode {
239 explicit IfEqzInstructionNode(const art::Instruction* inst): InstructionNode(inst) {