diff options
Diffstat (limited to 'clang/lib/CIR')
| -rw-r--r-- | clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp | 11 | ||||
| -rw-r--r-- | clang/lib/CIR/CodeGen/CIRGenOpenACCClause.cpp | 2 | ||||
| -rw-r--r-- | clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp | 8 | 
3 files changed, 20 insertions, 1 deletions
diff --git a/clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp b/clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp index e35100f..d9b9e3b 100644 --- a/clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp +++ b/clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp @@ -211,6 +211,17 @@ RValue CIRGenFunction::emitBuiltinExpr(const GlobalDecl &gd, unsigned builtinID,      assert(!cir::MissingFeatures::fastMathFlags());      return emitUnaryMaybeConstrainedFPBuiltin<cir::CosOp>(*this, *e); +  case Builtin::BIceil: +  case Builtin::BIceilf: +  case Builtin::BIceill: +  case Builtin::BI__builtin_ceil: +  case Builtin::BI__builtin_ceilf: +  case Builtin::BI__builtin_ceilf16: +  case Builtin::BI__builtin_ceill: +  case Builtin::BI__builtin_ceilf128: +    assert(!cir::MissingFeatures::fastMathFlags()); +    return emitUnaryMaybeConstrainedFPBuiltin<cir::CeilOp>(*this, *e); +    case Builtin::BIfabs:    case Builtin::BIfabsf:    case Builtin::BIfabsl: diff --git a/clang/lib/CIR/CodeGen/CIRGenOpenACCClause.cpp b/clang/lib/CIR/CodeGen/CIRGenOpenACCClause.cpp index 5010137..527dfd2 100644 --- a/clang/lib/CIR/CodeGen/CIRGenOpenACCClause.cpp +++ b/clang/lib/CIR/CodeGen/CIRGenOpenACCClause.cpp @@ -126,7 +126,7 @@ class OpenACCClauseCIREmitter final          .CaseLower("default", mlir::acc::DeviceType::Default)          .CaseLower("host", mlir::acc::DeviceType::Host)          .CaseLower("multicore", mlir::acc::DeviceType::Multicore) -        .CasesLower("nvidia", "acc_device_nvidia", +        .CasesLower({"nvidia", "acc_device_nvidia"},                      mlir::acc::DeviceType::Nvidia)          .CaseLower("radeon", mlir::acc::DeviceType::Radeon);    } diff --git a/clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp b/clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp index 5a6193f..d941082 100644 --- a/clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp +++ b/clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp @@ -1336,6 +1336,14 @@ mlir::LogicalResult CIRToLLVMATanOpLowering::matchAndRewrite(    return mlir::success();  } +mlir::LogicalResult CIRToLLVMCeilOpLowering::matchAndRewrite( +    cir::CeilOp op, OpAdaptor adaptor, +    mlir::ConversionPatternRewriter &rewriter) const { +  mlir::Type resTy = typeConverter->convertType(op.getType()); +  rewriter.replaceOpWithNewOp<mlir::LLVM::FCeilOp>(op, resTy, adaptor.getSrc()); +  return mlir::success(); +} +  mlir::LogicalResult CIRToLLVMAllocaOpLowering::matchAndRewrite(      cir::AllocaOp op, OpAdaptor adaptor,      mlir::ConversionPatternRewriter &rewriter) const {  | 
