This is needed when config.guess is removed (D109837) and
-DLLVM_ENABLE_PER_TARGET_RUNTIME_DIR=on is enabled.
If LLVM_DEFAULT_TARGET_TRIPLE is Debian multiarch style "x86_64-linux-gnu"
(gcc -dumpmachine output), CMake will install runtime libraries to
lib/clang/14.0.0/x86_64-linux-gnu/, but clang --print-runtime-dir detects
lib/clang/14.0.0/x86_64-unknown-linux-gnu/ where "x86_64-unknown-linux-gnu"
is a normalized triple and fails to find the library.
To fix this, we should respect --target= (which defaults to LLVM_DEFAULT_TARGET_TRIPLE)
and a small set of GCC multilib style triple transformation, currently probably just -m32 and -m64,
otherwise *do no normalization*.
(I don't think we support -mx32 or MIPS/RISC-V's fancy multilib combinations.)
To this end, add UnnormalizedTriple to computeTargetTriple and add arch
transformation code. Then update getRuntimePath/getStdlibPath/addLibCxxIncludePaths
to use the unnormalized triple.
It would probably be nice to pass the unnormalized triple to getToolChain, but
currently it would result in numerous issues, because a unnormalized triple has
wrong OS/environment and can confuse driver code in many places.