The inliner pass performs canonicalization when created programtically, run with mlir-opt with default options, or when explicitly specified. However, when running the pipeline resulting from a -dump-pass-pipeline on a default inline pass, the canonicalization is not performed as part of the inlining. This is because the default value for the default-pipeline option of the inline pass is an empty string, and this is selected during the dumping. When InlinerPass::initializeOptions detects the empty string, it sets the defaultPipeline to nullptr, which was previously set to canonicalize in the InlinerPass constructor, thus the canonicalization is not performed.
The added test checks if the inline pass performs canonicalization by default, and that the dumped default-pipeline is set to canonicalize.