|
LLVM
8.0.1
|
DwarfExpression implementation for .debug_loc entries. More...
#include "CodeGen/AsmPrinter/DwarfExpression.h"


Public Member Functions | |
| DebugLocDwarfExpression (unsigned DwarfVersion, ByteStreamer &BS) | |
Public Member Functions inherited from llvm::DwarfExpression | |
| DwarfExpression (unsigned DwarfVersion) | |
| void | finalize () |
| This needs to be called last to commit any pending changes. More... | |
| void | addSignedConstant (int64_t Value) |
| Emit a signed constant. More... | |
| void | addUnsignedConstant (uint64_t Value) |
| Emit an unsigned constant. More... | |
| void | addUnsignedConstant (const APInt &Value) |
| Emit an unsigned constant. More... | |
| bool | isMemoryLocation () const |
| bool | isUnknownLocation () const |
| void | setMemoryLocationKind () |
| Lock this down to become a memory location description. More... | |
| bool | addMachineRegExpression (const TargetRegisterInfo &TRI, DIExpressionCursor &Expr, unsigned MachineReg, unsigned FragmentOffsetInBits=0) |
| Emit a machine register location. More... | |
| void | addExpression (DIExpressionCursor &&Expr, unsigned FragmentOffsetInBits=0) |
| Emit all remaining operations in the DIExpressionCursor. More... | |
| void | addFragmentOffset (const DIExpression *Expr) |
If applicable, emit an empty DW_OP_piece / DW_OP_bit_piece to advance to the fragment described by Expr. More... | |
Additional Inherited Members | |
Protected Types inherited from llvm::DwarfExpression | |
| enum | { Unknown = 0, Register, Memory, Implicit } |
| The kind of location description being produced. More... | |
Protected Member Functions inherited from llvm::DwarfExpression | |
| void | setSubRegisterPiece (unsigned SizeInBits, unsigned OffsetInBits) |
| Push a DW_OP_piece / DW_OP_bit_piece for emitting later, if one is needed to represent a subregister. More... | |
| void | maskSubRegister () |
| Add masking operations to stencil out a subregister. More... | |
| void | emitConstu (uint64_t Value) |
| Emit a normalized unsigned constant. More... | |
| void | addReg (int DwarfReg, const char *Comment=nullptr) |
| Emit a DW_OP_reg operation. More... | |
| void | addBReg (int DwarfReg, int Offset) |
| Emit a DW_OP_breg operation. More... | |
| void | addFBReg (int Offset) |
| Emit DW_OP_fbreg <Offset>. More... | |
| bool | addMachineReg (const TargetRegisterInfo &TRI, unsigned MachineReg, unsigned MaxSize=~1U) |
| Emit a partial DWARF register operation. More... | |
| void | addOpPiece (unsigned SizeInBits, unsigned OffsetInBits=0) |
| Emit a DW_OP_piece or DW_OP_bit_piece operation for a variable fragment. More... | |
| void | addShr (unsigned ShiftBy) |
| Emit a shift-right dwarf operation. More... | |
| void | addAnd (unsigned Mask) |
| Emit a bitwise and dwarf operation. More... | |
| void | addStackValue () |
| Emit a DW_OP_stack_value, if supported. More... | |
| ~DwarfExpression ()=default | |
Protected Attributes inherited from llvm::DwarfExpression | |
| SmallVector< Register, 2 > | DwarfRegs |
| The register location, if any. More... | |
| uint64_t | OffsetInBits = 0 |
| Current Fragment Offset in Bits. More... | |
| unsigned | DwarfVersion |
| unsigned | SubRegisterSizeInBits = 0 |
| Sometimes we need to add a DW_OP_bit_piece to describe a subregister. More... | |
| unsigned | SubRegisterOffsetInBits = 0 |
| enum llvm::DwarfExpression:: { ... } | LocationKind = Unknown |
| The kind of location description being produced. More... | |
DwarfExpression implementation for .debug_loc entries.
Definition at line 254 of file DwarfExpression.h.
|
inline |
Definition at line 264 of file DwarfExpression.h.
1.8.13