[all-commits] [llvm/llvm-project] 1e1534: MIPS: Add fcanonicalize for pre-R6 (#104554)

YunQiang Su via All-commits all-commits at lists.llvm.org
Tue Aug 27 02:14:07 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 1e153461c66bf517097168790cdcb9418af6b623
      https://github.com/llvm/llvm-project/commit/1e153461c66bf517097168790cdcb9418af6b623
  Author: YunQiang Su <yunqiang at isrc.iscas.ac.cn>
  Date:   2024-08-27 (Tue, 27 Aug 2024)

  Changed paths:
    M llvm/lib/Target/Mips/MipsISelLowering.cpp
    M llvm/lib/Target/Mips/MipsISelLowering.h
    A llvm/test/CodeGen/Mips/fp-fcanonicalize.ll

  Log Message:
  -----------
  MIPS: Add fcanonicalize for pre-R6 (#104554)

MIPSr6 has max.s/max.d/min.s/min.d instructions, which can be used as
fcanonicalize.

For pre-R6, we have no instructions that can fcanonicalize an float, so
let's use `fadd Y,X,X` to quiet it if it is NaN.

IEEE754-2008 requires that the result of general-computational and
quiet-computational operation shouldn't be signal NaN.



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