[all-commits] [llvm/llvm-project] 7fe943: Work on cleaning up denormal mode handling

Matt Arsenault via All-commits all-commits at lists.llvm.org
Tue Nov 19 08:31:59 PST 2019


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 7fe9435dc88050ee78eb1d4adec87610dce468f7
      https://github.com/llvm/llvm-project/commit/7fe9435dc88050ee78eb1d4adec87610dce468f7
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2019-11-19 (Tue, 19 Nov 2019)

  Changed paths:
    M clang/include/clang/Basic/CodeGenOptions.h
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    A llvm/include/llvm/ADT/FloatingPointMode.h
    M llvm/include/llvm/CodeGen/MachineFunction.h
    M llvm/include/llvm/CodeGen/SelectionDAG.h
    M llvm/lib/CodeGen/MachineFunction.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/unittests/ADT/CMakeLists.txt
    A llvm/unittests/ADT/FloatingPointMode.cpp

  Log Message:
  -----------
  Work on cleaning up denormal mode handling

Cleanup handling of the denormal-fp-math attribute. Consolidate places
checking the allowed names in one place.

This is in preparation for introducing FP type specific variants of
the denormal-fp-mode attribute. AMDGPU will switch to using this in
place of the current hacky use of subtarget features for the denormal
mode.

Introduce a new header for dealing with FP modes. The constrained
intrinsic classes define related enums that should also be moved into
this header for uses in other contexts.

The verifier could use a check to make sure the denorm-fp-mode
attribute is sane, but there currently isn't one.

Currently, DAGCombiner incorrectly asssumes non-IEEE behavior by
default in the one current user. Clang must be taught to start
emitting this attribute by default to avoid regressions when this is
switched to assume ieee behavior if the attribute isn't present.




More information about the All-commits mailing list