CompilerSysY/include/pass_base.h
2023-06-15 23:23:53 +08:00

26 lines
509 B
C++

#pragma once
#include "common.h"
#include "llir_module.h"
#include "mc_inst.h"
// #define DEBUG_REGALLOC
namespace CompSysY {
class Pass {
public:
std::string pass_name;
Pass(const std::string &name) : pass_name(name) {}
virtual ~Pass() = default;
virtual void run(const Module &module) = 0;
};
class MCPass {
public:
std::string pass_name;
MCPass(const std::string &name) : pass_name(name) {}
virtual void run(const MCModule &module) = 0;
};
} // namespace CompSysY