28 ModuleOp moduleOp = getOperation();
30 for (
auto deviceOp : moduleOp.getOps<AIETarget>()) {
38 OpBuilder builder(moduleOp->getContext());
40 Location location = builder.getUnknownLoc();
41 auto deviceOp = builder.create<DeviceOp>(
43 AIEDeviceAttr::get(builder.getContext(), AIEDevice::xcvc1902));
45 deviceOp.getRegion().takeBody(moduleOp.getBodyRegion());
46 new (&moduleOp->getRegion(0)) Region(moduleOp);
47 moduleOp->getRegion(0).emplaceBlock();
49 DeviceOp::ensureTerminator(deviceOp.getBodyRegion(), builder, location);
50 OpBuilder builder2 = OpBuilder::atBlockBegin(moduleOp.getBody());
51 builder2.insert(deviceOp);