diff options
author | Jorge Botto <Jorge.botto.16@ucl.ac.uk> | 2024-11-02 16:08:12 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-11-02 17:08:12 +0100 |
commit | fcd51dee42792bf264d26ab4978eb0a3a3001728 (patch) | |
tree | 4dfbe389a1bafc64b5b1733b967cd4915f52cc4c /llvm/unittests/ADT/StringMapTest.cpp | |
parent | 79178ca689a8259d19d93320a6299e3d31383ac4 (diff) | |
download | llvm-fcd51dee42792bf264d26ab4978eb0a3a3001728.zip llvm-fcd51dee42792bf264d26ab4978eb0a3a3001728.tar.gz llvm-fcd51dee42792bf264d26ab4978eb0a3a3001728.tar.bz2 |
[InstCombine] Factorise Add and Min/Max using distributivity (#101717)
This PR fixes part of https://github.com/llvm/llvm-project/issues/92433.
It specifically adds the 4 cases mentioned in
https://github.com/llvm/llvm-project/issues/92433#issuecomment-2117064459.
I've added 8 positive tests, 4 of which are mentioned in the comment
above and 4 which are their commutative equivalents. Alive proof:
https://alive2.llvm.org/ce/z/z6eFTb
I've also added 8 negative tests, because we want to make sure we do not
optimise if the relevant flags are not relevant because the optimisation
wouldn't be sound. Alive proof that the optimisation is invalid:
https://alive2.llvm.org/ce/z/NvNjTD
I did have to make the integer types `i4` to make Alive not timeout and
to fit them all on one page.
Diffstat (limited to 'llvm/unittests/ADT/StringMapTest.cpp')
0 files changed, 0 insertions, 0 deletions