From: Simon Pilgrim Date: Thu, 15 Jun 2023 11:53:29 +0000 (+0100) Subject: [GlobalIsel][X86] Add handling for G_FRAME_INDEX/G_GLOBAL_VALUE X-Git-Tag: upstream/17.0.6~4952 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=4e4bd29061de5e7790e47e78ec90e41e2ee7ee30;p=platform%2Fupstream%2Fllvm.git [GlobalIsel][X86] Add handling for G_FRAME_INDEX/G_GLOBAL_VALUE Replace the legacy legalizer versions --- diff --git a/llvm/lib/Target/X86/X86LegalizerInfo.cpp b/llvm/lib/Target/X86/X86LegalizerInfo.cpp index 83efc746..8b55c37 100644 --- a/llvm/lib/Target/X86/X86LegalizerInfo.cpp +++ b/llvm/lib/Target/X86/X86LegalizerInfo.cpp @@ -290,6 +290,8 @@ X86LegalizerInfo::X86LegalizerInfo(const X86Subtarget &STI, .widenScalarToNextPow2(1, /*Min*/ 32) .clampScalar(1, s32, sMaxScalar); + getActionDefinitionsBuilder({G_FRAME_INDEX, G_GLOBAL_VALUE}).legalFor({p0}); + // sext, zext, and anyext getActionDefinitionsBuilder({G_SEXT, G_ZEXT, G_ANYEXT}) .legalIf([=](const LegalityQuery &Query) { @@ -474,10 +476,6 @@ void X86LegalizerInfo::setLegalizerInfo32bit() { LegacyInfo.setAction({MemOp, 1, p0}, LegacyLegalizeActions::Legal); } - // Pointer-handling - LegacyInfo.setAction({G_FRAME_INDEX, p0}, LegacyLegalizeActions::Legal); - LegacyInfo.setAction({G_GLOBAL_VALUE, p0}, LegacyLegalizeActions::Legal); - // Merge/Unmerge for (const auto &Ty : {s16, s32, s64}) { LegacyInfo.setAction({G_MERGE_VALUES, Ty}, LegacyLegalizeActions::Legal);