16 #define GEN_PASS_DEF_GENERATERUNTIMEVERIFICATION
17 #include "mlir/Transforms/Passes.h.inc"
23 struct GenerateRuntimeVerificationPass
24 :
public impl::GenerateRuntimeVerificationBase<
25 GenerateRuntimeVerificationPass> {
26 void runOnOperation()
override;
30 void GenerateRuntimeVerificationPass::runOnOperation() {
35 getOperation()->walk([&](RuntimeVerifiableOpInterface verifiableOp) {
36 ops.push_back(verifiableOp);
40 for (RuntimeVerifiableOpInterface verifiableOp : ops) {
41 builder.setInsertionPoint(verifiableOp);
42 verifiableOp.generateRuntimeVerification(builder, verifiableOp.getLoc());
47 return std::make_unique<GenerateRuntimeVerificationPass>();
static MLIRContext * getContext(OpFoldResult val)
This class helps build Operations.
Include the generated interface declarations.
std::unique_ptr< Pass > createGenerateRuntimeVerificationPass()
Creates a pass that generates IR to verify ops at runtime.