LLVM: include/llvm/MC/MachineLocation.h Source File (original) (raw)
Go to the documentation of this file.
1
2
3
4
5
6
7
8
9
10
11
12
13
14#ifndef LLVM_MC_MACHINELOCATION_H
15#define LLVM_MC_MACHINELOCATION_H
16
17#include
18#include
19
20namespace llvm {
21
23private:
24 bool IsRegister = false;
25 unsigned Register = 0;
26
27public:
29
30
33
35
37 : IsRegister(!Indirect), Register(R) {}
38
41 }
42
43
44
45 bool isIndirect() const { return !IsRegister; }
46 bool isReg() const { return IsRegister; }
50};
51
54}
55
56}
57
58#endif
MachineLocation()=default
void setRegister(unsigned R)
bool operator==(const MachineLocation &Other) const
MachineLocation(unsigned R, bool Indirect=false)
Create a direct register location.
void setIsRegister(bool Is)
Wrapper class representing virtual and physical registers.
This is an optimization pass for GlobalISel generic memory operations.
bool operator!=(uint64_t V1, const APInt &V2)