aboutsummaryrefslogtreecommitdiff
path: root/flang/lib/Optimizer/Builder/CUDAIntrinsicCall.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'flang/lib/Optimizer/Builder/CUDAIntrinsicCall.cpp')
-rw-r--r--flang/lib/Optimizer/Builder/CUDAIntrinsicCall.cpp8
1 files changed, 1 insertions, 7 deletions
diff --git a/flang/lib/Optimizer/Builder/CUDAIntrinsicCall.cpp b/flang/lib/Optimizer/Builder/CUDAIntrinsicCall.cpp
index 6312e61..4c0d266 100644
--- a/flang/lib/Optimizer/Builder/CUDAIntrinsicCall.cpp
+++ b/flang/lib/Optimizer/Builder/CUDAIntrinsicCall.cpp
@@ -1122,13 +1122,7 @@ CUDAIntrinsicLibrary::genSyncThreadsOr(mlir::Type resultType,
void CUDAIntrinsicLibrary::genSyncWarp(
llvm::ArrayRef<fir::ExtendedValue> args) {
assert(args.size() == 1);
- constexpr llvm::StringLiteral funcName = "llvm.nvvm.bar.warp.sync";
- mlir::Value mask = fir::getBase(args[0]);
- mlir::FunctionType funcType =
- mlir::FunctionType::get(builder.getContext(), {mask.getType()}, {});
- auto funcOp = builder.createFunction(loc, funcName, funcType);
- llvm::SmallVector<mlir::Value> argsList{mask};
- fir::CallOp::create(builder, loc, funcOp, argsList);
+ mlir::NVVM::SyncWarpOp::create(builder, loc, fir::getBase(args[0]));
}
// THIS_GRID