diff options
author | Roman Lebedev <lebedev.ri@gmail.com> | 2023-01-02 21:15:31 +0300 |
---|---|---|
committer | Roman Lebedev <lebedev.ri@gmail.com> | 2023-01-02 21:26:37 +0300 |
commit | cf58063a4069b9ff11a99fd49345c1d188813feb (patch) | |
tree | 9b74992b117c6496185c0801233d094fd11ea6f6 /clang/unittests/libclang/LibclangTest.cpp | |
parent | 1fb07108d4f8606464fad98a49e2cbae7ec4ae25 (diff) | |
download | llvm-cf58063a4069b9ff11a99fd49345c1d188813feb.zip llvm-cf58063a4069b9ff11a99fd49345c1d188813feb.tar.gz llvm-cf58063a4069b9ff11a99fd49345c1d188813feb.tar.bz2 |
[InstCombine] Canonicalize math-y conditional negation into a `select`
https://alive2.llvm.org/ce/z/vPs-gZ
This is a larger pattern than would seem necessary, with minimal being:
* `and` https://alive2.llvm.org/ce/z/q9-MqK
* `or` https://alive2.llvm.org/ce/z/AUUEMZ
* `xor` https://alive2.llvm.org/ce/z/dm3Ume
.. so for all others, we canonicalize away from math to `select`,
but there we canonicalize in the opposite direction.
Fixes https://github.com/llvm/llvm-project/issues/59791
Diffstat (limited to 'clang/unittests/libclang/LibclangTest.cpp')
0 files changed, 0 insertions, 0 deletions