[KnownBits] Implement accurate unsigned and signed max and min
authorJay Foad <jay.foad@amd.com>
Wed, 2 Sep 2020 15:01:48 +0000 (16:01 +0100)
committerJay Foad <jay.foad@amd.com>
Mon, 7 Sep 2020 08:09:01 +0000 (09:09 +0100)
commit5350e1b5096aa4707aa525baf7398d93b4a4f1a5
tree4896cf0b042cab5c52acb65acea4781f00f60b5d
parent04ea680a8ccc4f9a4d7333cd712333960348c35b
[KnownBits] Implement accurate unsigned and signed max and min

Use the new implementation in ValueTracking, SelectionDAG and
GlobalISel.

Differential Revision: https://reviews.llvm.org/D87034
llvm/include/llvm/Support/KnownBits.h
llvm/lib/Analysis/ValueTracking.cpp
llvm/lib/CodeGen/GlobalISel/GISelKnownBits.cpp
llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
llvm/lib/Support/KnownBits.cpp
llvm/unittests/CodeGen/GlobalISel/KnownBitsTest.cpp
llvm/unittests/Support/KnownBitsTest.cpp