Backport a patch from LLVM 17 that improves error messages from the
Clang assembler on s390x.
Also, disable LLVM_UNREACHABLE_OPTIMIZE in order to improve error
messages when llvm_unreachable() is called. There are many cases where
llvm_unreachable() is used as a error reporting function instead of the
recommended replacement for assert().
Fixes rhbz#2216906.