[all-commits] [llvm/llvm-project] 02fe96: [X86][FP16] Do not split FP64->FP16 to FP64->FP32-...

Phoebe Wang via All-commits all-commits at lists.llvm.org
Thu Jul 21 17:36:48 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 02fe96b24018bb8ce65cb264e0621459507cf989
      https://github.com/llvm/llvm-project/commit/02fe96b24018bb8ce65cb264e0621459507cf989
  Author: Phoebe Wang <phoebe.wang at intel.com>
  Date:   2022-07-22 (Fri, 22 Jul 2022)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/cvt16.ll
    M llvm/test/CodeGen/X86/fastmath-float-half-conversion.ll
    M llvm/test/CodeGen/X86/fp-strict-scalar-fp16.ll
    M llvm/test/CodeGen/X86/half-constrained.ll
    M llvm/test/CodeGen/X86/half.ll
    M llvm/test/CodeGen/X86/vector-half-conversions.ll

  Log Message:
  -----------
  [X86][FP16] Do not split FP64->FP16 to FP64->FP32->FP16

Truncation from double to half is not always identical to truncating to float first and then to half. https://godbolt.org/z/56s9517hd

On the other hand, expanding to float and then to double is always identical to expanding to double directly. https://godbolt.org/z/Ye8vbYPnY

Reviewed By: RKSimon, skan

Differential Revision: https://reviews.llvm.org/D130151




More information about the All-commits mailing list