[clang] [compiler-rt] [llvm] [SystemZ] Add support for half (fp16) (PR #109164)
Jonas Paulsson via cfe-commits
cfe-commits at lists.llvm.org
Thu Nov 28 13:14:54 PST 2024
JonPsson1 wrote:
>> Without vector support, it might make sense to have load/store pseudos with an extra GPR def operand, so that these loads/stores can be expanded as a PostRA pseudo. Then it would only need handling in one place, but OTOH having a second explicit def operand is also undesired, maybe.
> I don't think we need to spend much effort optimizing for pre-z13 machines at this point.
This wouldn't be an optimization, rather just handling the shift + insert sequences needed for older machines in one place, instead of as of now in both lowerLoadF16(), and in loadRegFromStackSlot() (and similarly for stores).
> Also, looks like the clang-format check is complaining a bit ...
Fixed.
Inline-assembly support for half with tests added.
Implemented bitcast i16<->f16 with vector support but letting it fall back to store+load bitcasting for older archs. This type of bitcasting is used with inline-assembly.
https://github.com/llvm/llvm-project/pull/109164
More information about the cfe-commits
mailing list