Many LLVM tools, such as clang-cl, that accept the flag /Fo to specify
output files are also tolerant of the -o flag to do the same thing. To
maintain parity with these other tools, llvm-ml should also support -o.
As with clang-cl, if both /Fo and -o are specified, then /Fo takes
precedence[0].
Since we expect the same output in all cases, I don't think we need three different prefixes?
Also, we should probably test that you actually get no output if outputting to /dev/null.