[clang] [CIR] Upstream ClearCacheOp support for __builtin___clear_cache (PR #178260)
Andy Kaylor via cfe-commits
cfe-commits at lists.llvm.org
Tue Jan 27 10:35:43 PST 2026
================
@@ -1080,8 +1080,16 @@ RValue CIRGenFunction::emitBuiltinExpr(const GlobalDecl &gd, unsigned builtinID,
}
case Builtin::BI__builtin_readcyclecounter:
case Builtin::BI__builtin_readsteadycounter:
- case Builtin::BI__builtin___clear_cache:
return errorBuiltinNYI(*this, e, builtinID);
+ case Builtin::BI__builtin___clear_cache: {
+ mlir::Type voidTy = cir::VoidType::get(&getMLIRContext());
+ mlir::Value begin =
+ builder.createPtrBitcast(emitScalarExpr(e->getArg(0)), voidTy);
+ mlir::Value end =
+ builder.createPtrBitcast(emitScalarExpr(e->getArg(1)), voidTy);
----------------
andykaylor wrote:
```suggestion
mlir::Value begin =
builder.createPtrBitcast(emitScalarExpr(e->getArg(0)), cgm.voidTy);
mlir::Value end =
builder.createPtrBitcast(emitScalarExpr(e->getArg(1)), cgm.voidTy);
```
https://github.com/llvm/llvm-project/pull/178260
More information about the cfe-commits
mailing list