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)