[clang] [compiler-rt] [llvm] [SystemZ] Add support for half (fp16) (PR #109164)

Jonas Paulsson via cfe-commits cfe-commits at lists.llvm.org
Wed Nov 6 12:23:11 PST 2024


JonPsson1 wrote:

Patch improved further:

- Atomic memops handled.

- Spill/reload
  Handled in loadRegFromStackSlot() and storeRegToStackSlot(). VRegs can be used here which
  makes it straightforward, but special sequences needed (without using VSTE/VLE).

- __fp16:
  HalfArgsAndReturns=true => __fp16 arguments allowed.
  Tests added.

- f16 vectors:
  Tests added. All seems to work.

- strict fp:
  Again the question of conversion functions:
  IDS::STRICT_FP_ROUND/STRICT_FP_EXTEND needs to be lowered to something, but not sure
  if that requires special treatment, or if the same conversion functions can be used.
  Maybe wait with strict fp16?


https://github.com/llvm/llvm-project/pull/109164


More information about the cfe-commits mailing list