| 
| virtual void  | printImpl (raw_ostream &OS, const MCAsmInfo *MAI) const =0 | 
| virtual bool  | evaluateAsRelocatableImpl (MCValue &Res, const MCAssembler *Asm) const =0 | 
| virtual bool  | isEqualTo (const MCExpr *x) const | 
| virtual bool  | inlineAssignedExpr () const | 
| virtual void  | visitUsedExpr (MCStreamer &Streamer) const =0 | 
| virtual MCFragment *  | findAssociatedFragment () const =0 | 
|   | MCExpr (const MCExpr &)=delete | 
| MCExpr &  | operator= (const MCExpr &)=delete | 
| ExprKind  | getKind () const | 
| SMLoc  | getLoc () const | 
| LLVM_ABI void  | dump () const | 
| LLVM_ABI bool  | evaluateAsAbsolute (int64_t &Res) const | 
|   | Try to evaluate the expression to an absolute value.  
  | 
| LLVM_ABI bool  | evaluateAsAbsolute (int64_t &Res, const MCAssembler &Asm) const | 
| LLVM_ABI bool  | evaluateAsAbsolute (int64_t &Res, const MCAssembler *Asm) const | 
| LLVM_ABI bool  | evaluateKnownAbsolute (int64_t &Res, const MCAssembler &Asm) const | 
|   | Aggressive variant of evaluateAsRelocatable when relocations are unavailable (e.g.  
  | 
| LLVM_ABI bool  | evaluateAsRelocatable (MCValue &Res, const MCAssembler *Asm) const | 
|   | Try to evaluate the expression to a relocatable value, i.e.  
  | 
| LLVM_ABI bool  | evaluateAsValue (MCValue &Res, const MCAssembler &Asm) const | 
|   | Try to evaluate the expression to the form (a - b + constant) where neither a nor b are variables.  
  | 
| LLVM_ABI MCFragment *  | findAssociatedFragment () const | 
|   | Find the "associated section" for this expression, which is currently defined as the absolute section for constants, or otherwise the section associated with the first defined symbol in the expression.  
  | 
Extension point for target-specific MCExpr subclasses to implement. 
This can encode a relocation operator, serving as a replacement for MCSymbolRefExpr::VariantKind. Ideally, limit this to top-level use, avoiding its inclusion as a subexpression.
NOTE: All subclasses are required to have trivial destructors because MCExprs are bump pointer allocated and not destructed. 
Definition at line 465 of file MCExpr.h.