[all-commits] [llvm/llvm-project] 90c147: [SDAG] Honor signed arguments in floating point li...

Timothy Pearson via All-commits all-commits at lists.llvm.org
Wed Sep 25 00:10:12 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 90c14748638f1e10e31173b145fdbb5c4529c922
      https://github.com/llvm/llvm-project/commit/90c14748638f1e10e31173b145fdbb5c4529c922
  Author: Timothy Pearson <162513562+tpearson-ssc at users.noreply.github.com>
  Date:   2024-09-25 (Wed, 25 Sep 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
    M llvm/test/CodeGen/PowerPC/ldexp-libcall.ll
    M llvm/test/CodeGen/PowerPC/ldexp.ll
    A llvm/test/CodeGen/PowerPC/negative-integer-fp-libcall.ll
    M llvm/test/CodeGen/X86/fold-int-pow2-with-fmul-or-fdiv.ll

  Log Message:
  -----------
  [SDAG] Honor signed arguments in floating point libcalls (#109134)

In ExpandFPLibCall, an assumption is made that all floating point
libcalls that take integer arguments use unsigned integers. In the case
of ldexp and frexp, this assumption is incorrect, leading to
miscompilation and subsequent target-dependent incorrect operation.

Indicate that ldexp and frexp utilize signed arguments in
ExpandFPLibCall.

Fixes #108904

Signed-off-by: Timothy Pearson <tpearson at solidsilicon.com>



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list