llir-opt  0.0.1
Low-Level Post-Link Optimiser for OCaml and C
inst_compare.h
1 // This file if part of the llir-opt project.
2 // Licensing information can be found in the LICENSE file.
3 // (C) 2018 Nandor Licker. All rights reserved.
4 
5 #pragma once
6 
7 #include "core/insts.h"
8 
9 
10 
14 class InstCompare {
15 public:
16  virtual bool Equal(ConstRef<Value> a, ConstRef<Value> b) const;
17  virtual bool Equal(ConstRef<Global> a, ConstRef<Global> b) const;
18  virtual bool Equal(ConstRef<Expr> a, ConstRef<Expr> b) const;
19  virtual bool Equal(ConstRef<Constant> a, ConstRef<Constant> b) const;
20  virtual bool Equal(ConstRef<Inst> a, ConstRef<Inst> b) const;
21  virtual bool Equal(const Block *a, const Block *b) const;
22 
23  bool IsEqual(const Inst &a, const Inst &b) const;
24 };
Inst
Definition: inst.h:53
InstCompare
Definition: inst_compare.h:14
ConstRef
Definition: ref.h:83
Block
Definition: block.h:29