equal
deleted
inserted
replaced
369 |
369 |
370 // Globally do instruction substitution and remove substituted |
370 // Globally do instruction substitution and remove substituted |
371 // instructions from the instruction list. |
371 // instructions from the instruction list. |
372 // |
372 // |
373 |
373 |
374 class SubstitutionResolver: public BlockClosure { |
374 class SubstitutionResolver: public BlockClosure, ValueVisitor { |
375 static void substitute(Value* v); |
375 virtual void visit(Value* v); |
376 |
376 |
377 public: |
377 public: |
378 SubstitutionResolver(IR* hir) { |
378 SubstitutionResolver(IR* hir) { |
379 hir->iterate_preorder(this); |
379 hir->iterate_preorder(this); |
380 } |
380 } |