clang 22.0.0git
Classes | Namespaces | Functions
LowerToLLVM.h File Reference
#include "mlir/Dialect/LLVMIR/LLVMAttrs.h"
#include "mlir/Dialect/LLVMIR/LLVMDialect.h"
#include "mlir/Transforms/DialectConversion.h"
#include "clang/CIR/Dialect/IR/CIRDialect.h"

Go to the source code of this file.

Classes

class  cir::direct::CIRToLLVMAssumeOpLowering
 
class  cir::direct::CIRToLLVMAssumeAlignedOpLowering
 
class  cir::direct::CIRToLLVMAssumeSepStorageOpLowering
 
class  cir::direct::CIRToLLVMBitClrsbOpLowering
 
class  cir::direct::CIRToLLVMBitClzOpLowering
 
class  cir::direct::CIRToLLVMBitCtzOpLowering
 
class  cir::direct::CIRToLLVMBitFfsOpLowering
 
class  cir::direct::CIRToLLVMBitParityOpLowering
 
class  cir::direct::CIRToLLVMBitPopcountOpLowering
 
class  cir::direct::CIRToLLVMBitReverseOpLowering
 
class  cir::direct::CIRToLLVMBrCondOpLowering
 
class  cir::direct::CIRToLLVMByteSwapOpLowering
 
class  cir::direct::CIRToLLVMCastOpLowering
 
class  cir::direct::CIRToLLVMExpectOpLowering
 
class  cir::direct::CIRToLLVMReturnOpLowering
 
class  cir::direct::CIRToLLVMRotateOpLowering
 
class  cir::direct::CIRToLLVMCallOpLowering
 
class  cir::direct::CIRToLLVMReturnAddrOpLowering
 
class  cir::direct::CIRToLLVMFrameAddrOpLowering
 
class  cir::direct::CIRToLLVMAllocaOpLowering
 
class  cir::direct::CIRToLLVMLoadOpLowering
 
class  cir::direct::CIRToLLVMStoreOpLowering
 
class  cir::direct::CIRToLLVMConstantOpLowering
 
class  cir::direct::CIRToLLVMFuncOpLowering
 
class  cir::direct::CIRToLLVMSwitchFlatOpLowering
 
class  cir::direct::CIRToLLVMGetGlobalOpLowering
 
class  cir::direct::CIRToLLVMGlobalOpLowering
 
class  cir::direct::CIRToLLVMUnaryOpLowering
 
class  cir::direct::CIRToLLVMBinOpLowering
 
class  cir::direct::CIRToLLVMCmpOpLowering
 
class  cir::direct::CIRToLLVMShiftOpLowering
 
class  cir::direct::CIRToLLVMSelectOpLowering
 
class  cir::direct::CIRToLLVMBrOpLowering
 
class  cir::direct::CIRToLLVMGetMemberOpLowering
 
class  cir::direct::CIRToLLVMUnreachableOpLowering
 
class  cir::direct::CIRToLLVMTrapOpLowering
 
class  cir::direct::CIRToLLVMPtrStrideOpLowering
 
class  cir::direct::CIRToLLVMBaseClassAddrOpLowering
 
class  cir::direct::CIRToLLVMVTableAddrPointOpLowering
 
class  cir::direct::CIRToLLVMVTableGetVPtrOpLowering
 
class  cir::direct::CIRToLLVMVTableGetVirtualFnAddrOpLowering
 
class  cir::direct::CIRToLLVMVTTAddrPointOpLowering
 
class  cir::direct::CIRToLLVMStackSaveOpLowering
 
class  cir::direct::CIRToLLVMStackRestoreOpLowering
 
class  cir::direct::CIRToLLVMVecCreateOpLowering
 
class  cir::direct::CIRToLLVMVecExtractOpLowering
 
class  cir::direct::CIRToLLVMVecInsertOpLowering
 
class  cir::direct::CIRToLLVMVecCmpOpLowering
 
class  cir::direct::CIRToLLVMVecSplatOpLowering
 
class  cir::direct::CIRToLLVMVecShuffleOpLowering
 
class  cir::direct::CIRToLLVMVecShuffleDynamicOpLowering
 
class  cir::direct::CIRToLLVMVecTernaryOpLowering
 
class  cir::direct::CIRToLLVMComplexCreateOpLowering
 
class  cir::direct::CIRToLLVMComplexRealOpLowering
 
class  cir::direct::CIRToLLVMComplexImagOpLowering
 
class  cir::direct::CIRToLLVMComplexImagPtrOpLowering
 
class  cir::direct::CIRToLLVMComplexRealPtrOpLowering
 
class  cir::direct::CIRToLLVMComplexAddOpLowering
 
class  cir::direct::CIRToLLVMComplexSubOpLowering
 
class  cir::direct::CIRToLLVMSetBitfieldOpLowering
 
class  cir::direct::CIRToLLVMGetBitfieldOpLowering
 
class  cir::direct::CIRToLLVMFAbsOpLowering
 
class  cir::direct::CIRToLLVMInlineAsmOpLowering
 
class  cir::direct::CIRToLLVMThrowOpLowering
 
class  cir::direct::CIRToLLVMVAStartOpLowering
 
class  cir::direct::CIRToLLVMVAEndOpLowering
 
class  cir::direct::CIRToLLVMVAArgOpLowering
 

Namespaces

namespace  cir
 
namespace  cir::direct
 

Functions

mlir::Value cir::direct::lowerCirAttrAsValue (mlir::Operation *parentOp, const mlir::Attribute attr, mlir::ConversionPatternRewriter &rewriter, const mlir::TypeConverter *converter)
 Switches on the type of attribute and calls the appropriate conversion.
 
mlir::LLVM::Linkage cir::direct::convertLinkage (cir::GlobalLinkageKind linkage)
 
void cir::direct::convertSideEffectForCall (mlir::Operation *callOp, bool isNothrow, cir::SideEffect sideEffect, mlir::LLVM::MemoryEffectsAttr &memoryEffect, bool &noUnwind, bool &willReturn)