[Clang][Modules] Emit C++20 BMIs to working directory with -fmodule-output (#174560)
Close #173689.
When -fmodule-output is specified without an explicit path, Clang
currently emits the generated .pcm next to the source file. This
contradicts the documentation and breaks out-of-tree builds.
This patch updates the fallback behavior to emit the BMI in the working
directory, instead of the source file directory.
Driver tests are updated accordingly. Explicit -fmodule-output=PATH
behavior is unchanged.