circt/test/Dialect/OM
Fabian Schuiki ce67b00a52
Add passes to strip OM and Emit dialect ops (#8121)
Several tools in CIRCT do not process the OM and Emit dialects at all,
for example, arcilator, circt-bmc, and circt-lec. Since these tools do a
full lowering to LLVM internally, they have to discard all OM and Emit
ops at some point in the pipeline. Arcilator currently does this in its
StripSV pass; circt-bmc and circt-lec simply error out.

This commit adds a `StripOM` pass to the OM dialect and a `StripEmit`
pass to the Emit dialect which remove any OM and Emit ops from the IR,
respectively. These passes are added to the arcilator, circt-bmc, and
circt-lec pipelines in order to discard OM and Emit from the input.

The commit also includes a few boilerplate changes and alphabetical
ordering of dialects and dependencies.
2025-01-27 13:56:52 -08:00
..
errors.mlir [OM] Add ClassOp region verifier 2024-10-28 16:39:10 -04:00
freeze-paths-errors.mlir [OM] Rework ClassOp to use return style for class fields (#7537) 2024-10-21 17:15:36 -04:00
freeze-paths.mlir [OM] Generalize handling for list creation ops in FreezePaths. (#7965) 2024-12-10 15:58:44 -07:00
link-modules-error.mlir [OM] Rework ClassOp to use return style for class fields (#7537) 2024-10-21 17:15:36 -04:00
link-modules.mlir [OM] Preserve non-OM operations in OM LinkModules (#8109) 2025-01-22 12:56:06 -08:00
round-trip.mlir [OM] Rework ClassOp to use return style for class fields (#7537) 2024-10-21 17:15:36 -04:00
strip-om.mlir Add passes to strip OM and Emit dialect ops (#8121) 2025-01-27 13:56:52 -08:00