mini-llvm 0.1.0
Loading...
Searching...
No Matches
PhysicalRegister.h
Go to the documentation of this file.
1// SPDX-License-Identifier: MIT
2
3#pragma once
4
5#include <string>
6
10
11namespace mini_llvm::mir {
12
14public:
15 virtual int idx() const = 0;
16 virtual std::string name() const = 0;
17 virtual RegisterClass Class() const = 0;
18 virtual bool isPreserved() const = 0;
19 virtual bool isAllocatable() const = 0;
20
21 std::string format() const override {
22 return "$" + name();
23 }
24};
25
26} // namespace mini_llvm::mir
#define MINI_LLVM_EXPORT
Definition Compiler.h:17
Definition PhysicalRegister.h:13
virtual bool isPreserved() const =0
virtual std::string name() const =0
virtual bool isAllocatable() const =0
std::string format() const override
Definition PhysicalRegister.h:21
virtual RegisterClass Class() const =0
virtual int idx() const =0
Definition BasicBlock.h:22
RegisterClass
Definition RegisterClass.h:7