11 #include "../PassDetails.h"
16 using namespace circt;
20 struct ESICleanMetadataPass
21 :
public ESICleanMetadataBase<ESICleanMetadataPass> {
22 void runOnOperation()
override;
26 void ESICleanMetadataPass::runOnOperation() {
27 auto mod = getOperation();
29 mod.walk([&](Operation *op) {
30 TypeSwitch<Operation *>(op)
31 .Case<ServiceDeclOpInterface, ServiceImplRecordOp,
32 ServiceRequestRecordOp, AppIDHierRootOp, IsManifestData>(
33 [](Operation *op) { op->erase(); });
37 std::unique_ptr<OperationPass<ModuleOp>>
39 return std::make_unique<ESICleanMetadataPass>();
std::unique_ptr< OperationPass< ModuleOp > > createESICleanMetadataPass()
This file defines an intermediate representation for circuits acting as an abstraction for constraint...