This is an archive of the discontinued LLVM Phabricator instance.

[mlir][Pass] Remove the use of CRTP from the Pass classes
ClosedPublic

Authored by rriddle on Apr 2 2020, 5:12 PM.

Details

Summary

This revision removes all of the CRTP from the pass hierarchy in preparation for using the tablegen backend instead. This creates a much cleaner interface in the C++ code, and naturally fits with the rest of the infrastructure. A new utility class, CRTPPass, is added to replicate the existing behavior for passes not suitable for using the tablegen backend.

Depends On D77339

Diff Detail

Event Timeline

rriddle created this revision.Apr 2 2020, 5:12 PM
mehdi_amini accepted this revision.Apr 2 2020, 8:48 PM
This revision is now accepted and ready to land.Apr 2 2020, 8:48 PM
rriddle updated this revision to Diff 254705.Apr 2 2020, 10:03 PM

Renamed CRTPPass to PassWrapper

This revision was automatically updated to reflect the committed changes.