HomePhabricator

Change pass registration generated code to allow users to selectively register…

Authored by mehdi_amini on Apr 2 2020, 10:36 AM.

Description

Change pass registration generated code to allow users to selectively register passes

This slightly tweaks the generated code from:

#ifdef GEN_PASS_REGISTRATION
::mlir::registerPass("flag1", ...
::mlir::registerPass("flag2", ...
#endif // GEN_PASS_REGISTRATION

to:

#ifdef GEN_PASS_REGISTRATION
#define GEN_PASS_REGISTRATION_Pass1
#define GEN_PASS_REGISTRATION_Pass2
#endif // GEN_PASS_REGISTRATION

#ifdef GEN_PASS_REGISTRATION_Pass1
::mlir::registerPass("flag1", ...
#endif
#ifdef GEN_PASS_REGISTRATION_Pass1
::mlir::registerPass("flag2", ...
#endif

That way the generated code can be included by defining the
GEN_PASS_REGISTRATION macro as currenty and register all the passes,
but one can also define only GEN_PASS_REGISTRATION_Pass1 to register a
subset of the passes.

Differential Revision: https://reviews.llvm.org/D77322