LLVM  8.0.1
Public Member Functions | List of all members
llvm::DIExpression::ExprOperand Class Reference

A lightweight wrapper around an expression operand. More...

#include "llvm/IR/DebugInfoMetadata.h"

Public Member Functions

 ExprOperand ()=default
 
 ExprOperand (const uint64_t *Op)
 
const uint64_t * get () const
 
uint64_t getOp () const
 Get the operand code. More...
 
uint64_t getArg (unsigned I) const
 Get an argument to the operand. More...
 
unsigned getNumArgs () const
 
unsigned getSize () const
 Return the size of the operand. More...
 
void appendToVector (SmallVectorImpl< uint64_t > &V) const
 Append the elements of this operand to V. More...
 

Detailed Description

A lightweight wrapper around an expression operand.

TODO: Store arguments directly and change DIExpression to store a range of these.

Definition at line 2388 of file DebugInfoMetadata.h.

Constructor & Destructor Documentation

◆ ExprOperand() [1/2]

llvm::DIExpression::ExprOperand::ExprOperand ( )
default

◆ ExprOperand() [2/2]

llvm::DIExpression::ExprOperand::ExprOperand ( const uint64_t *  Op)
inlineexplicit

Definition at line 2393 of file DebugInfoMetadata.h.

Member Function Documentation

◆ appendToVector()

void llvm::DIExpression::ExprOperand::appendToVector ( SmallVectorImpl< uint64_t > &  V) const
inline

Append the elements of this operand to V.

Definition at line 2413 of file DebugInfoMetadata.h.

References llvm::SmallVectorImpl< T >::append().

◆ get()

const uint64_t* llvm::DIExpression::ExprOperand::get ( ) const
inline

Definition at line 2395 of file DebugInfoMetadata.h.

Referenced by llvm::DIExpression::expr_op_iterator::getBase().

◆ getArg()

uint64_t llvm::DIExpression::ExprOperand::getArg ( unsigned  I) const
inline

Get an argument to the operand.

Never returns the operand itself.

Definition at line 2403 of file DebugInfoMetadata.h.

Referenced by llvm::DwarfExpression::addMachineRegExpression().

◆ getNumArgs()

unsigned llvm::DIExpression::ExprOperand::getNumArgs ( ) const
inline

Definition at line 2405 of file DebugInfoMetadata.h.

◆ getOp()

uint64_t llvm::DIExpression::ExprOperand::getOp ( ) const
inline

Get the operand code.

Definition at line 2398 of file DebugInfoMetadata.h.

Referenced by llvm::DwarfExpression::addMachineRegExpression().

◆ getSize()

unsigned DIExpression::ExprOperand::getSize ( ) const

Return the size of the operand.

Return the number of elements in the operand (1 + args).

Definition at line 815 of file DebugInfoMetadata.cpp.

References llvm::dwarf::DW_OP_LLVM_fragment.

Referenced by llvm::DIExpression::expr_op_iterator::operator!=().


The documentation for this class was generated from the following files: