LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Static Public Member Functions | List of all members
llvm::MCUnaryExpr Class Reference

MCUnaryExpr - Unary assembler expressions. More...

#include <MCExpr.h>

Inheritance diagram for llvm::MCUnaryExpr:
Inheritance graph
[legend]
Collaboration diagram for llvm::MCUnaryExpr:
Collaboration graph
[legend]

Public Types

enum  Opcode { LNot, Minus, Not, Plus }
 
- Public Types inherited from llvm::MCExpr
enum  ExprKind {
  Binary, Constant, SymbolRef, Unary,
  Target
}
 

Public Member Functions

Accessors
Opcode getOpcode () const
 getOpcode - Get the kind of this unary expression. More...
 
const MCExprgetSubExpr () const
 getSubExpr - Get the child of this unary expression. More...
 
- Public Member Functions inherited from llvm::MCExpr
ExprKind getKind () const
 
void print (raw_ostream &OS) const
 
void dump () const
 
bool EvaluateAsAbsolute (int64_t &Res, const MCAsmLayout &Layout, const SectionAddrMap &Addrs) const
 
bool EvaluateAsAbsolute (int64_t &Res) const
 
bool EvaluateAsAbsolute (int64_t &Res, const MCAssembler &Asm) const
 
bool EvaluateAsAbsolute (int64_t &Res, const MCAsmLayout &Layout) const
 
bool EvaluateAsRelocatable (MCValue &Res, const MCAsmLayout &Layout) const
 
const MCSectionFindAssociatedSection () const
 

Static Public Member Functions

static bool classof (const MCExpr *E)
 
Construction
static const MCUnaryExprCreate (Opcode Op, const MCExpr *Expr, MCContext &Ctx)
 
static const MCUnaryExprCreateLNot (const MCExpr *Expr, MCContext &Ctx)
 
static const MCUnaryExprCreateMinus (const MCExpr *Expr, MCContext &Ctx)
 
static const MCUnaryExprCreateNot (const MCExpr *Expr, MCContext &Ctx)
 
static const MCUnaryExprCreatePlus (const MCExpr *Expr, MCContext &Ctx)
 

Additional Inherited Members

- Protected Member Functions inherited from llvm::MCExpr
 MCExpr (ExprKind _Kind)
 
bool EvaluateAsRelocatableImpl (MCValue &Res, const MCAssembler *Asm, const MCAsmLayout *Layout, const SectionAddrMap *Addrs, bool InSet) const
 

Detailed Description

MCUnaryExpr - Unary assembler expressions.

Definition at line 303 of file MCExpr.h.

Member Enumeration Documentation

Enumerator
LNot 

Logical negation.

Minus 

Unary minus.

Not 

Bitwise negation.

Plus 

Unary plus.

Definition at line 305 of file MCExpr.h.

Member Function Documentation

static bool llvm::MCUnaryExpr::classof ( const MCExpr E)
inlinestatic

Definition at line 350 of file MCExpr.h.

References llvm::MCExpr::getKind(), and llvm::MCExpr::Unary.

const MCUnaryExpr * MCUnaryExpr::Create ( Opcode  Op,
const MCExpr Expr,
MCContext Ctx 
)
static

Definition at line 147 of file MCExpr.cpp.

Referenced by CreateLNot(), CreateMinus(), CreateNot(), and CreatePlus().

static const MCUnaryExpr* llvm::MCUnaryExpr::CreateLNot ( const MCExpr Expr,
MCContext Ctx 
)
inlinestatic

Definition at line 325 of file MCExpr.h.

References Create(), and LNot.

static const MCUnaryExpr* llvm::MCUnaryExpr::CreateMinus ( const MCExpr Expr,
MCContext Ctx 
)
inlinestatic

Definition at line 328 of file MCExpr.h.

References Create(), and Minus.

Referenced by llvm::MCExternalSymbolizer::tryAddingSymbolicOperand().

static const MCUnaryExpr* llvm::MCUnaryExpr::CreateNot ( const MCExpr Expr,
MCContext Ctx 
)
inlinestatic

Definition at line 331 of file MCExpr.h.

References Create(), and Not.

static const MCUnaryExpr* llvm::MCUnaryExpr::CreatePlus ( const MCExpr Expr,
MCContext Ctx 
)
inlinestatic

Definition at line 334 of file MCExpr.h.

References Create(), and Plus.

Opcode llvm::MCUnaryExpr::getOpcode ( ) const
inline

getOpcode - Get the kind of this unary expression.

Definition at line 343 of file MCExpr.h.

Referenced by llvm::MCExpr::EvaluateAsRelocatableImpl(), and llvm::MCExpr::print().

const MCExpr* llvm::MCUnaryExpr::getSubExpr ( ) const
inline

getSubExpr - Get the child of this unary expression.

Definition at line 346 of file MCExpr.h.

Referenced by llvm::MCExpr::EvaluateAsRelocatableImpl(), and llvm::MCExpr::print().


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