Is there any way to run a pass before AsmPrinter?

I am new to LLVm, I wonder whether I can run a pass just before AsmPrinter?

See TargetPassConfig::addPreEmitPass and addPreEmitPass2

Thank you!