[llvm] [X86] X86LegalizerInfo - use LegalFor instead if LegalIf for simple ISA/test pairs (PR #144675)
Dipesh Sharma via llvm-commits
llvm-commits at lists.llvm.org
Sun Jun 22 11:44:02 PDT 2025
================
@@ -267,9 +267,9 @@ X86LegalizerInfo::X86LegalizerInfo(const X86Subtarget &STI,
getActionDefinitionsBuilder({G_CTTZ_ZERO_UNDEF, G_CTTZ})
.legalIf([=](const LegalityQuery &Query) -> bool {
return (Query.Opcode == G_CTTZ_ZERO_UNDEF || Subtarget.hasBMI()) &&
- (typePairInSet(0, 1, {{s16, s16}, {s32, s32}})(Query) ||
- (Is64Bit && typePairInSet(0, 1, {{s64, s64}})(Query)));
+ (typePairInSet(0, 1, {{s16, s16}, {s32, s32}})(Query));
})
+ .legalFor(Is64Bit, {{s64, s64}})
.widenScalarToNextPow2(1, /*Min=*/16)
.clampScalar(1, s16, sMaxScalar)
.scalarSameSizeAs(0, 1);
----------------
dipeshs809 wrote:
Done, did it for both `G_CTTZ_ZERO_UNDEF ` and `G_ANYEXT`. Kindly have a look at it.
https://github.com/llvm/llvm-project/pull/144675
More information about the llvm-commits
mailing list