diff options
| author | Pedro Lobo <pedro.lobo@tecnico.ulisboa.pt> | 2025-11-20 21:35:14 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-11-20 21:35:14 +0000 |
| commit | 76d614b7c1222f459d42c6cfdf619da19ac3f739 (patch) | |
| tree | 58e153629ee16a418dd613dc3be062c887ed8dd9 /lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface | |
| parent | 04acac2c90cfef84c25d89d4ead7363ed697ad68 (diff) | |
[InstSimplify] Extend icmp-of-add simplification to sle/sgt/sge (#168900)
When comparing additions with the same base where one has `nsw`, the
following simplification can be performed:
```llvm
icmp slt/sgt/sle/sge (x + C1), (x +nsw C2)
=>
icmp slt/sgt/sle/sge C1, C2
```
Previously this was only done for `slt`. This patch extends it to the
`sgt`, `sle`, and `sge` predicates when either of the conditions hold:
- `C1 <= C2 && C1 >= 0`, or
- `C2 <= C1 && C1 <= 0`
This patch also handles the `C1 == C2` case, which was previously
excluded.
Proof: https://alive2.llvm.org/ce/z/LtmY4f
Diffstat (limited to 'lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface')
0 files changed, 0 insertions, 0 deletions
