diff options
| author | Simon Pilgrim <llvm-dev@redking.me.uk> | 2024-09-07 11:24:47 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-09-07 11:24:47 +0100 |
| commit | 6df12912964caf118c0c8019d7ec681e6ad8bf5c (patch) | |
| tree | 45e9cd1bb2f64ef9158eaa3c022aa894dd57f0e8 /llvm/lib/Analysis/ModuleSummaryAnalysis.cpp | |
| parent | 78cf9b830c78daa5aed51b5ca77bb7db9974d1ec (diff) | |
| download | llvm-6df12912964caf118c0c8019d7ec681e6ad8bf5c.zip llvm-6df12912964caf118c0c8019d7ec681e6ad8bf5c.tar.gz llvm-6df12912964caf118c0c8019d7ec681e6ad8bf5c.tar.bz2 | |
[X86] LowerSELECTWithCmpZero - extend branchless OR/XOR select codegen to handle ADD/SUB as well (#107612)
Extend the "SELECT ((AND X, 1) != 0), Y, (OR/XOR Y, Z) -> (OR/XOR Y, (AND (NEG(AND X, 1)), Z))" to also handle ADD/SUB.
As SUB is not commutative, we have to be more careful and only accept LHS matches.
Diffstat (limited to 'llvm/lib/Analysis/ModuleSummaryAnalysis.cpp')
0 files changed, 0 insertions, 0 deletions
