X86 psABI has updated to support __bf16 type, the ABI of which is the
same as FP16. See https://discourse.llvm.org/t/patch-add-optional-bfloat16-support/63149
This is an alternative of D129858, which has less code modification and
supports the vector type as well.
What does it mean to Soften a vector?