1
0
mirror of https://github.com/exaloop/codon.git synced 2025-06-03 15:03:52 +08:00
codon/compiler/sir/analyze/module/global_vars.h
2021-09-27 14:02:44 -04:00

29 lines
632 B
C++

#pragma once
#include <unordered_map>
#include "sir/analyze/analysis.h"
namespace seq {
namespace ir {
namespace analyze {
namespace module {
struct GlobalVarsResult : public Result {
std::unordered_map<id_t, id_t> assignments;
explicit GlobalVarsResult(std::unordered_map<id_t, id_t> assignments)
: assignments(std::move(assignments)) {}
};
class GlobalVarsAnalyses : public Analysis {
static const std::string KEY;
std::string getKey() const override { return KEY; }
std::unique_ptr<Result> run(const Module *m) override;
};
} // namespace module
} // namespace analyze
} // namespace ir
} // namespace seq