computeKnownFPClass should now handle infinity checks equally as
well as what this could do before so delete the redundant code.
Most of the diff is from threading DataLayout through the various
APIs that call into isKnownNeverInfinity.
Paths
| Differential D147942
ValueTracking: Delete body of isKnownNeverInfinity ClosedPublic Authored by arsenm on Apr 10 2023, 7:48 AM.
Details Summary computeKnownFPClass should now handle infinity checks equally as Most of the diff is from threading DataLayout through the various
Diff Detail Event Timelinearsenm added parent revisions: D147939: ValueTracking: Handle fptrunc in computeKnownFPClass, D147938: ValueTracking: Handle exp/exp2 in computeKnownFPClass, D147936: ValueTracking: Handle minimum/maximum in computeKnownFPClass, D147932: ValueTracking: Implement computeKnownFPClass for various rounding intrinsics, D147902: ValueTracking: Implement computeKnownFPClass for fpext, D147879: ValueTracking: Implement computeKnownFPClass for llvm.trunc, D147871: ValueTracking: Implement computeKnownFPClass for sqrt, D147870: ValueTracking: Implement computeKnownFPClass for canonicalize, D147866: ValueTracking: Implement computeKnownFPClass for minnum/maxnum, D147865: ValueTracking: Implement computeKnownFPClass for sin/cos, D147864: ValueTracking: Address todo for nan fmul handling in computeKnownFPClass, D147856: ValueTracking: Handle no-nan check for computeKnownFPClass for fmul, D147851: ValueTracking: Handle no-nan check for computeKnownFPClass for fadd/fsub.Apr 10 2023, 7:48 AM arsenm added a child revision: D147972: ValueTracking: Delete body of isKnownNeverNaN.Apr 10 2023, 2:41 PM Comment Actions
It's used by the Query shared with ComputeKnownBits. Don't know if it actually does anything This revision is now accepted and ready to land.Apr 20 2023, 3:07 AM
Revision Contents
Diff 512145 llvm/include/llvm/Analysis/ValueTracking.h
llvm/lib/Analysis/InstructionSimplify.cpp
llvm/lib/Analysis/ValueTracking.cpp
llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
|