diff options
| author | Simon Pilgrim <llvm-dev@redking.me.uk> | 2024-05-23 11:07:35 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-05-23 11:07:35 +0100 |
| commit | aefd2572a504d675ef623d2f3d61364232b19f26 (patch) | |
| tree | 2f77fbdfc3bb83d9555c23b727ec264d7a3a672d /lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp | |
| parent | e37da2cef7ea44f6aa52dd37978b287a0741c39f (diff) | |
[DAG][X86] expandABD - add branchless abds/abdu expansion for 0/-1 comparison result cases (#92780)
If the comparison results are allbits masks, we can expand as `abd(lhs, rhs) -> sub(cmpgt(lhs, rhs), xor(sub(lhs, rhs), cmpgt(lhs, rhs)))`, replacing a sub+sub+select pattern with the simpler sub+xor+sub pattern.
This allows us to remove a lot of X86 specific legalization code, and will be useful in future generic expansion for the legalization work in #92576
Alive2: https://alive2.llvm.org/ce/z/sj863C
Diffstat (limited to 'lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp')
0 files changed, 0 insertions, 0 deletions
