[all-commits] [llvm/llvm-project] 30010f: [NFC][PowerPC] Pre-commit testcases for locking do...
Tony Varghese via All-commits
all-commits at lists.llvm.org
Thu Sep 11 21:06:58 PDT 2025
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 30010f49ca4de03762a31202c82e9c763d4a8822
https://github.com/llvm/llvm-project/commit/30010f49ca4de03762a31202c82e9c763d4a8822
Author: Tony Varghese <tonypalampalliyil at gmail.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
A llvm/test/CodeGen/PowerPC/xxeval-vselect-x-eqv.ll
A llvm/test/CodeGen/PowerPC/xxeval-vselect-x-nand.ll
A llvm/test/CodeGen/PowerPC/xxeval-vselect-x-nor.ll
A llvm/test/CodeGen/PowerPC/xxeval-vselect-x-not-b.ll
A llvm/test/CodeGen/PowerPC/xxeval-vselect-x-not-c.ll
Log Message:
-----------
[NFC][PowerPC] Pre-commit testcases for locking down the xxsel instructions for ternary(A, X, eqv(B,C)), ternary(A, X, not(C)), ternary(A, X, not(B)), ternary(A, X, nand(B,C)) and ternary(A, X, nor(B,C)) patterns (#158091)
Pre-commit test case for exploitation of `xxsel` for ternary operations
of the pattern. This adds support for v4i32, v2i64, v16i8 and v8i16
operand types for the following patterns.
The following are the patterns involved in the change:
```
ternary(A, and(B,C), nor(B,C))
ternary(A, B, nor(B,C))
ternary(A, C, nor(B,C))
ternary(A, xor(B,C), nor(B,C))
ternary(A, not(C), nor(B,C))
ternary(A, not(B), nor(B,C))
ternary(A, nand(B,C), nor(B,C))
ternary(A, or(B,C), eqv(B,C))
ternary(A, nor(B,C), eqv(B,C))
ternary(A, not(C), eqv(B,C))
ternary(A, nand(B,C), eqv(B,C))
ternary(A, and(B,C), not(C))
ternary(A, B, not(C))
ternary(A, xor(B,C), not(C))
ternary(A, or(B,C), not(C))
ternary(A, not(B), not(C))
ternary(A, nand(B,C), not(C))
ternary(A, and(B,C), not(B))
ternary(A, xor(B,C), not(B))
ternary(A, or(B,C), not(B))
ternary(A, nand(B,C), not(B))
ternary(A, B, nand(B,C))
ternary(A, C, nand(B,C))
ternary(A, xor(B,C), nand(B,C))
ternary(A, or(B,C), nand(B,C))
ternary(A, eqv(B,C), nand(B,C))
```
Exploitation of `xxeval` for the above patterns to be added as a follow
up.
Co-authored-by: Tony Varghese <tony.varghese at ibm.com>
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list