|
reference, declaration → definition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced
|
Derived Classes
include/llvm/MC/MCExpr.h 131 class MCConstantExpr : public MCExpr {
169 class MCSymbolRefExpr : public MCExpr {
366 class MCUnaryExpr : public MCExpr {
423 class MCBinaryExpr : public MCExpr {
587 class MCTargetExpr : public MCExpr {
Declarations
include/llvm/CodeGen/AsmPrinter.h 63 class MCExpr;
include/llvm/CodeGen/DIE.h 42 class MCExpr;
include/llvm/CodeGen/FaultMaps.h 23 class MCExpr;
include/llvm/CodeGen/StackMaps.h 26 class MCExpr;
include/llvm/CodeGen/TargetLowering.h 87 class MCExpr;
include/llvm/MC/ConstantPools.h 26 class MCExpr;
include/llvm/MC/MCAsmInfo.h 27 class MCExpr;
include/llvm/MC/MCDisassembler/MCRelocationInfo.h 21 class MCExpr;
include/llvm/MC/MCELFStreamer.h 20 class MCExpr;
include/llvm/MC/MCFixup.h 19 class MCExpr;
include/llvm/MC/MCInst.h 27 class MCExpr;
include/llvm/MC/MCObjectStreamer.h 21 class MCExpr;
include/llvm/MC/MCParser/MCAsmParser.h 29 class MCExpr;
include/llvm/MC/MCParser/MCAsmParserUtils.h 15 class MCExpr;
include/llvm/MC/MCSection.h 28 class MCExpr;
include/llvm/MC/MCStreamer.h 46 class MCExpr;
include/llvm/MC/MCSymbol.h 30 class MCExpr;
include/llvm/MC/MCWasmStreamer.h 23 class MCExpr;
include/llvm/Target/TargetLoweringObjectFile.h 30 class MCExpr;
lib/CodeGen/AsmPrinter/DwarfCompileUnit.h 39 class MCExpr;
lib/CodeGen/AsmPrinter/WinException.h 22 class MCExpr;
lib/Target/AVR/MCTargetDesc/AVRMCCodeEmitter.h 28 class MCExpr;
lib/Target/Hexagon/MCTargetDesc/HexagonMCInstrInfo.h 28 class MCExpr;
lib/Target/Mips/MCTargetDesc/MipsMCCodeEmitter.h 22 class MCExpr;
lib/Target/PowerPC/PPCTargetStreamer.h 17 class MCExpr;
References
include/llvm/CodeGen/AsmPrinter.h 357 virtual const MCExpr *lowerConstant(const Constant *CV);
567 virtual void EmitDebugValue(const MCExpr *Value, unsigned Size) const;
include/llvm/CodeGen/DIE.h 202 const MCExpr *Expr;
205 explicit DIEExpr(const MCExpr *E) : Expr(E) {}
208 const MCExpr *getValue() const { return Expr; }
include/llvm/CodeGen/DebugHandlerBase.h 129 const MCExpr *getFunctionLocalOffsetAfterInsn(const MachineInstr *MI);
include/llvm/CodeGen/FaultMaps.h 50 const MCExpr *FaultingOffsetExpr = nullptr;
51 const MCExpr *HandlerOffsetExpr = nullptr;
55 explicit FaultInfo(FaultMaps::FaultKind Kind, const MCExpr *FaultingOffset,
56 const MCExpr *HandlerOffset)
include/llvm/CodeGen/StackMaps.h 251 const MCExpr *CSOffsetExpr = nullptr;
257 CallsiteInfo(const MCExpr *CSOffsetExpr, uint64_t ID,
include/llvm/CodeGen/TargetLowering.h 2999 virtual const MCExpr *
3012 virtual const MCExpr *
include/llvm/CodeGen/TargetLoweringObjectFileImpl.h 73 const MCExpr *getTTypeGlobalReference(const GlobalValue *GV,
90 const MCExpr *lowerRelativeReference(const GlobalValue *LHS,
118 const MCExpr *getTTypeGlobalReference(const GlobalValue *GV,
130 const MCExpr *getIndirectSymViaGOTPCRel(const GlobalValue *GV,
173 const MCExpr *lowerRelativeReference(const GlobalValue *LHS,
206 const MCExpr *lowerRelativeReference(const GlobalValue *LHS,
229 const MCExpr *lowerRelativeReference(const GlobalValue *LHS,
include/llvm/MC/ConstantPools.h 33 ConstantPoolEntry(MCSymbol *L, const MCExpr *Val, unsigned Sz, SMLoc Loc_)
37 const MCExpr *Value;
58 const MCExpr *addEntry(const MCExpr *Value, MCContext &Context,
58 const MCExpr *addEntry(const MCExpr *Value, MCContext &Context,
92 const MCExpr *addEntry(MCStreamer &Streamer, const MCExpr *Expr,
92 const MCExpr *addEntry(MCStreamer &Streamer, const MCExpr *Expr,
include/llvm/MC/MCAsmInfo.h 449 virtual const MCExpr *getExprForPersonalitySymbol(const MCSymbol *Sym,
453 virtual const MCExpr *getExprForFDESymbol(const MCSymbol *Sym,
include/llvm/MC/MCDisassembler/MCRelocationInfo.h 38 virtual const MCExpr *createExprForCAPIVariantKind(const MCExpr *SubExpr,
38 virtual const MCExpr *createExprForCAPIVariantKind(const MCExpr *SubExpr,
include/llvm/MC/MCELFStreamer.h 42 void ChangeSection(MCSection *Section, const MCExpr *Subsection) override;
53 void emitELFSize(MCSymbol *Symbol, const MCExpr *Value) override;
65 void EmitValueImpl(const MCExpr *Value, unsigned Size,
86 void fixSymbolsInTLSFixups(const MCExpr *expr);
include/llvm/MC/MCExpr.h 62 MCExpr(const MCExpr &) = delete;
63 MCExpr &operator=(const MCExpr &) = delete;
63 MCExpr &operator=(const MCExpr &) = delete;
125 inline raw_ostream &operator<<(raw_ostream &OS, const MCExpr &E) {
131 class MCConstantExpr : public MCExpr {
136 : MCExpr(MCExpr::Constant, SMLoc()), Value(Value) {}
139 : MCExpr(MCExpr::Constant, SMLoc()), Value(Value),
159 static bool classof(const MCExpr *E) {
160 return E->getKind() == MCExpr::Constant;
169 class MCSymbolRefExpr : public MCExpr {
360 static bool classof(const MCExpr *E) {
361 return E->getKind() == MCExpr::SymbolRef;
366 class MCUnaryExpr : public MCExpr {
377 const MCExpr *Expr;
379 MCUnaryExpr(Opcode Op, const MCExpr *Expr, SMLoc Loc)
380 : MCExpr(MCExpr::Unary, Loc), Op(Op), Expr(Expr) {}
386 static const MCUnaryExpr *create(Opcode Op, const MCExpr *Expr,
389 static const MCUnaryExpr *createLNot(const MCExpr *Expr, MCContext &Ctx, SMLoc Loc = SMLoc()) {
393 static const MCUnaryExpr *createMinus(const MCExpr *Expr, MCContext &Ctx, SMLoc Loc = SMLoc()) {
397 static const MCUnaryExpr *createNot(const MCExpr *Expr, MCContext &Ctx, SMLoc Loc = SMLoc()) {
401 static const MCUnaryExpr *createPlus(const MCExpr *Expr, MCContext &Ctx, SMLoc Loc = SMLoc()) {
413 const MCExpr *getSubExpr() const { return Expr; }
417 static bool classof(const MCExpr *E) {
418 return E->getKind() == MCExpr::Unary;
423 class MCBinaryExpr : public MCExpr {
453 const MCExpr *LHS, *RHS;
455 MCBinaryExpr(Opcode Op, const MCExpr *LHS, const MCExpr *RHS,
455 MCBinaryExpr(Opcode Op, const MCExpr *LHS, const MCExpr *RHS,
457 : MCExpr(MCExpr::Binary, Loc), Op(Op), LHS(LHS), RHS(RHS) {}
463 static const MCBinaryExpr *create(Opcode Op, const MCExpr *LHS,
464 const MCExpr *RHS, MCContext &Ctx,
467 static const MCBinaryExpr *createAdd(const MCExpr *LHS, const MCExpr *RHS,
467 static const MCBinaryExpr *createAdd(const MCExpr *LHS, const MCExpr *RHS,
472 static const MCBinaryExpr *createAnd(const MCExpr *LHS, const MCExpr *RHS,
472 static const MCBinaryExpr *createAnd(const MCExpr *LHS, const MCExpr *RHS,
477 static const MCBinaryExpr *createDiv(const MCExpr *LHS, const MCExpr *RHS,
477 static const MCBinaryExpr *createDiv(const MCExpr *LHS, const MCExpr *RHS,
482 static const MCBinaryExpr *createEQ(const MCExpr *LHS, const MCExpr *RHS,
482 static const MCBinaryExpr *createEQ(const MCExpr *LHS, const MCExpr *RHS,
487 static const MCBinaryExpr *createGT(const MCExpr *LHS, const MCExpr *RHS,
487 static const MCBinaryExpr *createGT(const MCExpr *LHS, const MCExpr *RHS,
492 static const MCBinaryExpr *createGTE(const MCExpr *LHS, const MCExpr *RHS,
492 static const MCBinaryExpr *createGTE(const MCExpr *LHS, const MCExpr *RHS,
497 static const MCBinaryExpr *createLAnd(const MCExpr *LHS, const MCExpr *RHS,
497 static const MCBinaryExpr *createLAnd(const MCExpr *LHS, const MCExpr *RHS,
502 static const MCBinaryExpr *createLOr(const MCExpr *LHS, const MCExpr *RHS,
502 static const MCBinaryExpr *createLOr(const MCExpr *LHS, const MCExpr *RHS,
507 static const MCBinaryExpr *createLT(const MCExpr *LHS, const MCExpr *RHS,
507 static const MCBinaryExpr *createLT(const MCExpr *LHS, const MCExpr *RHS,
512 static const MCBinaryExpr *createLTE(const MCExpr *LHS, const MCExpr *RHS,
512 static const MCBinaryExpr *createLTE(const MCExpr *LHS, const MCExpr *RHS,
517 static const MCBinaryExpr *createMod(const MCExpr *LHS, const MCExpr *RHS,
517 static const MCBinaryExpr *createMod(const MCExpr *LHS, const MCExpr *RHS,
522 static const MCBinaryExpr *createMul(const MCExpr *LHS, const MCExpr *RHS,
522 static const MCBinaryExpr *createMul(const MCExpr *LHS, const MCExpr *RHS,
527 static const MCBinaryExpr *createNE(const MCExpr *LHS, const MCExpr *RHS,
527 static const MCBinaryExpr *createNE(const MCExpr *LHS, const MCExpr *RHS,
532 static const MCBinaryExpr *createOr(const MCExpr *LHS, const MCExpr *RHS,
532 static const MCBinaryExpr *createOr(const MCExpr *LHS, const MCExpr *RHS,
537 static const MCBinaryExpr *createShl(const MCExpr *LHS, const MCExpr *RHS,
537 static const MCBinaryExpr *createShl(const MCExpr *LHS, const MCExpr *RHS,
542 static const MCBinaryExpr *createAShr(const MCExpr *LHS, const MCExpr *RHS,
542 static const MCBinaryExpr *createAShr(const MCExpr *LHS, const MCExpr *RHS,
547 static const MCBinaryExpr *createLShr(const MCExpr *LHS, const MCExpr *RHS,
547 static const MCBinaryExpr *createLShr(const MCExpr *LHS, const MCExpr *RHS,
552 static const MCBinaryExpr *createSub(const MCExpr *LHS, const MCExpr *RHS,
552 static const MCBinaryExpr *createSub(const MCExpr *LHS, const MCExpr *RHS,
557 static const MCBinaryExpr *createXor(const MCExpr *LHS, const MCExpr *RHS,
557 static const MCBinaryExpr *createXor(const MCExpr *LHS, const MCExpr *RHS,
570 const MCExpr *getLHS() const { return LHS; }
573 const MCExpr *getRHS() const { return RHS; }
577 static bool classof(const MCExpr *E) {
578 return E->getKind() == MCExpr::Binary;
587 class MCTargetExpr : public MCExpr {
600 virtual bool isEqualTo(const MCExpr *x) const { return false; }
609 static bool classof(const MCExpr *E) {
610 return E->getKind() == MCExpr::Target;
include/llvm/MC/MCFixup.h 81 const MCExpr *Value = nullptr;
93 static MCFixup create(uint32_t Offset, const MCExpr *Value,
133 const MCExpr *getValue() const { return Value; }
include/llvm/MC/MCFragment.h 434 const MCExpr &NumValues;
440 MCFillFragment(uint64_t Value, uint8_t VSize, const MCExpr &NumValues,
447 const MCExpr &getNumValues() const { return NumValues; }
458 const MCExpr *Offset;
467 MCOrgFragment(const MCExpr &Offset, int8_t Value, SMLoc Loc,
474 const MCExpr &getOffset() const { return *Offset; }
489 const MCExpr *Value;
497 MCLEBFragment(const MCExpr &Value_, bool IsSigned_, MCSection *Sec = nullptr)
505 const MCExpr &getValue() const { return *Value; }
526 const MCExpr *AddrDelta;
529 MCDwarfLineAddrFragment(int64_t LineDelta, const MCExpr &AddrDelta,
539 const MCExpr &getAddrDelta() const { return *AddrDelta; }
551 const MCExpr *AddrDelta;
554 MCDwarfCallFrameFragment(const MCExpr &AddrDelta, MCSection *Sec = nullptr)
561 const MCExpr &getAddrDelta() const { return *AddrDelta; }
include/llvm/MC/MCInst.h 49 const MCExpr *ExprVal;
95 const MCExpr *getExpr() const {
100 void setExpr(const MCExpr *Val) {
136 static MCOperand createExpr(const MCExpr *Val) {
include/llvm/MC/MCInstBuilder.h 49 MCInstBuilder &addExpr(const MCExpr *Val) {
include/llvm/MC/MCObjectStreamer.h 90 bool changeSectionImpl(MCSection *Section, const MCExpr *Subsection);
111 void EmitAssignment(MCSymbol *Symbol, const MCExpr *Value) override;
112 void EmitValueImpl(const MCExpr *Value, unsigned Size,
114 void EmitULEB128Value(const MCExpr *Value) override;
115 void EmitSLEB128Value(const MCExpr *Value) override;
117 void ChangeSection(MCSection *Section, const MCExpr *Subsection) override;
133 void emitValueToOffset(const MCExpr *Offset, unsigned char Value,
164 void EmitDTPRel32Value(const MCExpr *Value) override;
165 void EmitDTPRel64Value(const MCExpr *Value) override;
166 void EmitTPRel32Value(const MCExpr *Value) override;
167 void EmitTPRel64Value(const MCExpr *Value) override;
168 void EmitGPRel32Value(const MCExpr *Value) override;
169 void EmitGPRel64Value(const MCExpr *Value) override;
170 bool EmitRelocDirective(const MCExpr &Offset, StringRef Name,
171 const MCExpr *Expr, SMLoc Loc,
174 void emitFill(const MCExpr &NumBytes, uint64_t FillValue,
176 void emitFill(const MCExpr &NumValues, int64_t Size, int64_t Expr,
include/llvm/MC/MCParser/MCAsmParser.h 261 virtual bool parseExpression(const MCExpr *&Res, SMLoc &EndLoc) = 0;
262 bool parseExpression(const MCExpr *&Res);
269 virtual bool parsePrimaryExpr(const MCExpr *&Res, SMLoc &EndLoc) = 0;
277 virtual bool parseParenExpression(const MCExpr *&Res, SMLoc &EndLoc) = 0;
299 virtual bool parseParenExprOfDepth(unsigned ParenDepth, const MCExpr *&Res,
include/llvm/MC/MCParser/MCAsmParserUtils.h 27 const MCExpr *&Value);
include/llvm/MC/MCParser/MCTargetAsmParser.h 380 virtual bool parsePrimaryExpr(const MCExpr *&Res, SMLoc &EndLoc) {
474 virtual const MCExpr *applyModifierToExpr(const MCExpr *E,
474 virtual const MCExpr *applyModifierToExpr(const MCExpr *E,
489 virtual const MCExpr *createTargetUnaryExpr(const MCExpr *E,
489 virtual const MCExpr *createTargetUnaryExpr(const MCExpr *E,
include/llvm/MC/MCSection.h 181 const MCExpr *Subsection) const = 0;
include/llvm/MC/MCSectionCOFF.h 78 const MCExpr *Subsection) const override;
include/llvm/MC/MCSectionELF.h 79 const MCExpr *Subsection) const override;
include/llvm/MC/MCSectionMachO.h 80 const MCExpr *Subsection) const override;
include/llvm/MC/MCSectionWasm.h 64 const MCExpr *Subsection) const override;
include/llvm/MC/MCSectionXCOFF.h 65 const MCExpr *Subsection) const override;
include/llvm/MC/MCStreamer.h 64 using MCSectionSubPair = std::pair<MCSection *, const MCExpr *>;
104 virtual void emitAssignment(MCSymbol *Symbol, const MCExpr *Value);
116 const MCExpr *SubSection, raw_ostream &OS);
118 virtual void emitValue(const MCExpr *Value);
165 virtual void emitThumbSet(MCSymbol *Symbol, const MCExpr *Value);
176 const MCExpr *addConstantPoolEntry(const MCExpr *, SMLoc Loc);
176 const MCExpr *addConstantPoolEntry(const MCExpr *, SMLoc Loc);
247 void visitUsedExpr(const MCExpr &Expr);
370 virtual void ChangeSection(MCSection *, const MCExpr *);
397 bool SubSection(const MCExpr *Subsection) {
410 const MCExpr *Subsection = nullptr);
416 const MCExpr *Subsection = nullptr) {
488 virtual void EmitAssignment(MCSymbol *Symbol, const MCExpr *Value);
560 virtual void emitELFSize(MCSymbol *Symbol, const MCExpr *Value);
637 virtual void EmitValueImpl(const MCExpr *Value, unsigned Size,
640 void EmitValue(const MCExpr *Value, unsigned Size, SMLoc Loc = SMLoc());
653 virtual void EmitULEB128Value(const MCExpr *Value);
655 virtual void EmitSLEB128Value(const MCExpr *Value);
675 virtual void EmitDTPRel64Value(const MCExpr *Value);
682 virtual void EmitDTPRel32Value(const MCExpr *Value);
689 virtual void EmitTPRel64Value(const MCExpr *Value);
696 virtual void EmitTPRel32Value(const MCExpr *Value);
703 virtual void EmitGPRel64Value(const MCExpr *Value);
710 virtual void EmitGPRel32Value(const MCExpr *Value);
723 virtual void emitFill(const MCExpr &NumBytes, uint64_t FillValue,
734 virtual void emitFill(const MCExpr &NumValues, int64_t Size, int64_t Expr,
783 virtual void emitValueToOffset(const MCExpr *Offset, unsigned char Value,
983 virtual bool EmitRelocDirective(const MCExpr &Offset, StringRef Name,
984 const MCExpr *Expr, SMLoc Loc,
include/llvm/MC/MCSymbol.h 138 const MCExpr *Value;
302 const MCExpr *getVariableValue(bool SetUsed = true) const {
308 void setVariableValue(const MCExpr *Value);
include/llvm/MC/MCSymbolELF.h 17 const MCExpr *SymbolSize = nullptr;
22 void setSize(const MCExpr *SS) { SymbolSize = SS; }
24 const MCExpr *getSize() const { return SymbolSize; }
include/llvm/MC/MCSymbolWasm.h 30 const MCExpr *SymbolSize = nullptr;
39 const MCExpr *getSize() const { return SymbolSize; }
40 void setSize(const MCExpr *SS) { SymbolSize = SS; }
include/llvm/MC/MCWasmStreamer.h 47 void ChangeSection(MCSection *Section, const MCExpr *Subsection) override;
56 void emitELFSize(MCSymbol *Symbol, const MCExpr *Value) override;
66 void EmitValueImpl(const MCExpr *Value, unsigned Size,
include/llvm/Support/Casting.h 34 using SimpleType = From; // The real type this represents...
37 static SimpleType &getSimplifiedValue(From &Val) { return Val; }
41 using NonConstSimpleType = typename simplify_type<From>::SimpleType;
47 static RetType getSimplifiedValue(const From& Val) {
57 static inline bool doit(const From &Val) {
66 static inline bool doit(const From &) { return true; }
76 static inline bool doit(const From &Val) {
77 return isa_impl<To, From>::doit(Val);
104 static inline bool doit(const From *Val) {
106 return isa_impl<To, From>::doit(*Val);
106 return isa_impl<To, From>::doit(*Val);
122 return isa_impl_wrap<To, SimpleFrom,
132 return isa_impl_cl<To,FromTy>::doit(Val);
141 template <class X, class Y> LLVM_NODISCARD inline bool isa(const Y &Val) {
142 return isa_impl_wrap<X, const Y,
142 return isa_impl_wrap<X, const Y,
143 typename simplify_type<const Y>::SimpleType>::doit(Val);
176 using ret_type = const To *; // Constant pointer arg case, return const Ty*
198 using ret_type = typename cast_retty<To, SimpleFrom>::ret_type;
204 using ret_type = typename cast_retty_impl<To,FromTy>::ret_type;
210 To, From, typename simplify_type<From>::SimpleType>::ret_type;
227 static typename cast_retty<To, FromTy>::ret_type doit(const FromTy &Val) {
228 typename cast_retty<To, FromTy>::ret_type Res2
236 std::is_same<X, typename simplify_type<X>::SimpleType>::value;
236 std::is_same<X, typename simplify_type<X>::SimpleType>::value;
256 inline typename cast_retty<X, Y>::ret_type cast(Y &Val) {
263 inline typename cast_retty<X, Y *>::ret_type cast(Y *Val) {
265 return cast_convert_val<X, Y*,
337 LLVM_NODISCARD inline typename cast_retty<X, Y>::ret_type dyn_cast(Y &Val) {
342 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type dyn_cast(Y *Val) {
343 return isa<X>(Val) ? cast<X>(Val) : nullptr;
343 return isa<X>(Val) ? cast<X>(Val) : nullptr;
include/llvm/Support/type_traits.h 55 struct add_const_past_pointer { using type = const T; };
include/llvm/Target/TargetLoweringObjectFile.h 131 virtual const MCExpr *getTTypeGlobalReference(const GlobalValue *GV,
153 const MCExpr *getTTypeReference(const MCSymbolRefExpr *Sym, unsigned Encoding,
168 virtual const MCExpr *getDebugThreadLocalSymbol(const MCSymbol *Sym) const;
170 virtual const MCExpr *lowerRelativeReference(const GlobalValue *LHS,
194 virtual const MCExpr *getIndirectSymViaGOTPCRel(const GlobalValue *GV,
lib/CodeGen/AsmPrinter/AddressPool.cpp 64 SmallVector<const MCExpr *, 64> Entries(Pool.size());
72 for (const MCExpr *Entry : Entries)
lib/CodeGen/AsmPrinter/AsmPrinter.cpp 644 void AsmPrinter::EmitDebugValue(const MCExpr *Value, unsigned Size) const {
1191 const MCExpr *SizeExp = MCBinaryExpr::createSub(
1331 const MCExpr *Expr = lowerConstant(GIS.getIndirectSymbol());
1827 const MCExpr *Base = TLI->getPICJumpTableRelocBaseExpr(MF,JTI,OutContext);
1834 const MCExpr *LHS =
1866 const MCExpr *Value = nullptr;
1912 const MCExpr *Base = TLI->getPICJumpTableRelocBaseExpr(MF, UID, OutContext);
2134 const MCExpr *Expr = MCSymbolRefExpr::create(Label, OutContext);
2165 const MCExpr *AsmPrinter::lowerConstant(const Constant *CV) {
2208 const MCExpr *Base = lowerConstant(CE->getOperand(0));
2245 const MCExpr *OpExpr = lowerConstant(Op);
2259 const MCExpr *MaskExpr = MCConstantExpr::create(~0ULL >> (64-InBits), Ctx);
2272 const MCExpr *RelocExpr =
2299 const MCExpr *LHS = lowerConstant(CE->getOperand(0));
2300 const MCExpr *RHS = lowerConstant(CE->getOperand(1));
2580 static void handleIndirectSymViaGOTPCRel(AsmPrinter &AP, const MCExpr **ME,
2737 const MCExpr *ME = AP.lowerConstant(CV);
lib/CodeGen/AsmPrinter/AsmPrinterDwarf.cpp 144 const MCExpr *Exp =
lib/CodeGen/AsmPrinter/DebugHandlerBase.cpp 128 const MCExpr *
lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp 944 const MCSymbol *PCAddr, const MCExpr *PCOffset, unsigned CallReg) {
1256 const MCExpr *Expr) {
1261 const MCExpr *Expr) {
lib/CodeGen/AsmPrinter/DwarfCompileUnit.h 252 const MCExpr *PCOffset, unsigned CallReg);
338 void addExpr(DIELoc &Die, dwarf::Form Form, const MCExpr *Expr);
341 void addAddressExpr(DIE &Die, dwarf::Attribute Attribute, const MCExpr *Expr);
lib/CodeGen/AsmPrinter/DwarfDebug.cpp 748 const MCExpr *PCOffset =
lib/CodeGen/AsmPrinter/WasmException.cpp 63 const MCExpr *SizeExp = MCBinaryExpr::createSub(
lib/CodeGen/AsmPrinter/WinException.cpp 298 const MCExpr *WinException::create32bitRef(const MCSymbol *Value) {
307 const MCExpr *WinException::create32bitRef(const GlobalValue *GV) {
313 const MCExpr *WinException::getLabel(const MCSymbol *Label) {
322 const MCExpr *WinException::getOffset(const MCSymbol *OffsetOf,
329 const MCExpr *WinException::getOffsetPlusOne(const MCSymbol *OffsetOf,
567 const MCExpr *MCOffset =
578 const MCExpr *LabelDiff = getOffset(TableEnd, TableBegin);
579 const MCExpr *EntrySize = MCConstantExpr::create(16, Ctx);
580 const MCExpr *EntryCount = MCBinaryExpr::createDiv(LabelDiff, EntrySize, Ctx);
629 const MCExpr *FilterOrFinally;
630 const MCExpr *ExceptOrNull;
665 SmallVector<std::pair<const MCExpr *, int>, 4> IPToStateTable;
837 const MCExpr *FrameAllocOffsetRef = nullptr;
886 SmallVectorImpl<std::pair<const MCExpr *, int>> &IPToStateTable) {
1270 const MCExpr *ClauseBegin =
1272 const MCExpr *ClauseEnd = getOffsetPlusOne(Clause.EndLabel, FuncBeginSym);
1277 const MCExpr *HandlerBegin = getOffset(BeginSym, FuncBeginSym);
1279 const MCExpr *HandlerEnd = getOffset(EndSym, FuncBeginSym);
lib/CodeGen/AsmPrinter/WinException.h 68 SmallVectorImpl<std::pair<const MCExpr *, int>> &IPToStateTable);
75 const MCExpr *create32bitRef(const MCSymbol *Value);
76 const MCExpr *create32bitRef(const GlobalValue *GV);
77 const MCExpr *getLabel(const MCSymbol *Label);
78 const MCExpr *getOffset(const MCSymbol *OffsetOf, const MCSymbol *OffsetFrom);
79 const MCExpr *getOffsetPlusOne(const MCSymbol *OffsetOf,
lib/CodeGen/FaultMaps.cpp 37 const MCExpr *FaultingOffset = MCBinaryExpr::createSub(
41 const MCExpr *HandlerOffset = MCBinaryExpr::createSub(
lib/CodeGen/SelectionDAG/TargetLowering.cpp 436 const MCExpr *
lib/CodeGen/StackMaps.cpp 342 const MCExpr *CSOffsetExpr = MCBinaryExpr::createSub(
lib/CodeGen/TargetLoweringObjectFileImpl.cpp 382 const MCExpr *E = MCConstantExpr::create(Size, getContext());
389 const MCExpr *TargetLoweringObjectFileELF::getTTypeGlobalReference(
804 const MCExpr *TargetLoweringObjectFileELF::lowerRelativeReference(
1065 const MCExpr *TargetLoweringObjectFileMachO::getTTypeGlobalReference(
1113 const MCExpr *TargetLoweringObjectFileMachO::getIndirectSymViaGOTPCRel(
1177 const MCExpr *BSymExpr =
1179 const MCExpr *LHS =
1185 const MCExpr *RHS =
1568 const MCExpr *TargetLoweringObjectFileCOFF::lowerRelativeReference(
1784 const MCExpr *TargetLoweringObjectFileWasm::lowerRelativeReference(
1884 const MCExpr *TargetLoweringObjectFileXCOFF::lowerRelativeReference(
lib/MC/ConstantPools.cpp 39 const MCExpr *ConstantPool::addEntry(const MCExpr *Value, MCContext &Context,
39 const MCExpr *ConstantPool::addEntry(const MCExpr *Value, MCContext &Context,
109 const MCExpr *AssemblerConstantPools::addEntry(MCStreamer &Streamer,
110 const MCExpr *Expr,
lib/MC/ELFObjectWriter.cpp 556 const MCExpr *ESize = MSD.Symbol->getSize();
595 const MCExpr *Expr = Symbol.getVariableValue();
1295 const MCExpr *Value = MCSymbolRefExpr::create(&Symbol, Asm.getContext());
1483 const MCExpr *Expr = SymA->getVariableValue();
lib/MC/MCAsmInfo.cpp 81 const MCExpr *
88 const MCExpr *
96 const MCExpr *Res = MCSymbolRefExpr::create(Sym, Context);
99 const MCExpr *PC = MCSymbolRefExpr::create(PCSym, Context);
lib/MC/MCAsmStreamer.cpp 136 void ChangeSection(MCSection *Section, const MCExpr *Subsection) override;
153 void EmitAssignment(MCSymbol *Symbol, const MCExpr *Value) override;
169 void emitELFSize(MCSymbol *Symbol, const MCExpr *Value) override;
192 void EmitValueImpl(const MCExpr *Value, unsigned Size,
197 void EmitULEB128Value(const MCExpr *Value) override;
199 void EmitSLEB128Value(const MCExpr *Value) override;
201 void EmitDTPRel32Value(const MCExpr *Value) override;
202 void EmitDTPRel64Value(const MCExpr *Value) override;
203 void EmitTPRel32Value(const MCExpr *Value) override;
204 void EmitTPRel64Value(const MCExpr *Value) override;
206 void EmitGPRel64Value(const MCExpr *Value) override;
208 void EmitGPRel32Value(const MCExpr *Value) override;
210 void emitFill(const MCExpr &NumBytes, uint64_t FillValue,
213 void emitFill(const MCExpr &NumValues, int64_t Size, int64_t Expr,
223 void emitValueToOffset(const MCExpr *Offset,
339 bool EmitRelocDirective(const MCExpr &Offset, StringRef Name,
340 const MCExpr *Expr, SMLoc Loc,
444 const MCExpr *Subsection) {
597 void MCAsmStreamer::EmitAssignment(MCSymbol *Symbol, const MCExpr *Value) {
783 void MCAsmStreamer::emitELFSize(MCSymbol *Symbol, const MCExpr *Value) {
971 void MCAsmStreamer::EmitValueImpl(const MCExpr *Value, unsigned Size,
1029 void MCAsmStreamer::EmitULEB128Value(const MCExpr *Value) {
1040 void MCAsmStreamer::EmitSLEB128Value(const MCExpr *Value) {
1051 void MCAsmStreamer::EmitDTPRel64Value(const MCExpr *Value) {
1058 void MCAsmStreamer::EmitDTPRel32Value(const MCExpr *Value) {
1065 void MCAsmStreamer::EmitTPRel64Value(const MCExpr *Value) {
1072 void MCAsmStreamer::EmitTPRel32Value(const MCExpr *Value) {
1079 void MCAsmStreamer::EmitGPRel64Value(const MCExpr *Value) {
1086 void MCAsmStreamer::EmitGPRel32Value(const MCExpr *Value) {
1093 void MCAsmStreamer::emitFill(const MCExpr &NumBytes, uint64_t FillValue,
1112 void MCAsmStreamer::emitFill(const MCExpr &NumValues, int64_t Size,
1191 void MCAsmStreamer::emitValueToOffset(const MCExpr *Offset,
1972 bool MCAsmStreamer::EmitRelocDirective(const MCExpr &Offset, StringRef Name,
1973 const MCExpr *Expr, SMLoc,
lib/MC/MCAssembler.cpp 141 const MCExpr *Expr = Symbol->getVariableValue();
211 const MCExpr *Expr = Fixup.getValue();
998 const MCExpr *FixupExpr;
lib/MC/MCCodeView.cpp 448 const MCExpr *BeginRef = MCSymbolRefExpr::create(Begin, Variant, Ctx),
450 const MCExpr *AddrDelta =
lib/MC/MCDisassembler/MCExternalSymbolizer.cpp 89 const MCExpr *Add = nullptr;
100 const MCExpr *Sub = nullptr;
111 const MCExpr *Off = nullptr;
115 const MCExpr *Expr;
117 const MCExpr *LHS;
lib/MC/MCDwarf.cpp 115 static inline const MCExpr *MakeStartMinusEndExpr(const MCStreamer &MCOS,
120 const MCExpr *Res =
122 const MCExpr *RHS =
124 const MCExpr *Res1 =
126 const MCExpr *Res2 =
128 const MCExpr *Res3 =
136 static inline const MCExpr *
139 const MCExpr *LHS = MCSymbolRefExpr::create(&Start, Variant, Ctx);
140 const MCExpr *RHS = MCConstantExpr::create(IntVal, Ctx);
141 const MCExpr *Res = MCBinaryExpr::create(MCBinaryExpr::Add, LHS, RHS, Ctx);
294 static const MCExpr *forceExpAbs(MCStreamer &OS, const MCExpr* Expr) {
294 static const MCExpr *forceExpAbs(MCStreamer &OS, const MCExpr* Expr) {
305 static void emitAbsValue(MCStreamer &OS, const MCExpr *Value, unsigned Size) {
306 const MCExpr *ABS = forceExpAbs(OS, Value);
909 const MCExpr *Addr = MCSymbolRefExpr::create(
911 const MCExpr *Size = MakeStartMinusEndExpr(*MCOS,
943 const MCExpr *Length = MakeStartMinusEndExpr(*MCOS, *InfoStart, *InfoEnd, 4);
1002 const MCExpr *Start = MCSymbolRefExpr::create(
1007 const MCExpr *End = MCSymbolRefExpr::create(
1075 const MCExpr *AT_low_pc = MCSymbolRefExpr::create(Entry.getLabel(),
1115 const MCExpr *SectionStartAddr = MCSymbolRefExpr::create(
1121 const MCExpr *SectionSize = MakeStartMinusEndExpr(*MCOS,
1279 const MCExpr *v = asmInfo->getExprForFDESymbol(&symbol,
1293 const MCExpr *v = asmInfo->getExprForPersonalitySymbol(&symbol,
1522 const MCExpr *Range = MakeStartMinusEndExpr(Streamer, *Frame.Begin,
1571 const MCExpr *Length =
1688 const MCExpr *Length = MakeStartMinusEndExpr(Streamer, *fdeStart, *fdeEnd, 0);
1696 const MCExpr *offset =
1700 const MCExpr *offset =
1714 const MCExpr *Range =
lib/MC/MCELFStreamer.cpp 146 const MCExpr *Subsection) {
165 const MCExpr *Value = MCSymbolRefExpr::create(
325 void MCELFStreamer::emitELFSize(MCSymbol *Symbol, const MCExpr *Value) {
344 void MCELFStreamer::EmitValueImpl(const MCExpr *Value, unsigned Size,
382 void MCELFStreamer::fixSymbolsInTLSFixups(const MCExpr *expr) {
384 case MCExpr::Target:
387 case MCExpr::Constant:
390 case MCExpr::Binary: {
397 case MCExpr::SymbolRef: {
460 case MCExpr::Unary:
lib/MC/MCExpr.cpp 44 case MCExpr::Target:
46 case MCExpr::Constant: {
55 case MCExpr::SymbolRef: {
75 case MCExpr::Unary: {
83 bool Binary = UE.getSubExpr()->getKind() == MCExpr::Binary;
90 case MCExpr::Binary: {
158 const MCBinaryExpr *MCBinaryExpr::create(Opcode Opc, const MCExpr *LHS,
159 const MCExpr *RHS, MCContext &Ctx,
164 const MCUnaryExpr *MCUnaryExpr::create(Opcode Opc, const MCExpr *Expr,
178 : MCExpr(MCExpr::SymbolRef, Loc), Kind(Kind),
684 const MCExpr *Expr = Sym.getVariableValue();
lib/MC/MCFragment.cpp 143 const MCExpr *Expr = Symbol.getVariableValue();
lib/MC/MCInst.cpp 50 const MCExpr *Expr = getExpr();
51 MCExpr::ExprKind Kind = getExpr()->getKind();
52 return Kind == MCExpr::SymbolRef &&
lib/MC/MCMachOStreamer.cpp 84 void ChangeSection(MCSection *Sect, const MCExpr *Subsect) override;
86 void EmitAssignment(MCSymbol *Symbol, const MCExpr *Value) override;
150 const MCExpr *Subsection) {
199 void MCMachOStreamer::EmitAssignment(MCSymbol *Symbol, const MCExpr *Value) {
lib/MC/MCNullStreamer.cpp 38 void EmitGPRel32Value(const MCExpr *Value) override {}
lib/MC/MCObjectStreamer.cpp 190 void MCObjectStreamer::EmitValueImpl(const MCExpr *Value, unsigned Size,
260 void MCObjectStreamer::EmitULEB128Value(const MCExpr *Value) {
269 void MCObjectStreamer::EmitSLEB128Value(const MCExpr *Value) {
284 const MCExpr *Subsection) {
289 const MCExpr *Subsection) {
307 void MCObjectStreamer::EmitAssignment(MCSymbol *Symbol, const MCExpr *Value) {
407 static const MCExpr *buildSymbolDiff(MCObjectStreamer &OS, const MCSymbol *A,
411 const MCExpr *ARef = MCSymbolRefExpr::create(A, Variant, Context);
412 const MCExpr *BRef = MCSymbolRefExpr::create(B, Variant, Context);
413 const MCExpr *AddrDelta =
441 const MCExpr *AddrDelta = buildSymbolDiff(*this, Label, LastLabel);
453 const MCExpr *AddrDelta = buildSymbolDiff(*this, Label, LastLabel);
551 void MCObjectStreamer::emitValueToOffset(const MCExpr *Offset,
568 void MCObjectStreamer::EmitDTPRel32Value(const MCExpr *Value) {
578 void MCObjectStreamer::EmitDTPRel64Value(const MCExpr *Value) {
588 void MCObjectStreamer::EmitTPRel32Value(const MCExpr *Value) {
598 void MCObjectStreamer::EmitTPRel64Value(const MCExpr *Value) {
608 void MCObjectStreamer::EmitGPRel32Value(const MCExpr *Value) {
618 void MCObjectStreamer::EmitGPRel64Value(const MCExpr *Value) {
627 bool MCObjectStreamer::EmitRelocDirective(const MCExpr &Offset, StringRef Name,
628 const MCExpr *Expr, SMLoc Loc,
651 if (Offset.getKind() != llvm::MCExpr::SymbolRef)
666 void MCObjectStreamer::emitFill(const MCExpr &NumBytes, uint64_t FillValue,
675 void MCObjectStreamer::emitFill(const MCExpr &NumValues, int64_t Size,
lib/MC/MCParser/AsmParser.cpp 250 bool parseExpression(const MCExpr *&Res);
251 bool parseExpression(const MCExpr *&Res, SMLoc &EndLoc) override;
252 bool parsePrimaryExpr(const MCExpr *&Res, SMLoc &EndLoc) override;
253 bool parseParenExpression(const MCExpr *&Res, SMLoc &EndLoc) override;
254 bool parseParenExprOfDepth(unsigned ParenDepth, const MCExpr *&Res,
327 const MCExpr *Count = nullptr, SMLoc Loc = SMLoc());
352 bool parseBinOpRHS(unsigned Precedence, const MCExpr *&Res, SMLoc &EndLoc);
353 bool parseParenExpr(const MCExpr *&Res, SMLoc &EndLoc);
354 bool parseBracketExpr(const MCExpr *&Res, SMLoc &EndLoc);
652 const MCExpr *applyModifierToExpr(const MCExpr *E,
652 const MCExpr *applyModifierToExpr(const MCExpr *E,
802 const MCExpr *Count, SMLoc Loc) {
1045 bool AsmParser::parseParenExpr(const MCExpr *&Res, SMLoc &EndLoc) {
1060 bool AsmParser::parseBracketExpr(const MCExpr *&Res, SMLoc &EndLoc) {
1075 bool AsmParser::parsePrimaryExpr(const MCExpr *&Res, SMLoc &EndLoc) {
1301 bool AsmParser::parseExpression(const MCExpr *&Res) {
1306 const MCExpr *
1307 AsmParser::applyModifierToExpr(const MCExpr *E,
1310 const MCExpr *NewE = getTargetParser().applyModifierToExpr(E, Variant, Ctx);
1316 case MCExpr::Target:
1317 case MCExpr::Constant:
1320 case MCExpr::SymbolRef: {
1332 case MCExpr::Unary: {
1334 const MCExpr *Sub = applyModifierToExpr(UE->getSubExpr(), Variant);
1340 case MCExpr::Binary: {
1342 const MCExpr *LHS = applyModifierToExpr(BE->getLHS(), Variant);
1343 const MCExpr *RHS = applyModifierToExpr(BE->getRHS(), Variant);
1409 bool AsmParser::parseExpression(const MCExpr *&Res, SMLoc &EndLoc) {
1430 const MCExpr *ModifiedRes = applyModifierToExpr(Res, Variant);
1449 bool AsmParser::parseParenExpression(const MCExpr *&Res, SMLoc &EndLoc) {
1454 bool AsmParser::parseParenExprOfDepth(unsigned ParenDepth, const MCExpr *&Res,
1476 const MCExpr *Expr;
1651 bool AsmParser::parseBinOpRHS(unsigned Precedence, const MCExpr *&Res,
1666 const MCExpr *RHS;
2686 const MCExpr *AbsoluteExp;
2829 const MCExpr *Value;
3001 const MCExpr *Offset;
3002 const MCExpr *Expr = nullptr;
3012 (check(Offset->getKind() != llvm::MCExpr::Constant &&
3013 Offset->getKind() != llvm::MCExpr::SymbolRef,
3050 const MCExpr *Value;
3177 const MCExpr *NumBytes;
3200 const MCExpr *NumValues;
3243 const MCExpr *Offset;
3542 const MCExpr *Value;
3559 const MCExpr *Value;
3778 const MCExpr *Value;
4716 const MCExpr *NumBytes;
4750 const MCExpr *Value;
4837 const MCExpr *Value;
5005 const MCExpr *Count = nullptr;
5560 const MCExpr *CountExpr;
5687 const MCExpr *Value;
5703 const MCExpr *Value;
5998 static bool isSymbolUsedInExpression(const MCSymbol *Sym, const MCExpr *Value) {
6000 case MCExpr::Binary: {
6005 case MCExpr::Target:
6006 case MCExpr::Constant:
6008 case MCExpr::SymbolRef: {
6015 case MCExpr::Unary:
6025 const MCExpr *&Value) {
lib/MC/MCParser/DarwinAsmParser.cpp 646 const MCExpr *Value;
lib/MC/MCParser/ELFAsmParser.cpp 204 const MCExpr *Subsection = nullptr;
227 const MCExpr *Expr;
496 const MCExpr *Subsection = nullptr;
837 const MCExpr *Subsection = nullptr;
lib/MC/MCParser/MCAsmParser.cpp 126 bool MCAsmParser::parseExpression(const MCExpr *&Res) {
lib/MC/MCParser/WasmAsmParser.cpp 165 const MCExpr *Expr;
lib/MC/MCSectionCOFF.cpp 39 const MCExpr *Subsection) const {
lib/MC/MCSectionELF.cpp 55 const MCExpr *Subsection) const {
lib/MC/MCSectionMachO.cpp 105 const MCExpr *Subsection) const {
lib/MC/MCSectionWasm.cpp 49 const MCExpr *Subsection) const {
lib/MC/MCSectionXCOFF.cpp 33 const MCExpr *Subsection) const {
lib/MC/MCStreamer.cpp 57 const MCExpr *Subsection,
69 void MCTargetStreamer::emitValue(const MCExpr *Value) {
89 void MCTargetStreamer::emitAssignment(MCSymbol *Symbol, const MCExpr *Value) {}
162 void MCStreamer::EmitValue(const MCExpr *Value, unsigned Size, SMLoc Loc) {
177 void MCStreamer::EmitDTPRel64Value(const MCExpr *Value) {
181 void MCStreamer::EmitDTPRel32Value(const MCExpr *Value) {
185 void MCStreamer::EmitTPRel64Value(const MCExpr *Value) {
189 void MCStreamer::EmitTPRel32Value(const MCExpr *Value) {
193 void MCStreamer::EmitGPRel64Value(const MCExpr *Value) {
197 void MCStreamer::EmitGPRel32Value(const MCExpr *Value) {
970 void MCStreamer::EmitAssignment(MCSymbol *Symbol, const MCExpr *Value) {
988 void MCStreamer::visitUsedExpr(const MCExpr &Expr) {
990 case MCExpr::Target:
994 case MCExpr::Constant:
997 case MCExpr::Binary: {
1004 case MCExpr::SymbolRef:
1008 case MCExpr::Unary:
1024 const MCExpr *Diff =
1043 const MCExpr *Diff =
1070 void MCStreamer::emitELFSize(MCSymbol *Symbol, const MCExpr *Value) {}
1077 void MCStreamer::ChangeSection(MCSection *, const MCExpr *) {}
1081 void MCStreamer::EmitValueImpl(const MCExpr *Value, unsigned Size, SMLoc Loc) {
1084 void MCStreamer::EmitULEB128Value(const MCExpr *Value) {}
1085 void MCStreamer::EmitSLEB128Value(const MCExpr *Value) {}
1086 void MCStreamer::emitFill(const MCExpr &NumBytes, uint64_t Value, SMLoc Loc) {}
1087 void MCStreamer::emitFill(const MCExpr &NumValues, int64_t Size, int64_t Expr,
1094 void MCStreamer::emitValueToOffset(const MCExpr *Offset, unsigned char Value,
1101 void MCStreamer::SwitchSection(MCSection *Section, const MCExpr *Subsection) {
lib/MC/MCSymbol.cpp 48 void MCSymbol::setVariableValue(const MCExpr *Value) {
lib/MC/MCWasmStreamer.cpp 61 const MCExpr *Subsection) {
75 const MCExpr *Value = MCSymbolRefExpr::create(
142 void MCWasmStreamer::emitELFSize(MCSymbol *Symbol, const MCExpr *Value) {
151 void MCWasmStreamer::EmitValueImpl(const MCExpr *Value, unsigned Size,
lib/MC/MCWin64EH.cpp 55 const MCExpr *Diff =
135 const MCExpr *Ofs = MCBinaryExpr::createSub(OtherRef, BaseRef, Context);
254 const MCExpr *Diff =
lib/MC/MCWinCOFFStreamer.cpp 233 const MCExpr *MCE = MCSymbolRefExpr::create(Symbol, getContext());
251 const MCExpr *MCE = MCSymbolRefExpr::create(
lib/MC/MachObjectWriter.cpp 329 const MCExpr *Value = S->getVariableValue();
lib/MC/WasmObjectWriter.cpp 460 const MCExpr *Expr = SymA->getVariableValue();
525 const MCExpr *Expr = Ret->getVariableValue();
1552 const MCExpr *Expr = Fixup.getValue();
lib/Object/RecordStreamer.cpp 94 void RecordStreamer::EmitAssignment(MCSymbol *Symbol, const MCExpr *Value) {
223 const MCExpr *Value = MCSymbolRefExpr::create(Aliasee, getContext());
lib/Object/RecordStreamer.h 51 void EmitAssignment(MCSymbol *Symbol, const MCExpr *Value) override;
lib/Target/AArch64/AArch64AsmPrinter.cpp 725 const MCExpr *Value = MCSymbolRefExpr::create(MBB->getSymbol(), OutContext);
732 const MCExpr *Base = TLI->getPICJumpTableRelocBaseExpr(MF, JTI, OutContext);
737 const MCExpr *Base = MCSymbolRefExpr::create(BaseSym, OutContext);
lib/Target/AArch64/AArch64MCInstLower.cpp 107 const MCExpr *Expr = MCSymbolRefExpr::create(Sym, RefKind, Ctx);
178 const MCExpr *Expr =
227 const MCExpr *Expr =
lib/Target/AArch64/AArch64TargetObjectFile.cpp 34 const MCExpr *AArch64_MachoTargetObjectFile::getTTypeGlobalReference(
43 const MCExpr *Res =
47 const MCExpr *PC = MCSymbolRefExpr::create(PCSym, getContext());
61 const MCExpr *AArch64_MachoTargetObjectFile::getIndirectSymViaGOTPCRel(
68 const MCExpr *Res =
72 const MCExpr *PC = MCSymbolRefExpr::create(PCSym, getContext());
lib/Target/AArch64/AArch64TargetObjectFile.h 28 const MCExpr *getTTypeGlobalReference(const GlobalValue *GV,
38 const MCExpr *getIndirectSymViaGOTPCRel(const GlobalValue *GV,
lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp 158 bool parseSymbolicImmVal(const MCExpr *&ImmVal);
267 static bool classifySymbolRef(const MCExpr *Expr,
349 const MCExpr *Val;
353 const MCExpr *Val;
499 const MCExpr *getImm() const {
504 const MCExpr *getShiftedImmVal() const {
689 bool isSymbolicUImm12Offset(const MCExpr *Expr) const {
793 const MCExpr *Expr;
1414 void addExpr(MCInst &Inst, const MCExpr *Expr) const {
1870 static std::unique_ptr<AArch64Operand> CreateImm(const MCExpr *Val, SMLoc S,
1879 static std::unique_ptr<AArch64Operand> CreateShiftedImm(const MCExpr *Val,
2373 const MCExpr *ImmVal;
2464 const MCExpr *Expr = nullptr;
2515 const MCExpr *Expr = nullptr;
2613 const MCExpr *Imm = nullptr;
2788 const MCExpr *ImmVal;
2867 const MCExpr *Expr = MCConstantExpr::create(Op1, getContext());
2989 const MCExpr *ImmVal;
3101 const MCExpr *ImmVal;
3225 bool AArch64AsmParser::parseSymbolicImmVal(const MCExpr *&ImmVal) {
3455 const MCExpr *ImmVal;
3530 const MCExpr *ImmVal;
3567 const MCExpr *Expr;
3609 const MCExpr *IdVal;
3657 const MCExpr *ImmVal;
3670 const MCExpr *SubExprVal;
3707 const MCExpr *CPLoc =
4121 const MCExpr *Expr = Inst.getOperand(2).getExpr();
4519 const MCExpr *NewOp3 = MCConstantExpr::create(NewOp3Val, getContext());
4520 const MCExpr *NewOp4 = MCConstantExpr::create(NewOp4Val, getContext());
4570 const MCExpr *ImmRExpr = MCConstantExpr::create(ImmR, getContext());
4571 const MCExpr *ImmSExpr = MCConstantExpr::create(ImmS, getContext());
4626 const MCExpr *NewOp3 =
4628 const MCExpr *NewOp4 =
4684 const MCExpr *NewOp4 =
5279 const MCExpr *Expr = nullptr;
5304 const MCExpr *Expr = MCSymbolRefExpr::create(Sym, getContext());
5470 AArch64AsmParser::classifySymbolRef(const MCExpr *Expr,
5729 const MCExpr *ImmVal;
lib/Target/AArch64/Disassembler/AArch64ExternalSymbolizer.cpp 167 const MCExpr *Add = nullptr;
182 const MCExpr *Sub = nullptr;
193 const MCExpr *Off = nullptr;
197 const MCExpr *Expr;
199 const MCExpr *LHS;
lib/Target/AArch64/MCTargetDesc/AArch64ELFStreamer.cpp 84 void ChangeSection(MCSection *Section, const MCExpr *Subsection) override {
139 void EmitValueImpl(const MCExpr *Value, unsigned Size, SMLoc Loc) override {
144 void emitFill(const MCExpr &NumBytes, uint64_t FillValue,
lib/Target/AArch64/MCTargetDesc/AArch64MCAsmInfo.cpp 53 const MCExpr *AArch64MCAsmInfoDarwin::getExprForPersonalitySymbol(
60 const MCExpr *Res =
64 const MCExpr *PC = MCSymbolRefExpr::create(PCSym, Context);
lib/Target/AArch64/MCTargetDesc/AArch64MCAsmInfo.h 27 const MCExpr *
lib/Target/AArch64/MCTargetDesc/AArch64MCCodeEmitter.cpp 242 const MCExpr *Expr = MO.getExpr();
273 const MCExpr *Expr = MO.getExpr();
lib/Target/AArch64/MCTargetDesc/AArch64MCExpr.cpp 26 const AArch64MCExpr *AArch64MCExpr::create(const MCExpr *Expr, VariantKind Kind,
113 static void fixELFSymbolsInTLSFixupsImpl(const MCExpr *Expr, MCAssembler &Asm) {
115 case MCExpr::Target:
118 case MCExpr::Constant:
121 case MCExpr::Binary: {
128 case MCExpr::SymbolRef: {
136 case MCExpr::Unary:
lib/Target/AArch64/MCTargetDesc/AArch64MCExpr.h 114 const MCExpr *Expr;
117 explicit AArch64MCExpr(const MCExpr *Expr, VariantKind Kind)
124 static const AArch64MCExpr *create(const MCExpr *Expr, VariantKind Kind,
135 const MCExpr *getSubExpr() const { return Expr; }
168 static bool classof(const MCExpr *E) {
169 return E->getKind() == MCExpr::Target;
lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.cpp 30 const MCExpr *AArch64TargetStreamer::addConstantPoolEntry(const MCExpr *Expr,
30 const MCExpr *AArch64TargetStreamer::addConstantPoolEntry(const MCExpr *Expr,
lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.h 30 const MCExpr *addConstantPoolEntry(const MCExpr *, unsigned Size, SMLoc Loc);
30 const MCExpr *addConstantPoolEntry(const MCExpr *, unsigned Size, SMLoc Loc);
lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFObjectWriter.cpp 49 const MCExpr *Expr = Fixup.getValue();
lib/Target/AMDGPU/AMDGPUAsmPrinter.h 116 const MCExpr *lowerConstant(const Constant *CV) override;
lib/Target/AMDGPU/AMDGPUMCInstLower.cpp 46 const MCExpr *getLongBranchBlockExpr(const MachineBasicBlock &SrcBB,
100 const MCExpr *AMDGPUMCInstLower::getLongBranchBlockExpr(
103 const MCExpr *DestBBSym
105 const MCExpr *SrcBBSym = MCSymbolRefExpr::create(SrcBB.getSymbol(), Ctx);
153 const MCExpr *Expr =
227 static const MCExpr *lowerAddrSpaceCast(const TargetMachine &TM,
251 const MCExpr *AMDGPUAsmPrinter::lowerConstant(const Constant *CV) {
252 if (const MCExpr *E = lowerAddrSpaceCast(TM, CV, OutContext))
409 const MCExpr *R600AsmPrinter::lowerConstant(const Constant *CV) {
410 if (const MCExpr *E = lowerAddrSpaceCast(TM, CV, OutContext))
lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp 212 const MCExpr *Expr;
932 const class MCExpr *Expr, SMLoc S) {
2379 const MCExpr *Expr;
5349 const MCExpr *Expr;
lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp 588 const MCExpr *Exp = Op.getExpr();
1487 const MCExpr *Exp = Op.getExpr();
lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp 433 StringRef Name, const MCExpr *DescSZ, unsigned NoteType,
lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.h 137 void EmitNote(StringRef Name, const MCExpr *DescSize, unsigned NoteType,
lib/Target/AMDGPU/MCTargetDesc/SIMCCodeEmitter.cpp 353 const MCExpr *Expr = MO.getExpr();
428 static bool needsPCRel(const MCExpr *Expr) {
430 case MCExpr::SymbolRef: {
436 case MCExpr::Binary: {
442 case MCExpr::Unary:
444 case MCExpr::Target:
445 case MCExpr::Constant:
458 if (MO.isExpr() && MO.getExpr()->getKind() != MCExpr::Constant) {
lib/Target/AMDGPU/R600AsmPrinter.h 33 const MCExpr *lowerConstant(const Constant *CV) override;
lib/Target/ARC/MCTargetDesc/ARCInstPrinter.cpp 106 static void printExpr(const MCExpr *Expr, const MCAsmInfo *MAI,
lib/Target/ARM/ARMAsmPrinter.cpp 86 const MCExpr *E = MCSymbolRefExpr::create(GetARMGVSymbol(GV,
910 const MCExpr *Expr =
918 const MCExpr *PCRelExpr = MCSymbolRefExpr::create(PCLabel, OutContext);
929 const MCExpr *DotExpr = MCSymbolRefExpr::create(DotSym, OutContext);
966 const MCExpr *Expr = MCSymbolRefExpr::create(MBB->getSymbol(), OutContext);
1001 const MCExpr *MBBSymbolExpr = MCSymbolRefExpr::create(MBB->getSymbol(),
1033 const MCExpr *MBBSymbolExpr = MCSymbolRefExpr::create(MBB->getSymbol(),
1047 const MCExpr *Expr = MCBinaryExpr::createAdd(
1384 const MCExpr *GVSymExpr = MCSymbolRefExpr::create(GVSym, OutContext);
1401 const MCExpr *GVSymExpr = MCSymbolRefExpr::create(GVSym, OutContext);
1406 const MCExpr *LabelSymExpr= MCSymbolRefExpr::create(LabelSym, OutContext);
1408 const MCExpr *PCRelExpr =
1434 const MCExpr *GVSymExpr = MCSymbolRefExpr::create(GVSym, OutContext);
1439 const MCExpr *LabelSymExpr= MCSymbolRefExpr::create(LabelSym, OutContext);
1441 const MCExpr *PCRelExpr =
1462 const MCExpr *BranchLabel = MCSymbolRefExpr::create(
1473 const MCExpr *BranchTarget;
1492 const MCExpr *ElseLabel = MCSymbolRefExpr::create(
1886 const MCExpr *SymbolExpr = MCSymbolRefExpr::create(Label, OutContext);
lib/Target/ARM/ARMMCInstLower.cpp 44 const MCExpr *Expr =
lib/Target/ARM/ARMTargetObjectFile.cpp 56 const MCExpr *ARMElfTargetObjectFile::getTTypeGlobalReference(
69 const MCExpr *ARMElfTargetObjectFile::
lib/Target/ARM/ARMTargetObjectFile.h 26 const MCExpr *getTTypeGlobalReference(const GlobalValue *GV,
33 const MCExpr *getDebugThreadLocalSymbol(const MCSymbol *Sym) const override;
lib/Target/ARM/AsmParser/ARMAsmParser.cpp 776 const MCExpr *Val;
912 const MCExpr *getImm() const {
917 const MCExpr *getConstantPoolImm() const {
2322 void addExpr(MCInst &Inst, const MCExpr *Expr) const {
3515 CreateConstantPoolImm(const MCExpr *Val, SMLoc S, SMLoc E) {
3615 static std::unique_ptr<ARMOperand> CreateImm(const MCExpr *Val, SMLoc S,
3993 const MCExpr *ShiftExpr = nullptr;
4075 const MCExpr *ImmVal;
4217 const MCExpr *Expr;
4460 const MCExpr *LaneIndex;
4795 const MCExpr *MemBarrierID;
4863 const MCExpr *ISBarrierID;
5070 const MCExpr *ShiftAmount;
5153 const MCExpr *ShiftAmount;
5215 const MCExpr *ShiftAmount;
5275 const MCExpr *Imm1Exp;
5335 const MCExpr *Imm2Exp;
5370 const MCExpr *LSBExpr;
5403 const MCExpr *WidthExpr;
5501 const MCExpr *Offset;
5691 const MCExpr *Expr;
5749 const MCExpr *Offset;
5873 const MCExpr *Expr;
6035 const MCExpr *IdVal;
6055 const MCExpr *ImmVal;
6090 const MCExpr *SubExprVal;
6094 const MCExpr *ExprVal = ARMMCExpr::create(RefKind, SubExprVal,
6105 const MCExpr *SubExprVal;
7767 const MCExpr *E = dyn_cast<MCExpr>(Op.getImm());
7767 const MCExpr *E = dyn_cast<MCExpr>(Op.getImm());
8305 const MCExpr *OpExpr = Inst.getOperand(2).getExpr();
8306 const MCExpr *InstPC = MCSymbolRefExpr::create(Dot,
8309 const MCExpr *Const8 = MCConstantExpr::create(8, getContext());
8310 const MCExpr *ReadPC = MCBinaryExpr::createAdd(InstPC, Const8,
8312 const MCExpr *FixupAddr = MCBinaryExpr::createAdd(ReadPC, OpExpr,
8360 const MCExpr *SubExprVal = PoolOperand.getConstantPoolImm();
8417 const MCExpr *CPLoc =
10581 const MCExpr *Value;
10818 const MCExpr *AttrExpr;
10853 const MCExpr *ValueExpr;
11097 const MCExpr *OffsetExpr;
11132 const MCExpr *OffsetExpr;
11200 const MCExpr *Expr;
11279 const MCExpr *IndexExpression;
11324 const MCExpr *OffsetExpr;
11344 const MCExpr *OE = nullptr;
11413 const MCExpr *OffsetExpr;
11488 const MCExpr *Value;
11831 const MCExpr *SOExpr = Op.getImm();
lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp 103 void emitThumbSet(MCSymbol *Symbol, const MCExpr *Value) override;
244 void ARMTargetAsmStreamer::emitThumbSet(MCSymbol *Symbol, const MCExpr *Value) {
415 void emitThumbSet(MCSymbol *Symbol, const MCExpr *Value) override;
467 void emitFill(const MCExpr &NumBytes, uint64_t FillValue,
473 void ChangeSection(MCSection *Section, const MCExpr *Subsection) override {
556 void EmitValueImpl(const MCExpr *Value, unsigned Size, SMLoc Loc) override {
687 void EmitFixup(const MCExpr *Expr, MCFixupKind Kind);
1152 void ARMTargetELFStreamer::emitThumbSet(MCSymbol *Symbol, const MCExpr *Value) {
1234 void ARMELFStreamer::EmitFixup(const MCExpr *Expr, MCFixupKind Kind) {
lib/Target/ARM/MCTargetDesc/ARMInstPrinter.cpp 320 const MCExpr *Expr = Op.getExpr();
322 case MCExpr::Binary:
326 case MCExpr::Constant: {
lib/Target/ARM/MCTargetDesc/ARMMCCodeEmitter.cpp 321 const MCExpr *Expr = MO.getExpr();
340 const MCExpr *Expr = MO.getExpr();
635 const MCExpr *Expr = MO.getExpr();
995 const MCExpr *Expr = MO.getExpr();
1129 const MCExpr *Expr = MO.getExpr();
1205 const MCExpr *E = MO.getExpr();
1207 if (E->getKind() == MCExpr::Target) {
1356 const MCExpr *Expr = MO.getExpr();
1434 const MCExpr *Expr = MO.getExpr();
1474 const MCExpr *Expr = MO.getExpr();
1913 const MCExpr *DiffExpr = MCBinaryExpr::createSub(
lib/Target/ARM/MCTargetDesc/ARMMCExpr.cpp 17 ARMMCExpr::create(VariantKind Kind, const MCExpr *Expr,
29 const MCExpr *Expr = getSubExpr();
30 if (Expr->getKind() != MCExpr::SymbolRef)
33 if (Expr->getKind() != MCExpr::SymbolRef)
lib/Target/ARM/MCTargetDesc/ARMMCExpr.h 26 const MCExpr *Expr;
28 explicit ARMMCExpr(VariantKind Kind, const MCExpr *Expr)
35 static const ARMMCExpr *create(VariantKind Kind, const MCExpr *Expr,
38 static const ARMMCExpr *createUpper16(const MCExpr *Expr, MCContext &Ctx) {
42 static const ARMMCExpr *createLower16(const MCExpr *Expr, MCContext &Ctx) {
54 const MCExpr *getSubExpr() const { return Expr; }
72 static bool classof(const MCExpr *E) {
73 return E->getKind() == MCExpr::Target;
lib/Target/ARM/MCTargetDesc/ARMMachORelocationInfo.cpp 23 const MCExpr *createExprForCAPIVariantKind(const MCExpr *SubExpr,
23 const MCExpr *createExprForCAPIVariantKind(const MCExpr *SubExpr,
lib/Target/ARM/MCTargetDesc/ARMTargetStreamer.cpp 36 const MCExpr *ARMTargetStreamer::addConstantPoolEntry(const MCExpr *Expr, SMLoc Loc) {
36 const MCExpr *ARMTargetStreamer::addConstantPoolEntry(const MCExpr *Expr, SMLoc Loc) {
117 void ARMTargetStreamer::emitThumbSet(MCSymbol *Symbol, const MCExpr *Value) {}
lib/Target/AVR/AVRMCInstLower.cpp 29 const MCExpr *Expr = MCSymbolRefExpr::create(Sym, Ctx);
lib/Target/AVR/AsmParser/AVRAsmParser.cpp 112 AVROperand(MCExpr const *Imm, SMLoc const &S, SMLoc const &E)
114 AVROperand(unsigned Reg, MCExpr const *Imm, SMLoc const &S, SMLoc const &E)
119 MCExpr const *Imm;
136 void addExpr(MCInst &Inst, const MCExpr *Expr) const {
150 const MCExpr *Expr = getImm();
196 const MCExpr *getImm() const {
210 static std::unique_ptr<AVROperand> CreateImm(const MCExpr *Val, SMLoc S,
216 CreateMemri(unsigned RegNum, const MCExpr *Val, SMLoc S, SMLoc E) {
230 void makeImm(MCExpr const *Ex) {
235 void makeMemri(unsigned RegNo, MCExpr const *Imm) {
410 MCExpr const *Expression;
480 MCExpr const *InnerExpression;
494 MCExpr const *Expression = AVRMCExpr::create(ModifierKind, InnerExpression,
553 MCExpr const *Expression;
676 const MCExpr *Value;
lib/Target/AVR/MCTargetDesc/AVRMCCodeEmitter.cpp 222 unsigned AVRMCCodeEmitter::getExprOpValue(const MCExpr *Expr,
226 MCExpr::ExprKind Kind = Expr->getKind();
228 if (Kind == MCExpr::Binary) {
233 if (Kind == MCExpr::Target) {
lib/Target/AVR/MCTargetDesc/AVRMCCodeEmitter.h 87 unsigned getExprOpValue(const MCExpr *Expr, SmallVectorImpl<MCFixup> &Fixups,
lib/Target/AVR/MCTargetDesc/AVRMCExpr.cpp 38 const AVRMCExpr *AVRMCExpr::create(VariantKind Kind, const MCExpr *Expr,
lib/Target/AVR/MCTargetDesc/AVRMCExpr.h 41 static const AVRMCExpr *create(VariantKind Kind, const MCExpr *Expr,
48 const MCExpr *getSubExpr() const { return SubExpr; }
69 static bool classof(const MCExpr *E) {
70 return E->getKind() == MCExpr::Target;
80 const MCExpr *SubExpr;
84 explicit AVRMCExpr(VariantKind Kind, const MCExpr *Expr, bool Negated)
lib/Target/BPF/AsmParser/BPFAsmParser.cpp 92 const MCExpr *Val;
133 const MCExpr *Val = getImm();
151 const MCExpr *getImm() const {
176 void addExpr(MCInst &Inst, const MCExpr *Expr) const {
213 static std::unique_ptr<BPFOperand> createImm(const MCExpr *Val, SMLoc S,
438 const MCExpr *IdVal;
lib/Target/BPF/BPFMCInstLower.cpp 39 const MCExpr *Expr = MCSymbolRefExpr::create(Sym, Ctx);
lib/Target/BPF/MCTargetDesc/BPFInstPrinter.cpp 33 static void printExpr(const MCExpr *Expr, raw_ostream &O) {
lib/Target/BPF/MCTargetDesc/BPFMCCodeEmitter.cpp 97 const MCExpr *Expr = MO.getExpr();
lib/Target/Hexagon/AsmParser/HexagonAsmParser.cpp 178 bool parseExpression(MCExpr const *&Expr);
209 const MCExpr *Val;
255 const MCExpr *getImm() const {
268 const MCExpr *myMCExpr = &HexagonMCInstrInfo::getExpr(*getImm());
292 } else if (myMCExpr->getKind() == MCExpr::SymbolRef && isRelocatable)
294 else if (myMCExpr->getKind() == MCExpr::Binary ||
295 myMCExpr->getKind() == MCExpr::Unary)
438 CreateImm(MCContext &Context, const MCExpr *Val, SMLoc S, SMLoc E) {
667 const MCExpr *Subsection = nullptr;
699 const MCExpr *Value;
1043 bool HexagonAsmParser::parseExpression(MCExpr const *&Expr) {
1081 MCExpr const *Expr = nullptr;
1171 MCExpr const *Expr = nullptr;
1684 MCExpr const &Expr = *Imm.getExpr();
lib/Target/Hexagon/HexagonAsmPrinter.cpp 427 MCExpr const *Expr = MO.getExpr();
442 const MCExpr *One = MCConstantExpr::create(1, OutContext);
443 const MCExpr *Sub = MCBinaryExpr::createSub(Expr, One, OutContext);
453 MCExpr const *Expr = MO2.getExpr();
478 const MCExpr *One = MCConstantExpr::create(1, OutContext);
479 const MCExpr *Sub = MCBinaryExpr::createSub(Expr, One, OutContext);
489 MCExpr const *Expr = MO.getExpr();
505 const MCExpr *One = MCConstantExpr::create(1, OutContext);
506 const MCExpr *Sub = MCBinaryExpr::createSub(Expr, One, OutContext);
524 const MCExpr *MOne = MCConstantExpr::create(-1, OutContext);
528 const MCExpr *Zero = MCConstantExpr::create(0, OutContext);
579 MCExpr const *Expr = Imm.getExpr();
lib/Target/Hexagon/HexagonMCInstLower.cpp 44 const MCExpr *ME;
149 MCExpr const *Expr = MCSymbolRefExpr::create(MO.getMBB()->getSymbol(),
lib/Target/Hexagon/MCTargetDesc/HexagonInstPrinter.cpp 84 MCExpr const &Expr = *MO.getExpr();
lib/Target/Hexagon/MCTargetDesc/HexagonMCCodeEmitter.cpp 585 const MCOperand &MO, const MCExpr *ME, SmallVectorImpl<MCFixup> &Fixups,
615 if (ME->getKind() == MCExpr::Binary) {
705 const MCExpr *FixupExpr = MO.getExpr();
707 const MCExpr *C = MCConstantExpr::create(State.Addend, MCT);
lib/Target/Hexagon/MCTargetDesc/HexagonMCCodeEmitter.h 75 const MCExpr *ME, SmallVectorImpl<MCFixup> &Fixups,
lib/Target/Hexagon/MCTargetDesc/HexagonMCExpr.cpp 22 HexagonMCExpr *HexagonMCExpr::create(MCExpr const *Expr, MCContext &Ctx) {
40 static void fixELFSymbolsInTLSFixupsImpl(const MCExpr *Expr, MCAssembler &Asm) {
42 case MCExpr::Target:
45 case MCExpr::Constant:
48 case MCExpr::Binary: {
54 case MCExpr::SymbolRef: {
71 case MCExpr::Unary:
82 MCExpr const *HexagonMCExpr::getExpr() const { return Expr; }
101 bool HexagonMCExpr::classof(MCExpr const *E) {
102 return E->getKind() == MCExpr::Target;
105 HexagonMCExpr::HexagonMCExpr(MCExpr const *Expr)
lib/Target/Hexagon/MCTargetDesc/HexagonMCExpr.h 18 static HexagonMCExpr *create(MCExpr const *Expr, MCContext &Ctx);
25 static bool classof(MCExpr const *E);
26 MCExpr const *getExpr() const;
37 HexagonMCExpr(MCExpr const *Expr);
38 MCExpr const *Expr;
lib/Target/Hexagon/MCTargetDesc/HexagonMCInstrInfo.cpp 278 MCExpr const &HexagonMCInstrInfo::getExpr(MCExpr const &Expr) {
278 MCExpr const &HexagonMCInstrInfo::getExpr(MCExpr const &Expr) {
776 void HexagonMCInstrInfo::setMustExtend(MCExpr const &Expr, bool Val) {
781 bool HexagonMCInstrInfo::mustExtend(MCExpr const &Expr) {
785 void HexagonMCInstrInfo::setMustNotExtend(MCExpr const &Expr, bool Val) {
789 bool HexagonMCInstrInfo::mustNotExtend(MCExpr const &Expr) {
793 void HexagonMCInstrInfo::setS27_2_reloc(MCExpr const &Expr, bool Val) {
798 bool HexagonMCInstrInfo::s27_2_reloc(MCExpr const &Expr) {
lib/Target/Hexagon/MCTargetDesc/HexagonMCInstrInfo.h 127 MCExpr const &getExpr(MCExpr const &Expr);
127 MCExpr const &getExpr(MCExpr const &Expr);
290 bool mustExtend(MCExpr const &Expr);
291 bool mustNotExtend(MCExpr const &Expr);
311 bool s27_2_reloc(MCExpr const &Expr);
315 void setMustExtend(MCExpr const &Expr, bool Val = true);
316 void setMustNotExtend(MCExpr const &Expr, bool Val = true);
317 void setS27_2_reloc(MCExpr const &Expr, bool Val = true);
lib/Target/Lanai/AsmParser/LanaiAsmParser.cpp 125 const MCExpr *Value;
132 const MCExpr *Offset;
159 const MCExpr *getImm() const {
179 const MCExpr *getMemOffset() const {
389 void addExpr(MCInst &Inst, const MCExpr *Expr) const {
427 const MCExpr *Expr = getMemOffset();
434 const MCExpr *Expr = getMemOffset();
601 static std::unique_ptr<LanaiOperand> createImm(const MCExpr *Value,
612 const MCExpr *Imm = Op->getImm();
636 const MCExpr *Imm = Op->getImm();
722 const MCExpr *Res, *RHS = nullptr;
767 const MCExpr *Expr = MCSymbolRefExpr::create(Sym, getContext());
781 const MCExpr *ExprVal;
lib/Target/Lanai/LanaiMCInstLower.cpp 84 const MCExpr *Expr =
lib/Target/Lanai/MCTargetDesc/LanaiMCCodeEmitter.cpp 90 static Lanai::Fixups FixupKind(const MCExpr *Expr) {
119 const MCExpr *Expr = MCOp.getExpr();
122 if (Expr->getKind() == MCExpr::Binary) {
lib/Target/Lanai/MCTargetDesc/LanaiMCExpr.cpp 17 const LanaiMCExpr *LanaiMCExpr::create(VariantKind Kind, const MCExpr *Expr,
40 const MCExpr *Expr = getSubExpr();
lib/Target/Lanai/MCTargetDesc/LanaiMCExpr.h 23 const MCExpr *Expr;
25 explicit LanaiMCExpr(VariantKind Kind, const MCExpr *Expr)
29 static const LanaiMCExpr *create(VariantKind Kind, const MCExpr *Expr,
36 const MCExpr *getSubExpr() const { return Expr; }
49 static bool classof(const MCExpr *E) {
50 return E->getKind() == MCExpr::Target;
lib/Target/MSP430/AsmParser/MSP430AsmParser.cpp 103 const MCExpr *Offset;
106 const MCExpr *Imm;
119 MSP430Operand(MCExpr const *Imm, SMLoc const &S, SMLoc const &E)
121 MSP430Operand(unsigned Reg, MCExpr const *Expr, SMLoc const &S, SMLoc const &E)
132 void addExprOperand(MCInst &Inst, const MCExpr *Expr) const {
202 static std::unique_ptr<MSP430Operand> CreateImm(const MCExpr *Val, SMLoc S,
208 const MCExpr *Val,
342 const MCExpr *CCode = MCConstantExpr::create(CondCode, getContext());
350 const MCExpr *Val;
452 const MCExpr *Val;
478 const MCExpr *Val;
511 const MCExpr *Val;
523 const MCExpr *Value;
lib/Target/MSP430/MSP430MCInstLower.cpp 98 const MCExpr *Expr = MCSymbolRefExpr::create(Sym, Ctx);
lib/Target/Mips/AsmParser/MipsAsmParser.cpp 228 bool loadAndAddSymbolAddress(const MCExpr *SymExpr, unsigned DstReg,
336 bool parseMemOffset(const MCExpr *&Res, bool isParenExpr);
338 bool isEvaluated(const MCExpr *Expr);
695 const MCExpr *createTargetUnaryExpr(const MCExpr *E,
695 const MCExpr *createTargetUnaryExpr(const MCExpr *E,
825 const MCExpr *Val;
830 const MCExpr *Off;
1008 void addExpr(MCInst &Inst, const MCExpr *Expr) const {
1209 const MCExpr *Expr = getImm();
1220 const MCExpr *Expr = getMemOff();
1229 const MCExpr *Expr = getMemOff();
1422 const MCExpr *getImm() const {
1428 const MCExpr *Val = getImm();
1439 const MCExpr *getMemOff() const {
1529 CreateImm(const MCExpr *Val, SMLoc S, SMLoc E, MipsAsmParser &Parser) {
1538 CreateMem(std::unique_ptr<MipsOperand> Base, const MCExpr *Off, SMLoc S,
1742 static const MCSymbol *getSingleMCSymbol(const MCExpr *Expr) {
1766 static unsigned countMCSymbolRefExpr(const MCExpr *Expr) {
2023 const MCExpr *JalExpr = Inst.getOperand(0).getExpr();
2053 const MCExpr *TmpExpr = MCSymbolRefExpr::create(TmpLabel, getContext());
2054 const MCExpr *RelocJalrExpr =
2085 const MCExpr *Expr = Op.getExpr();
2086 if (Expr->getKind() == MCExpr::SymbolRef) {
2827 bool MipsAsmParser::loadAndAddSymbolAddress(const MCExpr *SymExpr,
2864 const MCExpr *CallHiExpr = MipsMCExpr::create(MipsMCExpr::MEK_CALL_HI16,
2866 const MCExpr *CallLoExpr = MipsMCExpr::create(MipsMCExpr::MEK_CALL_LO16,
2875 const MCExpr *CallExpr =
2908 const MCExpr *CallHiExpr =
2910 const MCExpr *CallLoExpr = MipsMCExpr::create(
2933 const MCExpr *LoExpr = nullptr;
3210 const MCExpr *GotSym =
3223 const MCExpr *HiSym =
3237 const MCExpr *HighestSym =
3241 const MCExpr *HigherSym =
3330 const MCExpr *LoSym =
3382 const MCExpr *LoSym =
3465 const MCExpr *LoSym =
3630 const MCExpr *ExprOffset = ExprOp.getExpr();
3696 const MCExpr *ExprOffset = OffsetOp.getExpr();
3752 const MCExpr *OffsetExpr = Inst.getOperand(2).getExpr();
6028 const MCExpr *Res =
6037 const MCExpr *Expr;
6051 bool MipsAsmParser::isEvaluated(const MCExpr *Expr) {
6053 case MCExpr::Constant:
6055 case MCExpr::SymbolRef:
6057 case MCExpr::Binary: {
6063 case MCExpr::Unary:
6065 case MCExpr::Target:
6097 bool MipsAsmParser::parseMemOffset(const MCExpr *&Res, bool isParenExpr) {
6109 const MCExpr *IdVal = nullptr;
6196 const MCExpr * NextExpr;
6232 else if (BE->getLHS()->getKind() != MCExpr::SymbolRef)
6249 const MCExpr *Expr = Sym->getVariableValue();
6250 if (Expr->getKind() == MCExpr::SymbolRef) {
6421 const MCExpr *Expr = nullptr;
6434 const MCExpr *IdVal;
7100 const MCExpr *Value;
7363 const MCExpr *StackOffset;
7423 const MCExpr *OffsetExpr;
7447 const MCExpr *Expr;
7453 if (Expr->getKind() != MCExpr::SymbolRef) {
7626 const MCExpr *Value;
7644 const MCExpr *Value;
7662 const MCExpr *Value;
7680 const MCExpr *Value;
7698 const MCExpr *Value;
7716 const MCExpr *Value;
8227 const MCExpr *DummyNumber;
8309 const MCExpr *FrameSize;
8372 const MCExpr *BitMask;
8393 const MCExpr *FrameOffset;
lib/Target/Mips/MCTargetDesc/MipsELFStreamer.cpp 94 const MCExpr *Subsection) {
99 void MipsELFStreamer::EmitValueImpl(const MCExpr *Value, unsigned Size,
lib/Target/Mips/MCTargetDesc/MipsELFStreamer.h 54 const MCExpr *Subsection = nullptr) override;
59 void EmitValueImpl(const MCExpr *Value, unsigned Size, SMLoc Loc) override;
lib/Target/Mips/MCTargetDesc/MipsMCCodeEmitter.cpp 247 const MCExpr *FixupExpression = MCBinaryExpr::createAdd(
269 const MCExpr *FixupExpression = MCBinaryExpr::createAdd(
292 const MCExpr *FixupExpression = MCBinaryExpr::createAdd(
315 const MCExpr *FixupExpression = MCBinaryExpr::createAdd(
337 const MCExpr *Expr = MO.getExpr();
358 const MCExpr *Expr = MO.getExpr();
379 const MCExpr *Expr = MO.getExpr();
401 const MCExpr *FixupExpression = MCBinaryExpr::createAdd(
423 const MCExpr *FixupExpression = MCBinaryExpr::createAdd(
445 const MCExpr *FixupExpression = MCBinaryExpr::createAdd(
467 const MCExpr *FixupExpression = MCBinaryExpr::createAdd(
488 const MCExpr *Expr = MO.getExpr();
509 const MCExpr *Expr = MO.getExpr();
526 const MCExpr *Expr = MO.getExpr();
590 getExprOpValue(const MCExpr *Expr, SmallVectorImpl<MCFixup> &Fixups,
597 MCExpr::ExprKind Kind = Expr->getKind();
598 if (Kind == MCExpr::Constant) {
602 if (Kind == MCExpr::Binary) {
608 if (Kind == MCExpr::Target) {
725 if (Kind == MCExpr::SymbolRef) {
980 const MCExpr *Expr = MO.getExpr();
1002 const MCExpr *Expr = MO.getExpr();
lib/Target/Mips/MCTargetDesc/MipsMCCodeEmitter.h 258 unsigned getExprOpValue(const MCExpr *Expr, SmallVectorImpl<MCFixup> &Fixups,
lib/Target/Mips/MCTargetDesc/MipsMCExpr.cpp 28 const MCExpr *Expr, MCContext &Ctx) {
33 const MCExpr *Expr, MCContext &Ctx) {
138 const MCExpr *SubExpr =
223 static void fixELFSymbolsInTLSFixupsImpl(const MCExpr *Expr, MCAssembler &Asm) {
225 case MCExpr::Target:
228 case MCExpr::Constant:
230 case MCExpr::Binary: {
236 case MCExpr::SymbolRef: {
243 case MCExpr::Unary:
lib/Target/Mips/MCTargetDesc/MipsMCExpr.h 52 const MCExpr *Expr;
54 explicit MipsMCExpr(MipsExprKind Kind, const MCExpr *Expr)
58 static const MipsMCExpr *create(MipsExprKind Kind, const MCExpr *Expr,
60 static const MipsMCExpr *createGpOff(MipsExprKind Kind, const MCExpr *Expr,
67 const MCExpr *getSubExpr() const { return Expr; }
80 static bool classof(const MCExpr *E) {
81 return E->getKind() == MCExpr::Target;
lib/Target/Mips/MCTargetDesc/MipsTargetStreamer.cpp 966 void MipsTargetELFStreamer::emitAssignment(MCSymbol *S, const MCExpr *Value) {
969 if (Value->getKind() != MCExpr::SymbolRef)
1056 const MCExpr *Size = MCBinaryExpr::createSub(
1171 const MCExpr *HiSym = MipsMCExpr::create(
1184 const MCExpr *LoSym = MipsMCExpr::create(
lib/Target/Mips/MipsAsmPrinter.cpp 173 const MCExpr *OffsetExpr =
175 const MCExpr *CaleeExpr =
1113 const MCExpr *T_min_E = MCBinaryExpr::createSub(T, E, OutContext);
1207 const MCExpr *TargetExpr = MCSymbolRefExpr::create(
1252 void MipsAsmPrinter::EmitDebugValue(const MCExpr *Value, unsigned Size) const {
lib/Target/Mips/MipsAsmPrinter.h 160 void EmitDebugValue(const MCExpr *Value, unsigned Size) const override;
lib/Target/Mips/MipsMCInstLower.cpp 161 const MCExpr *Expr = MCSymbolRefExpr::create(Symbol, Kind, *Ctx);
243 const MCExpr *Expr =
285 const MCExpr *Expr =
lib/Target/Mips/MipsTargetObjectFile.cpp 188 const MCExpr *
190 const MCExpr *Expr =
lib/Target/Mips/MipsTargetObjectFile.h 45 const MCExpr *getDebugThreadLocalSymbol(const MCSymbol *Sym) const override;
lib/Target/Mips/MipsTargetStreamer.h 324 void emitAssignment(MCSymbol *Symbol, const MCExpr *Value) override;
lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.cpp 306 const MCExpr *Expr = Op.getExpr();
lib/Target/NVPTX/MCTargetDesc/NVPTXTargetStreamer.cpp 85 const MCExpr *SubSection,
lib/Target/NVPTX/MCTargetDesc/NVPTXTargetStreamer.h 46 const MCExpr *SubSection, raw_ostream &OS) override;
lib/Target/NVPTX/NVPTXAsmPrinter.cpp 325 const MCExpr *Expr;
1970 const MCExpr *
2035 const MCExpr *Base = lowerConstantForGV(CE->getOperand(0),
2073 const MCExpr *OpExpr = lowerConstantForGV(Op, ProcessingGeneric);
2084 const MCExpr *MaskExpr = MCConstantExpr::create(~0ULL >> (64-InBits), Ctx);
2091 const MCExpr *LHS = lowerConstantForGV(CE->getOperand(0), ProcessingGeneric);
2092 const MCExpr *RHS = lowerConstantForGV(CE->getOperand(1), ProcessingGeneric);
2102 void NVPTXAsmPrinter::printMCExpr(const MCExpr &Expr, raw_ostream &OS) {
2104 case MCExpr::Target:
2106 case MCExpr::Constant:
2110 case MCExpr::SymbolRef: {
2117 case MCExpr::Unary: {
2129 case MCExpr::Binary: {
lib/Target/NVPTX/NVPTXAsmPrinter.h 176 const MCExpr *Expr =
236 const MCExpr *lowerConstantForGV(const Constant *CV, bool ProcessingGeneric);
237 void printMCExpr(const MCExpr &Expr, raw_ostream &OS);
lib/Target/NVPTX/NVPTXMCExpr.h 82 static bool classof(const MCExpr *E) {
83 return E->getKind() == MCExpr::Target;
124 static bool classof(const MCExpr *E) {
125 return E->getKind() == MCExpr::Target;
lib/Target/PowerPC/AsmParser/PPCAsmParser.cpp 39 EvaluateCRExpr(const MCExpr *E) {
41 case MCExpr::Target:
44 case MCExpr::Constant: {
49 case MCExpr::SymbolRef: {
71 case MCExpr::Unary:
74 case MCExpr::Binary: {
113 const MCExpr *ExtractModifierFromExpr(const MCExpr *E,
113 const MCExpr *ExtractModifierFromExpr(const MCExpr *E,
115 const MCExpr *FixupVariantKind(const MCExpr *E);
115 const MCExpr *FixupVariantKind(const MCExpr *E);
116 bool ParseExpression(const MCExpr *&EVal);
117 bool ParseDarwinExpression(const MCExpr *&EVal);
164 const MCExpr *applyModifierToExpr(const MCExpr *E,
164 const MCExpr *applyModifierToExpr(const MCExpr *E,
193 const MCExpr *Val;
266 const MCExpr *getExpr() const {
276 const MCExpr *getTLSReg() const {
619 static std::unique_ptr<PPCOperand> CreateExpr(const MCExpr *Val, SMLoc S,
651 CreateFromMCExpr(const MCExpr *Val, SMLoc S, SMLoc E, bool IsPPC64) {
695 const MCExpr *Expr = Op.getExpr();
703 const MCExpr *NE = MCBinaryExpr::createSub(BinExpr->getRHS(),
1229 const MCExpr *PPCAsmParser::
1230 ExtractModifierFromExpr(const MCExpr *E,
1236 case MCExpr::Target:
1237 case MCExpr::Constant:
1240 case MCExpr::SymbolRef: {
1278 case MCExpr::Unary: {
1280 const MCExpr *Sub = ExtractModifierFromExpr(UE->getSubExpr(), Variant);
1286 case MCExpr::Binary: {
1289 const MCExpr *LHS = ExtractModifierFromExpr(BE->getLHS(), LHSVariant);
1290 const MCExpr *RHS = ExtractModifierFromExpr(BE->getRHS(), RHSVariant);
1318 const MCExpr *PPCAsmParser::
1319 FixupVariantKind(const MCExpr *E) {
1323 case MCExpr::Target:
1324 case MCExpr::Constant:
1327 case MCExpr::SymbolRef: {
1344 case MCExpr::Unary: {
1346 const MCExpr *Sub = FixupVariantKind(UE->getSubExpr());
1352 case MCExpr::Binary: {
1354 const MCExpr *LHS = FixupVariantKind(BE->getLHS());
1355 const MCExpr *RHS = FixupVariantKind(BE->getRHS());
1368 ParseExpression(const MCExpr *&EVal) {
1381 const MCExpr *E = ExtractModifierFromExpr(EVal, Variant);
1395 ParseDarwinExpression(const MCExpr *&EVal) {
1442 const MCExpr *EVal;
1498 const MCExpr *TLSSym;
1651 const MCExpr *Value;
1771 const MCExpr *Expr;
1827 const MCExpr *
1828 PPCAsmParser::applyModifierToExpr(const MCExpr *E,
lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp 43 const MCExpr *Expr = Fixup.getValue();
45 if (Expr->getKind() != MCExpr::Target)
lib/Target/PowerPC/MCTargetDesc/PPCMCExpr.cpp 21 PPCMCExpr::create(VariantKind Kind, const MCExpr *Expr,
lib/Target/PowerPC/MCTargetDesc/PPCMCExpr.h 35 const MCExpr *Expr;
40 explicit PPCMCExpr(VariantKind Kind, const MCExpr *Expr, bool IsDarwin)
47 static const PPCMCExpr *create(VariantKind Kind, const MCExpr *Expr,
50 static const PPCMCExpr *createLo(const MCExpr *Expr,
55 static const PPCMCExpr *createHi(const MCExpr *Expr,
60 static const PPCMCExpr *createHa(const MCExpr *Expr,
73 const MCExpr *getSubExpr() const { return Expr; }
95 static bool classof(const MCExpr *E) {
96 return E->getKind() == MCExpr::Target;
lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.cpp 126 void emitLocalEntry(MCSymbolELF *S, const MCExpr *LocalOffset) override {
164 void emitLocalEntry(MCSymbolELF *S, const MCExpr *LocalOffset) override {
187 void emitAssignment(MCSymbol *S, const MCExpr *Value) override {
206 bool copyLocalEntry(MCSymbolELF *D, const MCExpr *S) {
236 void emitLocalEntry(MCSymbolELF *S, const MCExpr *LocalOffset) override {
257 void emitLocalEntry(MCSymbolELF *S, const MCExpr *LocalOffset) override {
lib/Target/PowerPC/PPCAsmPrinter.cpp 455 const MCExpr *SymVar = MCSymbolRefExpr::create(MOSymbol, OutContext);
496 const MCExpr *TlsRef =
507 const MCExpr *SymVar = MCSymbolRefExpr::create(MOSymbol, VK, OutContext);
589 const MCExpr *OffsExpr =
633 const MCExpr *PB =
636 const MCExpr *DeltaExpr = MCBinaryExpr::createSub(
639 const MCExpr *DeltaHi = PPCMCExpr::createHa(DeltaExpr, false, OutContext);
644 const MCExpr *DeltaLo = PPCMCExpr::createLo(DeltaExpr, false, OutContext);
653 const MCExpr *Exp =
655 const MCExpr *PB =
696 const MCExpr *Exp =
708 const MCExpr *Exp =
725 const MCExpr *PB = MCSymbolRefExpr::create(
756 const MCExpr *Exp =
785 const MCExpr *Exp = MCSymbolRefExpr::create(TOCEntry,
815 const MCExpr *Exp = MCSymbolRefExpr::create(TOCEntry,
849 const MCExpr *Exp =
891 const MCExpr *Exp =
913 const MCExpr *Exp =
927 const MCExpr *SymGotTprel =
946 const MCExpr *Exp = MCSymbolRefExpr::create(
964 const MCExpr *OffsExpr =
986 const MCExpr *SymGotTlsL = MCSymbolRefExpr::create(
988 const MCExpr *SymGotTlsHA = MCSymbolRefExpr::create(
1006 const MCExpr *SymGotTlsGD =
1024 const MCExpr *SymGotTlsGD = MCSymbolRefExpr::create(
1051 const MCExpr *SymGotTlsLD =
1069 const MCExpr *SymGotTlsLD = MCSymbolRefExpr::create(
1098 const MCExpr *SymDtprel =
1118 const MCExpr *SymDtprel =
1348 const MCExpr *tocExpr =
1372 const MCExpr *OffsExpr =
1397 const MCExpr *TOCDeltaExpr =
1515 const MCExpr *TOCDeltaExpr =
1519 const MCExpr *TOCDeltaHi =
1526 const MCExpr *TOCDeltaLo =
1534 const MCExpr *TOCOffsetDeltaExpr =
1552 const MCExpr *LocalOffsetExp =
lib/Target/PowerPC/PPCISelLowering.cpp 2767 const MCExpr *
lib/Target/PowerPC/PPCISelLowering.h 955 const MCExpr *getPICJumpTableRelocBaseExpr(const MachineFunction *MF,
lib/Target/PowerPC/PPCMCInstLower.cpp 116 const MCExpr *Expr = MCSymbolRefExpr::create(Symbol, RefKind, Ctx);
133 const MCExpr *PB = MCSymbolRefExpr::create(MF->getPICBaseSymbol(), Ctx);
lib/Target/PowerPC/PPCTargetObjectFile.cpp 50 const MCExpr *PPC64LinuxTargetObjectFile::
52 const MCExpr *Expr =
lib/Target/PowerPC/PPCTargetObjectFile.h 28 const MCExpr *getDebugThreadLocalSymbol(const MCSymbol *Sym) const override;
lib/Target/PowerPC/PPCTargetStreamer.h 29 virtual void emitLocalEntry(MCSymbolELF *S, const MCExpr *LocalOffset) = 0;
lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp 88 const MCExpr *Symbol, RISCVMCExpr::VariantKind VKHi,
179 static bool classifySymbolRef(const MCExpr *Expr,
212 const MCExpr *Val;
261 static bool evaluateConstantImm(const MCExpr *Expr, int64_t &Imm,
333 const MCExpr *Val = getImm();
357 const MCExpr *Val = getImm();
606 const MCExpr *getImm() const {
654 static std::unique_ptr<RISCVOperand> createImm(const MCExpr *Val, SMLoc S,
675 void addExpr(MCInst &Inst, const MCExpr *Expr) const {
1031 const MCExpr *Res;
1099 const MCExpr *Res;
1154 const MCExpr *SubExpr;
1159 const MCExpr *ModExpr = RISCVMCExpr::create(SubExpr, VK, getContext());
1167 const MCExpr *Res;
1186 const MCExpr *V = Sym->getVariableValue(/*SetUsed=*/false);
1208 const MCExpr *Expr;
1219 const MCExpr *Res;
1435 bool RISCVAsmParser::classifySymbolRef(const MCExpr *Expr,
1616 const MCExpr *Symbol,
1633 const MCExpr *RefToLinkTmpLabel =
1652 const MCExpr *Symbol = Inst.getOperand(1).getExpr();
1669 const MCExpr *Symbol = Inst.getOperand(1).getExpr();
1692 const MCExpr *Symbol = Inst.getOperand(1).getExpr();
1707 const MCExpr *Symbol = Inst.getOperand(1).getExpr();
1726 const MCExpr *Symbol = Inst.getOperand(SymbolOpIdx).getExpr();
lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp 350 const MCExpr *Dummy = MCConstantExpr::create(0, Ctx);
lib/Target/RISCV/MCTargetDesc/RISCVELFObjectWriter.cpp 51 const MCExpr *Expr = Fixup.getValue();
92 if (Expr->getKind() == MCExpr::Target &&
lib/Target/RISCV/MCTargetDesc/RISCVMCAsmInfo.cpp 32 const MCExpr *RISCVMCAsmInfo::getExprForFDESymbol(const MCSymbol *Sym,
43 const MCExpr *ME =
lib/Target/RISCV/MCTargetDesc/RISCVMCAsmInfo.h 27 const MCExpr *getExprForFDESymbol(const MCSymbol *Sym, unsigned Encoding,
lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp 119 const MCExpr *CallExpr = Func.getExpr();
260 const MCExpr *Expr = MO.getExpr();
261 MCExpr::ExprKind Kind = Expr->getKind();
264 if (Kind == MCExpr::Target) {
338 } else if (Kind == MCExpr::SymbolRef &&
lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.cpp 31 const RISCVMCExpr *RISCVMCExpr::create(const MCExpr *Expr, VariantKind Kind,
226 static void fixELFSymbolsInTLSFixupsImpl(const MCExpr *Expr, MCAssembler &Asm) {
228 case MCExpr::Target:
231 case MCExpr::Constant:
234 case MCExpr::Binary: {
241 case MCExpr::SymbolRef: {
249 case MCExpr::Unary:
lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.h 44 const MCExpr *Expr;
52 explicit RISCVMCExpr(const MCExpr *Expr, VariantKind Kind)
56 static const RISCVMCExpr *create(const MCExpr *Expr, VariantKind Kind,
61 const MCExpr *getSubExpr() const { return Expr; }
82 static bool classof(const MCExpr *E) {
83 return E->getKind() == MCExpr::Target;
lib/Target/RISCV/RISCVMCInstLower.cpp 77 const MCExpr *ME =
lib/Target/Sparc/AsmParser/SparcAsmParser.cpp 93 const MCExpr *subExpr);
99 bool matchSparcAsmModifiers(const MCExpr *&EVal, SMLoc &EndLoc);
236 const MCExpr *Val;
242 const MCExpr *Off;
290 const MCExpr *getImm() const {
305 const MCExpr *getMemOff() const {
340 const MCExpr *Expr = getImm();
344 void addExpr(MCInst &Inst, const MCExpr *Expr) const{
368 const MCExpr *Expr = getMemOff();
374 const MCExpr *Expr = getImm();
397 static std::unique_ptr<SparcOperand> CreateImm(const MCExpr *Val, SMLoc S,
495 const MCExpr *Imm = Op->getImm();
531 const MCExpr *ValExpr;
544 const MCExpr *Expr = adjustPICRelocation(SparcMCExpr::VK_Sparc_HI, ValExpr);
565 const MCExpr *Expr;
757 const MCExpr *EVal;
874 const MCExpr *EVal;
942 const MCExpr *Res = MCSymbolRefExpr::create(Sym, MCSymbolRefExpr::VK_None,
1234 static bool hasGOTReference(const MCExpr *Expr) {
1236 case MCExpr::Target:
1241 case MCExpr::Constant:
1244 case MCExpr::Binary: {
1249 case MCExpr::SymbolRef: {
1254 case MCExpr::Unary:
1262 const MCExpr *subExpr) {
1285 bool SparcAsmParser::matchSparcAsmModifiers(const MCExpr *&EVal,
1303 const MCExpr *subExpr;
lib/Target/Sparc/MCTargetDesc/SparcMCAsmInfo.cpp 49 const MCExpr*
62 const MCExpr*
lib/Target/Sparc/MCTargetDesc/SparcMCAsmInfo.h 28 const MCExpr*
31 const MCExpr* getExprForFDESymbol(const MCSymbol *Sym,
lib/Target/Sparc/MCTargetDesc/SparcMCCodeEmitter.cpp 134 const MCExpr *Expr = MO.getExpr();
lib/Target/Sparc/MCTargetDesc/SparcMCExpr.cpp 26 SparcMCExpr::create(VariantKind Kind, const MCExpr *Expr,
35 const MCExpr *Expr = getSubExpr();
168 static void fixELFSymbolsInTLSFixupsImpl(const MCExpr *Expr, MCAssembler &Asm) {
170 case MCExpr::Target:
174 case MCExpr::Constant:
177 case MCExpr::Binary: {
184 case MCExpr::SymbolRef: {
190 case MCExpr::Unary:
lib/Target/Sparc/MCTargetDesc/SparcMCExpr.h 64 const MCExpr *Expr;
66 explicit SparcMCExpr(VariantKind Kind, const MCExpr *Expr)
73 static const SparcMCExpr *create(VariantKind Kind, const MCExpr *Expr,
83 const MCExpr *getSubExpr() const { return Expr; }
100 static bool classof(const MCExpr *E) {
101 return E->getKind() == MCExpr::Target;
lib/Target/Sparc/SparcTargetObjectFile.cpp 23 const MCExpr *SparcELFTargetObjectFile::getTTypeGlobalReference(
lib/Target/Sparc/SparcTargetObjectFile.h 27 const MCExpr *getTTypeGlobalReference(const GlobalValue *GV,
lib/Target/SystemZ/AsmParser/SystemZAsmParser.cpp 41 static bool inRange(const MCExpr *Expr, int64_t MinValue, int64_t MaxValue) {
119 const MCExpr *Disp;
121 const MCExpr *Imm;
129 const MCExpr *Imm;
130 const MCExpr *Sym;
136 const MCExpr *Imm;
141 void addExpr(MCInst &Inst, const MCExpr *Expr) const {
177 createImm(const MCExpr *Expr, SMLoc StartLoc, SMLoc EndLoc) {
185 const MCExpr *Disp, unsigned Index, const MCExpr *LengthImm,
185 const MCExpr *Disp, unsigned Index, const MCExpr *LengthImm,
201 createImmTLS(const MCExpr *Imm, const MCExpr *Sym,
201 createImmTLS(const MCExpr *Imm, const MCExpr *Sym,
237 const MCExpr *getImm() const {
421 const MCExpr *&Disp, const MCExpr *&Length);
421 const MCExpr *&Disp, const MCExpr *&Length);
637 static void printMCExpr(const MCExpr *E, raw_ostream &OS) {
778 const MCExpr *Register;
837 const MCExpr *&Disp,
838 const MCExpr *&Length) {
902 const MCExpr *Disp;
903 const MCExpr *Length;
1076 const MCExpr *Expr;
1216 const MCExpr *Expr;
1217 const MCExpr *Length;
1302 const MCExpr *Expr;
1317 const MCExpr *Base = MCSymbolRefExpr::create(Sym, MCSymbolRefExpr::VK_None,
1323 const MCExpr *Sym = nullptr;
lib/Target/SystemZ/MCTargetDesc/SystemZMCCodeEmitter.cpp 275 const MCExpr *Expr;
285 const MCExpr *OffsetExpr = MCConstantExpr::create(Offset, Ctx);
lib/Target/SystemZ/SystemZAsmPrinter.cpp 638 const MCExpr *Expr = Lower.getExpr(CalleeMO, MCSymbolRefExpr::VK_PLT);
673 const MCExpr *Expr =
lib/Target/SystemZ/SystemZMCInstLower.cpp 35 const MCExpr *
70 const MCExpr *Expr = MCSymbolRefExpr::create(Symbol, Kind, Ctx);
73 const MCExpr *OffsetExpr = MCConstantExpr::create(Offset, Ctx);
lib/Target/SystemZ/SystemZMCInstLower.h 38 const MCExpr *getExpr(const MachineOperand &MO,
lib/Target/TargetLoweringObjectFile.cpp 308 const MCExpr *TargetLoweringObjectFile::getTTypeGlobalReference(
317 const MCExpr *TargetLoweringObjectFile::
331 const MCExpr *PC = MCSymbolRefExpr::create(PCSym, getContext());
337 const MCExpr *TargetLoweringObjectFile::getDebugThreadLocalSymbol(const MCSymbol *Sym) const {
lib/Target/WebAssembly/AsmParser/WebAssemblyAsmParser.cpp 60 const MCExpr *Exp;
520 const MCExpr *Expr = MCSymbolRefExpr::create(
543 const MCExpr *Val;
748 const MCExpr *Val;
lib/Target/WebAssembly/Disassembler/WebAssemblyDisassembler.cpp 236 const MCExpr *Expr = MCSymbolRefExpr::create(
lib/Target/WebAssembly/MCTargetDesc/WebAssemblyTargetStreamer.cpp 97 void WebAssemblyTargetAsmStreamer::emitIndIdx(const MCExpr *Value) {
121 void WebAssemblyTargetWasmStreamer::emitIndIdx(const MCExpr *Value) {
lib/Target/WebAssembly/MCTargetDesc/WebAssemblyTargetStreamer.h 40 virtual void emitIndIdx(const MCExpr *Value) = 0;
66 void emitIndIdx(const MCExpr *Value) override;
81 void emitIndIdx(const MCExpr *Value) override;
99 void emitIndIdx(const MCExpr *) override {}
lib/Target/WebAssembly/MCTargetDesc/WebAssemblyWasmObjectWriter.cpp 46 static const MCSection *getFixupSection(const MCExpr *Expr) {
lib/Target/WebAssembly/WebAssemblyMCInstLower.cpp 146 const MCExpr *Expr = MCSymbolRefExpr::create(Sym, Kind, Ctx);
176 const MCExpr *Expr =
lib/Target/X86/AsmParser/X86AsmParser.cpp 347 const MCExpr *Sym;
366 const MCExpr *getSym() { return Sym; }
596 bool onIdentifierExpr(const MCExpr *SymRef, StringRef SymRefName,
842 bool ParseIntelInlineAsmIdentifier(const MCExpr *&Val, StringRef &Identifier,
847 const MCExpr *&Disp,
855 CreateMemForInlineAsm(unsigned SegReg, const MCExpr *Disp, unsigned BaseReg,
983 bool parsePrimaryExpr(const MCExpr *&Res, SMLoc &EndLoc) override;
1220 const MCExpr *Disp = MCConstantExpr::create(0, getContext());
1229 const MCExpr *Disp = MCConstantExpr::create(0, getContext());
1364 unsigned SegReg, const MCExpr *Disp, unsigned BaseReg, unsigned IndexReg,
1477 const MCExpr *Val;
1526 const MCExpr *Val =
1619 bool X86AsmParser::ParseIntelInlineAsmIdentifier(const MCExpr *&Val,
1695 const MCExpr *RndModeOp =
1749 const MCExpr *Val;
1798 const MCExpr *Val = nullptr;
1898 const MCExpr *Disp = SM.getSym();
1899 const MCExpr *ImmDisp = MCConstantExpr::create(Imm, getContext());
1966 const MCExpr *Val;
1988 const MCExpr *Expr = nullptr;
2151 const MCExpr *&Disp,
2237 const MCExpr *E;
2329 bool X86AsmParser::parsePrimaryExpr(const MCExpr *&Res, SMLoc &EndLoc) {
2622 const MCExpr *ImmOp = MCConstantExpr::create(ComparisonPredicate,
2663 const MCExpr *ImmOp = MCConstantExpr::create(ComparisonPredicate,
lib/Target/X86/AsmParser/X86Operand.h 54 const MCExpr *Val;
59 const MCExpr *Disp;
101 if (Val->getKind() == MCExpr::Constant) {
104 } else if (Val->getKind() == MCExpr::SymbolRef) {
168 const MCExpr *getImm() const {
173 const MCExpr *getMemDisp() const {
488 void addExpr(MCInst &Inst, const MCExpr *Expr) const {
615 static std::unique_ptr<X86Operand> CreateImm(const MCExpr *Val,
624 CreateMem(unsigned ModeSize, const MCExpr *Disp, SMLoc StartLoc, SMLoc EndLoc,
644 CreateMem(unsigned ModeSize, unsigned SegReg, const MCExpr *Disp,
lib/Target/X86/MCTargetDesc/X86MCAsmInfo.cpp 111 const MCExpr *
116 const MCExpr *Res =
118 const MCExpr *Four = MCConstantExpr::create(4, Context);
lib/Target/X86/MCTargetDesc/X86MCAsmInfo.h 33 const MCExpr *
lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp 254 StartsWithGlobalOffsetTable(const MCExpr *Expr) {
255 const MCExpr *RHS = nullptr;
256 if (Expr->getKind() == MCExpr::Binary) {
262 if (Expr->getKind() != MCExpr::SymbolRef)
269 if (RHS && RHS->getKind() == MCExpr::SymbolRef)
274 static bool HasSecRelSymbolRef(const MCExpr *Expr) {
275 if (Expr->getKind() == MCExpr::SymbolRef) {
302 const MCExpr *Expr = nullptr;
334 } else if (Expr->getKind() == MCExpr::SymbolRef) {
338 } else if (Expr->getKind() == MCExpr::Binary) {
lib/Target/X86/MCTargetDesc/X86MCExpr.h 61 bool isEqualTo(const MCExpr *X) const override {
72 static bool classof(const MCExpr *E) {
73 return E->getKind() == MCExpr::Target;
lib/Target/X86/MCTargetDesc/X86MachObjectWriter.cpp 252 const MCExpr *Value = Symbol->getVariableValue();
lib/Target/X86/X86ISelLowering.cpp 2218 const MCExpr *
2242 const MCExpr *X86TargetLowering::
lib/Target/X86/X86ISelLowering.h 712 const MCExpr *
720 const MCExpr *
lib/Target/X86/X86MCInstLower.cpp 195 const MCExpr *Expr = nullptr;
372 const MCExpr *MCE = Inst.getOperand(AddrOp).getExpr();
934 const MCExpr *Expr = MCSymbolRefExpr::create(
969 const MCExpr *Expr =
2018 const MCExpr *DotExpr = MCSymbolRefExpr::create(DotSym, OutContext);
2019 const MCExpr *PICBase =
lib/Target/X86/X86TargetObjectFile.cpp 25 const MCExpr *X86_64MachoTargetObjectFile::getTTypeGlobalReference(
33 const MCExpr *Res =
35 const MCExpr *Four = MCConstantExpr::create(4, getContext());
49 const MCExpr *X86_64MachoTargetObjectFile::getIndirectSymViaGOTPCRel(
56 const MCExpr *Res =
58 const MCExpr *Off = MCConstantExpr::create(FinalOff, getContext());
62 const MCExpr *X86ELFTargetObjectFile::getDebugThreadLocalSymbol(
lib/Target/X86/X86TargetObjectFile.h 21 const MCExpr *getTTypeGlobalReference(const GlobalValue *GV,
33 const MCExpr *getIndirectSymViaGOTPCRel(const GlobalValue *GV,
49 const MCExpr *getDebugThreadLocalSymbol(const MCSymbol *Sym) const override;
lib/Target/XCore/MCTargetDesc/XCoreInstPrinter.cpp 49 static void printExpr(const MCExpr *Expr, const MCAsmInfo *MAI,
tools/llvm-mca/CodeRegionGenerator.cpp 64 void EmitGPRel32Value(const MCExpr *Value) override {}
unittests/DebugInfo/DWARF/DwarfGenerator.cpp 56 void dwarfgen::DIE::addAttribute(uint16_t A, dwarf::Form Form, const MCExpr &Expr) {
131 const MCExpr *Expr =
unittests/DebugInfo/DWARF/DwarfGenerator.h 97 void addAttribute(uint16_t Attr, dwarf::Form Form, const MCExpr &Expr);
usr/include/c++/7.4.0/type_traits 381 : public __is_pointer_helper<typename remove_cv<_Tp>::type>::type
1554 { typedef _Tp type; };
1558 { typedef _Tp type; };
1563 { typedef _Tp type; };
1574 remove_const<typename remove_volatile<_Tp>::type>::type type;