|
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::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. | |
| 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 881 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 777 of file CIRBaseBuilder.h.
References createCast().
Referenced by createAddrSpaceCast(), emitAMDGPUDispatchPtr(), and getCorrectedPtr().
|
inline |
Definition at line 782 of file CIRBaseBuilder.h.
References createAddrSpaceCast().
|
inline |
Definition at line 397 of file CIRBaseBuilder.h.
References createLoad().
|
inline |
Definition at line 510 of file CIRBaseBuilder.h.
References createAlloca(), and getAlignmentAttr().
|
inline |
Definition at line 505 of file CIRBaseBuilder.h.
|
inline |
Definition at line 490 of file CIRBaseBuilder.h.
Referenced by createAlloca(), createAlloca(), createDummyValue(), emitBuiltinAlloca(), lowerArrayDtorCtorIntoLoop(), and cir::CIRABIRewriteContext::rewriteVAArg().
|
inline |
Definition at line 497 of file CIRBaseBuilder.h.
References createAlloca(), and getAlignmentAttr().
|
inline |
Definition at line 820 of file CIRBaseBuilder.h.
Referenced by emitX86MaskedCompareResult(), and emitX86Muldq().
|
inline |
Definition at line 755 of file CIRBaseBuilder.h.
References createCast().
|
inline |
Definition at line 751 of file CIRBaseBuilder.h.
References createCast().
Referenced by clang::CIRGen::CIRGenBuilderTy::createElementBitCast(), createPtrBitcast(), emitAArch64CompareBuiltinExpr(), 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 714 of file CIRBaseBuilder.h.
References createBoolToInt(), createIntCast(), and getBoolTy().
|
inline |
Definition at line 747 of file CIRBaseBuilder.h.
References createCast().
Referenced by createBoolIntToIntCast(), and emitBar0Reduction().
|
inline |
Create a break operation.
Definition at line 462 of file CIRBaseBuilder.h.
Referenced by emitAtomicCmpXchgFailureSet(), and emitAtomicOp().
|
inline |
Definition at line 726 of file CIRBaseBuilder.h.
Referenced by createBuiltinIntCast().
|
inline |
Definition at line 731 of file CIRBaseBuilder.h.
References createBuiltinIntCast().
|
inline |
Definition at line 661 of file CIRBaseBuilder.h.
|
inline |
Definition at line 630 of file CIRBaseBuilder.h.
Referenced by buildComplexBinOpLibCall(), emitAtomicIsLockFree(), emitCallLikeOp(), emitDeclDestroy(), and pushTemporaryCleanup().
|
inline |
Definition at line 686 of file CIRBaseBuilder.h.
|
inline |
Definition at line 706 of file CIRBaseBuilder.h.
References createCast(), and kind.
|
inline |
Definition at line 699 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 958 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 345 of file CIRBaseBuilder.h.
References getConstrainedFPAttr().
|
inline |
Definition at line 383 of file CIRBaseBuilder.h.
|
inline |
Definition at line 324 of file CIRBaseBuilder.h.
Referenced by buildAlgebraicComplexDiv(), buildRangeReductionComplexDiv(), lowerComplexFDiv(), lowerComplexFMul(), lowerComplexToComplexCast(), and lowerScalarToComplexCast().
|
inline |
Definition at line 374 of file CIRBaseBuilder.h.
|
inline |
Definition at line 338 of file CIRBaseBuilder.h.
Referenced by lowerComplexFDiv(), lowerComplexToComplexCast(), and lowerComplexToScalarCast().
|
inline |
Definition at line 365 of file CIRBaseBuilder.h.
|
inline |
Definition at line 331 of file CIRBaseBuilder.h.
Referenced by lowerComplexFDiv(), lowerComplexToComplexCast(), and lowerComplexToScalarCast().
|
inline |
Definition at line 355 of file CIRBaseBuilder.h.
References getConstrainedFPAttr().
|
inline |
Create a loop condition.
Definition at line 1109 of file CIRBaseBuilder.h.
References condition.
Referenced by lowerArrayDtorCtorIntoLoop().
|
inline |
Create a continue operation.
Definition at line 467 of file CIRBaseBuilder.h.
|
inline |
Create a copy with inferred length.
Definition at line 560 of file CIRBaseBuilder.h.
|
inline |
Definition at line 476 of file CIRBaseBuilder.h.
|
inline |
Definition at line 900 of file CIRBaseBuilder.h.
Referenced by buildAlgebraicComplexDiv().
|
inline |
Create a do-while operation.
Definition at line 411 of file CIRBaseBuilder.h.
Referenced by lowerArrayDtorCtorIntoLoop().
|
inline |
Definition at line 610 of file CIRBaseBuilder.h.
References createAlloca(), getAlignmentAttr(), and getPointerTo().
|
inline |
Definition at line 790 of file CIRBaseBuilder.h.
References getConstAPInt(), and getUIntNTy().
Referenced by emitX86Round(), and getMaskZeroBitAsBool().
|
inline |
Definition at line 916 of file CIRBaseBuilder.h.
References createFPBinOp().
Referenced by buildAlgebraicComplexDiv(), buildRangeReductionComplexDiv(), and lowerComplexFMul().
|
inline |
Definition at line 928 of file CIRBaseBuilder.h.
References createFPBinOp().
Referenced by buildAlgebraicComplexDiv(), and buildRangeReductionComplexDiv().
|
inline |
Emit a load from an boolean flag variable.
Definition at line 581 of file CIRBaseBuilder.h.
References createLoad(), createPtrBitcast(), and getBoolTy().
Referenced by emitCleanupBody().
|
inline |
Definition at line 588 of file CIRBaseBuilder.h.
References createStore(), and getBool().
Referenced by setupCleanupBlockDeactivation().
|
inline |
Definition at line 924 of file CIRBaseBuilder.h.
References createFPBinOp().
Referenced by buildAlgebraicComplexDiv(), buildRangeReductionComplexDiv(), and lowerComplexFMul().
|
inline |
Definition at line 936 of file CIRBaseBuilder.h.
References cir::MissingFeatures::fastMathFlags(), and cir::MissingFeatures::metaDataNode().
Referenced by buildFMulAdd().
|
inline |
Create a for operation.
Definition at line 439 of file CIRBaseBuilder.h.
|
inline |
Create a for operation with a per-iteration cleanup region.
Definition at line 449 of file CIRBaseBuilder.h.
|
inline |
Definition at line 909 of file CIRBaseBuilder.h.
References getConstrainedFPAttr(), getFastMathFlagsAttr(), and cir::MissingFeatures::metaDataNode().
Referenced by createFAdd(), createFDiv(), createFMul(), createFRem(), and createFSub().
|
inline |
Definition at line 932 of file CIRBaseBuilder.h.
References createFPBinOp().
|
inline |
Definition at line 920 of file CIRBaseBuilder.h.
References createFPBinOp().
Referenced by buildAlgebraicComplexDiv(), buildRangeReductionComplexDiv(), and lowerComplexFMul().
|
inline |
Definition at line 554 of file CIRBaseBuilder.h.
References createGetGlobal().
|
inline |
Definition at line 546 of file CIRBaseBuilder.h.
References getPointerTo().
Referenced by createGetGlobal(), createReferenceTemporary(), emitAMDGPUWorkGroupSize(), emitDeclDestroy(), and pushTemporaryCleanup().
|
inline |
Definition at line 604 of file CIRBaseBuilder.h.
|
inline |
Definition at line 1123 of file CIRBaseBuilder.h.
References cir::MissingFeatures::addressSpace(), getPointerTo(), and getVoidPtrTy().
|
inlinenodiscard |
Definition at line 594 of file CIRBaseBuilder.h.
|
inline |
Definition at line 471 of file CIRBaseBuilder.h.
|
inline |
Definition at line 673 of file CIRBaseBuilder.h.
Referenced by emitCallLikeOp().
|
inline |
Definition at line 797 of file CIRBaseBuilder.h.
References getConstAPInt(), and getUIntNTy().
Referenced by emitX86Round().
|
inline |
Definition at line 722 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 735 of file CIRBaseBuilder.h.
References createCast().
Referenced by emitAsmStores(), emitFromInt(), and emitPointerArithmetic().
|
inline |
Definition at line 1002 of file CIRBaseBuilder.h.
References createCompare().
Referenced by lowerComplexFMul().
|
inline |
Definition at line 387 of file CIRBaseBuilder.h.
References getAlignmentAttr().
Referenced by createAlignedLoad(), and createFlagLoad().
|
inline |
Definition at line 836 of file CIRBaseBuilder.h.
References createSelect(), and getBool().
Referenced by lowerComplexFMul().
|
inline |
Definition at line 841 of file CIRBaseBuilder.h.
References createSelect(), and getBool().
Referenced by lowerComplexToScalarCast().
|
inline |
Definition at line 813 of file CIRBaseBuilder.h.
References getConstAPInt().
|
inline |
Definition at line 950 of file CIRBaseBuilder.h.
|
inline |
Definition at line 954 of file CIRBaseBuilder.h.
|
inline |
Definition at line 481 of file CIRBaseBuilder.h.
Referenced by clang::CIRGen::CIRGenBuilderTy::createNeg().
|
inline |
Definition at line 846 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 402 of file CIRBaseBuilder.h.
Referenced by createNot(), emitAtomicCmpXchg(), emitBinaryAtomicPost(), emitExactDynamicCast(), emitStdcCountOp(), emitStdcFirstBit(), emitVectorFCmp(), and emitX86MaskLogic().
|
inline |
Definition at line 406 of file CIRBaseBuilder.h.
References createNot().
|
inline |
Definition at line 890 of file CIRBaseBuilder.h.
References createAdd(), and cir::NoSignedWrap.
Referenced by emitLogbBuiltin().
|
inline |
Definition at line 853 of file CIRBaseBuilder.h.
References createMul(), and cir::NoSignedWrap.
|
inline |
Definition at line 871 of file CIRBaseBuilder.h.
References createSub(), and cir::NoSignedWrap.
|
inline |
Definition at line 895 of file CIRBaseBuilder.h.
References createAdd(), and cir::NoUnsignedWrap.
|
inline |
Definition at line 857 of file CIRBaseBuilder.h.
References createMul(), and cir::NoUnsignedWrap.
Referenced by genVscaleTimesFactor().
|
inline |
Definition at line 876 of file CIRBaseBuilder.h.
References createSub(), and cir::NoUnsignedWrap.
|
inline |
Definition at line 824 of file CIRBaseBuilder.h.
Referenced by emitCXXNewAllocSize().
|
inline |
Definition at line 760 of file CIRBaseBuilder.h.
References createBitcast(), and getPointerTo().
Referenced by clang::CIRGen::CIRGenBuilderTy::createAlignedLoad(), createFlagLoad(), emitAddrOfZeroSizeField(), emitLibCallForAtomicExpr(), emitNeonMultiVecLoadCall(), emitPrefetch(), and clang::CIRGen::Address::withElementType().
|
inline |
Definition at line 772 of file CIRBaseBuilder.h.
References createCompare(), and getNullPtr().
Referenced by performReturnAdjustment().
|
inline |
Definition at line 767 of file CIRBaseBuilder.h.
References createCompare(), and getNullPtr().
Referenced by emitCXXTypeidOperand().
|
inline |
Definition at line 621 of file CIRBaseBuilder.h.
Referenced by emitAddrOfZeroSizeField(), emitAMDGPUInvariantLoad(), and emitEncodeKey().
|
inline |
Definition at line 743 of file CIRBaseBuilder.h.
References createCast(), and getBoolTy().
|
inline |
Definition at line 739 of file CIRBaseBuilder.h.
References createCast().
Referenced by emitAsmStores(), and emitToInt().
|
inline |
Definition at line 904 of file CIRBaseBuilder.h.
|
inline |
Definition at line 828 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 1012 of file CIRBaseBuilder.h.
References createShift(), and getConstAPInt().
|
inline |
Definition at line 1006 of file CIRBaseBuilder.h.
Referenced by createShift(), createShift(), createShiftLeft(), createShiftLeft(), createShiftRight(), createShiftRight(), and emitX86Muldq().
|
inline |
Definition at line 1018 of file CIRBaseBuilder.h.
References createShift().
|
inline |
Definition at line 1035 of file CIRBaseBuilder.h.
References createShift().
|
inline |
Definition at line 1025 of file CIRBaseBuilder.h.
References createShift().
Referenced by emitStdcBitCeil(), and emitStdcBitFloor().
|
inline |
Definition at line 1040 of file CIRBaseBuilder.h.
References createShift().
|
inline |
Definition at line 1030 of file CIRBaseBuilder.h.
References createShift().
Referenced by emitCommonNeonBuiltinExpr().
|
inline |
Definition at line 804 of file CIRBaseBuilder.h.
Referenced by emitSignBit().
|
inline |
Definition at line 568 of file CIRBaseBuilder.h.
Referenced by createFlagStore(), and lowerArrayDtorCtorIntoLoop().
|
inline |
Definition at line 862 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 970 of file CIRBaseBuilder.h.
References createVecCompare(), getCIRIntOrFloatBitWidth(), getSIntNTy(), and kind.
Referenced by createVecCompare(), emitAArch64CompareBuiltinExpr(), emitVectorFCmp(), 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 988 of file CIRBaseBuilder.h.
References getConstrainedFPAttr(), and kind.
|
inline |
Create a while operation.
Definition at line 419 of file CIRBaseBuilder.h.
|
inline |
Create a while operation with a per-iteration cleanup region.
Definition at line 427 of file CIRBaseBuilder.h.
|
inline |
Definition at line 946 of file CIRBaseBuilder.h.
Referenced by emitCommonNeonBuiltinExpr().
|
inline |
Create a yield operation.
Definition at line 1114 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 1093 of file CIRBaseBuilder.h.
References getConstantInt(), and clang::CharUnits::getQuantity().
|
inline |
Definition at line 1079 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 1087 of file CIRBaseBuilder.h.
|
inline |
Definition at line 1083 of file CIRBaseBuilder.h.
References getAlignmentAttr().
|
inlinestatic |
Definition at line 1059 of file CIRBaseBuilder.h.
Referenced by createReferenceTemporary(), and hoistAllocaOutOfCleanupScope().
|
inline |
Definition at line 154 of file CIRBaseBuilder.h.
References getCIRBoolAttr().
Referenced by createFlagStore(), createLogicalAnd(), createLogicalOr(), getFalse(), getTrue(), and setupCleanupBlockDeactivation().
|
inline |
Definition at line 160 of file CIRBaseBuilder.h.
Referenced by createBoolIntToIntCast(), createFlagLoad(), createPtrToBoolCast(), emitAtomicCmpXchg(), emitAtomicCmpXchgFailureSetCheckWeak(), emitAtomicIsLockFree(), emitBar0Reduction(), emitX86Aes(), emitX86Aeswide(), lowerComplexToScalarCast(), and setupCleanupBlockDeactivation().
|
inline |
Definition at line 214 of file CIRBaseBuilder.h.
Referenced by getBool(), getFalseAttr(), getTrueAttr(), and clang::CIRGen::ConstantEmitter::tryEmitPrivate().
|
inlinestatic |
Definition at line 167 of file CIRBaseBuilder.h.
Referenced by createVecCompare().
|
inline |
Definition at line 84 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 88 of file CIRBaseBuilder.h.
References getConstant().
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 79 of file CIRBaseBuilder.h.
Referenced by createExtractElement(), createInsertElement(), createLowBitsSet(), createShift(), emitX86MaskedCompare(), emitX86vpcom(), getSignedInt(), and getUnsignedInt().
|
inline |
Definition at line 110 of file CIRBaseBuilder.h.
References getConstPtrAttr().
Referenced by getZeroInitAttr().
|
inline |
Definition at line 486 of file CIRBaseBuilder.h.
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 273 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(), emitBinaryMaybeConstrainedFPBuiltin(), emitNeonCallToOp(), emitTernaryMaybeConstrainedFPBuiltin(), emitUnaryMaybeConstrainedFPBuiltin(), emitUnaryMaybeConstrainedFPToIntBuiltin(), and emitX86Round().
|
inline |
Get the exception handling used with constrained floating point.
Definition at line 241 of file CIRBaseBuilder.h.
References defaultConstrainedExcept.
|
inline |
Get the rounding mode handling used with constrained floating point.
Definition at line 251 of file CIRBaseBuilder.h.
References defaultConstrainedRounding.
|
inline |
Definition at line 157 of file CIRBaseBuilder.h.
References getBool().
|
inline |
Definition at line 219 of file CIRBaseBuilder.h.
References getCIRBoolAttr().
Referenced by getZeroInitAttr().
|
inline |
Get the fast-math flags attached to floating-point operations.
Definition at line 259 of file CIRBaseBuilder.h.
References fastMathFlags.
|
inline |
Returns a null attribute when no fast-math flags are set.
Definition at line 262 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 518 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 535 of file CIRBaseBuilder.h.
References getGlobalViewAttr().
|
inline |
Get constant address of a global variable as an MLIR attribute.
Definition at line 525 of file CIRBaseBuilder.h.
|
inline |
Query for the use of constrained floating point math.
Definition at line 232 of file CIRBaseBuilder.h.
References isFPConstrained.
Referenced by emitBinaryExpMaybeConstrainedFPBuiltin(), and emitX86Round().
|
inline |
Definition at line 205 of file CIRBaseBuilder.h.
|
inline |
Definition at line 115 of file CIRBaseBuilder.h.
Referenced by getZeroInitAttr().
|
inline |
Definition at line 210 of file CIRBaseBuilder.h.
Referenced by getZeroInitAttr().
|
inline |
Definition at line 1103 of file CIRBaseBuilder.h.
References getConstPtrAttr(), and cir::MissingFeatures::targetCodeGenInfoGetNullPointer().
Referenced by createPtrIsNotNull(), createPtrIsNull(), emitAtomicIsLockFree(), emitDynamicCastToNull(), emitExactDynamicCast(), clang::CIRGen::TargetCIRGenInfo::getNullPointer(), and performReturnAdjustment().
|
inline |
Definition at line 106 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 179 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(), 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 188 of file CIRBaseBuilder.h.
References clang::Default, getPointerTo(), and cir::toCIRAddressSpaceAttr().
|
inline |
Definition at line 183 of file CIRBaseBuilder.h.
|
inline |
Definition at line 93 of file CIRBaseBuilder.h.
References getConstAPInt().
Referenced by lowerArrayDtorCtorIntoLoop().
|
inline |
Definition at line 175 of file CIRBaseBuilder.h.
Referenced by createVecCompare(), and cir::CIRCXXABI::readArrayCookie().
|
inline |
Definition at line 1098 of file CIRBaseBuilder.h.
References clang::CharUnits::getQuantity().
|
inline |
Definition at line 158 of file CIRBaseBuilder.h.
References getBool().
|
inline |
Definition at line 218 of file CIRBaseBuilder.h.
References getCIRBoolAttr().
|
inline |
Definition at line 163 of file CIRBaseBuilder.h.
Referenced by createExtractElement(), createInsertElement(), cir::CIRCXXABI::readArrayCookie(), and cir::CIRABIRewriteContext::rewriteVAArg().
|
inline |
Definition at line 99 of file CIRBaseBuilder.h.
References getConstAPInt().
Referenced by lowerArrayDtorCtorIntoLoop().
|
inline |
Returns void (*)(T...) as a cir::PointerType.
Definition at line 1051 of file CIRBaseBuilder.h.
|
inline |
Returns void (T...) as a cir::FuncType.
Definition at line 1046 of file CIRBaseBuilder.h.
|
inline |
Definition at line 197 of file CIRBaseBuilder.h.
References clang::Default, and getPointerTo().
Referenced by clang::CIRGen::CIRGenBuilderTy::createDynCastToVoid(), createGetMethod(), emitAMDGPUConstantPtrIntrinsic(), emitAtomicIsLockFree(), emitBuiltinAlloca(), emitCommonNeonBuiltinExpr(), emitNeonMultiVecLoad(), emitNeonMultiVecLoadLane(), getItaniumDynamicCastFn(), initCatchParam(), and cir::CIRCXXABI::readArrayCookie().
|
inline |
Definition at line 201 of file CIRBaseBuilder.h.
References getPointerTo().
|
inline |
Definition at line 161 of file CIRBaseBuilder.h.
|
inline |
Definition at line 119 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 235 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 246 of file CIRBaseBuilder.h.
References defaultConstrainedRounding.
|
inline |
Set the fast-math flags attached to floating-point operations.
Definition at line 256 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 229 of file CIRBaseBuilder.h.
References isFPConstrained.
| clang::LangOptions::FPExceptionModeKind cir::CIRBaseBuilderTy::defaultConstrainedExcept |
Definition at line 73 of file CIRBaseBuilder.h.
Referenced by getConstrainedFPAttr(), getDefaultConstrainedExcept(), and setDefaultConstrainedExcept().
| llvm::RoundingMode cir::CIRBaseBuilderTy::defaultConstrainedRounding |
Definition at line 75 of file CIRBaseBuilder.h.
Referenced by getConstrainedFPAttr(), getDefaultConstrainedRounding(), and setDefaultConstrainedRounding().
| cir::FastMathFlags cir::CIRBaseBuilderTy::fastMathFlags = cir::FastMathFlags::none |
Definition at line 77 of file CIRBaseBuilder.h.
Referenced by getFastMathFlags(), getFastMathFlagsAttr(), and setFastMathFlags().
Definition at line 72 of file CIRBaseBuilder.h.
Referenced by getConstrainedFPAttr(), getIsFPConstrained(), and setIsFPConstrained().