diff options
| author | Lauren <38364197+laurenmchin@users.noreply.github.com> | 2025-10-27 05:24:41 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-10-27 12:24:41 +0000 |
| commit | e964acf85f6d964fe5a1996289f34759cceeca3f (patch) | |
| tree | 157e5751f434017af58e60f95cca0170ab531505 /llvm/unittests/ExecutionEngine/Orc/WrapperFunctionUtilsTest.cpp | |
| parent | 1f65ab134fcb591ed7d39d960437a5cd19088d08 (diff) | |
| download | llvm-e964acf85f6d964fe5a1996289f34759cceeca3f.zip llvm-e964acf85f6d964fe5a1996289f34759cceeca3f.tar.gz llvm-e964acf85f6d964fe5a1996289f34759cceeca3f.tar.bz2 | |
[DAG] Fold mismatched widened avg idioms to narrow form (#147946) (#163366)
[DAG] Fold mismatched widened avg idioms to narrow form (fixes half of
[llvm#147946](https://github.com/llvm/llvm-project/issues/147946))
1. `trunc(avgceilu(sext(x), sext(y))) -> avgceils(x, y)`
2. `trunc(avgceils(zext(x), zext(y))) -> avgceilu(x, y)`
When inputs are sign-extended, unsigned and signed averaging operations
produce identical results after truncation, allowing us to use the
semantically correct narrow operation.
alive2: https://alive2.llvm.org/ce/z/ZRbfHT
Diffstat (limited to 'llvm/unittests/ExecutionEngine/Orc/WrapperFunctionUtilsTest.cpp')
0 files changed, 0 insertions, 0 deletions
