26 lines
509 B
C++
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
|