[llvm] [X86] X86LegalizerInfo - use LegalFor instead if LegalIf for simple ISA/test pairs (PR #144675)
Simon Pilgrim via llvm-commits
llvm-commits at lists.llvm.org
Fri Jun 20 03:12:15 PDT 2025
================
@@ -83,19 +84,15 @@ X86LegalizerInfo::X86LegalizerInfo(const X86Subtarget &STI,
// implicit/constants
getActionDefinitionsBuilder(G_IMPLICIT_DEF)
- .legalIf([=](const LegalityQuery &Query) -> bool {
- // 32/64-bits needs support for s64/s128 to handle cases:
- // s64 = EXTEND (G_IMPLICIT_DEF s32) -> s64 = G_IMPLICIT_DEF
- // s128 = EXTEND (G_IMPLICIT_DEF s32/s64) -> s128 = G_IMPLICIT_DEF
- return typeInSet(0, {p0, s1, s8, s16, s32, s64})(Query) ||
- (Is64Bit && typeInSet(0, {s128})(Query));
- });
+ .legalFor({p0, s1, s8, s16, s32, s64})
+ .legalFor(Is64Bit, {s128});
+ // 32/64-bits needs support for s64/s128 to handle cases:
+ // s64 = EXTEND (G_IMPLICIT_DEF s32) -> s64 = G_IMPLICIT_DEF
+ // s128 = EXTEND (G_IMPLICIT_DEF s32/s64) -> s128 = G_IMPLICIT_DEF
----------------
RKSimon wrote:
I meant:
```
// implicit/constants
// 32/64-bits needs support for s64/s128 to handle cases:
// s64 = EXTEND (G_IMPLICIT_DEF s32) -> s64 = G_IMPLICIT_DEF
// s128 = EXTEND (G_IMPLICIT_DEF s32/s64) -> s128 = G_IMPLICIT_DEF
getActionDefinitionsBuilder(G_IMPLICIT_DEF)
.legalFor({p0, s1, s8, s16, s32, s64})
.legalFor(Is64Bit, {s128});
```
https://github.com/llvm/llvm-project/pull/144675
More information about the llvm-commits
mailing list