|
clang 24.0.0git
|
#include "clang/CIR/Dialect/Builder/CIRBaseBuilder.h"
Classes | |
| struct | GetMethodResults |
Public Member Functions | |
| CIRBaseBuilderTy (mlir::MLIRContext &mlirContext) | |
| CIRBaseBuilderTy (mlir::OpBuilder &builder) | |
| mlir::FloatType | getBF16Type ()=delete |
| mlir::FloatType | getF16Type ()=delete |
| mlir::FloatType | getTF32Type ()=delete |
| mlir::FloatType | getF32Type ()=delete |
| mlir::FloatType | getF64Type ()=delete |
| mlir::FloatType | getF80Type ()=delete |
| mlir::FloatType | getF128Type ()=delete |
| mlir::Value | getConstAPInt (mlir::Location loc, mlir::Type typ, const llvm::APInt &val) |
| cir::ConstantOp | getConstant (mlir::Location loc, mlir::TypedAttr attr) |
| cir::ConstantOp | getConstantInt (mlir::Location loc, mlir::Type ty, int64_t value) |
| mlir::Value | getSignedInt (mlir::Location loc, int64_t val, unsigned numBits) |
| mlir::Value | getUnsignedInt (mlir::Location loc, uint64_t val, unsigned numBits) |
| cir::ConstantOp | getNullValue (mlir::Type ty, mlir::Location loc) |
| mlir::TypedAttr | getConstNullPtrAttr (mlir::Type t) |
| mlir::TypedAttr | getNullDataMemberAttr (cir::DataMemberType ty) |
| mlir::TypedAttr | getZeroInitAttr (mlir::Type ty) |
| cir::ConstantOp | getBool (bool state, mlir::Location loc) |
| cir::ConstantOp | getFalse (mlir::Location loc) |
| cir::ConstantOp | getTrue (mlir::Location loc) |
| cir::BoolType | getBoolTy () |
| cir::VoidType | getVoidTy () |
| cir::IntType | getUIntNTy (int n) |
| cir::IntType | getSIntNTy (int n) |
| cir::PointerType | getPointerTo (mlir::Type ty) |
| cir::PointerType | getPointerTo (mlir::Type ty, mlir::ptr::MemorySpaceAttrInterface as) |
| cir::PointerType | getPointerTo (mlir::Type ty, clang::LangAS langAS) |
| cir::PointerType | getVoidPtrTy (clang::LangAS langAS=clang::LangAS::Default) |
| cir::PointerType | getVoidPtrTy (mlir::ptr::MemorySpaceAttrInterface as) |
| cir::MethodAttr | getMethodAttr (cir::MethodType ty, cir::FuncOp methodFuncOp) |
| cir::MethodAttr | getNullMethodAttr (cir::MethodType ty) |
| cir::BoolAttr | getCIRBoolAttr (bool state) |
| cir::BoolAttr | getTrueAttr () |
| cir::BoolAttr | getFalseAttr () |
| void | setIsFPConstrained (bool isCon) |
| Enable/Disable use of constrained floating point math. | |
| bool | getIsFPConstrained () const |
| Query for the use of constrained floating point math. | |
| void | setDefaultConstrainedExcept (clang::LangOptions::FPExceptionModeKind newExcept) |
| Set the exception handling to be used with constrained floating point. | |
| clang::LangOptions::FPExceptionModeKind | getDefaultConstrainedExcept () const |
| Get the exception handling used with constrained floating point. | |
| void | setDefaultConstrainedRounding (llvm::RoundingMode newRounding) |
| Set the rounding mode handling to be used with constrained floating point. | |
| llvm::RoundingMode | getDefaultConstrainedRounding () const |
| Get the rounding mode handling used with constrained floating point. | |
| void | setFastMathFlags (cir::FastMathFlags flags) |
| Set the fast-math flags attached to floating-point operations. | |
| cir::FastMathFlags | getFastMathFlags () const |
| Get the fast-math flags attached to floating-point operations. | |
| cir::FastMathFlagsAttr | getFastMathFlagsAttr () |
| Returns a null attribute when no fast-math flags are set. | |
| cir::FenvAttr | getConstrainedFPAttr () |
| Build the #cir.fenv attribute describing the constrained floating-point environment currently in effect. | |
| mlir::Value | createComplexCreate (mlir::Location loc, mlir::Value real, mlir::Value imag) |
| mlir::Value | createComplexReal (mlir::Location loc, mlir::Value operand) |
| mlir::Value | createComplexImag (mlir::Location loc, mlir::Value operand) |
| mlir::Value | createComplexAdd (mlir::Location loc, mlir::Value lhs, mlir::Value rhs) |
| mlir::Value | createComplexSub (mlir::Location loc, mlir::Value lhs, mlir::Value rhs) |
| mlir::Value | createComplexMul (mlir::Location loc, mlir::Value lhs, mlir::Value rhs, cir::ComplexRangeKind rangeKind) |
| mlir::Value | createComplexDiv (mlir::Location loc, mlir::Value lhs, mlir::Value rhs, cir::ComplexRangeKind rangeKind) |
| mlir::Value | createComplexConj (mlir::Location loc, mlir::Value operand) |
| cir::LoadOp | createLoad (mlir::Location loc, mlir::Value ptr, bool isVolatile=false, uint64_t alignment=0, bool isNontemporal=false) |
| mlir::Value | createAlignedLoad (mlir::Location loc, mlir::Value ptr, uint64_t alignment) |
| mlir::Value | createNot (mlir::Location loc, mlir::Value value) |
| mlir::Value | createNot (mlir::Value value) |
| cir::DoWhileOp | createDoWhile (mlir::Location loc, llvm::function_ref< void(mlir::OpBuilder &, mlir::Location)> condBuilder, llvm::function_ref< void(mlir::OpBuilder &, mlir::Location)> bodyBuilder) |
| Create a do-while operation. | |
| cir::WhileOp | createWhile (mlir::Location loc, llvm::function_ref< void(mlir::OpBuilder &, mlir::Location)> condBuilder, llvm::function_ref< void(mlir::OpBuilder &, mlir::Location)> bodyBuilder) |
| Create a while operation. | |
| cir::WhileOp | createWhile (mlir::Location loc, llvm::function_ref< void(mlir::OpBuilder &, mlir::Location)> condBuilder, llvm::function_ref< void(mlir::OpBuilder &, mlir::Location)> bodyBuilder, llvm::function_ref< void(mlir::OpBuilder &, mlir::Location)> cleanupBuilder, cir::CleanupKind cleanupKind) |
| Create a while operation with a per-iteration cleanup region. | |
| cir::ForOp | createFor (mlir::Location loc, llvm::function_ref< void(mlir::OpBuilder &, mlir::Location)> condBuilder, llvm::function_ref< void(mlir::OpBuilder &, mlir::Location)> bodyBuilder, llvm::function_ref< void(mlir::OpBuilder &, mlir::Location)> stepBuilder) |
| Create a for operation. | |
| cir::ForOp | createFor (mlir::Location loc, llvm::function_ref< void(mlir::OpBuilder &, mlir::Location)> condBuilder, llvm::function_ref< void(mlir::OpBuilder &, mlir::Location)> bodyBuilder, llvm::function_ref< void(mlir::OpBuilder &, mlir::Location)> stepBuilder, llvm::function_ref< void(mlir::OpBuilder &, mlir::Location)> cleanupBuilder, cir::CleanupKind cleanupKind) |
| Create a for operation with a per-iteration cleanup region. | |
| cir::BreakOp | createBreak (mlir::Location loc) |
| Create a break operation. | |
| cir::ContinueOp | createContinue (mlir::Location loc) |
| Create a continue operation. | |
| mlir::Value | createInc (mlir::Location loc, mlir::Value input, bool nsw=false) |
| mlir::Value | createDec (mlir::Location loc, mlir::Value input, bool nsw=false) |
| mlir::Value | createMinus (mlir::Location loc, mlir::Value input, bool nsw=false) |
| mlir::TypedAttr | getConstPtrAttr (mlir::Type type, int64_t value) |
| mlir::Value | createAlloca (mlir::Location loc, cir::PointerType addrType, llvm::StringRef name, mlir::IntegerAttr alignment, mlir::Value dynAllocSize) |
| mlir::Value | createAlloca (mlir::Location loc, cir::PointerType addrType, mlir::Type type, llvm::StringRef name, clang::CharUnits alignment, mlir::Value dynAllocSize) |
| mlir::Value | createAlloca (mlir::Location loc, cir::PointerType addrType, llvm::StringRef name, mlir::IntegerAttr alignment) |
| mlir::Value | createAlloca (mlir::Location loc, cir::PointerType addrType, llvm::StringRef name, clang::CharUnits alignment) |
| cir::GlobalViewAttr | getGlobalViewAttr (cir::GlobalOp globalOp, mlir::ArrayAttr indices={}) |
| Get constant address of a global variable as an MLIR attribute. | |
| cir::GlobalViewAttr | getGlobalViewAttr (cir::PointerType type, cir::GlobalOp globalOp, mlir::ArrayAttr indices={}, bool addressPoint=false) |
| Get constant address of a global variable as an MLIR attribute. | |
| cir::GlobalViewAttr | getGlobalViewAttr (cir::PointerType type, cir::GlobalOp globalOp, llvm::ArrayRef< int64_t > indices, bool addressPoint=false) |
| Get constant address of a global variable as an MLIR attribute. | |
| cir::GetGlobalOp | createGetGlobal (mlir::Location loc, cir::GlobalOp global, bool threadLocal=false) |
| cir::GetGlobalOp | createGetGlobal (cir::GlobalOp global, bool threadLocal=false) |
| cir::CopyOp | createCopy (mlir::Value dst, mlir::Value src, bool isVolatile=false, bool skipTailPadding=false) |
| Create a copy with inferred length. | |
| cir::StoreOp | createStore (mlir::Location loc, mlir::Value val, mlir::Value dst, bool isVolatile=false, bool isNontemporal=false, mlir::IntegerAttr align={}, cir::SyncScopeKindAttr scope={}, cir::MemOrderAttr order={}) |
| cir::LoadOp | createFlagLoad (mlir::Location loc, mlir::Value addr) |
| Emit a load from an boolean flag variable. | |
| cir::StoreOp | createFlagStore (mlir::Location loc, bool val, mlir::Value dst) |
| cir::GlobalOp | createGlobal (mlir::ModuleOp mlirModule, mlir::Location loc, mlir::StringRef name, mlir::Type type, bool isConstant, cir::GlobalLinkageKind linkage, mlir::ptr::MemorySpaceAttrInterface addrSpace) |
| cir::GetMemberOp | createGetMember (mlir::Location loc, mlir::Type resultTy, mlir::Value base, llvm::StringRef name, unsigned index) |
| mlir::Value | createDummyValue (mlir::Location loc, mlir::Type type, clang::CharUnits alignment) |
| cir::PtrStrideOp | createPtrStride (mlir::Location loc, mlir::Value base, mlir::Value stride) |
| cir::CallOp | createCallOp (mlir::Location loc, mlir::SymbolRefAttr callee, mlir::Type returnType, mlir::ValueRange operands, llvm::ArrayRef< mlir::NamedAttribute > attrs={}, llvm::ArrayRef< mlir::NamedAttrList > argAttrs={}, llvm::ArrayRef< mlir::NamedAttribute > resAttrs={}, cir::CallingConv callingConv=cir::CallingConv::C) |
| cir::CallOp | createCallOp (mlir::Location loc, cir::FuncOp callee, mlir::ValueRange operands, llvm::ArrayRef< mlir::NamedAttribute > attrs={}, llvm::ArrayRef< mlir::NamedAttrList > argAttrs={}, llvm::ArrayRef< mlir::NamedAttribute > resAttrs={}, cir::CallingConv callingConv=cir::CallingConv::C) |
| cir::CallOp | createIndirectCallOp (mlir::Location loc, mlir::Value indirectTarget, cir::FuncType funcType, mlir::ValueRange operands, llvm::ArrayRef< mlir::NamedAttribute > attrs={}, llvm::ArrayRef< mlir::NamedAttrList > argAttrs={}, llvm::ArrayRef< mlir::NamedAttribute > resAttrs={}, cir::CallingConv callingConv=cir::CallingConv::C) |
| cir::CallOp | createCallOp (mlir::Location loc, mlir::SymbolRefAttr callee, mlir::ValueRange operands=mlir::ValueRange(), llvm::ArrayRef< mlir::NamedAttribute > attrs={}, llvm::ArrayRef< mlir::NamedAttrList > argAttrs={}, llvm::ArrayRef< mlir::NamedAttribute > resAttrs={}) |
| mlir::Value | createCast (mlir::Location loc, cir::CastKind kind, mlir::Value src, mlir::Type newTy) |
| mlir::Value | createCast (cir::CastKind kind, mlir::Value src, mlir::Type newTy) |
| mlir::Value | createBoolIntToIntCast (mlir::Value src, mlir::Type newTy) |
| mlir::Value | createIntCast (mlir::Value src, mlir::Type newTy) |
| mlir::Value | createBuiltinIntCast (mlir::Location loc, mlir::Value src, mlir::Type newTy) |
| mlir::Value | createBuiltinIntCast (mlir::Value src, mlir::Type newTy) |
| mlir::Value | createIntToPtr (mlir::Value src, mlir::Type newTy) |
| mlir::Value | createPtrToInt (mlir::Value src, mlir::Type newTy) |
| mlir::Value | createPtrToBoolCast (mlir::Value v) |
| mlir::Value | createBoolToInt (mlir::Value src, mlir::Type newTy) |
| mlir::Value | createBitcast (mlir::Value src, mlir::Type newTy) |
| mlir::Value | createBitcast (mlir::Location loc, mlir::Value src, mlir::Type newTy) |
| mlir::Value | createPtrBitcast (mlir::Value src, mlir::Type newPointeeTy) |
| mlir::Value | createPtrIsNull (mlir::Value ptr) |
| mlir::Value | createPtrIsNotNull (mlir::Value ptr) |
| mlir::Value | createAddrSpaceCast (mlir::Location loc, mlir::Value src, mlir::Type newTy) |
| mlir::Value | createAddrSpaceCast (mlir::Value src, mlir::Type newTy) |
| mlir::Value | createExtractElement (mlir::Location loc, mlir::Value vec, uint64_t idx) |
| mlir::Value | createInsertElement (mlir::Location loc, mlir::Value vec, mlir::Value newElt, uint64_t idx) |
| cir::SignBitOp | createSignBit (mlir::Location loc, mlir::Value val) |
| mlir::Value | createLowBitsSet (mlir::Location loc, unsigned size, unsigned bits) |
| mlir::Value | createAnd (mlir::Location loc, mlir::Value lhs, mlir::Value rhs) |
| mlir::Value | createOr (mlir::Location loc, mlir::Value lhs, mlir::Value rhs) |
| mlir::Value | createSelect (mlir::Location loc, mlir::Value condition, mlir::Value trueValue, mlir::Value falseValue) |
| mlir::Value | createLogicalAnd (mlir::Location loc, mlir::Value lhs, mlir::Value rhs) |
| mlir::Value | createLogicalOr (mlir::Location loc, mlir::Value lhs, mlir::Value rhs) |
| mlir::Value | createMul (mlir::Location loc, mlir::Value lhs, mlir::Value rhs, OverflowBehavior ob=OverflowBehavior::None) |
| mlir::Value | createNSWMul (mlir::Location loc, mlir::Value lhs, mlir::Value rhs) |
| mlir::Value | createNUWAMul (mlir::Location loc, mlir::Value lhs, mlir::Value rhs) |
| mlir::Value | createSub (mlir::Location loc, mlir::Value lhs, mlir::Value rhs, OverflowBehavior ob=OverflowBehavior::None) |
| mlir::Value | createNSWSub (mlir::Location loc, mlir::Value lhs, mlir::Value rhs) |
| mlir::Value | createNUWSub (mlir::Location loc, mlir::Value lhs, mlir::Value rhs) |
| mlir::Value | createAdd (mlir::Location loc, mlir::Value lhs, mlir::Value rhs, OverflowBehavior ob=OverflowBehavior::None) |
| mlir::Value | createNSWAdd (mlir::Location loc, mlir::Value lhs, mlir::Value rhs) |
| mlir::Value | createNUWAdd (mlir::Location loc, mlir::Value lhs, mlir::Value rhs) |
| mlir::Value | createDiv (mlir::Location loc, mlir::Value lhs, mlir::Value rhs) |
| mlir::Value | createRem (mlir::Location loc, mlir::Value lhs, mlir::Value rhs) |
| template<typename OpTy> | |
| mlir::Value | createFPBinOp (mlir::Location loc, mlir::Value lhs, mlir::Value rhs) |
| mlir::Value | createFAdd (mlir::Location loc, mlir::Value lhs, mlir::Value rhs) |
| mlir::Value | createFSub (mlir::Location loc, mlir::Value lhs, mlir::Value rhs) |
| mlir::Value | createFMul (mlir::Location loc, mlir::Value lhs, mlir::Value rhs) |
| mlir::Value | createFDiv (mlir::Location loc, mlir::Value lhs, mlir::Value rhs) |
| mlir::Value | createFRem (mlir::Location loc, mlir::Value lhs, mlir::Value rhs) |
| mlir::Value | createFNeg (mlir::Location loc, mlir::Value operand) |
| mlir::Value | createXor (mlir::Location loc, mlir::Value lhs, mlir::Value rhs) |
| mlir::Value | createMax (mlir::Location loc, mlir::Value lhs, mlir::Value rhs) |
| mlir::Value | createMin (mlir::Location loc, mlir::Value lhs, mlir::Value rhs) |
| cir::CmpOp | createCompare (mlir::Location loc, cir::CmpOpKind kind, mlir::Value lhs, mlir::Value rhs) |
| cir::VecCmpOp | createVecCompare (mlir::Location loc, cir::CmpOpKind kind, mlir::Value lhs, mlir::Value rhs) |
Compares lhs and rhs element-wise. | |
| cir::VecCmpOp | createVecCompare (mlir::Location loc, VectorType resultTy, cir::CmpOpKind kind, mlir::Value lhs, mlir::Value rhs) |
Compares lhs and rhs element-wise, producing resultTy, which must be a vector of integers or bools with as many elements as lhs. | |
| cir::VecFCmpOp | createVecFCompare (mlir::Location loc, cir::FCmpOpKind kind, mlir::Value lhs, mlir::Value rhs, bool signaling=false) |
Compares lhs and rhs element-wise. | |
| cir::VecFCmpOp | createVecFCompare (mlir::Location loc, VectorType resultTy, cir::FCmpOpKind kind, mlir::Value lhs, mlir::Value rhs, bool signaling=false) |
Compares lhs and rhs element-wise, producing resultTy, which must be a vector of integers or bools with as many elements as lhs. | |
| mlir::Value | createIsNaN (mlir::Location loc, mlir::Value operand) |
| mlir::Value | createShift (mlir::Location loc, mlir::Value lhs, mlir::Value rhs, bool isShiftLeft) |
| mlir::Value | createShift (mlir::Location loc, mlir::Value lhs, const llvm::APInt &rhs, bool isShiftLeft) |
| mlir::Value | createShift (mlir::Location loc, mlir::Value lhs, unsigned bits, bool isShiftLeft) |
| mlir::Value | createShiftLeft (mlir::Location loc, mlir::Value lhs, unsigned bits) |
| mlir::Value | createShiftRight (mlir::Location loc, mlir::Value lhs, unsigned bits) |
| mlir::Value | createShiftLeft (mlir::Location loc, mlir::Value lhs, mlir::Value rhs) |
| mlir::Value | createShiftRight (mlir::Location loc, mlir::Value lhs, mlir::Value rhs) |
| cir::FuncType | getVoidFnTy (mlir::TypeRange argTypes={}) |
| Returns void (T...) as a cir::FuncType. | |
| cir::PointerType | getVoidFnPtrTy (mlir::TypeRange argTypes={}) |
| Returns void (*)(T...) as a cir::PointerType. | |
| mlir::IntegerAttr | getAlignmentAttr (clang::CharUnits alignment) |
| mlir::IntegerAttr | getAlignmentAttr (llvm::Align alignment) |
| mlir::IntegerAttr | getAlignmentAttr (int64_t alignment) |
| cir::ConstantOp | getAlignment (mlir::Location loc, mlir::Type t, clang::CharUnits alignment) |
| mlir::IntegerAttr | getSizeFromCharUnits (clang::CharUnits size) |
| cir::ConstantOp | getNullPtr (mlir::Type ty, mlir::Location loc) |
| cir::ConditionOp | createCondition (mlir::Value condition) |
| Create a loop condition. | |
| cir::YieldOp | createYield (mlir::Location loc, mlir::ValueRange value={}) |
| Create a yield operation. | |
| GetMethodResults | createGetMethod (mlir::Location loc, mlir::Value method, mlir::Value objectPtr) |
Static Public Member Functions | |
| static unsigned | getCIRIntOrFloatBitWidth (mlir::Type eltTy) |
| static OpBuilder::InsertPoint | getBestAllocaInsertPoint (mlir::Block *block) |
Public Attributes | |
| bool | isFPConstrained = false |
| clang::LangOptions::FPExceptionModeKind | defaultConstrainedExcept |
| llvm::RoundingMode | defaultConstrainedRounding |
| cir::FastMathFlags | fastMathFlags = cir::FastMathFlags::none |
Definition at line 65 of file CIRBaseBuilder.h.
|
inline |
Definition at line 68 of file CIRBaseBuilder.h.
Referenced by clang::CIRGen::CIRGenBuilderTy::CIRGenBuilderTy().
|
inline |
Definition at line 70 of file CIRBaseBuilder.h.
|
inline |
Definition at line 891 of file CIRBaseBuilder.h.
References cir::None, cir::NoSignedWrap, cir::NoUnsignedWrap, cir::Saturated, and cir::testFlag().
Referenced by buildAlgebraicComplexDiv(), createNSWAdd(), createNUWAdd(), emitCommonNeonBuiltinExpr(), and emitStdcFirstBit().
|
inline |
Definition at line 787 of file CIRBaseBuilder.h.
References createCast().
Referenced by createAddrSpaceCast(), emitAMDGPUDispatchPtr(), and getCorrectedPtr().
|
inline |
Definition at line 792 of file CIRBaseBuilder.h.
References createAddrSpaceCast().
|
inline |
Definition at line 407 of file CIRBaseBuilder.h.
References createLoad().
|
inline |
Definition at line 520 of file CIRBaseBuilder.h.
References createAlloca(), and getAlignmentAttr().
|
inline |
Definition at line 515 of file CIRBaseBuilder.h.
|
inline |
Definition at line 500 of file CIRBaseBuilder.h.
Referenced by createAlloca(), createAlloca(), createDummyValue(), emitBuiltinAlloca(), lowerArrayDtorCtorIntoLoop(), and cir::CIRABIRewriteContext::rewriteVAArg().
|
inline |
Definition at line 507 of file CIRBaseBuilder.h.
References createAlloca(), and getAlignmentAttr().
|
inline |
Definition at line 830 of file CIRBaseBuilder.h.
Referenced by emitX86MaskedCompareResult(), and emitX86Muldq().
|
inline |
Definition at line 765 of file CIRBaseBuilder.h.
References createCast().
|
inline |
Definition at line 761 of file CIRBaseBuilder.h.
References createCast().
Referenced by clang::CIRGen::CIRGenBuilderTy::createElementBitCast(), createPtrBitcast(), emitAArch64CompareBuiltinExpr(), emitAMDGPUAtomicRMW(), emitAtomicIsLockFree(), emitBuiltinAlloca(), emitCommonNeonBuiltinExpr(), emitCommonNeonShift(), emitCommonNeonSISDBuiltinExpr(), emitDeclDestroy(), emitEncodeKey(), emitExactDynamicCast(), emitGlobalVarDeclLValue(), emitNeonCallToOp(), emitNeonRShiftImm(), emitVectorFCmp(), emitX86MaskAddLogic(), emitX86MaskedCompareResult(), emitX86MaskLogic(), emitX86MaskUnpack(), emitX86Muldq(), emitX86vpcom(), getCorrectedPtr(), getMaskVecValue(), getMaskZeroBitAsBool(), and performTypeAdjustment().
|
inline |
Definition at line 724 of file CIRBaseBuilder.h.
References createBoolToInt(), createIntCast(), and getBoolTy().
|
inline |
Definition at line 757 of file CIRBaseBuilder.h.
References createCast().
Referenced by createBoolIntToIntCast(), emitAMDGPUPredicate(), and emitBar0Reduction().
|
inline |
Create a break operation.
Definition at line 472 of file CIRBaseBuilder.h.
Referenced by emitAtomicCmpXchgFailureSet(), and emitAtomicOp().
|
inline |
Definition at line 736 of file CIRBaseBuilder.h.
Referenced by createBuiltinIntCast().
|
inline |
Definition at line 741 of file CIRBaseBuilder.h.
References createBuiltinIntCast().
|
inline |
Definition at line 671 of file CIRBaseBuilder.h.
|
inline |
Definition at line 640 of file CIRBaseBuilder.h.
Referenced by buildComplexBinOpLibCall(), emitAtomicIsLockFree(), emitCallLikeOp(), emitDeclDestroy(), and pushTemporaryCleanup().
|
inline |
Definition at line 696 of file CIRBaseBuilder.h.
|
inline |
Definition at line 716 of file CIRBaseBuilder.h.
References createCast(), and kind.
|
inline |
Definition at line 709 of file CIRBaseBuilder.h.
References kind.
Referenced by createAddrSpaceCast(), createBitcast(), createBitcast(), createBoolToInt(), createCast(), createIntCast(), createIntToPtr(), createPtrToBoolCast(), createPtrToInt(), emitAArch64CompareBuiltinExpr(), emitCommonNeonBuiltinExpr(), emitPointerArithmetic(), emitX86Aes(), emitX86Aeswide(), emitX86CvtF16ToFloatExpr(), emitX86SExtMask(), lowerComplexFDiv(), lowerComplexToComplexCast(), and lowerComplexToScalarCast().
|
inline |
Definition at line 968 of file CIRBaseBuilder.h.
References getConstrainedFPAttr(), and kind.
Referenced by buildRangeReductionComplexDiv(), createIsNaN(), createPtrIsNotNull(), createPtrIsNull(), emitAArch64CompareBuiltinExpr(), emitAMDGPUWorkGroupSize(), emitAMDGPUWorkGroupSizeV4(), emitAMDGPUWorkGroupSizeV5(), emitBar0Reduction(), emitBuiltinBitOpWithFallback(), emitCXXNewAllocSize(), emitExactDynamicCast(), emitLogbBuiltin(), emitStdcBitCeil(), emitStdcBitFloor(), emitStdcFirstBit(), and emitStdcHasSingleBit().
|
inline |
Definition at line 355 of file CIRBaseBuilder.h.
References getConstrainedFPAttr().
|
inline |
Definition at line 393 of file CIRBaseBuilder.h.
|
inline |
Definition at line 334 of file CIRBaseBuilder.h.
Referenced by buildAlgebraicComplexDiv(), buildRangeReductionComplexDiv(), lowerComplexFDiv(), lowerComplexFMul(), lowerComplexToComplexCast(), and lowerScalarToComplexCast().
|
inline |
Definition at line 384 of file CIRBaseBuilder.h.
|
inline |
Definition at line 348 of file CIRBaseBuilder.h.
Referenced by lowerComplexFDiv(), lowerComplexToComplexCast(), and lowerComplexToScalarCast().
|
inline |
Definition at line 375 of file CIRBaseBuilder.h.
|
inline |
Definition at line 341 of file CIRBaseBuilder.h.
Referenced by lowerComplexFDiv(), lowerComplexToComplexCast(), and lowerComplexToScalarCast().
|
inline |
Definition at line 365 of file CIRBaseBuilder.h.
References getConstrainedFPAttr().
|
inline |
Create a loop condition.
Definition at line 1154 of file CIRBaseBuilder.h.
References condition.
Referenced by lowerArrayDtorCtorIntoLoop().
|
inline |
Create a continue operation.
Definition at line 477 of file CIRBaseBuilder.h.
|
inline |
Create a copy with inferred length.
Definition at line 570 of file CIRBaseBuilder.h.
|
inline |
Definition at line 486 of file CIRBaseBuilder.h.
|
inline |
Definition at line 910 of file CIRBaseBuilder.h.
Referenced by buildAlgebraicComplexDiv().
|
inline |
Create a do-while operation.
Definition at line 421 of file CIRBaseBuilder.h.
Referenced by lowerArrayDtorCtorIntoLoop().
|
inline |
Definition at line 620 of file CIRBaseBuilder.h.
References createAlloca(), getAlignmentAttr(), and getPointerTo().
|
inline |
Definition at line 800 of file CIRBaseBuilder.h.
References getConstAPInt(), and getUIntNTy().
Referenced by emitX86Round(), and getMaskZeroBitAsBool().
|
inline |
Definition at line 926 of file CIRBaseBuilder.h.
References createFPBinOp().
Referenced by buildAlgebraicComplexDiv(), buildRangeReductionComplexDiv(), and lowerComplexFMul().
|
inline |
Definition at line 938 of file CIRBaseBuilder.h.
References createFPBinOp().
Referenced by buildAlgebraicComplexDiv(), and buildRangeReductionComplexDiv().
|
inline |
Emit a load from an boolean flag variable.
Definition at line 591 of file CIRBaseBuilder.h.
References createLoad(), createPtrBitcast(), and getBoolTy().
Referenced by emitCleanupBody().
|
inline |
Definition at line 598 of file CIRBaseBuilder.h.
References createStore(), and getBool().
Referenced by setupCleanupBlockDeactivation().
|
inline |
Definition at line 934 of file CIRBaseBuilder.h.
References createFPBinOp().
Referenced by buildAlgebraicComplexDiv(), buildRangeReductionComplexDiv(), and lowerComplexFMul().
|
inline |
Definition at line 946 of file CIRBaseBuilder.h.
References cir::MissingFeatures::fastMathFlags(), and cir::MissingFeatures::metaDataNode().
Referenced by buildFMulAdd().
|
inline |
Create a for operation.
Definition at line 449 of file CIRBaseBuilder.h.
|
inline |
Create a for operation with a per-iteration cleanup region.
Definition at line 459 of file CIRBaseBuilder.h.
|
inline |
Definition at line 919 of file CIRBaseBuilder.h.
References getConstrainedFPAttr(), getFastMathFlagsAttr(), and cir::MissingFeatures::metaDataNode().
Referenced by createFAdd(), createFDiv(), createFMul(), createFRem(), and createFSub().
|
inline |
Definition at line 942 of file CIRBaseBuilder.h.
References createFPBinOp().
|
inline |
Definition at line 930 of file CIRBaseBuilder.h.
References createFPBinOp().
Referenced by buildAlgebraicComplexDiv(), buildRangeReductionComplexDiv(), and lowerComplexFMul().
|
inline |
Definition at line 564 of file CIRBaseBuilder.h.
References createGetGlobal().
|
inline |
Definition at line 556 of file CIRBaseBuilder.h.
References getPointerTo().
Referenced by createGetGlobal(), createReferenceTemporary(), emitAMDGPUWorkGroupSize(), emitDeclDestroy(), and pushTemporaryCleanup().
|
inline |
Definition at line 614 of file CIRBaseBuilder.h.
|
inline |
Definition at line 1168 of file CIRBaseBuilder.h.
References cir::MissingFeatures::addressSpace(), getPointerTo(), and getVoidPtrTy().
|
inlinenodiscard |
Definition at line 604 of file CIRBaseBuilder.h.
|
inline |
Definition at line 481 of file CIRBaseBuilder.h.
|
inline |
Definition at line 683 of file CIRBaseBuilder.h.
Referenced by emitCallLikeOp().
|
inline |
Definition at line 807 of file CIRBaseBuilder.h.
References getConstAPInt(), and getUIntNTy().
Referenced by emitX86Round().
|
inline |
Definition at line 732 of file CIRBaseBuilder.h.
References createCast().
Referenced by createBoolIntToIntCast(), createBuiltinBitOp(), clang::CIRGen::CIRGenBuilderTy::createNeg(), emitAMDGPUWorkGroupSizeV4(), emitAMDGPUWorkGroupSizeV5(), emitAsmStores(), emitCommonNeonBuiltinExpr(), emitCXXNewAllocSize(), emitNeonMultiVecLoadLane(), emitNeonShiftVector(), emitStdcBitWidthMinus(), emitStdcCountOp(), emitStdcFirstBit(), emitX86FunnelShift(), and vecExtendIntValue().
|
inline |
Definition at line 745 of file CIRBaseBuilder.h.
References createCast().
Referenced by emitAsmStores(), emitFromInt(), and emitPointerArithmetic().
|
inline |
Definition at line 1047 of file CIRBaseBuilder.h.
References createCompare().
Referenced by lowerComplexFMul().
|
inline |
Definition at line 397 of file CIRBaseBuilder.h.
References getAlignmentAttr().
Referenced by createAlignedLoad(), and createFlagLoad().
|
inline |
Definition at line 846 of file CIRBaseBuilder.h.
References createSelect(), and getBool().
Referenced by lowerComplexFMul().
|
inline |
Definition at line 851 of file CIRBaseBuilder.h.
References createSelect(), and getBool().
Referenced by lowerComplexToScalarCast().
|
inline |
Definition at line 823 of file CIRBaseBuilder.h.
References getConstAPInt().
|
inline |
Definition at line 960 of file CIRBaseBuilder.h.
|
inline |
Definition at line 964 of file CIRBaseBuilder.h.
|
inline |
Definition at line 491 of file CIRBaseBuilder.h.
Referenced by clang::CIRGen::CIRGenBuilderTy::createNeg().
|
inline |
Definition at line 856 of file CIRBaseBuilder.h.
References cir::None, cir::NoSignedWrap, cir::NoUnsignedWrap, and cir::testFlag().
Referenced by buildAlgebraicComplexDiv(), createNSWMul(), createNUWAMul(), emitAMDGPUWorkGroupSizeV4(), emitCXXNewAllocSize(), emitPointerArithmetic(), and emitX86Muldq().
|
inline |
Definition at line 412 of file CIRBaseBuilder.h.
Referenced by createNot(), emitAtomicCmpXchg(), emitBinaryAtomicPost(), emitExactDynamicCast(), emitStdcCountOp(), emitStdcFirstBit(), and emitX86MaskLogic().
|
inline |
Definition at line 416 of file CIRBaseBuilder.h.
References createNot().
|
inline |
Definition at line 900 of file CIRBaseBuilder.h.
References createAdd(), and cir::NoSignedWrap.
Referenced by emitLogbBuiltin().
|
inline |
Definition at line 863 of file CIRBaseBuilder.h.
References createMul(), and cir::NoSignedWrap.
|
inline |
Definition at line 881 of file CIRBaseBuilder.h.
References createSub(), and cir::NoSignedWrap.
|
inline |
Definition at line 905 of file CIRBaseBuilder.h.
References createAdd(), and cir::NoUnsignedWrap.
|
inline |
Definition at line 867 of file CIRBaseBuilder.h.
References createMul(), and cir::NoUnsignedWrap.
Referenced by genVscaleTimesFactor().
|
inline |
Definition at line 886 of file CIRBaseBuilder.h.
References createSub(), and cir::NoUnsignedWrap.
|
inline |
Definition at line 834 of file CIRBaseBuilder.h.
Referenced by emitCXXNewAllocSize().
|
inline |
Definition at line 770 of file CIRBaseBuilder.h.
References createBitcast(), and getPointerTo().
Referenced by clang::CIRGen::CIRGenBuilderTy::createAlignedLoad(), createFlagLoad(), emitAddrOfZeroSizeField(), emitLibCallForAtomicExpr(), emitNeonMultiVecLoadCall(), emitPrefetch(), performTypeAdjustment(), and clang::CIRGen::Address::withElementType().
|
inline |
Definition at line 782 of file CIRBaseBuilder.h.
References createCompare(), and getNullPtr().
Referenced by performReturnAdjustment().
|
inline |
Definition at line 777 of file CIRBaseBuilder.h.
References createCompare(), and getNullPtr().
Referenced by emitCXXTypeidOperand().
|
inline |
Definition at line 631 of file CIRBaseBuilder.h.
Referenced by emitAddrOfZeroSizeField(), emitAMDGPUInvariantLoad(), and emitEncodeKey().
|
inline |
Definition at line 753 of file CIRBaseBuilder.h.
References createCast(), and getBoolTy().
|
inline |
Definition at line 749 of file CIRBaseBuilder.h.
References createCast().
Referenced by emitAsmStores(), and emitToInt().
|
inline |
Definition at line 914 of file CIRBaseBuilder.h.
|
inline |
Definition at line 838 of file CIRBaseBuilder.h.
References condition.
Referenced by createLogicalAnd(), createLogicalOr(), emitAMDGPUWorkGroupSize(), emitAMDGPUWorkGroupSizeV4(), emitAMDGPUWorkGroupSizeV5(), emitBuiltinBitOpWithFallback(), emitCXXNewAllocSize(), emitLogbBuiltin(), emitStdcBitCeil(), emitStdcBitFloor(), emitStdcFirstBit(), and emitX86ScalarSelect().
|
inline |
Definition at line 1057 of file CIRBaseBuilder.h.
References createShift(), and getConstAPInt().
|
inline |
Definition at line 1051 of file CIRBaseBuilder.h.
Referenced by createShift(), createShift(), createShiftLeft(), createShiftLeft(), createShiftRight(), createShiftRight(), and emitX86Muldq().
|
inline |
Definition at line 1063 of file CIRBaseBuilder.h.
References createShift().
|
inline |
Definition at line 1080 of file CIRBaseBuilder.h.
References createShift().
|
inline |
Definition at line 1070 of file CIRBaseBuilder.h.
References createShift().
Referenced by emitStdcBitCeil(), and emitStdcBitFloor().
|
inline |
Definition at line 1085 of file CIRBaseBuilder.h.
References createShift().
|
inline |
Definition at line 1075 of file CIRBaseBuilder.h.
References createShift().
Referenced by emitCommonNeonBuiltinExpr().
|
inline |
Definition at line 814 of file CIRBaseBuilder.h.
Referenced by emitSignBit().
|
inline |
Definition at line 578 of file CIRBaseBuilder.h.
Referenced by createFlagStore(), and lowerArrayDtorCtorIntoLoop().
|
inline |
Definition at line 872 of file CIRBaseBuilder.h.
References cir::None, cir::NoSignedWrap, cir::NoUnsignedWrap, cir::Saturated, and cir::testFlag().
Referenced by buildAlgebraicComplexDiv(), createNSWSub(), createNUWSub(), emitAMDGPUWorkGroupSizeV4(), emitCommonNeonBuiltinExpr(), emitStdcBitCeil(), emitStdcBitFloor(), and emitStdcBitWidthMinus().
|
inline |
Compares lhs and rhs element-wise.
Each result element is a signed integer of the operand element's bit width. That is not the result an FP80 element needs, so an FP80 compare names its result type with the overload below.
Definition at line 980 of file CIRBaseBuilder.h.
References createVecCompare(), getCIRIntOrFloatBitWidth(), getSIntNTy(), and kind.
Referenced by createVecCompare(), emitAArch64CompareBuiltinExpr(), and emitX86vpcom().
|
inline |
Compares lhs and rhs element-wise, producing resultTy, which must be a vector of integers or bools with as many elements as lhs.
The result element width can then differ from the operand element's bit width, as for FP80, whose result elements are 128 bits.
Definition at line 998 of file CIRBaseBuilder.h.
References getConstrainedFPAttr(), and kind.
|
inline |
Compares lhs and rhs element-wise.
Each result element is a signed integer of the operand element's bit width. That is not the result an FP80 element needs, so an FP80 compare names its result type with the overload below.
Definition at line 1016 of file CIRBaseBuilder.h.
References getCIRIntOrFloatBitWidth(), getConstrainedFPAttr(), getSIntNTy(), and kind.
Referenced by emitVectorFCmp().
|
inline |
Compares lhs and rhs element-wise, producing resultTy, which must be a vector of integers or bools with as many elements as lhs.
The result element width can then differ from the operand element's bit width, as for FP80, whose result elements are 128 bits.
Definition at line 1035 of file CIRBaseBuilder.h.
References getConstrainedFPAttr(), and kind.
|
inline |
Create a while operation.
Definition at line 429 of file CIRBaseBuilder.h.
|
inline |
Create a while operation with a per-iteration cleanup region.
Definition at line 437 of file CIRBaseBuilder.h.
|
inline |
Definition at line 956 of file CIRBaseBuilder.h.
Referenced by emitCommonNeonBuiltinExpr().
|
inline |
Create a yield operation.
Definition at line 1159 of file CIRBaseBuilder.h.
Referenced by buildRangeReductionComplexDiv(), closeConditionalCleanupScope(), emitAtomicCmpXchg(), emitAtomicCmpXchgFailureSet(), emitAtomicExprWithDynamicMemOrder(), emitAtomicOp(), emitCleanup(), emitCleanupBody(), emitExactDynamicCast(), emitX86Aes(), emitX86Aeswide(), lowerArrayDtorCtorIntoLoop(), lowerComplexFMul(), and performReturnAdjustment().
|
inline |
Definition at line 1138 of file CIRBaseBuilder.h.
References getConstantInt(), and clang::CharUnits::getQuantity().
|
inline |
Definition at line 1124 of file CIRBaseBuilder.h.
References getAlignmentAttr(), and clang::CharUnits::getQuantity().
Referenced by clang::CIRGen::CIRGenBuilderTy::createAlignedLoad(), createAlloca(), createAlloca(), createDummyValue(), createLoad(), clang::CIRGen::CIRGenBuilderTy::createLoad(), clang::CIRGen::CIRGenBuilderTy::createMemSet(), getAlignmentAttr(), getAlignmentAttr(), and lowerArrayDtorCtorIntoLoop().
|
inline |
Definition at line 1132 of file CIRBaseBuilder.h.
References int64_t.
|
inline |
Definition at line 1128 of file CIRBaseBuilder.h.
References getAlignmentAttr().
|
inlinestatic |
Definition at line 1104 of file CIRBaseBuilder.h.
Referenced by createReferenceTemporary(), and hoistAllocaOutOfCleanupScope().
|
delete |
|
inline |
Definition at line 164 of file CIRBaseBuilder.h.
References getCIRBoolAttr().
Referenced by createFlagStore(), createLogicalAnd(), createLogicalOr(), getFalse(), getTrue(), and setupCleanupBlockDeactivation().
|
inline |
Definition at line 170 of file CIRBaseBuilder.h.
Referenced by createBoolIntToIntCast(), createFlagLoad(), createPtrToBoolCast(), emitAMDGPUPredicate(), emitAtomicCmpXchg(), emitAtomicCmpXchgFailureSetCheckWeak(), emitAtomicIsLockFree(), emitBar0Reduction(), emitX86Aes(), emitX86Aeswide(), lowerComplexToScalarCast(), and setupCleanupBlockDeactivation().
|
inline |
Definition at line 224 of file CIRBaseBuilder.h.
Referenced by getBool(), getFalseAttr(), getTrueAttr(), and clang::CIRGen::ConstantEmitter::tryEmitPrivate().
|
inlinestatic |
Definition at line 177 of file CIRBaseBuilder.h.
Referenced by createVecCompare(), and createVecFCompare().
|
inline |
Definition at line 94 of file CIRBaseBuilder.h.
Referenced by clang::CIRGen::CIRGenBuilderTy::createMaskedLoad(), clang::CIRGen::CIRGenBuilderTy::createVecShuffle(), emitAtomicLockRelease(), emitCXXNewAllocSize(), clang::CIRGen::CIRGenFunction::emitDeclRefLValue(), emitLogbBuiltin(), emitNullBaseClassInitialization(), emitStoresForConstant(), emitX86Muldq(), getConstantInt(), getNullValue(), clang::CIRGen::CIRGenFunction::ConstantEmission::getReferenceLValue(), and vecExtendIntValue().
|
inline |
Definition at line 98 of file CIRBaseBuilder.h.
References getConstant(), and int64_t.
Referenced by emitAMDGPUWorkGroupSize(), emitCommonNeonBuiltinExpr(), emitNeonShiftVector(), getAlignment(), clang::CIRGen::CIRGenBuilderTy::getSInt32(), clang::CIRGen::CIRGenBuilderTy::getSInt64(), clang::CIRGen::CIRGenBuilderTy::getUInt32(), and clang::CIRGen::CIRGenBuilderTy::getUInt64().
|
inline |
Definition at line 89 of file CIRBaseBuilder.h.
Referenced by createExtractElement(), createInsertElement(), createLowBitsSet(), createShift(), emitX86MaskedCompare(), emitX86vpcom(), getSignedInt(), and getUnsignedInt().
|
inline |
Definition at line 120 of file CIRBaseBuilder.h.
References getConstPtrAttr().
Referenced by getZeroInitAttr().
|
inline |
Definition at line 496 of file CIRBaseBuilder.h.
References int64_t.
Referenced by getConstNullPtrAttr(), and getNullPtr().
|
inline |
Build the #cir.fenv attribute describing the constrained floating-point environment currently in effect.
This is attached to floating-point operations that support it to capture the rounding and exception behavior. Returns a null attribute when constrained floating-point is not enabled, in which case no attribute should be attached.
Definition at line 283 of file CIRBaseBuilder.h.
References defaultConstrainedExcept, defaultConstrainedRounding, clang::LangOptionsBase::FPE_Ignore, clang::LangOptionsBase::FPE_MayTrap, clang::LangOptionsBase::FPE_Strict, and isFPConstrained.
Referenced by createCompare(), createComplexAdd(), createComplexSub(), clang::CIRGen::CIRGenBuilderTy::createFloatingCast(), createFPBinOp(), createVecCompare(), createVecFCompare(), createVecFCompare(), emitBinaryMaybeConstrainedFPBuiltin(), emitNeonCallToOp(), emitTernaryMaybeConstrainedFPBuiltin(), emitUnaryMaybeConstrainedFPBuiltin(), emitUnaryMaybeConstrainedFPToIntBuiltin(), and emitX86Round().
|
inline |
Get the exception handling used with constrained floating point.
Definition at line 251 of file CIRBaseBuilder.h.
References defaultConstrainedExcept.
|
inline |
Get the rounding mode handling used with constrained floating point.
Definition at line 261 of file CIRBaseBuilder.h.
References defaultConstrainedRounding.
|
delete |
|
delete |
|
delete |
|
delete |
|
delete |
|
inline |
Definition at line 167 of file CIRBaseBuilder.h.
References getBool().
|
inline |
Definition at line 229 of file CIRBaseBuilder.h.
References getCIRBoolAttr().
Referenced by getZeroInitAttr().
|
inline |
Get the fast-math flags attached to floating-point operations.
Definition at line 269 of file CIRBaseBuilder.h.
References fastMathFlags.
|
inline |
Returns a null attribute when no fast-math flags are set.
Definition at line 272 of file CIRBaseBuilder.h.
References fastMathFlags.
Referenced by createFPBinOp().
|
inline |
Get constant address of a global variable as an MLIR attribute.
This wrapper infers the attribute type through the global op.
Definition at line 528 of file CIRBaseBuilder.h.
Referenced by createNewGlobalView(), clang::CIRGen::CIRGenVTables::emitVTTDefinition(), getGlobalViewAttr(), and tryEmitGlobalCompoundLiteral().
|
inline |
Get constant address of a global variable as an MLIR attribute.
This overload converts raw int64_t indices to an ArrayAttr.
Definition at line 545 of file CIRBaseBuilder.h.
References getGlobalViewAttr(), and int64_t.
|
inline |
Get constant address of a global variable as an MLIR attribute.
Definition at line 535 of file CIRBaseBuilder.h.
|
inline |
Query for the use of constrained floating point math.
Definition at line 242 of file CIRBaseBuilder.h.
References isFPConstrained.
Referenced by emitBinaryExpMaybeConstrainedFPBuiltin(), and emitX86Round().
|
inline |
Definition at line 215 of file CIRBaseBuilder.h.
|
inline |
Definition at line 125 of file CIRBaseBuilder.h.
Referenced by getZeroInitAttr().
|
inline |
Definition at line 220 of file CIRBaseBuilder.h.
Referenced by getZeroInitAttr().
|
inline |
Definition at line 1148 of file CIRBaseBuilder.h.
References getConstPtrAttr(), and cir::MissingFeatures::targetCodeGenInfoGetNullPointer().
Referenced by createPtrIsNotNull(), createPtrIsNull(), emitAtomicIsLockFree(), emitDynamicCastToNull(), emitExactDynamicCast(), emitSuspendLValue(), clang::CIRGen::TargetCIRGenInfo::getNullPointer(), and performReturnAdjustment().
|
inline |
Definition at line 116 of file CIRBaseBuilder.h.
References getConstant(), and getZeroInitAttr().
Referenced by emitAArch64CompareBuiltinExpr(), emitBar0Reduction(), emitBuiltinBitOpWithFallback(), emitStdcBitFloor(), emitStdcFirstBit(), emitX86Aes(), emitX86Aeswide(), emitX86ConvertToMask(), emitX86MaskedCompare(), emitX86MaskedCompareResult(), emitX86vpcom(), and lowerScalarToComplexCast().
|
inline |
Definition at line 189 of file CIRBaseBuilder.h.
Referenced by clang::CIRGen::CIRGenBuilderTy::createBaseClassAddr(), clang::CIRGen::CIRGenBuilderTy::createComplexImagPtr(), clang::CIRGen::CIRGenBuilderTy::createComplexRealPtr(), clang::CIRGen::CIRGenBuilderTy::createDerivedClassAddr(), createDummyValue(), clang::CIRGen::CIRGenBuilderTy::createElementBitCast(), createGetGlobal(), clang::CIRGen::CIRGenBuilderTy::createGetIndirectMember(), clang::CIRGen::CIRGenBuilderTy::createGetMember(), createGetMethod(), createPtrBitcast(), emitExactDynamicCast(), emitSuspendLValue(), clang::CIRGen::CIRGenModule::getAddrOfConstantStringFromLiteral(), clang::CIRGen::CIRGenBuilderTy::getArrayElement(), getPointerTo(), clang::CIRGen::CIRGenBuilderTy::getPtrToVPtrType(), getVoidPtrTy(), getVoidPtrTy(), lowerArrayDtorCtorIntoLoop(), clang::CIRGen::CIRGenBuilderTy::maybeBuildArrayDecay(), cir::CIRCXXABI::readArrayCookie(), and cir::CIRABIRewriteContext::rewriteVAArg().
|
inline |
Definition at line 198 of file CIRBaseBuilder.h.
References clang::Default, getPointerTo(), and cir::toCIRAddressSpaceAttr().
|
inline |
Definition at line 193 of file CIRBaseBuilder.h.
|
inline |
Definition at line 103 of file CIRBaseBuilder.h.
References getConstAPInt(), and int64_t.
Referenced by lowerArrayDtorCtorIntoLoop().
|
inline |
Definition at line 185 of file CIRBaseBuilder.h.
Referenced by createVecCompare(), createVecFCompare(), and cir::CIRCXXABI::readArrayCookie().
|
inline |
Definition at line 1143 of file CIRBaseBuilder.h.
References clang::CharUnits::getQuantity().
|
delete |
|
inline |
Definition at line 168 of file CIRBaseBuilder.h.
References getBool().
|
inline |
Definition at line 228 of file CIRBaseBuilder.h.
References getCIRBoolAttr().
|
inline |
Definition at line 173 of file CIRBaseBuilder.h.
Referenced by createExtractElement(), createInsertElement(), cir::CIRCXXABI::readArrayCookie(), and cir::CIRABIRewriteContext::rewriteVAArg().
|
inline |
Definition at line 109 of file CIRBaseBuilder.h.
References getConstAPInt().
Referenced by lowerArrayDtorCtorIntoLoop().
|
inline |
Returns void (*)(T...) as a cir::PointerType.
Definition at line 1096 of file CIRBaseBuilder.h.
|
inline |
Returns void (T...) as a cir::FuncType.
Definition at line 1091 of file CIRBaseBuilder.h.
|
inline |
Definition at line 207 of file CIRBaseBuilder.h.
References clang::Default, and getPointerTo().
Referenced by clang::CIRGen::CIRGenBuilderTy::createDynCastToVoid(), createGetMethod(), emitAMDGPUConstantPtrIntrinsic(), emitAtomicIsLockFree(), emitBuiltinAlloca(), emitCommonNeonBuiltinExpr(), emitNeonMultiVecLoad(), emitNeonMultiVecLoadLane(), emitUsed(), getItaniumDynamicCastFn(), initCatchParam(), and cir::CIRCXXABI::readArrayCookie().
|
inline |
Definition at line 211 of file CIRBaseBuilder.h.
References getPointerTo().
|
inline |
Definition at line 171 of file CIRBaseBuilder.h.
|
inline |
Definition at line 129 of file CIRBaseBuilder.h.
References getConstNullPtrAttr(), getFalseAttr(), getNullDataMemberAttr(), getNullMethodAttr(), and getZeroInitAttr().
Referenced by collectStoredInitializers(), emitAtomicLockRelease(), emitNullConstant(), emitNullConstantForBase(), getNullValue(), getZeroInitAttr(), and clang::CIRGen::ConstantEmitter::tryEmitPrivate().
|
inline |
Set the exception handling to be used with constrained floating point.
Definition at line 245 of file CIRBaseBuilder.h.
References defaultConstrainedExcept.
Referenced by emitX86Round().
|
inline |
Set the rounding mode handling to be used with constrained floating point.
Definition at line 256 of file CIRBaseBuilder.h.
References defaultConstrainedRounding.
|
inline |
Set the fast-math flags attached to floating-point operations.
Definition at line 266 of file CIRBaseBuilder.h.
References fastMathFlags.
|
inline |
Enable/Disable use of constrained floating point math.
When enabled the CreateF<op>() calls instead create constrained floating point intrinsic calls. Fast math flags are unaffected by this setting.
Definition at line 239 of file CIRBaseBuilder.h.
References isFPConstrained.
| clang::LangOptions::FPExceptionModeKind cir::CIRBaseBuilderTy::defaultConstrainedExcept |
Definition at line 83 of file CIRBaseBuilder.h.
Referenced by getConstrainedFPAttr(), getDefaultConstrainedExcept(), and setDefaultConstrainedExcept().
| llvm::RoundingMode cir::CIRBaseBuilderTy::defaultConstrainedRounding |
Definition at line 85 of file CIRBaseBuilder.h.
Referenced by getConstrainedFPAttr(), getDefaultConstrainedRounding(), and setDefaultConstrainedRounding().
| cir::FastMathFlags cir::CIRBaseBuilderTy::fastMathFlags = cir::FastMathFlags::none |
Definition at line 87 of file CIRBaseBuilder.h.
Referenced by getFastMathFlags(), getFastMathFlagsAttr(), and setFastMathFlags().
Definition at line 82 of file CIRBaseBuilder.h.
Referenced by getConstrainedFPAttr(), getIsFPConstrained(), and setIsFPConstrained().