clang 22.0.0git
CIRGenBuiltin.cpp File Reference
#include "CIRGenCall.h"
#include "CIRGenFunction.h"
#include "CIRGenModule.h"
#include "CIRGenValue.h"
#include "mlir/IR/BuiltinAttributes.h"
#include "mlir/IR/Value.h"
#include "mlir/Support/LLVM.h"
#include "clang/AST/DeclBase.h"
#include "clang/AST/Expr.h"
#include "clang/AST/GlobalDecl.h"
#include "clang/Basic/Builtins.h"
#include "clang/Basic/OperatorKinds.h"
#include "clang/CIR/Dialect/IR/CIRTypes.h"
#include "clang/CIR/MissingFeatures.h"
#include "llvm/Support/ErrorHandling.h"

Go to the source code of this file.

Functions

static RValue emitLibraryCall (CIRGenFunction &cgf, const FunctionDecl *fd, const CallExpr *e, mlir::Operation *calleeValue)
template<typename Op>
static RValue emitBuiltinBitOp (CIRGenFunction &cgf, const CallExpr *e, bool poisonZero=false)
static WidthAndSignedness getIntegerWidthAndSignedness (const clang::ASTContext &astContext, const clang::QualType type)
static struct WidthAndSignedness EncompassingIntegerType (ArrayRef< struct WidthAndSignedness > types)
template<class Operation>
static RValue emitUnaryMaybeConstrainedFPBuiltin (CIRGenFunction &cgf, const CallExpr &e)
template<class Operation>
static RValue emitUnaryFPBuiltin (CIRGenFunction &cgf, const CallExpr &e)
static RValue errorBuiltinNYI (CIRGenFunction &cgf, const CallExpr *e, unsigned builtinID)
static RValue emitBuiltinAlloca (CIRGenFunction &cgf, const CallExpr *e, unsigned builtinID)
static mlir::Value emitTargetArchBuiltinExpr (CIRGenFunction *cgf, unsigned builtinID, const CallExpr *e, ReturnValueSlot &returnValue, llvm::Triple::ArchType arch)

Function Documentation

◆ emitBuiltinAlloca()

◆ emitBuiltinBitOp()

◆ emitLibraryCall()

◆ emitTargetArchBuiltinExpr()

◆ emitUnaryFPBuiltin()

◆ emitUnaryMaybeConstrainedFPBuiltin()

◆ EncompassingIntegerType()

struct WidthAndSignedness EncompassingIntegerType ( ArrayRef< struct WidthAndSignedness > types)
static

◆ errorBuiltinNYI()

◆ getIntegerWidthAndSignedness()