-print-after-all and -print-before-all print after/before each pass.
Unfortunately this includes the MachineVerifier which doesn't make
any changes or produce any information. The end result is that one of these
options in combination with -verify-machineinstrs cause identical MIR to be
dumped twice for each pass (four times if you use both).
I'm not very familiar with the Pass manager infrastructure but this hack
introduces the concept of a verifier pass which does not trigger additional
IR Dumps.