================
@@ -4193,6 +4193,21 @@ mlir::LogicalResult
CIRToLLVMStackRestoreOpLowering::matchAndRewrite(
return mlir::success();
}
+mlir::LogicalResult CIRToLLVMLifetimeStartOpLowering::matchAndRewrite(
+ cir::LifetimeStartOp op, OpAdaptor adaptor,
+ mlir::ConversionPatternRewriter &rewriter) const {
+ rewriter.replaceOpWithNewOp<mlir::LLVM::LifetimeStartOp>(op,
+ adaptor.getPtr());
+ return mlir::success();
+}
+
+mlir::LogicalResult CIRToLLVMLifetimeEndOpLowering::matchAndRewrite(
+ cir::LifetimeEndOp op, OpAdaptor adaptor,
+ mlir::ConversionPatternRewriter &rewriter) const {
+ rewriter.replaceOpWithNewOp<mlir::LLVM::LifetimeEndOp>(op, adaptor.getPtr());
+ return mlir::success();
+}
+
----------------
Lancern wrote:
LowerToLLVM for these two ops should be implementable via TableGen:
```
def CIR_LifetimeStartOp : CIR_Op<"lifetime.start"> {
let llvmOp = "LifetimeStartOp";
}
def CIR_LifetimeEndOp : CIR_Op<"lifetime.end"> {
let llvmOp = "LifetimeEndOp";
}
```
https://github.com/llvm/llvm-project/pull/199599
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits