LLVM: lib/Target/AMDGPU/Utils/AMDGPUDelayedMCExpr.cpp Source File (original) (raw)

1

2

3

4

5

6

7

8

12

13using namespace llvm;

14

18 switch (Type) {

19 default:

27 }

28}

29

31 const MCExpr *ExprValue) {

36 return;

37 }

38 }

39

40 DelayedExprs.emplace_back(DN, Type, ExprValue);

41}

42

44 while (!DelayedExprs.empty()) {

45 Expr DE = DelayedExprs.front();

47

49 return false;

50

51 DelayedExprs.pop_front();

52 DE.DN = getNode(DE.DN, DE.Type, Res);

53 }

54

55 return true;

56}

57

59

static msgpack::DocNode getNode(msgpack::DocNode DN, msgpack::Type Type, MCValue Val)

Definition AMDGPUDelayedMCExpr.cpp:15

void assignDocNode(msgpack::DocNode &DN, msgpack::Type Type, const MCExpr *ExprValue)

Definition AMDGPUDelayedMCExpr.cpp:30

void clear()

Definition AMDGPUDelayedMCExpr.cpp:58

bool empty()

Definition AMDGPUDelayedMCExpr.cpp:60

bool resolveDelayedExpressions()

Definition AMDGPUDelayedMCExpr.cpp:43

Base class for the full range of assembler expressions which are needed for parsing.

LLVM_ABI bool evaluateAsRelocatable(MCValue &Res, const MCAssembler *Asm) const

Try to evaluate the expression to a relocatable value, i.e.

int64_t getConstant() const

bool isAbsolute() const

Is this an absolute (as opposed to relocatable) value.

The instances of the Type class are immutable: once they are created, they are never changed.

A node in a MsgPack Document.

Document * getDocument() const

Simple in-memory representation of a document of msgpack objects with ability to find and create arra...

DocNode getEmptyNode()

Create an empty node associated with this Document.

DocNode getNode()

Create a nil node associated with this Document.

Type

MessagePack types as defined in the standard, with the exception of Integer being divided into a sign...

This is an optimization pass for GlobalISel generic memory operations.