diff --git a/clang/lib/Driver/ToolChains/Clang.cpp b/clang/lib/Driver/ToolChains/Clang.cpp --- a/clang/lib/Driver/ToolChains/Clang.cpp +++ b/clang/lib/Driver/ToolChains/Clang.cpp @@ -4404,6 +4404,10 @@ renderDwarfFormat(D, T, Args, CmdArgs, EffectiveDWARFVersion); RenderDebugInfoCompressionArgs(Args, CmdArgs, D, TC); + + bool EmitDwarfForAMDGCN = EmitDwarf && T.isAMDGCN(); + if (EmitDwarfForAMDGCN) + CmdArgs.append({"-mllvm", "-amdgpu-spill-cfi-saved-regs"}); } static void ProcessVSRuntimeLibrary(const ArgList &Args, diff --git a/clang/lib/Driver/ToolChains/HIPAMD.cpp b/clang/lib/Driver/ToolChains/HIPAMD.cpp --- a/clang/lib/Driver/ToolChains/HIPAMD.cpp +++ b/clang/lib/Driver/ToolChains/HIPAMD.cpp @@ -147,6 +147,11 @@ Args.MakeArgString(Twine("-plugin-opt=") + A->getValue(0))); } + if (Arg *A = Args.getLastArgNoClaim(options::OPT_g_Group)) + if (!A->getOption().matches(options::OPT_g0) && + !A->getOption().matches(options::OPT_ggdb0)) + LldArgs.push_back("-plugin-opt=-amdgpu-spill-cfi-saved-regs"); + if (C.getDriver().isSaveTempsEnabled()) LldArgs.push_back("-save-temps"); diff --git a/llvm/include/llvm/MC/MCAsmInfo.h b/llvm/include/llvm/MC/MCAsmInfo.h --- a/llvm/include/llvm/MC/MCAsmInfo.h +++ b/llvm/include/llvm/MC/MCAsmInfo.h @@ -496,6 +496,11 @@ /// location is allowed. bool SupportsExtendedDwarfLocDirective = true; + /// True if the target supports the extensions defined at + /// https://llvm.org/docs/AMDGPUDwarfProposalForHeterogeneousDebugging.html. + /// Defaults to false. + bool SupportsHeterogeneousDebuggingExtensions = false; + //===--- Prologue State ----------------------------------------------===// std::vector InitialFrameState; @@ -778,6 +783,10 @@ bool doesSupportDebugInformation() const { return SupportsDebugInformation; } + bool doesSupportExceptionHandling() const { + return ExceptionsType != ExceptionHandling::None; + } + ExceptionHandling getExceptionHandlingType() const { return ExceptionsType; } WinEH::EncodingType getWinEHEncodingType() const { return WinEHEncodingType; } @@ -813,6 +822,9 @@ bool supportsExtendedDwarfLocDirective() const { return SupportsExtendedDwarfLocDirective; } + bool supportsHeterogeneousDebuggingExtensions() const { + return SupportsHeterogeneousDebuggingExtensions; + } bool usesDwarfFileAndLocDirectives() const { return UsesDwarfFileAndLocDirectives; diff --git a/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h b/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h --- a/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h +++ b/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h @@ -397,6 +397,9 @@ AccelTableKind TheAccelTableKind; bool HasAppleExtensionAttributes; bool HasSplitDwarf; + // Enables extensions defined at + // https://llvm.org/docs/AMDGPUDwarfProposalForHeterogeneousDebugging.html + bool HasHeterogeneousExtensionAttributes; /// Whether to generate the DWARF v5 string offsets table. /// It consists of a series of contributions, each preceded by a header. @@ -730,6 +733,13 @@ return HasAppleExtensionAttributes; } + /// Returns whether extensions defined at + /// https://llvm.org/docs/AMDGPUDwarfProposalForHeterogeneousDebugging.html + /// are enabled. + bool useHeterogeneousExtensionAttributes() const { + return HasHeterogeneousExtensionAttributes; + } + /// Returns whether or not to change the current debug info for the /// split dwarf proposal support. bool useSplitDwarf() const { return HasSplitDwarf; } diff --git a/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp b/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp --- a/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp +++ b/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp @@ -373,6 +373,8 @@ UseLocSection = !TT.isNVPTX(); HasAppleExtensionAttributes = tuneForLLDB(); + HasHeterogeneousExtensionAttributes = + Asm->MAI->supportsHeterogeneousDebuggingExtensions(); // Handle split DWARF. HasSplitDwarf = !Asm->TM.Options.MCOptions.SplitDwarfFile.empty(); @@ -1071,6 +1073,10 @@ dwarf::DW_FORM_data1, RVer); } + if (useHeterogeneousExtensionAttributes()) { + NewCU.addString(Die, dwarf::DW_AT_LLVM_augmentation, "[llvm:v0.0]"); + } + if (DIUnit->getDWOId()) { // This CU is either a clang module DWO or a skeleton CU. NewCU.addUInt(Die, dwarf::DW_AT_GNU_dwo_id, dwarf::DW_FORM_data8, diff --git a/llvm/lib/MC/MCDwarf.cpp b/llvm/lib/MC/MCDwarf.cpp --- a/llvm/lib/MC/MCDwarf.cpp +++ b/llvm/lib/MC/MCDwarf.cpp @@ -1565,6 +1565,7 @@ MCContext &context = Streamer.getContext(); const MCRegisterInfo *MRI = context.getRegisterInfo(); const MCObjectFileInfo *MOFI = context.getObjectFileInfo(); + const MCAsmInfo *MAI = context.getAsmInfo(); MCSymbol *sectionStart = context.createTempSymbol(); Streamer.emitLabel(sectionStart); @@ -1594,8 +1595,8 @@ uint8_t CIEVersion = getCIEVersion(IsEH, context.getDwarfVersion()); Streamer.emitInt8(CIEVersion); + SmallString<8> Augmentation; if (IsEH) { - SmallString<8> Augmentation; Augmentation += "z"; if (Frame.Personality) Augmentation += "P"; @@ -1608,8 +1609,10 @@ Augmentation += "B"; if (Frame.IsMTETaggedFrame) Augmentation += "G"; - Streamer.emitBytes(Augmentation); } + if (MAI->supportsHeterogeneousDebuggingExtensions()) + Augmentation += "[llvm:v0.0]"; + Streamer.emitBytes(Augmentation); Streamer.emitInt8(0); if (CIEVersion >= 4) { @@ -1673,7 +1676,6 @@ // Initial Instructions - const MCAsmInfo *MAI = context.getAsmInfo(); if (!Frame.IsSimple) { const std::vector &Instructions = MAI->getInitialFrameState(); diff --git a/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCAsmInfo.cpp b/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCAsmInfo.cpp --- a/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCAsmInfo.cpp +++ b/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCAsmInfo.cpp @@ -42,6 +42,7 @@ SupportsDebugInformation = true; UsesCFIForDebug = true; DwarfRegNumForCFI = true; + SupportsHeterogeneousDebuggingExtensions = true; UseIntegratedAssembler = false; } diff --git a/llvm/lib/Target/AMDGPU/SIFrameLowering.h b/llvm/lib/Target/AMDGPU/SIFrameLowering.h --- a/llvm/lib/Target/AMDGPU/SIFrameLowering.h +++ b/llvm/lib/Target/AMDGPU/SIFrameLowering.h @@ -39,7 +39,8 @@ void emitCSRSpillStores(MachineFunction &MF, MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI, DebugLoc &DL, LivePhysRegs &LiveRegs, Register FrameReg, - Register FramePtrRegScratchCopy) const; + Register FramePtrRegScratchCopy, + const bool NeedsFrameMoves) const; void emitCSRSpillRestores(MachineFunction &MF, MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI, DebugLoc &DL, LivePhysRegs &LiveRegs, Register FrameReg, @@ -66,6 +67,11 @@ MachineBasicBlock &MBB, MachineBasicBlock::iterator MI) const override; + bool spillCalleeSavedRegisters(MachineBasicBlock &MBB, + MachineBasicBlock::iterator MBBI, + const ArrayRef CSI, + const TargetRegisterInfo *TRI) const override; + private: void emitEntryFunctionFlatScratchInit(MachineFunction &MF, MachineBasicBlock &MBB, @@ -81,10 +87,63 @@ Register PreloadedPrivateBufferReg, Register ScratchRsrcReg, Register ScratchWaveOffsetReg) const; + void emitPrologueEntryCFI(MachineBasicBlock &MBB, + MachineBasicBlock::iterator MBBI, + const DebugLoc &DL) const; + public: bool hasFP(const MachineFunction &MF) const override; bool requiresStackPointerReference(const MachineFunction &MF) const; + + /// If '-amdgpu-spill-cfi-saved-regs' is enabled, emit RA/EXEC spills to + /// a free VGPR (lanes) or memory and corresponding CFI rules. + void emitCFISavedRegSpills(MachineFunction &MF, MachineBasicBlock &MBB, + MachineBasicBlock::iterator MBBI, + LivePhysRegs &LiveRegs, + bool emitSpillsToMem) const; + + /// Create a CFI index for CFIInst and build a MachineInstr around it. + MachineInstr * + buildCFI(MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI, + const DebugLoc &DL, const MCCFIInstruction &CFIInst, + MachineInstr::MIFlag flag = MachineInstr::FrameSetup) const; + /// Create a CFI index describing a spill of the register \p Reg to another + /// register \p RegCopy and build a MachineInstr around it. + MachineInstr *buildCFIForRegToRegSpill(MachineBasicBlock &MBB, + MachineBasicBlock::iterator MBBI, + const DebugLoc &DL, const Register Reg, + const Register RegCopy) const; + /// Create a CFI index describing a spill of an SGPR to a single lane of + /// a VGPR and build a MachineInstr around it. + MachineInstr *buildCFIForSGPRToVGPRSpill(MachineBasicBlock &MBB, + MachineBasicBlock::iterator MBBI, + const DebugLoc &DL, + const Register SGPR, + const Register VGPR, + const int Lane) const; + /// Create a CFI index describing a spill of an SGPR to multiple lanes of + /// VGPRs and build a MachineInstr around it. + MachineInstr *buildCFIForSGPRToVGPRSpill( + MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI, + const DebugLoc &DL, Register SGPR, + ArrayRef VGPRSpills) const; + /// Create a CFI index describing a spill of a SGPR to VMEM and + /// build a MachineInstr around it. + MachineInstr *buildCFIForSGPRToVMEMSpill(MachineBasicBlock &MBB, + MachineBasicBlock::iterator MBBI, + const DebugLoc &DL, unsigned SGPR, + int64_t Offset) const; + /// Create a CFI index describing a spill of a VGPR to VMEM and + /// build a MachineInstr around it. + MachineInstr *buildCFIForVGPRToVMEMSpill(MachineBasicBlock &MBB, + MachineBasicBlock::iterator MBBI, + const DebugLoc &DL, unsigned VGPR, + int64_t Offset) const; + MachineInstr *buildCFIForRegToSGPRPairSpill(MachineBasicBlock &MBB, + MachineBasicBlock::iterator MBBI, + const DebugLoc &DL, Register Reg, + Register SGPRPair) const; }; } // end namespace llvm diff --git a/llvm/lib/Target/AMDGPU/SIFrameLowering.cpp b/llvm/lib/Target/AMDGPU/SIFrameLowering.cpp --- a/llvm/lib/Target/AMDGPU/SIFrameLowering.cpp +++ b/llvm/lib/Target/AMDGPU/SIFrameLowering.cpp @@ -13,7 +13,9 @@ #include "SIMachineFunctionInfo.h" #include "llvm/CodeGen/LivePhysRegs.h" #include "llvm/CodeGen/MachineFrameInfo.h" +#include "llvm/CodeGen/MachineModuleInfo.h" #include "llvm/CodeGen/RegisterScavenging.h" +#include "llvm/Support/LEB128.h" #include "llvm/Target/TargetMachine.h" using namespace llvm; @@ -66,7 +68,8 @@ static void getVGPRSpillLaneOrTempRegister( MachineFunction &MF, LivePhysRegs &LiveRegs, Register SGPR, - const TargetRegisterClass &RC = AMDGPU::SReg_32_XM0_XEXECRegClass) { + const TargetRegisterClass &RC = AMDGPU::SReg_32_XM0_XEXECRegClass, + bool IncludeScratchCopy = true) { SIMachineFunctionInfo *MFI = MF.getInfo(); MachineFrameInfo &FrameInfo = MF.getFrameInfo(); @@ -77,9 +80,12 @@ // We need to save and restore the given SGPR. + Register ScratchSGPR; // 1: Try to save the given register into an unused scratch SGPR. The LiveRegs - // should have all the callee saved registers marked as used. - Register ScratchSGPR = findUnusedRegister(MF.getRegInfo(), LiveRegs, RC); + // should have all the callee saved registers marked as used. For certain + // cases we skip copy to scratch SGPR. + if (IncludeScratchCopy) + ScratchSGPR = findUnusedRegister(MF.getRegInfo(), LiveRegs, RC); if (!ScratchSGPR) { int FI = FrameInfo.CreateStackObject(Size, Alignment, true, nullptr, @@ -220,6 +226,8 @@ SIMachineFunctionInfo *FuncInfo; const SIInstrInfo *TII; const SIRegisterInfo &TRI; + const MCRegisterInfo *MCRI; + const SIFrameLowering *TFI; Register SuperReg; const PrologEpilogSGPRSaveRestoreInfo SI; LivePhysRegs &LiveRegs; @@ -228,9 +236,16 @@ ArrayRef SplitParts; unsigned NumSubRegs; unsigned EltSize = 4; + bool IsFramePtrPrologSpill; + bool NeedsFrameMoves; + + bool isExec(Register Reg) const { + return Reg == AMDGPU::EXEC_LO || Reg == AMDGPU::EXEC; + } void saveToMemory(const int FI) const { MachineRegisterInfo &MRI = MF.getRegInfo(); + const GCNSubtarget &ST = MF.getSubtarget(); assert(!MFI.isDeadObjectIndex(FI)); initLiveRegs(LiveRegs, TRI, FuncInfo, MF, MBB, MI, /*IsProlog*/ true); @@ -249,6 +264,20 @@ buildPrologSpill(ST, TRI, *FuncInfo, LiveRegs, MF, MBB, MI, DL, TmpVGPR, FI, FrameReg, DwordOff); + if (NeedsFrameMoves) { + if (isExec(SuperReg) && (I == NumSubRegs - 1)) + SubReg = AMDGPU::EXEC; + else if (IsFramePtrPrologSpill) + SubReg = FuncInfo->getFrameOffsetReg(); + + // FIXME: CFI for EXEC needs a fix by accurately computing the spill + // offset for both the low and high components. + if (SubReg != AMDGPU::EXEC_LO) + TFI->buildCFI(MBB, MI, DL, + MCCFIInstruction::createOffset( + nullptr, MCRI->getDwarfRegNum(SubReg, false), + MFI.getObjectOffset(FI) * ST.getWavefrontSize())); + } DwordOff += 4; } } @@ -269,6 +298,19 @@ .addReg(SubReg) .addImm(Spill[I].Lane) .addReg(Spill[I].VGPR, RegState::Undef); + if (NeedsFrameMoves) { + if (isExec(SuperReg)) { + if (I == NumSubRegs - 1) + TFI->buildCFIForSGPRToVGPRSpill(MBB, MI, DL, AMDGPU::EXEC, Spill); + } else if (IsFramePtrPrologSpill) { + TFI->buildCFIForSGPRToVGPRSpill(MBB, MI, DL, + FuncInfo->getFrameOffsetReg(), + Spill[I].VGPR, Spill[I].Lane); + } else { + TFI->buildCFIForSGPRToVGPRSpill(MBB, MI, DL, SubReg, Spill[I].VGPR, + Spill[I].Lane); + } + } } } @@ -276,10 +318,35 @@ BuildMI(MBB, MI, DL, TII->get(AMDGPU::COPY), DstReg) .addReg(SuperReg) .setMIFlag(MachineInstr::FrameSetup); + if (NeedsFrameMoves) { + const TargetRegisterClass *RC = TRI.getPhysRegBaseClass(DstReg); + ArrayRef DstSplitParts = TRI.getRegSplitParts(RC, EltSize); + unsigned DstNumSubRegs = DstSplitParts.empty() ? 1 : DstSplitParts.size(); + assert(NumSubRegs == DstNumSubRegs); + for (unsigned I = 0; I < NumSubRegs; ++I) { + Register SrcSubReg = + NumSubRegs == 1 ? SuperReg + : Register(TRI.getSubReg(SuperReg, SplitParts[I])); + Register DstSubReg = + NumSubRegs == 1 ? DstReg + : Register(TRI.getSubReg(DstReg, DstSplitParts[I])); + if (isExec(SuperReg)) { + if (I == NumSubRegs - 1) + TFI->buildCFIForRegToSGPRPairSpill(MBB, MI, DL, AMDGPU::EXEC, + DstReg); + } else { + TFI->buildCFI(MBB, MI, DL, + MCCFIInstruction::createRegister( + nullptr, MCRI->getDwarfRegNum(SrcSubReg, false), + MCRI->getDwarfRegNum(DstSubReg, false))); + } + } + } } void restoreFromMemory(const int FI) { MachineRegisterInfo &MRI = MF.getRegInfo(); + const GCNSubtarget &ST = MF.getSubtarget(); initLiveRegs(LiveRegs, TRI, FuncInfo, MF, MBB, MI, /*IsProlog*/ false); MCPhysReg TmpVGPR = findScratchNonCalleeSaveRegister( @@ -329,15 +396,22 @@ MachineBasicBlock::iterator MI, const DebugLoc &DL, const SIInstrInfo *TII, const SIRegisterInfo &TRI, - LivePhysRegs &LiveRegs, Register FrameReg) + LivePhysRegs &LiveRegs, Register FrameReg, + bool IsFramePtrPrologSpill = false) : MI(MI), MBB(MBB), MF(*MBB.getParent()), ST(MF.getSubtarget()), MFI(MF.getFrameInfo()), FuncInfo(MF.getInfo()), TII(TII), TRI(TRI), - SuperReg(Reg), SI(SI), LiveRegs(LiveRegs), DL(DL), FrameReg(FrameReg) { + MCRI(MF.getMMI().getContext().getRegisterInfo()), + TFI(ST.getFrameLowering()), SuperReg(Reg), SI(SI), LiveRegs(LiveRegs), + DL(DL), FrameReg(FrameReg), + IsFramePtrPrologSpill(IsFramePtrPrologSpill) { const TargetRegisterClass *RC = TRI.getPhysRegBaseClass(SuperReg); SplitParts = TRI.getRegSplitParts(RC, EltSize); NumSubRegs = SplitParts.empty() ? 1 : SplitParts.size(); + // FIXME: Switch to using MF.needsFrameMoves() later. + NeedsFrameMoves = true; + assert(SuperReg != AMDGPU::M0 && "m0 should never spill"); } @@ -511,12 +585,21 @@ } // Note SGPRSpill stack IDs should only be used for SGPR spilling to VGPRs, not -// memory. They should have been removed by now. -static bool allStackObjectsAreDead(const MachineFrameInfo &MFI) { +// memory. They should have been removed by now, except CFI Saved Reg spills. +static bool allStackObjectsAreDead(const MachineFunction &MF) { + const MachineFrameInfo &MFI = MF.getFrameInfo(); + const SIMachineFunctionInfo *FuncInfo = MF.getInfo(); for (int I = MFI.getObjectIndexBegin(), E = MFI.getObjectIndexEnd(); I != E; ++I) { - if (!MFI.isDeadObjectIndex(I)) + if (!MFI.isDeadObjectIndex(I)) { + // determineCalleeSaves() might have added the SGPRSpill stack IDs for + // CFI saves into scratch VGPR, ignore them + if (MFI.getStackID(I) == TargetStackID::SGPRSpill && + FuncInfo->checkIndexInPrologEpilogSGPRSpills(I)) { + continue; + } return false; + } } return true; @@ -536,8 +619,8 @@ Register ScratchRsrcReg = MFI->getScratchRSrcReg(); - if (!ScratchRsrcReg || (!MRI.isPhysRegUsed(ScratchRsrcReg) && - allStackObjectsAreDead(MF.getFrameInfo()))) + if (!ScratchRsrcReg || + (!MRI.isPhysRegUsed(ScratchRsrcReg) && allStackObjectsAreDead(MF))) return Register(); if (ST.hasSGPRInitBug() || @@ -600,10 +683,40 @@ const SIRegisterInfo *TRI = &TII->getRegisterInfo(); MachineRegisterInfo &MRI = MF.getRegInfo(); const Function &F = MF.getFunction(); + const MCRegisterInfo *MCRI = MF.getMMI().getContext().getRegisterInfo(); MachineFrameInfo &FrameInfo = MF.getFrameInfo(); assert(MFI->isEntryFunction()); + // Debug location must be unknown since the first debug location is used to + // determine the end of the prologue. + DebugLoc DL; + MachineBasicBlock::iterator I = MBB.begin(); + + // FIXME: Switch to using MF.needsFrameMoves() later + const bool NeedsFrameMoves = true; + + if (NeedsFrameMoves) { + // On entry the SP/FP are not set up, so we need to define the CFA in terms + // of a literal location expression. + static const char CFAEncodedInst[] = { + dwarf::DW_CFA_def_cfa_expression, + 4, // length + static_cast(dwarf::DW_OP_lit0), + static_cast( + dwarf::DW_OP_lit6), // DW_ASPACE_AMDGPU_private_wave FIXME: + // should be defined elsewhere + static_cast(dwarf::DW_OP_LLVM_user), + static_cast(dwarf::DW_OP_LLVM_form_aspace_address)}; + buildCFI(MBB, I, DL, + MCCFIInstruction::createEscape( + nullptr, StringRef(CFAEncodedInst, sizeof(CFAEncodedInst)))); + // Unwinding halts when the return address (PC) is undefined. + buildCFI(MBB, I, DL, + MCCFIInstruction::createUndefined( + nullptr, MCRI->getDwarfRegNum(AMDGPU::PC_REG, false))); + } + Register PreloadedScratchWaveOffsetReg = MFI->getPreloadedReg( AMDGPUFunctionArgInfo::PRIVATE_SEGMENT_WAVE_BYTE_OFFSET); @@ -640,11 +753,6 @@ } } - // Debug location must be unknown since the first debug location is used to - // determine the end of the prologue. - DebugLoc DL; - MachineBasicBlock::iterator I = MBB.begin(); - // We found the SRSRC first because it needs four registers and has an // alignment requirement. If the SRSRC that we found is clobbering with // the scratch wave offset, which may be in a fixed SGPR or a free SGPR @@ -688,7 +796,7 @@ bool NeedsFlatScratchInit = MFI->hasFlatScratchInit() && (MRI.isPhysRegUsed(AMDGPU::FLAT_SCR) || FrameInfo.hasCalls() || - (!allStackObjectsAreDead(FrameInfo) && ST.enableFlatScratch())); + (!allStackObjectsAreDead(MF) && ST.enableFlatScratch())); if ((NeedsFlatScratchInit || ScratchRsrcReg) && PreloadedScratchWaveOffsetReg && !ST.flatScratchIsArchitected()) { @@ -865,6 +973,50 @@ llvm_unreachable("Invalid TargetStackID::Value"); } +void SIFrameLowering::emitPrologueEntryCFI(MachineBasicBlock &MBB, + MachineBasicBlock::iterator MBBI, + const DebugLoc &DL) const { + const MachineFunction &MF = *MBB.getParent(); + const MachineRegisterInfo &MRI = MF.getRegInfo(); + const MCRegisterInfo *MCRI = MF.getMMI().getContext().getRegisterInfo(); + const GCNSubtarget &ST = MF.getSubtarget(); + const SIRegisterInfo &TRI = ST.getInstrInfo()->getRegisterInfo(); + Register StackPtrReg = + MF.getInfo()->getStackPtrOffsetReg(); + + // DW_ASPACE_AMDGPU_private_wave FIXME: should be defined elsewhere + buildCFI(MBB, MBBI, DL, + MCCFIInstruction::createLLVMDefAspaceCfa( + nullptr, MCRI->getDwarfRegNum(StackPtrReg, false), 0, 6)); + + buildCFIForRegToSGPRPairSpill(MBB, MBBI, DL, AMDGPU::PC_REG, + TRI.getReturnAddressReg(MF)); + + BitVector IsCalleeSaved(TRI.getNumRegs()); + const MCPhysReg *CSRegs = MRI.getCalleeSavedRegs(); + for (unsigned I = 0; CSRegs[I]; ++I) { + IsCalleeSaved.set(CSRegs[I]); + } + auto ProcessReg = [&](MCPhysReg Reg) { + if (IsCalleeSaved.test(Reg) || !MRI.isPhysRegModified(Reg)) + return; + MCRegister DwarfReg = MCRI->getDwarfRegNum(Reg, false); + buildCFI(MBB, MBBI, DL, + MCCFIInstruction::createUndefined(nullptr, DwarfReg)); + }; + + // Emit CFI rules for caller saved Arch VGPRs which are clobbered + for_each(AMDGPU::VGPR_32RegClass.getRegisters(), ProcessReg); + + // Emit CFI rules for caller saved Accum VGPRs which are clobbered + if (ST.hasMAIInsts()) { + for_each(AMDGPU::AGPR_32RegClass.getRegisters(), ProcessReg); + } + + // Emit CFI rules for caller saved SGPRs which are clobbered + for_each(AMDGPU::SGPR_32RegClass.getRegisters(), ProcessReg); +} + // Activate only the inactive lanes when \p EnableInactiveLanes is true. // Otherwise, activate all lanes. It returns the saved exec. static Register buildScratchExecCopy(LivePhysRegs &LiveRegs, @@ -901,14 +1053,19 @@ return ScratchExecCopy; } -void SIFrameLowering::emitCSRSpillStores( - MachineFunction &MF, MachineBasicBlock &MBB, - MachineBasicBlock::iterator MBBI, DebugLoc &DL, LivePhysRegs &LiveRegs, - Register FrameReg, Register FramePtrRegScratchCopy) const { +void SIFrameLowering::emitCSRSpillStores(MachineFunction &MF, + MachineBasicBlock &MBB, + MachineBasicBlock::iterator MBBI, + DebugLoc &DL, LivePhysRegs &LiveRegs, + Register FrameReg, + Register FramePtrRegScratchCopy, + const bool NeedsFrameMoves) const { SIMachineFunctionInfo *FuncInfo = MF.getInfo(); + MachineFrameInfo &MFI = MF.getFrameInfo(); const GCNSubtarget &ST = MF.getSubtarget(); const SIInstrInfo *TII = ST.getInstrInfo(); const SIRegisterInfo &TRI = TII->getRegisterInfo(); + const MCRegisterInfo *MCRI = MF.getMMI().getContext().getRegisterInfo(); // Spill Whole-Wave Mode VGPRs. Save only the inactive lanes of the scratch // registers. However, save all lanes of callee-saved VGPRs. Due to this, we @@ -928,6 +1085,12 @@ int FI = Reg.second; buildPrologSpill(ST, TRI, *FuncInfo, LiveRegs, MF, MBB, MBBI, DL, VGPR, FI, FrameReg); + if (NeedsFrameMoves) + // We spill the entire VGPR, so we can get away with just cfi_offset + buildCFI(MBB, MBBI, DL, + MCCFIInstruction::createOffset( + nullptr, MCRI->getDwarfRegNum(VGPR, false), + MFI.getObjectOffset(FI) * ST.getWavefrontSize())); } }; @@ -961,13 +1124,13 @@ // Skip if FP is saved to a scratch SGPR, the save has already been emitted. // Otherwise, FP has been moved to a temporary register and spill it // instead. - Register Reg = - Spill.first == FramePtrReg ? FramePtrRegScratchCopy : Spill.first; + bool IsFramePtrPrologSpill = Spill.first == FramePtrReg ? true : false; + Register Reg = IsFramePtrPrologSpill ? FramePtrRegScratchCopy : Spill.first; if (!Reg) continue; PrologEpilogSGPRSpillBuilder SB(Reg, Spill.second, MBB, MBBI, DL, TII, TRI, - LiveRegs, FrameReg); + LiveRegs, FrameReg, IsFramePtrPrologSpill); SB.save(); } @@ -987,6 +1150,11 @@ LiveRegs.addReg(Reg); } } + + // Remove the spill entry created for EXEC. It is needed only for CFISaves in + // the prologue. + if (TRI.isCFISavedRegsSpillEnabled()) + FuncInfo->removePrologEpilogSGPRSpillEntry(TRI.getExec()); } void SIFrameLowering::emitCSRSpillRestores( @@ -1071,6 +1239,7 @@ const GCNSubtarget &ST = MF.getSubtarget(); const SIInstrInfo *TII = ST.getInstrInfo(); const SIRegisterInfo &TRI = TII->getRegisterInfo(); + const MCRegisterInfo *MCRI = MF.getMMI().getContext().getRegisterInfo(); MachineRegisterInfo &MRI = MF.getRegInfo(); Register StackPtrReg = FuncInfo->getStackPtrOffsetReg(); @@ -1089,6 +1258,12 @@ uint32_t NumBytes = MFI.getStackSize(); uint32_t RoundedSize = NumBytes; + // FIXME: Switch to using MF.needsFrameMoves() later + const bool NeedsFrameMoves = true; + + if (NeedsFrameMoves) + emitPrologueEntryCFI(MBB, MBBI, DL); + if (TRI.hasStackRealignment(MF)) HasFP = true; @@ -1096,7 +1271,7 @@ if (!HasFP && !hasFP(MF)) { // Emit the CSR spill stores with SP base register. emitCSRSpillStores(MF, MBB, MBBI, DL, LiveRegs, StackPtrReg, - FramePtrRegScratchCopy); + FramePtrRegScratchCopy, NeedsFrameMoves); } else { // CSR spill stores will use FP as base register. Register SGPRForFPSaveRestoreCopy = @@ -1110,7 +1285,8 @@ PrologEpilogSGPRSpillBuilder SB( FramePtrReg, FuncInfo->getPrologEpilogSGPRSaveRestoreInfo(FramePtrReg), MBB, MBBI, - DL, TII, TRI, LiveRegs, FramePtrReg); + DL, TII, TRI, LiveRegs, FramePtrReg, + /*IsFramePtrPrologSpill*/ true); SB.save(); LiveRegs.addReg(SGPRForFPSaveRestoreCopy); } else { @@ -1157,11 +1333,10 @@ // If FP is used, emit the CSR spills with FP base register. if (HasFP) { emitCSRSpillStores(MF, MBB, MBBI, DL, LiveRegs, FramePtrReg, - FramePtrRegScratchCopy); + FramePtrRegScratchCopy, NeedsFrameMoves); if (FramePtrRegScratchCopy) LiveRegs.removeReg(FramePtrRegScratchCopy); } - // If we need a base pointer, set it up here. It's whatever the value of // the stack pointer is at this point. Any variable size objects will be // allocated after this, so we can still use the base pointer to reference @@ -1172,6 +1347,13 @@ .setMIFlag(MachineInstr::FrameSetup); } + if (HasFP) { + if (NeedsFrameMoves) + buildCFI(MBB, MBBI, DL, + MCCFIInstruction::createDefCfaRegister( + nullptr, MCRI->getDwarfRegNum(FramePtrReg, false))); + } + if (HasFP && RoundedSize != 0) { auto Add = BuildMI(MBB, MBBI, DL, TII->get(AMDGPU::S_ADD_I32), StackPtrReg) .addReg(StackPtrReg) @@ -1262,6 +1444,18 @@ Add->getOperand(3).setIsDead(); // Mark SCC as dead. } + const MCRegisterInfo *MCRI = MF.getMMI().getContext().getRegisterInfo(); + + // FIXME: Switch to using MF.needsFrameMoves() later + const bool NeedsFrameMoves = true; + if (hasFP(MF)) { + if (NeedsFrameMoves) + buildCFI(MBB, MBBI, DL, + MCCFIInstruction::createDefCfaRegister( + nullptr, MCRI->getDwarfRegNum(StackPtrReg, false)), + MachineInstr::FrameDestroy); + } + if (FPSaved) { // Insert the copy to restore FP. Register SrcReg = SGPRForFPSaveRestoreCopy ? SGPRForFPSaveRestoreCopy @@ -1397,14 +1591,14 @@ // can. Any remaining SGPR spills will go to memory, so move them back to the // default stack. bool HaveSGPRToVMemSpill = - FuncInfo->removeDeadFrameIndices(MFI, /*ResetSGPRSpillStackIDs*/ true); + FuncInfo->removeDeadFrameIndices(MF, /*ResetSGPRSpillStackIDs*/ true); assert(allSGPRSpillsAreDead(MF) && "SGPR spill should have been removed in SILowerSGPRSpills"); // FIXME: The other checks should be redundant with allStackObjectsAreDead, // but currently hasNonSpillStackObjects is set only from source // allocas. Stack temps produced from legalization are not counted currently. - if (!allStackObjectsAreDead(MFI)) { + if (!allStackObjectsAreDead(MF)) { assert(RS && "RegScavenger required if spilling"); // Add an emergency spill slot @@ -1461,6 +1655,21 @@ for (unsigned I = 0; CSRegs[I]; ++I) LiveRegs.addReg(CSRegs[I]); + const TargetRegisterClass &RC = ST.isWave32() + ? AMDGPU::SReg_32_XM0_XEXECRegClass + : AMDGPU::SGPR_64RegClass; + if (TRI->isCFISavedRegsSpillEnabled()) { + Register Exec = TRI->getExec(); + assert(!MFI->hasPrologEpilogSGPRSpillEntry(Exec) && + "Re-reserving spill slot for EXEC"); + // FIXME: Machine Copy Propagation currently optimizes away the EXEC copy to + // the scratch as we emit it only in the prolog. This optimization should + // not happen for frame related instructions. Until this is fixed ignore + // copy to scratch SGPR. + getVGPRSpillLaneOrTempRegister(MF, LiveRegs, Exec, RC, + /* IncludeScratchCopy */ false); + } + // hasFP only knows about stack objects that already exist. We're now // determining the stack slots that will be created, so we have to predict // them. Stack objects force FP usage with calls. @@ -1470,8 +1679,7 @@ // // FIXME: Is this really hasReservedCallFrame? const bool WillHaveFP = - FrameInfo.hasCalls() && - (SavedVGPRs.any() || !allStackObjectsAreDead(FrameInfo)); + FrameInfo.hasCalls() && (SavedVGPRs.any() || !allStackObjectsAreDead(MF)); if (WillHaveFP || hasFP(MF)) { Register FramePtrReg = MFI->getFrameOffsetReg(); @@ -1750,3 +1958,265 @@ // references the SP, like variable sized stack objects. return frameTriviallyRequiresSP(MFI); } + +bool SIFrameLowering::spillCalleeSavedRegisters( + MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI, + const ArrayRef CSI, const TargetRegisterInfo *TRI) const { + MachineFunction &MF = *MBB.getParent(); + const GCNSubtarget &ST = MF.getSubtarget(); + const SIRegisterInfo *RI = ST.getRegisterInfo(); + const SIInstrInfo *TII = ST.getInstrInfo(); + + for (const CalleeSavedInfo &CS : CSI) { + // Insert the spill to the stack frame. + unsigned Reg = CS.getReg(); + + if (CS.isSpilledToReg()) { + BuildMI(MBB, MBBI, DebugLoc(), TII->get(TargetOpcode::COPY), + CS.getDstReg()) + .addReg(Reg, getKillRegState(true)); + } else { + const TargetRegisterClass *RC = TRI->getMinimalPhysRegClass( + Reg, Reg == RI->getReturnAddressReg(MF) ? MVT::i64 : MVT::i32); + const MachineRegisterInfo &MRI = MF.getRegInfo(); + // If this value was already livein, we probably have a direct use of the + // incoming register value, so don't kill at the spill point. This happens + // since we pass some special inputs (workgroup IDs) in the callee saved + // range. + const bool IsLiveIn = MRI.isLiveIn(Reg); + TII->storeRegToStackSlotCFI(MBB, MBBI, Reg, !IsLiveIn, CS.getFrameIdx(), + RC, TRI); + } + } + + return true; +} + +MachineInstr *SIFrameLowering::buildCFI(MachineBasicBlock &MBB, + MachineBasicBlock::iterator MBBI, + const DebugLoc &DL, + const MCCFIInstruction &CFIInst, + MachineInstr::MIFlag flag) const { + MachineFunction &MF = *MBB.getParent(); + const SIInstrInfo *TII = MF.getSubtarget().getInstrInfo(); + return BuildMI(MBB, MBBI, DL, TII->get(TargetOpcode::CFI_INSTRUCTION)) + .addCFIIndex(MF.addFrameInst(CFIInst)) + .setMIFlag(flag); +} + +MachineInstr *SIFrameLowering::buildCFIForRegToRegSpill( + MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI, + const DebugLoc &DL, const Register Reg, const Register RegCopy) const { + MachineFunction &MF = *MBB.getParent(); + const MCRegisterInfo &MCRI = *MF.getMMI().getContext().getRegisterInfo(); + return buildCFI( + MBB, MBBI, DL, + MCCFIInstruction::createRegister(nullptr, MCRI.getDwarfRegNum(Reg, false), + MCRI.getDwarfRegNum(RegCopy, false))); +} + +static void encodeDwarfRegisterLocation(int DwarfReg, raw_ostream &OS) { + if (DwarfReg < 32) { + OS << uint8_t(dwarf::DW_OP_reg0 + DwarfReg); + } else { + OS << uint8_t(dwarf::DW_OP_regx); + encodeULEB128(DwarfReg, OS); + } +} + +static constexpr unsigned SGPRBitSize = 32; +static constexpr unsigned SGPRByteSize = SGPRBitSize / 8; +static constexpr unsigned VGPRLaneBitSize = 32; + +MachineInstr *SIFrameLowering::buildCFIForSGPRToVGPRSpill( + MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI, + const DebugLoc &DL, const Register SGPR, const Register VGPR, + const int Lane) const { + const MachineFunction &MF = *MBB.getParent(); + const MCRegisterInfo &MCRI = *MF.getMMI().getContext().getRegisterInfo(); + + int DwarfSGPR = MCRI.getDwarfRegNum(SGPR, false); + int DwarfVGPR = MCRI.getDwarfRegNum(VGPR, false); + + // CFI for an SGPR spilled to a single lane of a VGPR is implemented as an + // expression(E) rule where E is a register location description referencing + // a VGPR register location storage at a byte offset of the lane index + // multiplied by the size of an SGPR (4 bytes). In other words we generate + // the following DWARF: + // + // DW_CFA_expression: , + // (DW_OP_regx ) (DW_OP_LLVM_offset_uconst *4) + // + // The memory location description for the current CFA is pushed on the + // stack before E is evaluated, but we choose not to drop it as it would + // require a longer expression E and DWARF defines the result of the + // evaulation to be the location description on the top of the stack (i.e. the + // implictly pushed one is just ignored.) + + SmallString<20> Block; + raw_svector_ostream OSBlock(Block); + encodeDwarfRegisterLocation(DwarfVGPR, OSBlock); + OSBlock << uint8_t(dwarf::DW_OP_LLVM_user) + << uint8_t(dwarf::DW_OP_LLVM_offset_uconst); + encodeULEB128(Lane * SGPRByteSize, OSBlock); + + SmallString<20> CFIInst; + raw_svector_ostream OSCFIInst(CFIInst); + OSCFIInst << uint8_t(dwarf::DW_CFA_expression); + encodeULEB128(DwarfSGPR, OSCFIInst); + encodeULEB128(Block.size(), OSCFIInst); + OSCFIInst << Block; + + return buildCFI(MBB, MBBI, DL, + MCCFIInstruction::createEscape(nullptr, OSCFIInst.str())); +} + +MachineInstr *SIFrameLowering::buildCFIForSGPRToVGPRSpill( + MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI, + const DebugLoc &DL, Register SGPR, + ArrayRef VGPRSpills) const { + const MachineFunction &MF = *MBB.getParent(); + const MCRegisterInfo &MCRI = *MF.getMMI().getContext().getRegisterInfo(); + + int DwarfSGPR = MCRI.getDwarfRegNum(SGPR, false); + + // CFI for an SGPR spilled to a multiple lanes of VGPRs is implemented as an + // expression(E) rule where E is a composite location description + // with multiple parts each referencing + // VGPR register location storage with a bit offset of the lane index + // multiplied by the size of an SGPR (32 bits). In other words we generate + // the following DWARF: + // + // DW_CFA_expression: , + // (DW_OP_regx ) (DW_OP_bit_piece 32, *32) + // (DW_OP_regx ) (DW_OP_bit_piece 32, *32) + // ... + // (DW_OP_regx ) (DW_OP_bit_piece 32, *32) + // + // The memory location description for the current CFA is pushed on the + // stack before E is evaluated, but we choose not to drop it as it would + // require a longer expression E and DWARF defines the result of the + // evaulation to be the location description on the top of the stack (i.e. the + // implictly pushed one is just ignored.) + + SmallString<20> Block; + raw_svector_ostream OSBlock(Block); + // TODO: Detect when we can merge multiple adjacent pieces, or even reduce + // this to a register location description (when all pieces are adjacent). + for (SIRegisterInfo::SpilledReg Spill : VGPRSpills) { + encodeDwarfRegisterLocation(MCRI.getDwarfRegNum(Spill.VGPR, false), + OSBlock); + OSBlock << uint8_t(dwarf::DW_OP_bit_piece); + encodeULEB128(SGPRBitSize, OSBlock); + encodeULEB128(SGPRBitSize * Spill.Lane, OSBlock); + } + + SmallString<20> CFIInst; + raw_svector_ostream OSCFIInst(CFIInst); + OSCFIInst << uint8_t(dwarf::DW_CFA_expression); + encodeULEB128(DwarfSGPR, OSCFIInst); + encodeULEB128(Block.size(), OSCFIInst); + OSCFIInst << Block; + + return buildCFI(MBB, MBBI, DL, + MCCFIInstruction::createEscape(nullptr, OSCFIInst.str())); +} + +MachineInstr *SIFrameLowering::buildCFIForSGPRToVMEMSpill( + MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI, + const DebugLoc &DL, unsigned SGPR, int64_t Offset) const { + MachineFunction &MF = *MBB.getParent(); + const MCRegisterInfo &MCRI = *MF.getMMI().getContext().getRegisterInfo(); + return buildCFI(MBB, MBBI, DL, + llvm::MCCFIInstruction::createOffset( + nullptr, MCRI.getDwarfRegNum(SGPR, false), Offset)); +} + +MachineInstr *SIFrameLowering::buildCFIForVGPRToVMEMSpill( + MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI, + const DebugLoc &DL, unsigned VGPR, int64_t Offset) const { + const MachineFunction &MF = *MBB.getParent(); + const MCRegisterInfo &MCRI = *MF.getMMI().getContext().getRegisterInfo(); + const GCNSubtarget &ST = MF.getSubtarget(); + + int DwarfVGPR = MCRI.getDwarfRegNum(VGPR, false); + + SmallString<20> Block; + raw_svector_ostream OSBlock(Block); + encodeDwarfRegisterLocation(DwarfVGPR, OSBlock); + OSBlock << uint8_t(dwarf::DW_OP_swap); + OSBlock << uint8_t(dwarf::DW_OP_LLVM_user) + << uint8_t(dwarf::DW_OP_LLVM_offset_uconst); + encodeULEB128(Offset, OSBlock); + OSBlock << uint8_t(dwarf::DW_OP_LLVM_user) + << uint8_t(dwarf::DW_OP_LLVM_call_frame_entry_reg); + encodeULEB128(MCRI.getDwarfRegNum( + ST.isWave32() ? AMDGPU::EXEC_LO : AMDGPU::EXEC, false), + OSBlock); + OSBlock << uint8_t(dwarf::DW_OP_deref_size); + OSBlock << uint8_t(ST.getWavefrontSize() / 8); + OSBlock << uint8_t(dwarf::DW_OP_LLVM_user) + << uint8_t(dwarf::DW_OP_LLVM_select_bit_piece); + encodeULEB128(VGPRLaneBitSize, OSBlock); + encodeULEB128(ST.getWavefrontSize(), OSBlock); + + SmallString<20> CFIInst; + raw_svector_ostream OSCFIInst(CFIInst); + OSCFIInst << uint8_t(dwarf::DW_CFA_expression); + encodeULEB128(DwarfVGPR, OSCFIInst); + encodeULEB128(Block.size(), OSCFIInst); + OSCFIInst << Block; + + return buildCFI(MBB, MBBI, DL, + MCCFIInstruction::createEscape(nullptr, OSCFIInst.str())); +} + +MachineInstr *SIFrameLowering::buildCFIForRegToSGPRPairSpill( + MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI, + const DebugLoc &DL, const Register Reg, const Register SGPRPair) const { + const MachineFunction &MF = *MBB.getParent(); + const MCRegisterInfo &MCRI = *MF.getMMI().getContext().getRegisterInfo(); + const GCNSubtarget &ST = MF.getSubtarget(); + const SIRegisterInfo &TRI = ST.getInstrInfo()->getRegisterInfo(); + + int SGPR0 = TRI.getSubReg(SGPRPair, AMDGPU::sub0); + int SGPR1 = TRI.getSubReg(SGPRPair, AMDGPU::sub1); + + int DwarfReg = MCRI.getDwarfRegNum(Reg, false); + int DwarfSGPR0 = MCRI.getDwarfRegNum(SGPR0, false); + int DwarfSGPR1 = MCRI.getDwarfRegNum(SGPR1, false); + + // CFI for a register spilled to a pair of SGPRs is implemented as an + // expression(E) rule where E is a composite location description with + // multiple parts each referencing SGPR register location storage with a bit + // offset of 0. In other words we generate the following DWARF: + // + // DW_CFA_expression: , + // (DW_OP_regx ) (DW_OP_piece 4) + // (DW_OP_regx ) (DW_OP_piece 4) + // + // The memory location description for the current CFA is pushed on the stack + // before E is evaluated, but we choose not to drop it as it would require a + // longer expression E and DWARF defines the result of the evaulation to be + // the location description on the top of the stack (i.e. the implictly + // pushed one is just ignored.) + + SmallString<10> Block; + raw_svector_ostream OSBlock(Block); + encodeDwarfRegisterLocation(DwarfSGPR0, OSBlock); + OSBlock << uint8_t(dwarf::DW_OP_piece); + encodeULEB128(SGPRByteSize, OSBlock); + encodeDwarfRegisterLocation(DwarfSGPR1, OSBlock); + OSBlock << uint8_t(dwarf::DW_OP_piece); + encodeULEB128(SGPRByteSize, OSBlock); + + SmallString<20> CFIInst; + raw_svector_ostream OSCFIInst(CFIInst); + OSCFIInst << uint8_t(dwarf::DW_CFA_expression); + encodeULEB128(DwarfReg, OSCFIInst); + encodeULEB128(Block.size(), OSCFIInst); + OSCFIInst << Block; + + return buildCFI(MBB, MBBI, DL, + MCCFIInstruction::createEscape(nullptr, OSCFIInst.str())); +} diff --git a/llvm/lib/Target/AMDGPU/SIInstrInfo.h b/llvm/lib/Target/AMDGPU/SIInstrInfo.h --- a/llvm/lib/Target/AMDGPU/SIInstrInfo.h +++ b/llvm/lib/Target/AMDGPU/SIInstrInfo.h @@ -223,6 +223,15 @@ MachineBasicBlock::iterator I, const DebugLoc &DL, Register SrcReg, int Value) const; +private: + void storeRegToStackSlotImpl(MachineBasicBlock &MBB, + MachineBasicBlock::iterator MI, Register SrcReg, + bool isKill, int FrameIndex, + const TargetRegisterClass *RC, + const TargetRegisterInfo *TRI, Register VReg, + bool NeedsCFI) const; + +public: void storeRegToStackSlot(MachineBasicBlock &MBB, MachineBasicBlock::iterator MI, Register SrcReg, bool isKill, int FrameIndex, @@ -230,6 +239,12 @@ const TargetRegisterInfo *TRI, Register VReg) const override; + void storeRegToStackSlotCFI(MachineBasicBlock &MBB, + MachineBasicBlock::iterator MI, Register SrcReg, + bool isKill, int FrameIndex, + const TargetRegisterClass *RC, + const TargetRegisterInfo *TRI) const; + void loadRegFromStackSlot(MachineBasicBlock &MBB, MachineBasicBlock::iterator MI, Register DestReg, int FrameIndex, const TargetRegisterClass *RC, diff --git a/llvm/lib/Target/AMDGPU/SIInstrInfo.cpp b/llvm/lib/Target/AMDGPU/SIInstrInfo.cpp --- a/llvm/lib/Target/AMDGPU/SIInstrInfo.cpp +++ b/llvm/lib/Target/AMDGPU/SIInstrInfo.cpp @@ -1443,22 +1443,26 @@ return get(getIndirectVGPRWriteMovRelPseudoOpc(VecSize)); } -static unsigned getSGPRSpillSaveOpcode(unsigned Size) { +static unsigned getSGPRSpillSaveOpcode(unsigned Size, bool NeedsCFI) { switch (Size) { case 4: - return AMDGPU::SI_SPILL_S32_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_S32_CFI_SAVE : AMDGPU::SI_SPILL_S32_SAVE; case 8: - return AMDGPU::SI_SPILL_S64_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_S64_CFI_SAVE : AMDGPU::SI_SPILL_S64_SAVE; case 12: - return AMDGPU::SI_SPILL_S96_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_S96_CFI_SAVE : AMDGPU::SI_SPILL_S96_SAVE; case 16: - return AMDGPU::SI_SPILL_S128_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_S128_CFI_SAVE + : AMDGPU::SI_SPILL_S128_SAVE; case 20: - return AMDGPU::SI_SPILL_S160_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_S160_CFI_SAVE + : AMDGPU::SI_SPILL_S160_SAVE; case 24: - return AMDGPU::SI_SPILL_S192_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_S192_CFI_SAVE + : AMDGPU::SI_SPILL_S192_SAVE; case 28: - return AMDGPU::SI_SPILL_S224_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_S224_CFI_SAVE + : AMDGPU::SI_SPILL_S224_SAVE; case 32: return AMDGPU::SI_SPILL_S256_SAVE; case 36: @@ -1470,67 +1474,85 @@ case 48: return AMDGPU::SI_SPILL_S384_SAVE; case 64: - return AMDGPU::SI_SPILL_S512_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_S512_CFI_SAVE + : AMDGPU::SI_SPILL_S512_SAVE; case 128: - return AMDGPU::SI_SPILL_S1024_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_S1024_CFI_SAVE + : AMDGPU::SI_SPILL_S1024_SAVE; default: llvm_unreachable("unknown register size"); } } -static unsigned getVGPRSpillSaveOpcode(unsigned Size) { +static unsigned getVGPRSpillSaveOpcode(unsigned Size, bool NeedsCFI) { switch (Size) { case 4: - return AMDGPU::SI_SPILL_V32_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_V32_CFI_SAVE : AMDGPU::SI_SPILL_V32_SAVE; case 8: - return AMDGPU::SI_SPILL_V64_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_V64_CFI_SAVE : AMDGPU::SI_SPILL_V64_SAVE; case 12: - return AMDGPU::SI_SPILL_V96_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_V96_CFI_SAVE : AMDGPU::SI_SPILL_V96_SAVE; case 16: - return AMDGPU::SI_SPILL_V128_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_V128_CFI_SAVE + : AMDGPU::SI_SPILL_V128_SAVE; case 20: - return AMDGPU::SI_SPILL_V160_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_V160_CFI_SAVE + : AMDGPU::SI_SPILL_V160_SAVE; case 24: - return AMDGPU::SI_SPILL_V192_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_V192_CFI_SAVE + : AMDGPU::SI_SPILL_V192_SAVE; case 28: - return AMDGPU::SI_SPILL_V224_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_V224_CFI_SAVE + : AMDGPU::SI_SPILL_V224_SAVE; case 32: - return AMDGPU::SI_SPILL_V256_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_V256_CFI_SAVE + : AMDGPU::SI_SPILL_V256_SAVE; case 36: - return AMDGPU::SI_SPILL_V288_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_V288_CFI_SAVE + : AMDGPU::SI_SPILL_V288_SAVE; case 40: - return AMDGPU::SI_SPILL_V320_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_V320_CFI_SAVE + : AMDGPU::SI_SPILL_V320_SAVE; case 44: - return AMDGPU::SI_SPILL_V352_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_V352_CFI_SAVE + : AMDGPU::SI_SPILL_V352_SAVE; case 48: - return AMDGPU::SI_SPILL_V384_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_V384_CFI_SAVE + : AMDGPU::SI_SPILL_V384_SAVE; case 64: - return AMDGPU::SI_SPILL_V512_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_V512_CFI_SAVE + : AMDGPU::SI_SPILL_V512_SAVE; case 128: - return AMDGPU::SI_SPILL_V1024_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_V1024_CFI_SAVE + : AMDGPU::SI_SPILL_V1024_SAVE; default: llvm_unreachable("unknown register size"); } } -static unsigned getAGPRSpillSaveOpcode(unsigned Size) { +static unsigned getAGPRSpillSaveOpcode(unsigned Size, bool NeedsCFI) { switch (Size) { case 4: - return AMDGPU::SI_SPILL_A32_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_A32_CFI_SAVE : AMDGPU::SI_SPILL_A32_SAVE; case 8: - return AMDGPU::SI_SPILL_A64_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_A64_CFI_SAVE : AMDGPU::SI_SPILL_A64_SAVE; case 12: - return AMDGPU::SI_SPILL_A96_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_A96_CFI_SAVE : AMDGPU::SI_SPILL_A96_SAVE; case 16: - return AMDGPU::SI_SPILL_A128_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_A128_CFI_SAVE + : AMDGPU::SI_SPILL_A128_SAVE; case 20: - return AMDGPU::SI_SPILL_A160_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_A160_CFI_SAVE + : AMDGPU::SI_SPILL_A160_SAVE; case 24: - return AMDGPU::SI_SPILL_A192_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_A192_CFI_SAVE + : AMDGPU::SI_SPILL_A192_SAVE; case 28: - return AMDGPU::SI_SPILL_A224_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_A224_CFI_SAVE + : AMDGPU::SI_SPILL_A224_SAVE; case 32: - return AMDGPU::SI_SPILL_A256_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_A256_CFI_SAVE + : AMDGPU::SI_SPILL_A256_SAVE; case 36: return AMDGPU::SI_SPILL_A288_SAVE; case 40: @@ -1540,32 +1562,42 @@ case 48: return AMDGPU::SI_SPILL_A384_SAVE; case 64: - return AMDGPU::SI_SPILL_A512_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_A512_CFI_SAVE + : AMDGPU::SI_SPILL_A512_SAVE; case 128: - return AMDGPU::SI_SPILL_A1024_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_A1024_CFI_SAVE + : AMDGPU::SI_SPILL_A1024_SAVE; default: llvm_unreachable("unknown register size"); } } -static unsigned getAVSpillSaveOpcode(unsigned Size) { +static unsigned getAVSpillSaveOpcode(unsigned Size, bool NeedsCFI) { switch (Size) { case 4: - return AMDGPU::SI_SPILL_AV32_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_AV32_CFI_SAVE + : AMDGPU::SI_SPILL_AV32_SAVE; case 8: - return AMDGPU::SI_SPILL_AV64_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_AV64_CFI_SAVE + : AMDGPU::SI_SPILL_AV64_SAVE; case 12: - return AMDGPU::SI_SPILL_AV96_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_AV96_CFI_SAVE + : AMDGPU::SI_SPILL_AV96_SAVE; case 16: - return AMDGPU::SI_SPILL_AV128_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_AV128_CFI_SAVE + : AMDGPU::SI_SPILL_AV128_SAVE; case 20: - return AMDGPU::SI_SPILL_AV160_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_AV160_CFI_SAVE + : AMDGPU::SI_SPILL_AV160_SAVE; case 24: - return AMDGPU::SI_SPILL_AV192_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_AV192_CFI_SAVE + : AMDGPU::SI_SPILL_AV192_SAVE; case 28: - return AMDGPU::SI_SPILL_AV224_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_AV224_CFI_SAVE + : AMDGPU::SI_SPILL_AV224_SAVE; case 32: - return AMDGPU::SI_SPILL_AV256_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_AV256_CFI_SAVE + : AMDGPU::SI_SPILL_AV256_SAVE; case 36: return AMDGPU::SI_SPILL_AV288_SAVE; case 40: @@ -1575,18 +1607,20 @@ case 48: return AMDGPU::SI_SPILL_AV384_SAVE; case 64: - return AMDGPU::SI_SPILL_AV512_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_AV512_CFI_SAVE + : AMDGPU::SI_SPILL_AV512_SAVE; case 128: - return AMDGPU::SI_SPILL_AV1024_SAVE; + return NeedsCFI ? AMDGPU::SI_SPILL_AV1024_CFI_SAVE + : AMDGPU::SI_SPILL_AV1024_SAVE; default: llvm_unreachable("unknown register size"); } } -void SIInstrInfo::storeRegToStackSlot( +void SIInstrInfo::storeRegToStackSlotImpl( MachineBasicBlock &MBB, MachineBasicBlock::iterator MI, Register SrcReg, bool isKill, int FrameIndex, const TargetRegisterClass *RC, - const TargetRegisterInfo *TRI, Register VReg) const { + const TargetRegisterInfo *TRI, Register VReg, bool NeedsCFI) const { MachineFunction *MF = MBB.getParent(); SIMachineFunctionInfo *MFI = MF->getInfo(); MachineFrameInfo &FrameInfo = MF->getFrameInfo(); @@ -1608,7 +1642,8 @@ // We are only allowed to create one new instruction when spilling // registers, so we need to use pseudo instruction for spilling SGPRs. - const MCInstrDesc &OpDesc = get(getSGPRSpillSaveOpcode(SpillSize)); + const MCInstrDesc &OpDesc = + get(getSGPRSpillSaveOpcode(SpillSize, NeedsCFI)); // The SGPR spill/restore instructions only work on number sgprs, so we need // to make sure we are using the correct register class. @@ -1627,11 +1662,10 @@ return; } - unsigned Opcode = RI.isVectorSuperClass(RC) - ? getAVSpillSaveOpcode(SpillSize) - : RI.isAGPRClass(RC) - ? getAGPRSpillSaveOpcode(SpillSize) - : getVGPRSpillSaveOpcode(SpillSize); + unsigned Opcode = + RI.isVectorSuperClass(RC) ? getAVSpillSaveOpcode(SpillSize, NeedsCFI) + : RI.isAGPRClass(RC) ? getAGPRSpillSaveOpcode(SpillSize, NeedsCFI) + : getVGPRSpillSaveOpcode(SpillSize, NeedsCFI); MFI->setHasSpilledVGPRs(); BuildMI(MBB, MI, DL, get(Opcode)) @@ -1642,6 +1676,24 @@ .addMemOperand(MMO); } +void SIInstrInfo::storeRegToStackSlot( + MachineBasicBlock &MBB, MachineBasicBlock::iterator MI, Register SrcReg, + bool isKill, int FrameIndex, const TargetRegisterClass *RC, + const TargetRegisterInfo *TRI, Register VReg) const { + storeRegToStackSlotImpl(MBB, MI, SrcReg, isKill, FrameIndex, RC, TRI, VReg, + false); +} + +void SIInstrInfo::storeRegToStackSlotCFI(MachineBasicBlock &MBB, + MachineBasicBlock::iterator MI, + Register SrcReg, bool isKill, + int FrameIndex, + const TargetRegisterClass *RC, + const TargetRegisterInfo *TRI) const { + storeRegToStackSlotImpl(MBB, MI, SrcReg, isKill, FrameIndex, RC, TRI, + Register(), true); +} + static unsigned getSGPRSpillRestoreOpcode(unsigned Size) { switch (Size) { case 4: @@ -1827,9 +1879,8 @@ unsigned Opcode = RI.isVectorSuperClass(RC) ? getAVSpillRestoreOpcode(SpillSize) - : RI.isAGPRClass(RC) - ? getAGPRSpillRestoreOpcode(SpillSize) - : getVGPRSpillRestoreOpcode(SpillSize); + : RI.isAGPRClass(RC) ? getAGPRSpillRestoreOpcode(SpillSize) + : getVGPRSpillRestoreOpcode(SpillSize); BuildMI(MBB, MI, DL, get(Opcode), DestReg) .addFrameIndex(FrameIndex) // vaddr .addReg(MFI->getStackPtrOffsetReg()) // scratch_offset diff --git a/llvm/lib/Target/AMDGPU/SIInstructions.td b/llvm/lib/Target/AMDGPU/SIInstructions.td --- a/llvm/lib/Target/AMDGPU/SIInstructions.td +++ b/llvm/lib/Target/AMDGPU/SIInstructions.td @@ -797,6 +797,13 @@ let mayLoad = 0; } + def _CFI_SAVE : PseudoInstSI < + (outs), + (ins sgpr_class:$data, i32imm:$addr)> { + let mayStore = 1; + let mayLoad = 0; + } + def _RESTORE : PseudoInstSI < (outs sgpr_class:$data), (ins i32imm:$addr)> { @@ -843,6 +850,18 @@ let Size = !if(!le(MaxSize, 256), MaxSize, 252); } + def _CFI_SAVE : VPseudoInstSI < + (outs), + (ins vgpr_class:$vdata, i32imm:$vaddr, + SReg_32:$soffset, i32imm:$offset)> { + let mayStore = 1; + let mayLoad = 0; + // (2 * 4) + (8 * num_subregs) bytes maximum + int MaxSize = !add(!shl(!srl(vgpr_class.Size, 5), !add(UsesTmp, 3)), 8); + // Size field is unsigned char and cannot fit more. + let Size = !if(!le(MaxSize, 256), MaxSize, 252); + } + def _RESTORE : VPseudoInstSI < (outs vgpr_class:$vdata), (ins i32imm:$vaddr, diff --git a/llvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp b/llvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp --- a/llvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp +++ b/llvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp @@ -74,45 +74,20 @@ char &llvm::SILowerSGPRSpillsID = SILowerSGPRSpills::ID; /// Insert spill code for the callee-saved registers used in the function. -static void insertCSRSaves(MachineBasicBlock &SaveBlock, +static void insertCSRSaves(const GCNSubtarget &ST, MachineBasicBlock &SaveBlock, ArrayRef CSI, SlotIndexes *Indexes, LiveIntervals *LIS) { - MachineFunction &MF = *SaveBlock.getParent(); - const TargetInstrInfo &TII = *MF.getSubtarget().getInstrInfo(); - const TargetFrameLowering *TFI = MF.getSubtarget().getFrameLowering(); - const TargetRegisterInfo *TRI = MF.getSubtarget().getRegisterInfo(); - const GCNSubtarget &ST = MF.getSubtarget(); - const SIRegisterInfo *RI = ST.getRegisterInfo(); - + const TargetFrameLowering *TFI = ST.getFrameLowering(); + const TargetRegisterInfo *TRI = ST.getRegisterInfo(); MachineBasicBlock::iterator I = SaveBlock.begin(); - if (!TFI->spillCalleeSavedRegisters(SaveBlock, I, CSI, TRI)) { - const MachineRegisterInfo &MRI = MF.getRegInfo(); - - for (const CalleeSavedInfo &CS : CSI) { - // Insert the spill to the stack frame. - MCRegister Reg = CS.getReg(); - - MachineInstrSpan MIS(I, &SaveBlock); - const TargetRegisterClass *RC = TRI->getMinimalPhysRegClass( - Reg, Reg == RI->getReturnAddressReg(MF) ? MVT::i64 : MVT::i32); - - // If this value was already livein, we probably have a direct use of the - // incoming register value, so don't kill at the spill point. This happens - // since we pass some special inputs (workgroup IDs) in the callee saved - // range. - const bool IsLiveIn = MRI.isLiveIn(Reg); - TII.storeRegToStackSlot(SaveBlock, I, Reg, !IsLiveIn, CS.getFrameIdx(), - RC, TRI, Register()); - - if (Indexes) { - assert(std::distance(MIS.begin(), I) == 1); - MachineInstr &Inst = *std::prev(I); - Indexes->insertMachineInstrInMaps(Inst); - } - - if (LIS) - LIS->removeAllRegUnitsForPhysReg(Reg); - } + MachineInstrSpan MIS(I, &SaveBlock); + bool Success = TFI->spillCalleeSavedRegisters(SaveBlock, I, CSI, TRI); + assert(Success && "spillCalleeSavedRegisters should always succeed"); + (void)Success; + + if (Indexes) { + for (MachineInstr &Inst : make_range(MIS.begin(), I)) + Indexes->insertMachineInstrInMaps(Inst); } } @@ -217,11 +192,19 @@ std::vector CSI; const MCPhysReg *CSRegs = MRI.getCalleeSavedRegs(); + Register RetAddrReg = TRI->getReturnAddressReg(MF); + bool SpillRetAddrReg = false; for (unsigned I = 0; CSRegs[I]; ++I) { MCRegister Reg = CSRegs[I]; if (SavedRegs.test(Reg)) { + if (Reg == TRI->getSubReg(RetAddrReg, AMDGPU::sub0) || + Reg == TRI->getSubReg(RetAddrReg, AMDGPU::sub1)) { + SpillRetAddrReg = true; + continue; + } + const TargetRegisterClass *RC = TRI->getMinimalPhysRegClass(Reg, MVT::i32); int JunkFI = MFI.CreateStackObject(TRI->getSpillSize(*RC), @@ -231,9 +214,20 @@ } } + // Return address uses a register pair. Add the super register to the + // CSI list so that it's easier to identify the entire spill and CFI + // can be emitted appropriately. + if (SpillRetAddrReg) { + const TargetRegisterClass *RC = + TRI->getMinimalPhysRegClass(RetAddrReg, MVT::i64); + int JunkFI = MFI.CreateStackObject(TRI->getSpillSize(*RC), + TRI->getSpillAlign(*RC), true); + CSI.push_back(CalleeSavedInfo(RetAddrReg, JunkFI)); + } + if (!CSI.empty()) { for (MachineBasicBlock *SaveBlock : SaveBlocks) - insertCSRSaves(*SaveBlock, CSI, Indexes, LIS); + insertCSRSaves(ST, *SaveBlock, CSI, Indexes, LIS); // Add live ins to save blocks. assert(SaveBlocks.size() == 1 && "shrink wrapping not fully implemented"); @@ -332,7 +326,7 @@ // free frame index ids by the later pass(es) like "stack slot coloring" // which in turn could mess-up with the book keeping of "frame index to VGPR // lane". - FuncInfo->removeDeadFrameIndices(MFI, /*ResetSGPRSpillStackIDs*/ false); + FuncInfo->removeDeadFrameIndices(MF, /*ResetSGPRSpillStackIDs*/ false); MadeChange = true; } diff --git a/llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h b/llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h --- a/llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h +++ b/llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h @@ -610,6 +610,15 @@ }) != PrologEpilogSGPRSpills.end(); } + // Remove if an entry created for \p Reg. + void removePrologEpilogSGPRSpillEntry(Register Reg) { + auto I = PrologEpilogSGPRSpills.find(Reg); + if (I == PrologEpilogSGPRSpills.end()) + return; + + PrologEpilogSGPRSpills.erase(I); + } + const PrologEpilogSGPRSaveRestoreInfo & getPrologEpilogSGPRSaveRestoreInfo(Register Reg) const { auto I = PrologEpilogSGPRSpills.find(Reg); @@ -660,8 +669,7 @@ /// If \p ResetSGPRSpillStackIDs is true, reset the stack ID from sgpr-spill /// to the default stack. - bool removeDeadFrameIndices(MachineFrameInfo &MFI, - bool ResetSGPRSpillStackIDs); + bool removeDeadFrameIndices(MachineFunction &MF, bool ResetSGPRSpillStackIDs); int getScavengeFI(MachineFrameInfo &MFI, const SIRegisterInfo &TRI); std::optional getOptionalScavengeFI() const { return ScavengeFI; } diff --git a/llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp b/llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp --- a/llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp +++ b/llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp @@ -481,9 +481,11 @@ } bool SIMachineFunctionInfo::removeDeadFrameIndices( - MachineFrameInfo &MFI, bool ResetSGPRSpillStackIDs) { - // Remove dead frame indices from function frame. And also make sure to remove - // the frame indices from `SGPRSpillToVGPRLanes` data structure, otherwise, it + MachineFunction &MF, bool ResetSGPRSpillStackIDs) { + MachineFrameInfo &MFI = MF.getFrameInfo(); + // Remove dead frame indices from function frame, however keep FP & BP since + // spills for them haven't been inserted yet. And also make sure to remove the + // frame indices from `SGPRSpillToVGPRLanes` data structure, otherwise, it // could result in an unexpected side effect and bug, in case of any // re-mapping of freed frame indices by later pass(es) like "stack slot // coloring". diff --git a/llvm/lib/Target/AMDGPU/SIRegisterInfo.h b/llvm/lib/Target/AMDGPU/SIRegisterInfo.h --- a/llvm/lib/Target/AMDGPU/SIRegisterInfo.h +++ b/llvm/lib/Target/AMDGPU/SIRegisterInfo.h @@ -70,6 +70,8 @@ return SpillSGPRToVGPR; } + bool isCFISavedRegsSpillEnabled() const; + /// Return the end register initially reserved for the scratch buffer in case /// spilling is needed. MCRegister reservedPrivateSegmentBufferReg(const MachineFunction &MF) const; @@ -136,10 +138,11 @@ void buildVGPRSpillLoadStore(SGPRSpillBuilder &SB, int Index, int Offset, bool IsLoad, bool IsKill = true) const; - /// If \p OnlyToVGPR is true, this will only succeed if this + /// If \p OnlyToVGPR is true, this will only succeed if this manages to find a + /// free VGPR lane to spill. bool spillSGPR(MachineBasicBlock::iterator MI, int FI, RegScavenger *RS, SlotIndexes *Indexes = nullptr, LiveIntervals *LIS = nullptr, - bool OnlyToVGPR = false) const; + bool OnlyToVGPR = false, bool NeedsCFI = false) const; bool restoreSGPR(MachineBasicBlock::iterator MI, int FI, RegScavenger *RS, SlotIndexes *Indexes = nullptr, LiveIntervals *LIS = nullptr, @@ -409,8 +412,8 @@ unsigned LoadStoreOp, int Index, Register ValueReg, bool ValueIsKill, MCRegister ScratchOffsetReg, int64_t InstrOffset, MachineMemOperand *MMO, - RegScavenger *RS, - LivePhysRegs *LiveRegs = nullptr) const; + RegScavenger *RS, LivePhysRegs *LiveRegs = nullptr, + bool NeedsCFI = false) const; }; } // End namespace llvm diff --git a/llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp b/llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp --- a/llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp +++ b/llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp @@ -35,6 +35,11 @@ cl::ReallyHidden, cl::init(true)); +static cl::opt EnableSpillCFISavedRegs( + "amdgpu-spill-cfi-saved-regs", + cl::desc("Enable spilling the registers required for CFI emission"), + cl::ReallyHidden, cl::init(false), cl::ZeroOrMore); + std::array, 16> SIRegisterInfo::RegSplitParts; std::array, 9> SIRegisterInfo::SubRegFromChannelTable; @@ -533,6 +538,10 @@ return SubRegFromChannelTable[NumRegIndex - 1][Channel]; } +bool SIRegisterInfo::isCFISavedRegsSpillEnabled() const { + return EnableSpillCFISavedRegs; +} + MCRegister SIRegisterInfo::reservedPrivateSegmentBufferReg( const MachineFunction &MF) const { unsigned BaseIdx = alignDown(ST.getMaxNumSGPRs(MF), 4) - 4; @@ -937,21 +946,29 @@ switch (Op) { case AMDGPU::SI_SPILL_S1024_SAVE: + case AMDGPU::SI_SPILL_S1024_CFI_SAVE: case AMDGPU::SI_SPILL_S1024_RESTORE: case AMDGPU::SI_SPILL_V1024_SAVE: + case AMDGPU::SI_SPILL_V1024_CFI_SAVE: case AMDGPU::SI_SPILL_V1024_RESTORE: case AMDGPU::SI_SPILL_A1024_SAVE: + case AMDGPU::SI_SPILL_A1024_CFI_SAVE: case AMDGPU::SI_SPILL_A1024_RESTORE: case AMDGPU::SI_SPILL_AV1024_SAVE: + case AMDGPU::SI_SPILL_AV1024_CFI_SAVE: case AMDGPU::SI_SPILL_AV1024_RESTORE: return 32; case AMDGPU::SI_SPILL_S512_SAVE: + case AMDGPU::SI_SPILL_S512_CFI_SAVE: case AMDGPU::SI_SPILL_S512_RESTORE: case AMDGPU::SI_SPILL_V512_SAVE: + case AMDGPU::SI_SPILL_V512_CFI_SAVE: case AMDGPU::SI_SPILL_V512_RESTORE: case AMDGPU::SI_SPILL_A512_SAVE: + case AMDGPU::SI_SPILL_A512_CFI_SAVE: case AMDGPU::SI_SPILL_A512_RESTORE: case AMDGPU::SI_SPILL_AV512_SAVE: + case AMDGPU::SI_SPILL_AV512_CFI_SAVE: case AMDGPU::SI_SPILL_AV512_RESTORE: return 16; case AMDGPU::SI_SPILL_S384_SAVE: @@ -991,75 +1008,107 @@ case AMDGPU::SI_SPILL_AV288_RESTORE: return 9; case AMDGPU::SI_SPILL_S256_SAVE: + case AMDGPU::SI_SPILL_S256_CFI_SAVE: case AMDGPU::SI_SPILL_S256_RESTORE: case AMDGPU::SI_SPILL_V256_SAVE: + case AMDGPU::SI_SPILL_V256_CFI_SAVE: case AMDGPU::SI_SPILL_V256_RESTORE: case AMDGPU::SI_SPILL_A256_SAVE: + case AMDGPU::SI_SPILL_A256_CFI_SAVE: case AMDGPU::SI_SPILL_A256_RESTORE: case AMDGPU::SI_SPILL_AV256_SAVE: + case AMDGPU::SI_SPILL_AV256_CFI_SAVE: case AMDGPU::SI_SPILL_AV256_RESTORE: return 8; case AMDGPU::SI_SPILL_S224_SAVE: + case AMDGPU::SI_SPILL_S224_CFI_SAVE: case AMDGPU::SI_SPILL_S224_RESTORE: case AMDGPU::SI_SPILL_V224_SAVE: + case AMDGPU::SI_SPILL_V224_CFI_SAVE: case AMDGPU::SI_SPILL_V224_RESTORE: case AMDGPU::SI_SPILL_A224_SAVE: + case AMDGPU::SI_SPILL_A224_CFI_SAVE: case AMDGPU::SI_SPILL_A224_RESTORE: case AMDGPU::SI_SPILL_AV224_SAVE: + case AMDGPU::SI_SPILL_AV224_CFI_SAVE: case AMDGPU::SI_SPILL_AV224_RESTORE: return 7; case AMDGPU::SI_SPILL_S192_SAVE: + case AMDGPU::SI_SPILL_S192_CFI_SAVE: case AMDGPU::SI_SPILL_S192_RESTORE: case AMDGPU::SI_SPILL_V192_SAVE: + case AMDGPU::SI_SPILL_V192_CFI_SAVE: case AMDGPU::SI_SPILL_V192_RESTORE: case AMDGPU::SI_SPILL_A192_SAVE: + case AMDGPU::SI_SPILL_A192_CFI_SAVE: case AMDGPU::SI_SPILL_A192_RESTORE: case AMDGPU::SI_SPILL_AV192_SAVE: + case AMDGPU::SI_SPILL_AV192_CFI_SAVE: case AMDGPU::SI_SPILL_AV192_RESTORE: return 6; case AMDGPU::SI_SPILL_S160_SAVE: + case AMDGPU::SI_SPILL_S160_CFI_SAVE: case AMDGPU::SI_SPILL_S160_RESTORE: case AMDGPU::SI_SPILL_V160_SAVE: + case AMDGPU::SI_SPILL_V160_CFI_SAVE: case AMDGPU::SI_SPILL_V160_RESTORE: case AMDGPU::SI_SPILL_A160_SAVE: + case AMDGPU::SI_SPILL_A160_CFI_SAVE: case AMDGPU::SI_SPILL_A160_RESTORE: case AMDGPU::SI_SPILL_AV160_SAVE: + case AMDGPU::SI_SPILL_AV160_CFI_SAVE: case AMDGPU::SI_SPILL_AV160_RESTORE: return 5; case AMDGPU::SI_SPILL_S128_SAVE: + case AMDGPU::SI_SPILL_S128_CFI_SAVE: case AMDGPU::SI_SPILL_S128_RESTORE: case AMDGPU::SI_SPILL_V128_SAVE: + case AMDGPU::SI_SPILL_V128_CFI_SAVE: case AMDGPU::SI_SPILL_V128_RESTORE: case AMDGPU::SI_SPILL_A128_SAVE: + case AMDGPU::SI_SPILL_A128_CFI_SAVE: case AMDGPU::SI_SPILL_A128_RESTORE: case AMDGPU::SI_SPILL_AV128_SAVE: + case AMDGPU::SI_SPILL_AV128_CFI_SAVE: case AMDGPU::SI_SPILL_AV128_RESTORE: return 4; case AMDGPU::SI_SPILL_S96_SAVE: + case AMDGPU::SI_SPILL_S96_CFI_SAVE: case AMDGPU::SI_SPILL_S96_RESTORE: case AMDGPU::SI_SPILL_V96_SAVE: + case AMDGPU::SI_SPILL_V96_CFI_SAVE: case AMDGPU::SI_SPILL_V96_RESTORE: case AMDGPU::SI_SPILL_A96_SAVE: + case AMDGPU::SI_SPILL_A96_CFI_SAVE: case AMDGPU::SI_SPILL_A96_RESTORE: case AMDGPU::SI_SPILL_AV96_SAVE: + case AMDGPU::SI_SPILL_AV96_CFI_SAVE: case AMDGPU::SI_SPILL_AV96_RESTORE: return 3; case AMDGPU::SI_SPILL_S64_SAVE: + case AMDGPU::SI_SPILL_S64_CFI_SAVE: case AMDGPU::SI_SPILL_S64_RESTORE: case AMDGPU::SI_SPILL_V64_SAVE: + case AMDGPU::SI_SPILL_V64_CFI_SAVE: case AMDGPU::SI_SPILL_V64_RESTORE: case AMDGPU::SI_SPILL_A64_SAVE: + case AMDGPU::SI_SPILL_A64_CFI_SAVE: case AMDGPU::SI_SPILL_A64_RESTORE: case AMDGPU::SI_SPILL_AV64_SAVE: + case AMDGPU::SI_SPILL_AV64_CFI_SAVE: case AMDGPU::SI_SPILL_AV64_RESTORE: return 2; case AMDGPU::SI_SPILL_S32_SAVE: + case AMDGPU::SI_SPILL_S32_CFI_SAVE: case AMDGPU::SI_SPILL_S32_RESTORE: case AMDGPU::SI_SPILL_V32_SAVE: + case AMDGPU::SI_SPILL_V32_CFI_SAVE: case AMDGPU::SI_SPILL_V32_RESTORE: case AMDGPU::SI_SPILL_A32_SAVE: + case AMDGPU::SI_SPILL_A32_CFI_SAVE: case AMDGPU::SI_SPILL_A32_RESTORE: case AMDGPU::SI_SPILL_AV32_SAVE: + case AMDGPU::SI_SPILL_AV32_CFI_SAVE: case AMDGPU::SI_SPILL_AV32_RESTORE: return 1; default: llvm_unreachable("Invalid spill opcode"); @@ -1182,14 +1231,14 @@ } } -static MachineInstrBuilder spillVGPRtoAGPR(const GCNSubtarget &ST, - MachineBasicBlock &MBB, - MachineBasicBlock::iterator MI, - int Index, unsigned Lane, - unsigned ValueReg, bool IsKill) { +static MachineInstrBuilder +spillVGPRtoAGPR(const GCNSubtarget &ST, MachineBasicBlock &MBB, + MachineBasicBlock::iterator MI, int Index, unsigned Lane, + unsigned ValueReg, bool IsKill, bool NeedsCFI) { MachineFunction *MF = MBB.getParent(); SIMachineFunctionInfo *MFI = MF->getInfo(); const SIInstrInfo *TII = ST.getInstrInfo(); + const SIFrameLowering *TFL = ST.getFrameLowering(); MCPhysReg Reg = MFI->getVGPRToAGPRSpill(Index, Lane); @@ -1212,6 +1261,8 @@ auto CopyMIB = BuildMI(MBB, MI, DL, TII->get(AMDGPU::COPY), Dst) .addReg(Src, getKillRegState(IsKill)); CopyMIB->setAsmPrinterFlag(MachineInstr::ReloadReuse); + if (NeedsCFI) + TFL->buildCFIForRegToRegSpill(MBB, MI, DL, Src, Dst); return CopyMIB; } unsigned Opc = (IsStore ^ IsVGPR) ? AMDGPU::V_ACCVGPR_WRITE_B32_e64 @@ -1220,6 +1271,8 @@ auto MIB = BuildMI(MBB, MI, DL, TII->get(Opc), Dst) .addReg(Src, getKillRegState(IsKill)); MIB->setAsmPrinterFlag(MachineInstr::ReloadReuse); + if (NeedsCFI) + TFL->buildCFIForRegToRegSpill(MBB, MI, DL, Src, Dst); return MIB; } @@ -1242,7 +1295,8 @@ return false; const MachineOperand *Reg = TII->getNamedOperand(*MI, AMDGPU::OpName::vdata); - if (spillVGPRtoAGPR(ST, *MBB, MI, Index, 0, Reg->getReg(), false).getInstr()) + if (spillVGPRtoAGPR(ST, *MBB, MI, Index, 0, Reg->getReg(), false, false) + .getInstr()) return true; MachineInstrBuilder NewMI = @@ -1303,12 +1357,13 @@ MachineBasicBlock &MBB, MachineBasicBlock::iterator MI, const DebugLoc &DL, unsigned LoadStoreOp, int Index, Register ValueReg, bool IsKill, MCRegister ScratchOffsetReg, int64_t InstOffset, MachineMemOperand *MMO, - RegScavenger *RS, LivePhysRegs *LiveRegs) const { + RegScavenger *RS, LivePhysRegs *LiveRegs, bool NeedsCFI) const { assert((!RS || !LiveRegs) && "Only RS or LiveRegs can be set but not both"); MachineFunction *MF = MBB.getParent(); const SIInstrInfo *TII = ST.getInstrInfo(); const MachineFrameInfo &MFI = MF->getFrameInfo(); + const SIFrameLowering *TFL = ST.getFrameLowering(); const SIMachineFunctionInfo *FuncInfo = MF->getInfo(); const MCInstrDesc *Desc = &TII->get(LoadStoreOp); @@ -1336,6 +1391,7 @@ int64_t MaxOffset = Offset + Size + RemSize - EltSize; int64_t ScratchOffsetRegDelta = 0; + int64_t AdditionalCFIOffset = 0; if (IsFlat && EltSize > 4) { LoadStoreOp = getFlatScratchSpillOpcode(TII, LoadStoreOp, EltSize); @@ -1448,6 +1504,7 @@ Scavenged = true; } + AdditionalCFIOffset = Offset; // We currently only support spilling VGPRs to EltSize boundaries, meaning // we can simplify the adjustment of Offset here to just scale with // WavefrontSize. @@ -1549,7 +1606,8 @@ Register Sub = IsSubReg ? Register(getSubReg(ValueReg, getSubRegFromChannel(Lane))) : ValueReg; - auto MIB = spillVGPRtoAGPR(ST, MBB, MI, Index, Lane, Sub, IsKill); + auto MIB = + spillVGPRtoAGPR(ST, MBB, MI, Index, Lane, Sub, IsKill, NeedsCFI); if (!MIB.getInstr()) break; if (NeedSuperRegDef || (IsSubReg && IsStore && Lane == LaneS && IsFirstSubReg)) { @@ -1644,6 +1702,11 @@ MIB.addImm(0); // swz MIB.addMemOperand(NewMMO); + if (IsStore && NeedsCFI) + TFL->buildCFIForVGPRToVMEMSpill( + MBB, MI, DebugLoc(), SubReg, + (Offset + RegOffset) * ST.getWavefrontSize() + AdditionalCFIOffset); + if (!IsAGPR && NeedSuperRegDef) MIB.addReg(ValueReg, RegState::ImplicitDefine); @@ -1701,7 +1764,8 @@ bool SIRegisterInfo::spillSGPR(MachineBasicBlock::iterator MI, int Index, RegScavenger *RS, SlotIndexes *Indexes, - LiveIntervals *LIS, bool OnlyToVGPR) const { + LiveIntervals *LIS, bool OnlyToVGPR, + bool NeedsCFI) const { SGPRSpillBuilder SB(*this, *ST.getInstrInfo(), isWave32, MI, Index, RS); ArrayRef VGPRSpills = SB.MFI.getSGPRSpillToVGPRLanes(Index); @@ -1709,6 +1773,8 @@ if (OnlyToVGPR && !SpillToVGPR) return false; + const SIFrameLowering *TFL = ST.getFrameLowering(); + assert(SpillToVGPR || (SB.SuperReg != SB.MFI.getStackPtrOffsetReg() && SB.SuperReg != SB.MFI.getFrameOffsetReg())); @@ -1736,11 +1802,27 @@ .addReg(SubReg, getKillRegState(UseKill)) .addImm(Spill.Lane) .addReg(Spill.VGPR); + + MachineInstr *CFI = nullptr; + if (NeedsCFI) { + if (SB.SuperReg == SB.TRI.getReturnAddressReg(SB.MF)) { + if (i == e - 1) + CFI = TFL->buildCFIForSGPRToVGPRSpill(*SB.MBB, MI, DebugLoc(), + AMDGPU::PC_REG, VGPRSpills); + } else { + CFI = TFL->buildCFIForSGPRToVGPRSpill(*SB.MBB, MI, DebugLoc(), SubReg, + Spill.VGPR, Spill.Lane); + } + } + if (Indexes) { if (IsFirstSubreg) Indexes->replaceMachineInstrInMaps(*MI, *MIB); else Indexes->insertMachineInstrInMaps(*MIB); + + if (CFI) + Indexes->insertMachineInstrInMaps(*CFI); } if (IsFirstSubreg && SB.NumSubRegs > 1) { @@ -1805,6 +1887,18 @@ // Write out VGPR SB.readWriteTmpVGPR(Offset, /*IsLoad*/ false); + + // TODO: Implement CFI for SpillToVMEM for all scenarios. + MachineInstr *CFI = nullptr; + if (NeedsCFI && SB.SuperReg == SB.TRI.getReturnAddressReg(SB.MF)) { + int64_t CFIOffset = (Offset * SB.EltSize + + SB.MF.getFrameInfo().getObjectOffset(Index)) * + ST.getWavefrontSize(); + CFI = TFL->buildCFIForSGPRToVMEMSpill(*SB.MBB, MI, DebugLoc(), + AMDGPU::PC_REG, CFIOffset); + } + if (Indexes && CFI) + Indexes->insertMachineInstrInMaps(*CFI); } SB.restore(); @@ -1971,7 +2065,20 @@ bool SIRegisterInfo::eliminateSGPRToVGPRSpillFrameIndex( MachineBasicBlock::iterator MI, int FI, RegScavenger *RS, SlotIndexes *Indexes, LiveIntervals *LIS) const { + bool NeedsCFI = false; switch (MI->getOpcode()) { + case AMDGPU::SI_SPILL_S1024_CFI_SAVE: + case AMDGPU::SI_SPILL_S512_CFI_SAVE: + case AMDGPU::SI_SPILL_S256_CFI_SAVE: + case AMDGPU::SI_SPILL_S224_CFI_SAVE: + case AMDGPU::SI_SPILL_S192_CFI_SAVE: + case AMDGPU::SI_SPILL_S160_CFI_SAVE: + case AMDGPU::SI_SPILL_S128_CFI_SAVE: + case AMDGPU::SI_SPILL_S96_CFI_SAVE: + case AMDGPU::SI_SPILL_S64_CFI_SAVE: + case AMDGPU::SI_SPILL_S32_CFI_SAVE: + NeedsCFI = true; + LLVM_FALLTHROUGH; case AMDGPU::SI_SPILL_S1024_SAVE: case AMDGPU::SI_SPILL_S512_SAVE: case AMDGPU::SI_SPILL_S384_SAVE: @@ -1986,7 +2093,7 @@ case AMDGPU::SI_SPILL_S96_SAVE: case AMDGPU::SI_SPILL_S64_SAVE: case AMDGPU::SI_SPILL_S32_SAVE: - return spillSGPR(MI, FI, RS, Indexes, LIS, true); + return spillSGPR(MI, FI, RS, Indexes, LIS, true, NeedsCFI); case AMDGPU::SI_SPILL_S1024_RESTORE: case AMDGPU::SI_SPILL_S512_RESTORE: case AMDGPU::SI_SPILL_S384_RESTORE: @@ -2026,8 +2133,23 @@ ? getBaseRegister() : getFrameRegister(*MF); + bool NeedsCFI = false; + switch (MI->getOpcode()) { // SGPR register spill + case AMDGPU::SI_SPILL_S1024_CFI_SAVE: + case AMDGPU::SI_SPILL_S512_CFI_SAVE: + case AMDGPU::SI_SPILL_S256_CFI_SAVE: + case AMDGPU::SI_SPILL_S224_CFI_SAVE: + case AMDGPU::SI_SPILL_S192_CFI_SAVE: + case AMDGPU::SI_SPILL_S160_CFI_SAVE: + case AMDGPU::SI_SPILL_S128_CFI_SAVE: + case AMDGPU::SI_SPILL_S96_CFI_SAVE: + case AMDGPU::SI_SPILL_S64_CFI_SAVE: + case AMDGPU::SI_SPILL_S32_CFI_SAVE: { + NeedsCFI = true; + LLVM_FALLTHROUGH; + } case AMDGPU::SI_SPILL_S1024_SAVE: case AMDGPU::SI_SPILL_S512_SAVE: case AMDGPU::SI_SPILL_S384_SAVE: @@ -2064,6 +2186,38 @@ } // VGPR register spill + case AMDGPU::SI_SPILL_V1024_CFI_SAVE: + case AMDGPU::SI_SPILL_V512_CFI_SAVE: + case AMDGPU::SI_SPILL_V256_CFI_SAVE: + case AMDGPU::SI_SPILL_V224_CFI_SAVE: + case AMDGPU::SI_SPILL_V192_CFI_SAVE: + case AMDGPU::SI_SPILL_V160_CFI_SAVE: + case AMDGPU::SI_SPILL_V128_CFI_SAVE: + case AMDGPU::SI_SPILL_V96_CFI_SAVE: + case AMDGPU::SI_SPILL_V64_CFI_SAVE: + case AMDGPU::SI_SPILL_V32_CFI_SAVE: + case AMDGPU::SI_SPILL_A1024_CFI_SAVE: + case AMDGPU::SI_SPILL_A512_CFI_SAVE: + case AMDGPU::SI_SPILL_A256_CFI_SAVE: + case AMDGPU::SI_SPILL_A224_CFI_SAVE: + case AMDGPU::SI_SPILL_A192_CFI_SAVE: + case AMDGPU::SI_SPILL_A160_CFI_SAVE: + case AMDGPU::SI_SPILL_A128_CFI_SAVE: + case AMDGPU::SI_SPILL_A96_CFI_SAVE: + case AMDGPU::SI_SPILL_A64_CFI_SAVE: + case AMDGPU::SI_SPILL_A32_CFI_SAVE: + case AMDGPU::SI_SPILL_AV1024_CFI_SAVE: + case AMDGPU::SI_SPILL_AV512_CFI_SAVE: + case AMDGPU::SI_SPILL_AV256_CFI_SAVE: + case AMDGPU::SI_SPILL_AV224_CFI_SAVE: + case AMDGPU::SI_SPILL_AV192_CFI_SAVE: + case AMDGPU::SI_SPILL_AV160_CFI_SAVE: + case AMDGPU::SI_SPILL_AV128_CFI_SAVE: + case AMDGPU::SI_SPILL_AV96_CFI_SAVE: + case AMDGPU::SI_SPILL_AV64_CFI_SAVE: + case AMDGPU::SI_SPILL_AV32_CFI_SAVE: + NeedsCFI = true; + LLVM_FALLTHROUGH; case AMDGPU::SI_SPILL_V1024_SAVE: case AMDGPU::SI_SPILL_V512_SAVE: case AMDGPU::SI_SPILL_V384_SAVE: @@ -2113,11 +2267,11 @@ unsigned Opc = ST.enableFlatScratch() ? AMDGPU::SCRATCH_STORE_DWORD_SADDR : AMDGPU::BUFFER_STORE_DWORD_OFFSET; - auto *MBB = MI->getParent(); + auto MBB = MI->getParent(); buildSpillLoadStore( *MBB, MI, DL, Opc, Index, VData->getReg(), VData->isKill(), FrameReg, TII->getNamedOperand(*MI, AMDGPU::OpName::offset)->getImm(), - *MI->memoperands_begin(), RS); + *MI->memoperands_begin(), RS, nullptr, NeedsCFI); MFI->addToSpilledVGPRs(getNumSubRegsForSpillOp(MI->getOpcode())); MI->eraseFromParent(); return true; @@ -2171,7 +2325,7 @@ unsigned Opc = ST.enableFlatScratch() ? AMDGPU::SCRATCH_LOAD_DWORD_SADDR : AMDGPU::BUFFER_LOAD_DWORD_OFFSET; - auto *MBB = MI->getParent(); + auto MBB = MI->getParent(); buildSpillLoadStore( *MBB, MI, DL, Opc, Index, VData->getReg(), VData->isKill(), FrameReg, TII->getNamedOperand(*MI, AMDGPU::OpName::offset)->getImm(), diff --git a/llvm/test/CodeGen/AMDGPU/GlobalISel/assert-align.ll b/llvm/test/CodeGen/AMDGPU/GlobalISel/assert-align.ll --- a/llvm/test/CodeGen/AMDGPU/GlobalISel/assert-align.ll +++ b/llvm/test/CodeGen/AMDGPU/GlobalISel/assert-align.ll @@ -13,21 +13,21 @@ ; CHECK-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; CHECK-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; CHECK-NEXT: s_mov_b64 exec, s[18:19] -; CHECK-NEXT: s_addk_i32 s32, 0x400 +; CHECK-NEXT: v_writelane_b32 v41, s16, 0 ; CHECK-NEXT: v_writelane_b32 v40, s30, 0 +; CHECK-NEXT: s_addk_i32 s32, 0x400 +; CHECK-NEXT: v_writelane_b32 v40, s31, 1 ; CHECK-NEXT: v_mov_b32_e32 v0, 0 ; CHECK-NEXT: v_mov_b32_e32 v1, 0 -; CHECK-NEXT: v_writelane_b32 v41, s16, 0 -; CHECK-NEXT: v_writelane_b32 v40, s31, 1 ; CHECK-NEXT: s_getpc_b64 s[16:17] ; CHECK-NEXT: s_add_u32 s16, s16, ext@rel32@lo+4 ; CHECK-NEXT: s_addc_u32 s17, s17, ext@rel32@hi+12 ; CHECK-NEXT: s_swappc_b64 s[30:31], s[16:17] ; CHECK-NEXT: v_mov_b32_e32 v2, 0 +; CHECK-NEXT: v_readlane_b32 s30, v40, 0 ; CHECK-NEXT: global_store_dword v[0:1], v2, off ; CHECK-NEXT: s_waitcnt vmcnt(0) ; CHECK-NEXT: v_readlane_b32 s31, v40, 1 -; CHECK-NEXT: v_readlane_b32 s30, v40, 0 ; CHECK-NEXT: v_readlane_b32 s4, v41, 0 ; CHECK-NEXT: s_or_saveexec_b64 s[6:7], -1 ; CHECK-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload diff --git a/llvm/test/CodeGen/AMDGPU/GlobalISel/call-outgoing-stack-args.ll b/llvm/test/CodeGen/AMDGPU/GlobalISel/call-outgoing-stack-args.ll --- a/llvm/test/CodeGen/AMDGPU/GlobalISel/call-outgoing-stack-args.ll +++ b/llvm/test/CodeGen/AMDGPU/GlobalISel/call-outgoing-stack-args.ll @@ -248,24 +248,24 @@ ; MUBUF-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; MUBUF-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; MUBUF-NEXT: s_mov_b64 exec, s[6:7] +; MUBUF-NEXT: v_writelane_b32 v41, s4, 0 +; MUBUF-NEXT: v_writelane_b32 v40, s30, 0 ; MUBUF-NEXT: s_addk_i32 s32, 0x400 +; MUBUF-NEXT: v_writelane_b32 v40, s31, 1 ; MUBUF-NEXT: v_mov_b32_e32 v0, 9 ; MUBUF-NEXT: buffer_store_dword v0, off, s[0:3], s32 offset:4 ; MUBUF-NEXT: v_mov_b32_e32 v0, 10 ; MUBUF-NEXT: buffer_store_dword v0, off, s[0:3], s32 offset:8 ; MUBUF-NEXT: v_mov_b32_e32 v0, 11 -; MUBUF-NEXT: v_writelane_b32 v40, s30, 0 ; MUBUF-NEXT: buffer_store_dword v0, off, s[0:3], s32 offset:12 ; MUBUF-NEXT: v_mov_b32_e32 v0, 12 -; MUBUF-NEXT: v_writelane_b32 v41, s4, 0 -; MUBUF-NEXT: v_writelane_b32 v40, s31, 1 ; MUBUF-NEXT: buffer_store_dword v0, off, s[0:3], s32 offset:16 ; MUBUF-NEXT: s_getpc_b64 s[4:5] ; MUBUF-NEXT: s_add_u32 s4, s4, external_void_func_v16i32_v16i32_v4i32@rel32@lo+4 ; MUBUF-NEXT: s_addc_u32 s5, s5, external_void_func_v16i32_v16i32_v4i32@rel32@hi+12 ; MUBUF-NEXT: s_swappc_b64 s[30:31], s[4:5] -; MUBUF-NEXT: v_readlane_b32 s31, v40, 1 ; MUBUF-NEXT: v_readlane_b32 s30, v40, 0 +; MUBUF-NEXT: v_readlane_b32 s31, v40, 1 ; MUBUF-NEXT: v_readlane_b32 s4, v41, 0 ; MUBUF-NEXT: s_or_saveexec_b64 s[6:7], -1 ; MUBUF-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -285,8 +285,10 @@ ; FLATSCR-NEXT: scratch_store_dword off, v40, s33 ; 4-byte Folded Spill ; FLATSCR-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; FLATSCR-NEXT: s_mov_b64 exec, s[2:3] -; FLATSCR-NEXT: s_add_i32 s32, s32, 16 ; FLATSCR-NEXT: v_writelane_b32 v41, s0, 0 +; FLATSCR-NEXT: v_writelane_b32 v40, s30, 0 +; FLATSCR-NEXT: s_add_i32 s32, s32, 16 +; FLATSCR-NEXT: v_writelane_b32 v40, s31, 1 ; FLATSCR-NEXT: s_add_u32 s0, s32, 4 ; FLATSCR-NEXT: v_mov_b32_e32 v0, 9 ; FLATSCR-NEXT: scratch_store_dword off, v0, s0 @@ -295,18 +297,16 @@ ; FLATSCR-NEXT: scratch_store_dword off, v0, s0 ; FLATSCR-NEXT: s_add_u32 s0, s32, 12 ; FLATSCR-NEXT: v_mov_b32_e32 v0, 11 -; FLATSCR-NEXT: v_writelane_b32 v40, s30, 0 ; FLATSCR-NEXT: scratch_store_dword off, v0, s0 ; FLATSCR-NEXT: s_add_u32 s0, s32, 16 ; FLATSCR-NEXT: v_mov_b32_e32 v0, 12 -; FLATSCR-NEXT: v_writelane_b32 v40, s31, 1 ; FLATSCR-NEXT: scratch_store_dword off, v0, s0 ; FLATSCR-NEXT: s_getpc_b64 s[0:1] ; FLATSCR-NEXT: s_add_u32 s0, s0, external_void_func_v16i32_v16i32_v4i32@rel32@lo+4 ; FLATSCR-NEXT: s_addc_u32 s1, s1, external_void_func_v16i32_v16i32_v4i32@rel32@hi+12 ; FLATSCR-NEXT: s_swappc_b64 s[30:31], s[0:1] -; FLATSCR-NEXT: v_readlane_b32 s31, v40, 1 ; FLATSCR-NEXT: v_readlane_b32 s30, v40, 0 +; FLATSCR-NEXT: v_readlane_b32 s31, v40, 1 ; FLATSCR-NEXT: v_readlane_b32 s0, v41, 0 ; FLATSCR-NEXT: s_or_saveexec_b64 s[2:3], -1 ; FLATSCR-NEXT: scratch_load_dword v40, off, s33 ; 4-byte Folded Reload @@ -330,12 +330,12 @@ ; MUBUF-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; MUBUF-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; MUBUF-NEXT: s_mov_b64 exec, s[6:7] -; MUBUF-NEXT: buffer_load_dword v1, v0, s[0:3], 0 offen -; MUBUF-NEXT: buffer_load_dword v2, v0, s[0:3], 0 offen offset:4 -; MUBUF-NEXT: s_addk_i32 s32, 0x400 -; MUBUF-NEXT: v_writelane_b32 v40, s30, 0 ; MUBUF-NEXT: v_writelane_b32 v41, s4, 0 +; MUBUF-NEXT: v_writelane_b32 v40, s30, 0 +; MUBUF-NEXT: s_addk_i32 s32, 0x400 ; MUBUF-NEXT: v_writelane_b32 v40, s31, 1 +; MUBUF-NEXT: buffer_load_dword v1, v0, s[0:3], 0 offen +; MUBUF-NEXT: buffer_load_dword v2, v0, s[0:3], 0 offen offset:4 ; MUBUF-NEXT: s_getpc_b64 s[4:5] ; MUBUF-NEXT: s_add_u32 s4, s4, external_void_func_byval@rel32@lo+4 ; MUBUF-NEXT: s_addc_u32 s5, s5, external_void_func_byval@rel32@hi+12 @@ -393,8 +393,8 @@ ; MUBUF-NEXT: s_waitcnt vmcnt(1) ; MUBUF-NEXT: buffer_store_dword v2, off, s[0:3], s32 offset:60 ; MUBUF-NEXT: s_swappc_b64 s[30:31], s[4:5] -; MUBUF-NEXT: v_readlane_b32 s31, v40, 1 ; MUBUF-NEXT: v_readlane_b32 s30, v40, 0 +; MUBUF-NEXT: v_readlane_b32 s31, v40, 1 ; MUBUF-NEXT: v_readlane_b32 s4, v41, 0 ; MUBUF-NEXT: s_or_saveexec_b64 s[6:7], -1 ; MUBUF-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -414,14 +414,14 @@ ; FLATSCR-NEXT: scratch_store_dword off, v40, s33 ; 4-byte Folded Spill ; FLATSCR-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; FLATSCR-NEXT: s_mov_b64 exec, s[2:3] -; FLATSCR-NEXT: scratch_load_dwordx2 v[1:2], v0, off +; FLATSCR-NEXT: v_writelane_b32 v41, s0, 0 +; FLATSCR-NEXT: v_writelane_b32 v40, s30, 0 ; FLATSCR-NEXT: s_add_i32 s32, s32, 16 +; FLATSCR-NEXT: v_writelane_b32 v40, s31, 1 +; FLATSCR-NEXT: scratch_load_dwordx2 v[1:2], v0, off ; FLATSCR-NEXT: v_add_u32_e32 v3, 8, v0 -; FLATSCR-NEXT: v_writelane_b32 v41, s0, 0 ; FLATSCR-NEXT: s_add_u32 s0, s32, 8 -; FLATSCR-NEXT: v_writelane_b32 v40, s30, 0 ; FLATSCR-NEXT: s_add_u32 s2, s32, 56 -; FLATSCR-NEXT: v_writelane_b32 v40, s31, 1 ; FLATSCR-NEXT: s_waitcnt vmcnt(0) ; FLATSCR-NEXT: scratch_store_dwordx2 off, v[1:2], s32 ; FLATSCR-NEXT: scratch_load_dwordx2 v[1:2], v3, off @@ -460,8 +460,8 @@ ; FLATSCR-NEXT: s_waitcnt vmcnt(0) ; FLATSCR-NEXT: scratch_store_dwordx2 off, v[0:1], s2 ; FLATSCR-NEXT: s_swappc_b64 s[30:31], s[0:1] -; FLATSCR-NEXT: v_readlane_b32 s31, v40, 1 ; FLATSCR-NEXT: v_readlane_b32 s30, v40, 0 +; FLATSCR-NEXT: v_readlane_b32 s31, v40, 1 ; FLATSCR-NEXT: v_readlane_b32 s0, v41, 0 ; FLATSCR-NEXT: s_or_saveexec_b64 s[2:3], -1 ; FLATSCR-NEXT: scratch_load_dword v40, off, s33 ; 4-byte Folded Reload diff --git a/llvm/test/CodeGen/AMDGPU/GlobalISel/dynamic-alloca-uniform.ll b/llvm/test/CodeGen/AMDGPU/GlobalISel/dynamic-alloca-uniform.ll --- a/llvm/test/CodeGen/AMDGPU/GlobalISel/dynamic-alloca-uniform.ll +++ b/llvm/test/CodeGen/AMDGPU/GlobalISel/dynamic-alloca-uniform.ll @@ -73,7 +73,6 @@ ; GFX9-NEXT: s_addc_u32 s5, s5, gv@gotpcrel32@hi+12 ; GFX9-NEXT: s_load_dwordx2 s[4:5], s[4:5], 0x0 ; GFX9-NEXT: v_mov_b32_e32 v0, 0 -; GFX9-NEXT: s_mov_b32 s33, s6 ; GFX9-NEXT: s_waitcnt lgkmcnt(0) ; GFX9-NEXT: s_load_dword s4, s[4:5], 0x0 ; GFX9-NEXT: s_waitcnt lgkmcnt(0) @@ -84,6 +83,7 @@ ; GFX9-NEXT: v_mov_b32_e32 v1, s4 ; GFX9-NEXT: buffer_store_dword v0, v1, s[0:3], 0 offen ; GFX9-NEXT: s_addk_i32 s32, 0xfc00 +; GFX9-NEXT: s_mov_b32 s33, s6 ; GFX9-NEXT: s_waitcnt vmcnt(0) ; GFX9-NEXT: s_setpc_b64 s[30:31] ; @@ -99,7 +99,6 @@ ; GFX10-NEXT: s_addc_u32 s5, s5, gv@gotpcrel32@hi+12 ; GFX10-NEXT: v_mov_b32_e32 v0, 0 ; GFX10-NEXT: s_load_dwordx2 s[4:5], s[4:5], 0x0 -; GFX10-NEXT: s_mov_b32 s33, s6 ; GFX10-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-NEXT: s_load_dword s4, s[4:5], 0x0 ; GFX10-NEXT: s_waitcnt lgkmcnt(0) @@ -110,6 +109,7 @@ ; GFX10-NEXT: s_addk_i32 s32, 0xfe00 ; GFX10-NEXT: v_mov_b32_e32 v1, s4 ; GFX10-NEXT: buffer_store_dword v0, v1, s[0:3], 0 offen +; GFX10-NEXT: s_mov_b32 s33, s6 ; GFX10-NEXT: s_waitcnt_vscnt null, 0x0 ; GFX10-NEXT: s_setpc_b64 s[30:31] ; @@ -125,7 +125,6 @@ ; GFX11-NEXT: s_addc_u32 s1, s1, gv@gotpcrel32@hi+12 ; GFX11-NEXT: v_mov_b32_e32 v0, 0 ; GFX11-NEXT: s_load_b64 s[0:1], s[0:1], 0x0 -; GFX11-NEXT: s_mov_b32 s33, s2 ; GFX11-NEXT: s_waitcnt lgkmcnt(0) ; GFX11-NEXT: s_load_b32 s0, s[0:1], 0x0 ; GFX11-NEXT: s_waitcnt lgkmcnt(0) @@ -137,6 +136,7 @@ ; GFX11-NEXT: s_add_u32 s0, s32, s0 ; GFX11-NEXT: s_add_i32 s32, s32, -16 ; GFX11-NEXT: scratch_store_b32 off, v0, s0 +; GFX11-NEXT: s_mov_b32 s33, s2 ; GFX11-NEXT: s_waitcnt_vscnt null, 0x0 ; GFX11-NEXT: s_setpc_b64 s[30:31] %n = load i32, ptr addrspace(4) @gv, align 4 @@ -213,7 +213,6 @@ ; GFX9-NEXT: s_addc_u32 s5, s5, gv@gotpcrel32@hi+12 ; GFX9-NEXT: s_load_dwordx2 s[4:5], s[4:5], 0x0 ; GFX9-NEXT: v_mov_b32_e32 v0, 0 -; GFX9-NEXT: s_mov_b32 s33, s6 ; GFX9-NEXT: s_waitcnt lgkmcnt(0) ; GFX9-NEXT: s_load_dword s4, s[4:5], 0x0 ; GFX9-NEXT: s_waitcnt lgkmcnt(0) @@ -224,6 +223,7 @@ ; GFX9-NEXT: v_mov_b32_e32 v1, s4 ; GFX9-NEXT: buffer_store_dword v0, v1, s[0:3], 0 offen ; GFX9-NEXT: s_addk_i32 s32, 0xfc00 +; GFX9-NEXT: s_mov_b32 s33, s6 ; GFX9-NEXT: s_waitcnt vmcnt(0) ; GFX9-NEXT: s_setpc_b64 s[30:31] ; @@ -239,7 +239,6 @@ ; GFX10-NEXT: s_addc_u32 s5, s5, gv@gotpcrel32@hi+12 ; GFX10-NEXT: v_mov_b32_e32 v0, 0 ; GFX10-NEXT: s_load_dwordx2 s[4:5], s[4:5], 0x0 -; GFX10-NEXT: s_mov_b32 s33, s6 ; GFX10-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-NEXT: s_load_dword s4, s[4:5], 0x0 ; GFX10-NEXT: s_waitcnt lgkmcnt(0) @@ -250,6 +249,7 @@ ; GFX10-NEXT: s_addk_i32 s32, 0xfe00 ; GFX10-NEXT: v_mov_b32_e32 v1, s4 ; GFX10-NEXT: buffer_store_dword v0, v1, s[0:3], 0 offen +; GFX10-NEXT: s_mov_b32 s33, s6 ; GFX10-NEXT: s_waitcnt_vscnt null, 0x0 ; GFX10-NEXT: s_setpc_b64 s[30:31] ; @@ -265,7 +265,6 @@ ; GFX11-NEXT: s_addc_u32 s1, s1, gv@gotpcrel32@hi+12 ; GFX11-NEXT: v_mov_b32_e32 v0, 0 ; GFX11-NEXT: s_load_b64 s[0:1], s[0:1], 0x0 -; GFX11-NEXT: s_mov_b32 s33, s2 ; GFX11-NEXT: s_waitcnt lgkmcnt(0) ; GFX11-NEXT: s_load_b32 s0, s[0:1], 0x0 ; GFX11-NEXT: s_waitcnt lgkmcnt(0) @@ -277,6 +276,7 @@ ; GFX11-NEXT: s_add_u32 s0, s32, s0 ; GFX11-NEXT: s_add_i32 s32, s32, -16 ; GFX11-NEXT: scratch_store_b32 off, v0, s0 +; GFX11-NEXT: s_mov_b32 s33, s2 ; GFX11-NEXT: s_waitcnt_vscnt null, 0x0 ; GFX11-NEXT: s_setpc_b64 s[30:31] %n = load i32, ptr addrspace(4) @gv, align 16 @@ -357,7 +357,6 @@ ; GFX9-NEXT: s_addc_u32 s5, s5, gv@gotpcrel32@hi+12 ; GFX9-NEXT: s_load_dwordx2 s[4:5], s[4:5], 0x0 ; GFX9-NEXT: v_mov_b32_e32 v0, 0 -; GFX9-NEXT: s_mov_b32 s33, s6 ; GFX9-NEXT: s_waitcnt lgkmcnt(0) ; GFX9-NEXT: s_load_dword s4, s[4:5], 0x0 ; GFX9-NEXT: s_waitcnt lgkmcnt(0) @@ -369,6 +368,7 @@ ; GFX9-NEXT: v_mov_b32_e32 v1, s4 ; GFX9-NEXT: buffer_store_dword v0, v1, s[0:3], 0 offen ; GFX9-NEXT: s_addk_i32 s32, 0xf000 +; GFX9-NEXT: s_mov_b32 s33, s6 ; GFX9-NEXT: s_waitcnt vmcnt(0) ; GFX9-NEXT: s_setpc_b64 s[30:31] ; @@ -378,14 +378,13 @@ ; GFX10-NEXT: s_waitcnt_vscnt null, 0x0 ; GFX10-NEXT: s_mov_b32 s6, s33 ; GFX10-NEXT: s_add_i32 s33, s32, 0x3e0 -; GFX10-NEXT: s_addk_i32 s32, 0x800 ; GFX10-NEXT: s_and_b32 s33, s33, 0xfffffc00 +; GFX10-NEXT: s_addk_i32 s32, 0x800 ; GFX10-NEXT: s_getpc_b64 s[4:5] ; GFX10-NEXT: s_add_u32 s4, s4, gv@gotpcrel32@lo+4 ; GFX10-NEXT: s_addc_u32 s5, s5, gv@gotpcrel32@hi+12 ; GFX10-NEXT: v_mov_b32_e32 v0, 0 ; GFX10-NEXT: s_load_dwordx2 s[4:5], s[4:5], 0x0 -; GFX10-NEXT: s_mov_b32 s33, s6 ; GFX10-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-NEXT: s_load_dword s4, s[4:5], 0x0 ; GFX10-NEXT: s_waitcnt lgkmcnt(0) @@ -397,6 +396,7 @@ ; GFX10-NEXT: s_and_b32 s4, s4, 0xfffffc00 ; GFX10-NEXT: v_mov_b32_e32 v1, s4 ; GFX10-NEXT: buffer_store_dword v0, v1, s[0:3], 0 offen +; GFX10-NEXT: s_mov_b32 s33, s6 ; GFX10-NEXT: s_waitcnt_vscnt null, 0x0 ; GFX10-NEXT: s_setpc_b64 s[30:31] ; @@ -406,14 +406,14 @@ ; GFX11-NEXT: s_waitcnt_vscnt null, 0x0 ; GFX11-NEXT: s_mov_b32 s2, s33 ; GFX11-NEXT: s_add_i32 s33, s32, 31 -; GFX11-NEXT: s_add_i32 s32, s32, 64 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_and_not1_b32 s33, s33, 31 +; GFX11-NEXT: s_add_i32 s32, s32, 64 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, gv@gotpcrel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, gv@gotpcrel32@hi+12 ; GFX11-NEXT: v_mov_b32_e32 v0, 0 ; GFX11-NEXT: s_load_b64 s[0:1], s[0:1], 0x0 -; GFX11-NEXT: s_mov_b32 s33, s2 ; GFX11-NEXT: s_waitcnt lgkmcnt(0) ; GFX11-NEXT: s_load_b32 s0, s[0:1], 0x0 ; GFX11-NEXT: s_waitcnt lgkmcnt(0) @@ -426,6 +426,7 @@ ; GFX11-NEXT: s_addk_i32 s32, 0xffc0 ; GFX11-NEXT: s_and_b32 s0, s0, 0xfffffc00 ; GFX11-NEXT: scratch_store_b32 off, v0, s0 +; GFX11-NEXT: s_mov_b32 s33, s2 ; GFX11-NEXT: s_waitcnt_vscnt null, 0x0 ; GFX11-NEXT: s_setpc_b64 s[30:31] %n = load i32, ptr addrspace(4) @gv diff --git a/llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement-stack-lower.ll b/llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement-stack-lower.ll --- a/llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement-stack-lower.ll +++ b/llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement-stack-lower.ll @@ -11,6 +11,7 @@ ; GCN-NEXT: s_mov_b32 s4, s33 ; GCN-NEXT: s_add_i32 s33, s32, 0x3fc0 ; GCN-NEXT: s_and_b32 s33, s33, 0xffffc000 +; GCN-NEXT: s_add_i32 s32, s32, 0x10000 ; GCN-NEXT: buffer_store_dword v40, off, s[0:3], s33 offset:60 ; 4-byte Folded Spill ; GCN-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:56 ; 4-byte Folded Spill ; GCN-NEXT: buffer_store_dword v42, off, s[0:3], s33 offset:52 ; 4-byte Folded Spill @@ -42,7 +43,6 @@ ; GCN-NEXT: global_load_dwordx4 v[52:55], v[0:1], off offset:176 ; GCN-NEXT: global_load_dwordx4 v[24:27], v[0:1], off offset:192 ; GCN-NEXT: global_load_dwordx4 v[7:10], v[0:1], off offset:208 -; GCN-NEXT: s_add_i32 s32, s32, 0x10000 ; GCN-NEXT: s_add_i32 s32, s32, 0xffff0000 ; GCN-NEXT: s_waitcnt vmcnt(0) ; GCN-NEXT: buffer_store_dword v3, off, s[0:3], s33 offset:512 ; 4-byte Folded Spill @@ -186,6 +186,7 @@ ; GCN-NEXT: s_mov_b32 s4, s33 ; GCN-NEXT: s_add_i32 s33, s32, 0x3fc0 ; GCN-NEXT: s_and_b32 s33, s33, 0xffffc000 +; GCN-NEXT: s_add_i32 s32, s32, 0x10000 ; GCN-NEXT: buffer_store_dword v40, off, s[0:3], s33 offset:60 ; 4-byte Folded Spill ; GCN-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:56 ; 4-byte Folded Spill ; GCN-NEXT: buffer_store_dword v42, off, s[0:3], s33 offset:52 ; 4-byte Folded Spill @@ -217,7 +218,6 @@ ; GCN-NEXT: global_load_dwordx4 v[52:55], v[0:1], off offset:176 ; GCN-NEXT: global_load_dwordx4 v[24:27], v[0:1], off offset:192 ; GCN-NEXT: global_load_dwordx4 v[7:10], v[0:1], off offset:208 -; GCN-NEXT: s_add_i32 s32, s32, 0x10000 ; GCN-NEXT: s_add_i32 s32, s32, 0xffff0000 ; GCN-NEXT: s_waitcnt vmcnt(0) ; GCN-NEXT: buffer_store_dword v3, off, s[0:3], s33 offset:512 ; 4-byte Folded Spill @@ -348,9 +348,9 @@ ; GCN-NEXT: buffer_load_dword v42, off, s[0:3], s33 offset:52 ; 4-byte Folded Reload ; GCN-NEXT: buffer_load_dword v41, off, s[0:3], s33 offset:56 ; 4-byte Folded Reload ; GCN-NEXT: buffer_load_dword v40, off, s[0:3], s33 offset:60 ; 4-byte Folded Reload -; GCN-NEXT: s_mov_b32 s33, s4 ; GCN-NEXT: s_waitcnt vmcnt(16) ; GCN-NEXT: v_lshrrev_b32_e32 v0, v1, v0 +; GCN-NEXT: s_mov_b32 s33, s4 ; GCN-NEXT: s_waitcnt vmcnt(0) ; GCN-NEXT: s_setpc_b64 s[30:31] %vec = load <128 x i16>, ptr addrspace(1) %ptr @@ -365,6 +365,7 @@ ; GCN-NEXT: s_mov_b32 s4, s33 ; GCN-NEXT: s_add_i32 s33, s32, 0x3fc0 ; GCN-NEXT: s_and_b32 s33, s33, 0xffffc000 +; GCN-NEXT: s_add_i32 s32, s32, 0x10000 ; GCN-NEXT: buffer_store_dword v40, off, s[0:3], s33 offset:60 ; 4-byte Folded Spill ; GCN-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:56 ; 4-byte Folded Spill ; GCN-NEXT: buffer_store_dword v42, off, s[0:3], s33 offset:52 ; 4-byte Folded Spill @@ -396,7 +397,6 @@ ; GCN-NEXT: global_load_dwordx4 v[52:55], v[0:1], off offset:176 ; GCN-NEXT: global_load_dwordx4 v[24:27], v[0:1], off offset:192 ; GCN-NEXT: global_load_dwordx4 v[7:10], v[0:1], off offset:208 -; GCN-NEXT: s_add_i32 s32, s32, 0x10000 ; GCN-NEXT: s_add_i32 s32, s32, 0xffff0000 ; GCN-NEXT: s_waitcnt vmcnt(0) ; GCN-NEXT: buffer_store_dword v3, off, s[0:3], s33 offset:512 ; 4-byte Folded Spill diff --git a/llvm/test/CodeGen/AMDGPU/GlobalISel/localizer.ll b/llvm/test/CodeGen/AMDGPU/GlobalISel/localizer.ll --- a/llvm/test/CodeGen/AMDGPU/GlobalISel/localizer.ll +++ b/llvm/test/CodeGen/AMDGPU/GlobalISel/localizer.ll @@ -238,17 +238,17 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[18:19] +; GFX9-NEXT: v_writelane_b32 v41, s16, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: v_mov_b32_e32 v0, 0 ; GFX9-NEXT: v_mov_b32_e32 v1, 0 ; GFX9-NEXT: global_load_dword v0, v[0:1], off glc ; GFX9-NEXT: s_waitcnt vmcnt(0) -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 -; GFX9-NEXT: v_writelane_b32 v41, s16, 0 -; GFX9-NEXT: s_addk_i32 s32, 0x400 -; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_swappc_b64 s[30:31], 0 -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s4, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[6:7], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload diff --git a/llvm/test/CodeGen/AMDGPU/GlobalISel/non-entry-alloca.ll b/llvm/test/CodeGen/AMDGPU/GlobalISel/non-entry-alloca.ll --- a/llvm/test/CodeGen/AMDGPU/GlobalISel/non-entry-alloca.ll +++ b/llvm/test/CodeGen/AMDGPU/GlobalISel/non-entry-alloca.ll @@ -149,8 +149,8 @@ ; GCN: ; %bb.0: ; %entry ; GCN-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) ; GCN-NEXT: s_mov_b32 s7, s33 -; GCN-NEXT: v_cmp_eq_u32_e32 vcc, 0, v2 ; GCN-NEXT: s_mov_b32 s33, s32 +; GCN-NEXT: v_cmp_eq_u32_e32 vcc, 0, v2 ; GCN-NEXT: s_addk_i32 s32, 0x400 ; GCN-NEXT: s_and_saveexec_b64 s[4:5], vcc ; GCN-NEXT: s_cbranch_execz .LBB2_3 @@ -213,8 +213,8 @@ ; GCN-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) ; GCN-NEXT: s_mov_b32 s7, s33 ; GCN-NEXT: s_add_i32 s33, s32, 0xfc0 -; GCN-NEXT: v_cmp_eq_u32_e32 vcc, 0, v2 ; GCN-NEXT: s_and_b32 s33, s33, 0xfffff000 +; GCN-NEXT: v_cmp_eq_u32_e32 vcc, 0, v2 ; GCN-NEXT: s_addk_i32 s32, 0x2000 ; GCN-NEXT: s_and_saveexec_b64 s[4:5], vcc ; GCN-NEXT: s_cbranch_execz .LBB3_2 @@ -265,3 +265,6 @@ declare i32 @llvm.amdgcn.workitem.id.x() #0 attributes #0 = { nounwind readnone speculatable } +;; NOTE: These prefixes are unused and the list is autogenerated. Do not add tests below this line: +; ASSUME1024: {{.*}} +; DEFAULTSIZE: {{.*}} diff --git a/llvm/test/CodeGen/AMDGPU/abi-attribute-hints-undefined-behavior.ll b/llvm/test/CodeGen/AMDGPU/abi-attribute-hints-undefined-behavior.ll --- a/llvm/test/CodeGen/AMDGPU/abi-attribute-hints-undefined-behavior.ll +++ b/llvm/test/CodeGen/AMDGPU/abi-attribute-hints-undefined-behavior.ll @@ -23,16 +23,16 @@ ; FIXEDABI-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; FIXEDABI-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; FIXEDABI-NEXT: s_mov_b64 exec, s[18:19] -; FIXEDABI-NEXT: s_addk_i32 s32, 0x400 -; FIXEDABI-NEXT: v_writelane_b32 v40, s30, 0 ; FIXEDABI-NEXT: v_writelane_b32 v41, s16, 0 +; FIXEDABI-NEXT: v_writelane_b32 v40, s30, 0 +; FIXEDABI-NEXT: s_addk_i32 s32, 0x400 ; FIXEDABI-NEXT: v_writelane_b32 v40, s31, 1 ; FIXEDABI-NEXT: s_getpc_b64 s[16:17] ; FIXEDABI-NEXT: s_add_u32 s16, s16, requires_all_inputs@rel32@lo+4 ; FIXEDABI-NEXT: s_addc_u32 s17, s17, requires_all_inputs@rel32@hi+12 ; FIXEDABI-NEXT: s_swappc_b64 s[30:31], s[16:17] -; FIXEDABI-NEXT: v_readlane_b32 s31, v40, 1 ; FIXEDABI-NEXT: v_readlane_b32 s30, v40, 0 +; FIXEDABI-NEXT: v_readlane_b32 s31, v40, 1 ; FIXEDABI-NEXT: v_readlane_b32 s4, v41, 0 ; FIXEDABI-NEXT: s_or_saveexec_b64 s[6:7], -1 ; FIXEDABI-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload diff --git a/llvm/test/CodeGen/AMDGPU/accvgpr-spill-scc-clobber.mir b/llvm/test/CodeGen/AMDGPU/accvgpr-spill-scc-clobber.mir --- a/llvm/test/CodeGen/AMDGPU/accvgpr-spill-scc-clobber.mir +++ b/llvm/test/CodeGen/AMDGPU/accvgpr-spill-scc-clobber.mir @@ -22,6 +22,294 @@ ; GFX908-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX908-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX908-NEXT: {{ $}} + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr32_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr33_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr34_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr35_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr36_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr37_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr38_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr39_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr40_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr41_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr42_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr43_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr44_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr45_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr46_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr47_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr48_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr49_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr50_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr51_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr52_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr53_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr54_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr55_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr56_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr57_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr58_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr59_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr60_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr61_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr62_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr63_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr64_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr65_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr66_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr67_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr68_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr69_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr70_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr71_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr72_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr73_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr74_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr75_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr76_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr77_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr78_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr79_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr80_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr81_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr82_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr83_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr84_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr85_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr86_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr87_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr88_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr89_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr90_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr91_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr92_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr93_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr94_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr95_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr96_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr97_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr98_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr99_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr100_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr101_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr102_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr103_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr104_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr105_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr106_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr107_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr108_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr109_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr110_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr111_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr112_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr113_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr114_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr115_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr116_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr117_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr118_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr119_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr120_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr121_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr122_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr123_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr124_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr125_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr126_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr127_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr128_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr129_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr130_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr131_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr132_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr133_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr134_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr135_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr136_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr137_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr138_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr139_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr140_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr141_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr142_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr143_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr144_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr145_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr146_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr147_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr148_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr149_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr150_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr151_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr152_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr153_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr154_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr155_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr156_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr157_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr158_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr159_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr160_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr161_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr162_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr163_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr164_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr165_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr166_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr167_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr168_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr169_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr170_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr171_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr172_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr173_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr174_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr175_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr176_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr177_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr178_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr179_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr180_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr181_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr182_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr183_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr184_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr185_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr186_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr187_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr188_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr189_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr190_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr191_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr192_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr193_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr194_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr195_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr196_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr197_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr198_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr199_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr200_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr201_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr202_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr203_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr204_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr205_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr206_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr207_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr208_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr209_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr210_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr211_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr212_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr213_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr214_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr215_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr216_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr217_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr218_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr219_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr220_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr221_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr222_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr223_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr224_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr225_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr226_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr227_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr228_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr229_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr230_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr231_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr232_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr233_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr234_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr235_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr236_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr237_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr238_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr239_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr240_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr241_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr242_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr243_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr244_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr245_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr246_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr247_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr248_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr249_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr250_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr251_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr252_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr253_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr254_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr255_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX908-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX908-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.2, addrspace 5) ; GFX908-NEXT: $vgpr1 = V_MOV_B32_e32 8200, implicit $exec @@ -44,230 +332,566 @@ ; GFX90A-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX90A-NEXT: liveins: $agpr32, $agpr33, $agpr34, $agpr35, $agpr36, $agpr37, $agpr38, $agpr39, $agpr40, $agpr41, $agpr42, $agpr43, $agpr44, $agpr45, $agpr46, $agpr47, $agpr48, $agpr49, $agpr50, $agpr51, $agpr52, $agpr53, $agpr54, $agpr55, $agpr56, $agpr57, $agpr58, $agpr59, $agpr60, $agpr61, $agpr62, $agpr63, $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15, $vgpr16, $vgpr17, $vgpr18, $vgpr19, $vgpr20, $vgpr21, $vgpr22, $vgpr23, $vgpr24, $vgpr25, $vgpr26, $vgpr27, $vgpr28, $vgpr29, $vgpr30, $vgpr31, $vgpr32, $vgpr33, $vgpr34, $vgpr35, $vgpr36, $vgpr37, $vgpr38, $vgpr39, $vgpr48, $vgpr49, $vgpr50, $vgpr51, $vgpr52, $vgpr53, $vgpr54, $vgpr55, $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX90A-NEXT: {{ $}} + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr32_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr33_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr34_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr35_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr36_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr37_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr38_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr39_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr48_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr49_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr50_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr51_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr52_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr53_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr54_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr55_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX90A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr32, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr32_lo16, $vgpr0_lo16 ; GFX90A-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr33, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr33_lo16, $vgpr1_lo16 ; GFX90A-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 killed $agpr34, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr34_lo16, $vgpr2_lo16 ; GFX90A-NEXT: $vgpr3 = V_ACCVGPR_READ_B32_e64 killed $agpr35, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr35_lo16, $vgpr3_lo16 ; GFX90A-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 killed $agpr36, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr36_lo16, $vgpr4_lo16 ; GFX90A-NEXT: $vgpr5 = V_ACCVGPR_READ_B32_e64 killed $agpr37, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr37_lo16, $vgpr5_lo16 ; GFX90A-NEXT: $vgpr6 = V_ACCVGPR_READ_B32_e64 killed $agpr38, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr38_lo16, $vgpr6_lo16 ; GFX90A-NEXT: $vgpr7 = V_ACCVGPR_READ_B32_e64 killed $agpr39, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr39_lo16, $vgpr7_lo16 ; GFX90A-NEXT: $vgpr8 = V_ACCVGPR_READ_B32_e64 killed $agpr40, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr40_lo16, $vgpr8_lo16 ; GFX90A-NEXT: $vgpr9 = V_ACCVGPR_READ_B32_e64 killed $agpr41, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr41_lo16, $vgpr9_lo16 ; GFX90A-NEXT: $vgpr10 = V_ACCVGPR_READ_B32_e64 killed $agpr42, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr42_lo16, $vgpr10_lo16 ; GFX90A-NEXT: $vgpr11 = V_ACCVGPR_READ_B32_e64 killed $agpr43, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr43_lo16, $vgpr11_lo16 ; GFX90A-NEXT: $vgpr12 = V_ACCVGPR_READ_B32_e64 killed $agpr44, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr44_lo16, $vgpr12_lo16 ; GFX90A-NEXT: $vgpr13 = V_ACCVGPR_READ_B32_e64 killed $agpr45, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr45_lo16, $vgpr13_lo16 ; GFX90A-NEXT: $vgpr14 = V_ACCVGPR_READ_B32_e64 killed $agpr46, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr46_lo16, $vgpr14_lo16 ; GFX90A-NEXT: $vgpr15 = V_ACCVGPR_READ_B32_e64 killed $agpr47, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr47_lo16, $vgpr15_lo16 ; GFX90A-NEXT: $vgpr16 = V_ACCVGPR_READ_B32_e64 killed $agpr48, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr48_lo16, $vgpr16_lo16 ; GFX90A-NEXT: $vgpr17 = V_ACCVGPR_READ_B32_e64 killed $agpr49, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr49_lo16, $vgpr17_lo16 ; GFX90A-NEXT: $vgpr18 = V_ACCVGPR_READ_B32_e64 killed $agpr50, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr50_lo16, $vgpr18_lo16 ; GFX90A-NEXT: $vgpr19 = V_ACCVGPR_READ_B32_e64 killed $agpr51, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr51_lo16, $vgpr19_lo16 ; GFX90A-NEXT: $vgpr20 = V_ACCVGPR_READ_B32_e64 killed $agpr52, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr52_lo16, $vgpr20_lo16 ; GFX90A-NEXT: $vgpr21 = V_ACCVGPR_READ_B32_e64 killed $agpr53, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr53_lo16, $vgpr21_lo16 ; GFX90A-NEXT: $vgpr22 = V_ACCVGPR_READ_B32_e64 killed $agpr54, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr54_lo16, $vgpr22_lo16 ; GFX90A-NEXT: $vgpr23 = V_ACCVGPR_READ_B32_e64 killed $agpr55, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr55_lo16, $vgpr23_lo16 ; GFX90A-NEXT: $vgpr24 = V_ACCVGPR_READ_B32_e64 killed $agpr56, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr56_lo16, $vgpr24_lo16 ; GFX90A-NEXT: $vgpr25 = V_ACCVGPR_READ_B32_e64 killed $agpr57, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr57_lo16, $vgpr25_lo16 ; GFX90A-NEXT: $vgpr26 = V_ACCVGPR_READ_B32_e64 killed $agpr58, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr58_lo16, $vgpr26_lo16 ; GFX90A-NEXT: $vgpr27 = V_ACCVGPR_READ_B32_e64 killed $agpr59, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr59_lo16, $vgpr27_lo16 ; GFX90A-NEXT: $vgpr28 = V_ACCVGPR_READ_B32_e64 killed $agpr60, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr60_lo16, $vgpr28_lo16 ; GFX90A-NEXT: $vgpr29 = V_ACCVGPR_READ_B32_e64 killed $agpr61, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr61_lo16, $vgpr29_lo16 ; GFX90A-NEXT: $vgpr30 = V_ACCVGPR_READ_B32_e64 killed $agpr62, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr62_lo16, $vgpr30_lo16 ; GFX90A-NEXT: $vgpr31 = V_ACCVGPR_READ_B32_e64 killed $agpr63, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr63_lo16, $vgpr31_lo16 ; GFX90A-NEXT: $vgpr32 = V_ACCVGPR_READ_B32_e64 killed $agpr64, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr64_lo16, $vgpr32_lo16 ; GFX90A-NEXT: $vgpr33 = V_ACCVGPR_READ_B32_e64 killed $agpr65, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr65_lo16, $vgpr33_lo16 ; GFX90A-NEXT: $vgpr34 = V_ACCVGPR_READ_B32_e64 killed $agpr66, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr66_lo16, $vgpr34_lo16 ; GFX90A-NEXT: $vgpr35 = V_ACCVGPR_READ_B32_e64 killed $agpr67, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr67_lo16, $vgpr35_lo16 ; GFX90A-NEXT: $vgpr36 = V_ACCVGPR_READ_B32_e64 killed $agpr68, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr68_lo16, $vgpr36_lo16 ; GFX90A-NEXT: $vgpr37 = V_ACCVGPR_READ_B32_e64 killed $agpr69, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr69_lo16, $vgpr37_lo16 ; GFX90A-NEXT: $vgpr38 = V_ACCVGPR_READ_B32_e64 killed $agpr70, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr70_lo16, $vgpr38_lo16 ; GFX90A-NEXT: $vgpr39 = V_ACCVGPR_READ_B32_e64 killed $agpr71, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr71_lo16, $vgpr39_lo16 ; GFX90A-NEXT: $vgpr48 = V_ACCVGPR_READ_B32_e64 killed $agpr72, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr72_lo16, $vgpr48_lo16 ; GFX90A-NEXT: $vgpr49 = V_ACCVGPR_READ_B32_e64 killed $agpr73, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr73_lo16, $vgpr49_lo16 ; GFX90A-NEXT: $vgpr50 = V_ACCVGPR_READ_B32_e64 killed $agpr74, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr74_lo16, $vgpr50_lo16 ; GFX90A-NEXT: $vgpr51 = V_ACCVGPR_READ_B32_e64 killed $agpr75, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr75_lo16, $vgpr51_lo16 ; GFX90A-NEXT: $vgpr52 = V_ACCVGPR_READ_B32_e64 killed $agpr76, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr76_lo16, $vgpr52_lo16 ; GFX90A-NEXT: $vgpr53 = V_ACCVGPR_READ_B32_e64 killed $agpr77, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr77_lo16, $vgpr53_lo16 ; GFX90A-NEXT: $vgpr54 = V_ACCVGPR_READ_B32_e64 killed $agpr78, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr78_lo16, $vgpr54_lo16 ; GFX90A-NEXT: $vgpr55 = V_ACCVGPR_READ_B32_e64 killed $agpr79, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr79_lo16, $vgpr55_lo16 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr80, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 700, 0, 0, implicit $exec :: (store (s32) into %stack.50, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd0, 0x18, 0x12, 0x90, 0xd0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xde, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr81, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 696, 0, 0, implicit $exec :: (store (s32) into %stack.51, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd1, 0x18, 0x12, 0x90, 0xd1, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xdc, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr82, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 692, 0, 0, implicit $exec :: (store (s32) into %stack.52, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd2, 0x18, 0x12, 0x90, 0xd2, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xda, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr83, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 688, 0, 0, implicit $exec :: (store (s32) into %stack.53, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd3, 0x18, 0x12, 0x90, 0xd3, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr84, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 684, 0, 0, implicit $exec :: (store (s32) into %stack.54, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd4, 0x18, 0x12, 0x90, 0xd4, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr85, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 680, 0, 0, implicit $exec :: (store (s32) into %stack.55, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd5, 0x18, 0x12, 0x90, 0xd5, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr86, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 676, 0, 0, implicit $exec :: (store (s32) into %stack.56, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd6, 0x18, 0x12, 0x90, 0xd6, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr87, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 672, 0, 0, implicit $exec :: (store (s32) into %stack.57, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd7, 0x18, 0x12, 0x90, 0xd7, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr88, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 668, 0, 0, implicit $exec :: (store (s32) into %stack.58, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd8, 0x18, 0x12, 0x90, 0xd8, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xce, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr89, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 664, 0, 0, implicit $exec :: (store (s32) into %stack.59, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd9, 0x18, 0x12, 0x90, 0xd9, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xcc, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr90, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 660, 0, 0, implicit $exec :: (store (s32) into %stack.60, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xda, 0x18, 0x12, 0x90, 0xda, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xca, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr91, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 656, 0, 0, implicit $exec :: (store (s32) into %stack.61, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdb, 0x18, 0x12, 0x90, 0xdb, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr92, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 652, 0, 0, implicit $exec :: (store (s32) into %stack.62, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdc, 0x18, 0x12, 0x90, 0xdc, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr93, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 648, 0, 0, implicit $exec :: (store (s32) into %stack.63, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdd, 0x18, 0x12, 0x90, 0xdd, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr94, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 644, 0, 0, implicit $exec :: (store (s32) into %stack.64, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xde, 0x18, 0x12, 0x90, 0xde, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr95, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 640, 0, 0, implicit $exec :: (store (s32) into %stack.65, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdf, 0x18, 0x12, 0x90, 0xdf, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr96, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 636, 0, 0, implicit $exec :: (store (s32) into %stack.66, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe0, 0x18, 0x12, 0x90, 0xe0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xbe, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr97, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 632, 0, 0, implicit $exec :: (store (s32) into %stack.67, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe1, 0x18, 0x12, 0x90, 0xe1, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xbc, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr98, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 628, 0, 0, implicit $exec :: (store (s32) into %stack.68, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe2, 0x18, 0x12, 0x90, 0xe2, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xba, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr99, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 624, 0, 0, implicit $exec :: (store (s32) into %stack.69, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe3, 0x18, 0x12, 0x90, 0xe3, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr100, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 620, 0, 0, implicit $exec :: (store (s32) into %stack.70, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe4, 0x18, 0x12, 0x90, 0xe4, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr101, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 616, 0, 0, implicit $exec :: (store (s32) into %stack.71, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe5, 0x18, 0x12, 0x90, 0xe5, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr102, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 612, 0, 0, implicit $exec :: (store (s32) into %stack.72, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe6, 0x18, 0x12, 0x90, 0xe6, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr103, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 608, 0, 0, implicit $exec :: (store (s32) into %stack.73, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe7, 0x18, 0x12, 0x90, 0xe7, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr104, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 604, 0, 0, implicit $exec :: (store (s32) into %stack.74, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe8, 0x18, 0x12, 0x90, 0xe8, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xae, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr105, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 600, 0, 0, implicit $exec :: (store (s32) into %stack.75, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe9, 0x18, 0x12, 0x90, 0xe9, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xac, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr106, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 596, 0, 0, implicit $exec :: (store (s32) into %stack.76, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xea, 0x18, 0x12, 0x90, 0xea, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xaa, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr107, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 592, 0, 0, implicit $exec :: (store (s32) into %stack.77, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xeb, 0x18, 0x12, 0x90, 0xeb, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr108, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 588, 0, 0, implicit $exec :: (store (s32) into %stack.78, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xec, 0x18, 0x12, 0x90, 0xec, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr109, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 584, 0, 0, implicit $exec :: (store (s32) into %stack.79, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xed, 0x18, 0x12, 0x90, 0xed, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr110, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 580, 0, 0, implicit $exec :: (store (s32) into %stack.80, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xee, 0x18, 0x12, 0x90, 0xee, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr111, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 576, 0, 0, implicit $exec :: (store (s32) into %stack.81, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xef, 0x18, 0x12, 0x90, 0xef, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr112, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 572, 0, 0, implicit $exec :: (store (s32) into %stack.82, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf0, 0x18, 0x12, 0x90, 0xf0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x9e, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr113, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 568, 0, 0, implicit $exec :: (store (s32) into %stack.83, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf1, 0x18, 0x12, 0x90, 0xf1, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x9c, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr114, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 564, 0, 0, implicit $exec :: (store (s32) into %stack.84, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf2, 0x18, 0x12, 0x90, 0xf2, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x9a, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr115, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 560, 0, 0, implicit $exec :: (store (s32) into %stack.85, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf3, 0x18, 0x12, 0x90, 0xf3, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x98, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr116, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 556, 0, 0, implicit $exec :: (store (s32) into %stack.86, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf4, 0x18, 0x12, 0x90, 0xf4, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x96, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr117, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 552, 0, 0, implicit $exec :: (store (s32) into %stack.87, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf5, 0x18, 0x12, 0x90, 0xf5, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x94, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr118, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 548, 0, 0, implicit $exec :: (store (s32) into %stack.88, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf6, 0x18, 0x12, 0x90, 0xf6, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x92, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr119, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 544, 0, 0, implicit $exec :: (store (s32) into %stack.89, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf7, 0x18, 0x12, 0x90, 0xf7, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x90, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr120, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 540, 0, 0, implicit $exec :: (store (s32) into %stack.90, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf8, 0x18, 0x12, 0x90, 0xf8, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x8e, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr121, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 536, 0, 0, implicit $exec :: (store (s32) into %stack.91, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf9, 0x18, 0x12, 0x90, 0xf9, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x8c, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr122, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 532, 0, 0, implicit $exec :: (store (s32) into %stack.92, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfa, 0x18, 0x12, 0x90, 0xfa, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x8a, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr123, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 528, 0, 0, implicit $exec :: (store (s32) into %stack.93, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfb, 0x18, 0x12, 0x90, 0xfb, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x88, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr124, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 524, 0, 0, implicit $exec :: (store (s32) into %stack.94, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfc, 0x18, 0x12, 0x90, 0xfc, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x86, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr125, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 520, 0, 0, implicit $exec :: (store (s32) into %stack.95, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfd, 0x18, 0x12, 0x90, 0xfd, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x84, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr126, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 516, 0, 0, implicit $exec :: (store (s32) into %stack.96, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfe, 0x18, 0x12, 0x90, 0xfe, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x82, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr127, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 512, 0, 0, implicit $exec :: (store (s32) into %stack.97, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xff, 0x18, 0x12, 0x90, 0xff, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x80, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr128, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 508, 0, 0, implicit $exec :: (store (s32) into %stack.98, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x80, 0x19, 0x12, 0x90, 0x80, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xfe, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr129, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 504, 0, 0, implicit $exec :: (store (s32) into %stack.99, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x81, 0x19, 0x12, 0x90, 0x81, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xfc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr130, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 500, 0, 0, implicit $exec :: (store (s32) into %stack.100, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x82, 0x19, 0x12, 0x90, 0x82, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xfa, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr131, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 496, 0, 0, implicit $exec :: (store (s32) into %stack.101, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x83, 0x19, 0x12, 0x90, 0x83, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr132, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 492, 0, 0, implicit $exec :: (store (s32) into %stack.102, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x84, 0x19, 0x12, 0x90, 0x84, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr133, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 488, 0, 0, implicit $exec :: (store (s32) into %stack.103, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x85, 0x19, 0x12, 0x90, 0x85, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr134, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 484, 0, 0, implicit $exec :: (store (s32) into %stack.104, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x86, 0x19, 0x12, 0x90, 0x86, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr135, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 480, 0, 0, implicit $exec :: (store (s32) into %stack.105, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x87, 0x19, 0x12, 0x90, 0x87, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr136, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 476, 0, 0, implicit $exec :: (store (s32) into %stack.106, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x88, 0x19, 0x12, 0x90, 0x88, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xee, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr137, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 472, 0, 0, implicit $exec :: (store (s32) into %stack.107, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x89, 0x19, 0x12, 0x90, 0x89, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xec, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr138, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 468, 0, 0, implicit $exec :: (store (s32) into %stack.108, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8a, 0x19, 0x12, 0x90, 0x8a, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xea, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr139, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 464, 0, 0, implicit $exec :: (store (s32) into %stack.109, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8b, 0x19, 0x12, 0x90, 0x8b, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr140, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 460, 0, 0, implicit $exec :: (store (s32) into %stack.110, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8c, 0x19, 0x12, 0x90, 0x8c, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr141, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 456, 0, 0, implicit $exec :: (store (s32) into %stack.111, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8d, 0x19, 0x12, 0x90, 0x8d, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr142, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 452, 0, 0, implicit $exec :: (store (s32) into %stack.112, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8e, 0x19, 0x12, 0x90, 0x8e, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr143, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 448, 0, 0, implicit $exec :: (store (s32) into %stack.113, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8f, 0x19, 0x12, 0x90, 0x8f, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr144, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 444, 0, 0, implicit $exec :: (store (s32) into %stack.114, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x90, 0x19, 0x12, 0x90, 0x90, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xde, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr145, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 440, 0, 0, implicit $exec :: (store (s32) into %stack.115, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x91, 0x19, 0x12, 0x90, 0x91, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xdc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr146, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 436, 0, 0, implicit $exec :: (store (s32) into %stack.116, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x92, 0x19, 0x12, 0x90, 0x92, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xda, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr147, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 432, 0, 0, implicit $exec :: (store (s32) into %stack.117, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x93, 0x19, 0x12, 0x90, 0x93, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr148, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 428, 0, 0, implicit $exec :: (store (s32) into %stack.118, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x94, 0x19, 0x12, 0x90, 0x94, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr149, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 424, 0, 0, implicit $exec :: (store (s32) into %stack.119, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x95, 0x19, 0x12, 0x90, 0x95, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr150, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 420, 0, 0, implicit $exec :: (store (s32) into %stack.120, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x96, 0x19, 0x12, 0x90, 0x96, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr151, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 416, 0, 0, implicit $exec :: (store (s32) into %stack.121, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x97, 0x19, 0x12, 0x90, 0x97, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr152, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 412, 0, 0, implicit $exec :: (store (s32) into %stack.122, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x98, 0x19, 0x12, 0x90, 0x98, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xce, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr153, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 408, 0, 0, implicit $exec :: (store (s32) into %stack.123, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x99, 0x19, 0x12, 0x90, 0x99, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xcc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr154, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 404, 0, 0, implicit $exec :: (store (s32) into %stack.124, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9a, 0x19, 0x12, 0x90, 0x9a, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xca, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr155, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 400, 0, 0, implicit $exec :: (store (s32) into %stack.125, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9b, 0x19, 0x12, 0x90, 0x9b, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr156, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 396, 0, 0, implicit $exec :: (store (s32) into %stack.126, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9c, 0x19, 0x12, 0x90, 0x9c, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr157, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 392, 0, 0, implicit $exec :: (store (s32) into %stack.127, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9d, 0x19, 0x12, 0x90, 0x9d, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr158, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 388, 0, 0, implicit $exec :: (store (s32) into %stack.128, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9e, 0x19, 0x12, 0x90, 0x9e, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr159, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 384, 0, 0, implicit $exec :: (store (s32) into %stack.129, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9f, 0x19, 0x12, 0x90, 0x9f, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr160, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 380, 0, 0, implicit $exec :: (store (s32) into %stack.130, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa0, 0x19, 0x12, 0x90, 0xa0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xbe, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr161, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 376, 0, 0, implicit $exec :: (store (s32) into %stack.131, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa1, 0x19, 0x12, 0x90, 0xa1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xbc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr162, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 372, 0, 0, implicit $exec :: (store (s32) into %stack.132, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa2, 0x19, 0x12, 0x90, 0xa2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xba, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr163, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 368, 0, 0, implicit $exec :: (store (s32) into %stack.133, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa3, 0x19, 0x12, 0x90, 0xa3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr164, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 364, 0, 0, implicit $exec :: (store (s32) into %stack.134, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa4, 0x19, 0x12, 0x90, 0xa4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr165, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 360, 0, 0, implicit $exec :: (store (s32) into %stack.135, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa5, 0x19, 0x12, 0x90, 0xa5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr166, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 356, 0, 0, implicit $exec :: (store (s32) into %stack.136, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa6, 0x19, 0x12, 0x90, 0xa6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr167, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 352, 0, 0, implicit $exec :: (store (s32) into %stack.137, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa7, 0x19, 0x12, 0x90, 0xa7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr168, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 348, 0, 0, implicit $exec :: (store (s32) into %stack.138, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa8, 0x19, 0x12, 0x90, 0xa8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xae, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr169, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 344, 0, 0, implicit $exec :: (store (s32) into %stack.139, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa9, 0x19, 0x12, 0x90, 0xa9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xac, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr170, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 340, 0, 0, implicit $exec :: (store (s32) into %stack.140, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xaa, 0x19, 0x12, 0x90, 0xaa, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xaa, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr171, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 336, 0, 0, implicit $exec :: (store (s32) into %stack.141, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xab, 0x19, 0x12, 0x90, 0xab, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr172, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 332, 0, 0, implicit $exec :: (store (s32) into %stack.142, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xac, 0x19, 0x12, 0x90, 0xac, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr173, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 328, 0, 0, implicit $exec :: (store (s32) into %stack.143, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xad, 0x19, 0x12, 0x90, 0xad, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr174, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 324, 0, 0, implicit $exec :: (store (s32) into %stack.144, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xae, 0x19, 0x12, 0x90, 0xae, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr175, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 320, 0, 0, implicit $exec :: (store (s32) into %stack.145, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xaf, 0x19, 0x12, 0x90, 0xaf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr176, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 316, 0, 0, implicit $exec :: (store (s32) into %stack.146, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb0, 0x19, 0x12, 0x90, 0xb0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x9e, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr177, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 312, 0, 0, implicit $exec :: (store (s32) into %stack.147, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb1, 0x19, 0x12, 0x90, 0xb1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x9c, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr178, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 308, 0, 0, implicit $exec :: (store (s32) into %stack.148, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb2, 0x19, 0x12, 0x90, 0xb2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x9a, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr179, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 304, 0, 0, implicit $exec :: (store (s32) into %stack.149, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb3, 0x19, 0x12, 0x90, 0xb3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x98, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr180, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 300, 0, 0, implicit $exec :: (store (s32) into %stack.150, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb4, 0x19, 0x12, 0x90, 0xb4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x96, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr181, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 296, 0, 0, implicit $exec :: (store (s32) into %stack.151, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb5, 0x19, 0x12, 0x90, 0xb5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x94, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr182, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 292, 0, 0, implicit $exec :: (store (s32) into %stack.152, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb6, 0x19, 0x12, 0x90, 0xb6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x92, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr183, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 288, 0, 0, implicit $exec :: (store (s32) into %stack.153, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb7, 0x19, 0x12, 0x90, 0xb7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x90, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr184, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 284, 0, 0, implicit $exec :: (store (s32) into %stack.154, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb8, 0x19, 0x12, 0x90, 0xb8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x8e, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr185, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 280, 0, 0, implicit $exec :: (store (s32) into %stack.155, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb9, 0x19, 0x12, 0x90, 0xb9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x8c, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr186, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 276, 0, 0, implicit $exec :: (store (s32) into %stack.156, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xba, 0x19, 0x12, 0x90, 0xba, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x8a, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr187, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 272, 0, 0, implicit $exec :: (store (s32) into %stack.157, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbb, 0x19, 0x12, 0x90, 0xbb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x88, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr188, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 268, 0, 0, implicit $exec :: (store (s32) into %stack.158, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbc, 0x19, 0x12, 0x90, 0xbc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x86, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr189, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 264, 0, 0, implicit $exec :: (store (s32) into %stack.159, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbd, 0x19, 0x12, 0x90, 0xbd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x84, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr190, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 260, 0, 0, implicit $exec :: (store (s32) into %stack.160, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbe, 0x19, 0x12, 0x90, 0xbe, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x82, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr191, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 256, 0, 0, implicit $exec :: (store (s32) into %stack.161, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbf, 0x19, 0x12, 0x90, 0xbf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x80, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr192, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 252, 0, 0, implicit $exec :: (store (s32) into %stack.162, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc0, 0x19, 0x11, 0x90, 0xc0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x7e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr193, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 248, 0, 0, implicit $exec :: (store (s32) into %stack.163, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc1, 0x19, 0x11, 0x90, 0xc1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x7c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr194, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 244, 0, 0, implicit $exec :: (store (s32) into %stack.164, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc2, 0x19, 0x11, 0x90, 0xc2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x7a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr195, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 240, 0, 0, implicit $exec :: (store (s32) into %stack.165, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc3, 0x19, 0x11, 0x90, 0xc3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x78, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr196, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 236, 0, 0, implicit $exec :: (store (s32) into %stack.166, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc4, 0x19, 0x11, 0x90, 0xc4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x76, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr197, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 232, 0, 0, implicit $exec :: (store (s32) into %stack.167, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc5, 0x19, 0x11, 0x90, 0xc5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x74, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr198, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 228, 0, 0, implicit $exec :: (store (s32) into %stack.168, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc6, 0x19, 0x11, 0x90, 0xc6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x72, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr199, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 224, 0, 0, implicit $exec :: (store (s32) into %stack.169, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc7, 0x19, 0x11, 0x90, 0xc7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x70, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr200, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 220, 0, 0, implicit $exec :: (store (s32) into %stack.170, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc8, 0x19, 0x11, 0x90, 0xc8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x6e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr201, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 216, 0, 0, implicit $exec :: (store (s32) into %stack.171, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc9, 0x19, 0x11, 0x90, 0xc9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x6c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr202, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 212, 0, 0, implicit $exec :: (store (s32) into %stack.172, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xca, 0x19, 0x11, 0x90, 0xca, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x6a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr203, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 208, 0, 0, implicit $exec :: (store (s32) into %stack.173, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcb, 0x19, 0x11, 0x90, 0xcb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x68, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr204, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 204, 0, 0, implicit $exec :: (store (s32) into %stack.174, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcc, 0x19, 0x11, 0x90, 0xcc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x66, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr205, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 200, 0, 0, implicit $exec :: (store (s32) into %stack.175, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcd, 0x19, 0x11, 0x90, 0xcd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x64, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr206, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 196, 0, 0, implicit $exec :: (store (s32) into %stack.176, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xce, 0x19, 0x11, 0x90, 0xce, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x62, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr207, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 192, 0, 0, implicit $exec :: (store (s32) into %stack.177, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcf, 0x19, 0x11, 0x90, 0xcf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x60, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr208, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 188, 0, 0, implicit $exec :: (store (s32) into %stack.178, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd0, 0x19, 0x11, 0x90, 0xd0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x5e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr209, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 184, 0, 0, implicit $exec :: (store (s32) into %stack.179, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd1, 0x19, 0x11, 0x90, 0xd1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x5c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr210, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 180, 0, 0, implicit $exec :: (store (s32) into %stack.180, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd2, 0x19, 0x11, 0x90, 0xd2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x5a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr211, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 176, 0, 0, implicit $exec :: (store (s32) into %stack.181, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd3, 0x19, 0x11, 0x90, 0xd3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x58, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr212, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 172, 0, 0, implicit $exec :: (store (s32) into %stack.182, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd4, 0x19, 0x11, 0x90, 0xd4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x56, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr213, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 168, 0, 0, implicit $exec :: (store (s32) into %stack.183, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd5, 0x19, 0x11, 0x90, 0xd5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x54, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr214, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 164, 0, 0, implicit $exec :: (store (s32) into %stack.184, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd6, 0x19, 0x11, 0x90, 0xd6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x52, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr215, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 160, 0, 0, implicit $exec :: (store (s32) into %stack.185, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd7, 0x19, 0x11, 0x90, 0xd7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x50, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr216, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 156, 0, 0, implicit $exec :: (store (s32) into %stack.186, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd8, 0x19, 0x11, 0x90, 0xd8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x4e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr217, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 152, 0, 0, implicit $exec :: (store (s32) into %stack.187, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd9, 0x19, 0x11, 0x90, 0xd9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x4c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr218, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 148, 0, 0, implicit $exec :: (store (s32) into %stack.188, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xda, 0x19, 0x11, 0x90, 0xda, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x4a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr219, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 144, 0, 0, implicit $exec :: (store (s32) into %stack.189, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdb, 0x19, 0x11, 0x90, 0xdb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x48, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr220, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 140, 0, 0, implicit $exec :: (store (s32) into %stack.190, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdc, 0x19, 0x11, 0x90, 0xdc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x46, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr221, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 136, 0, 0, implicit $exec :: (store (s32) into %stack.191, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdd, 0x19, 0x11, 0x90, 0xdd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x44, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr222, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 132, 0, 0, implicit $exec :: (store (s32) into %stack.192, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xde, 0x19, 0x11, 0x90, 0xde, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x42, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr223, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 128, 0, 0, implicit $exec :: (store (s32) into %stack.193, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdf, 0x19, 0x11, 0x90, 0xdf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x40, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr224, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 124, 0, 0, implicit $exec :: (store (s32) into %stack.194, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe0, 0x19, 0x11, 0x90, 0xe0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x3e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr225, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 120, 0, 0, implicit $exec :: (store (s32) into %stack.195, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe1, 0x19, 0x11, 0x90, 0xe1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x3c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr226, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 116, 0, 0, implicit $exec :: (store (s32) into %stack.196, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe2, 0x19, 0x11, 0x90, 0xe2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x3a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr227, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 112, 0, 0, implicit $exec :: (store (s32) into %stack.197, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe3, 0x19, 0x11, 0x90, 0xe3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x38, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr228, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 108, 0, 0, implicit $exec :: (store (s32) into %stack.198, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe4, 0x19, 0x11, 0x90, 0xe4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x36, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr229, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 104, 0, 0, implicit $exec :: (store (s32) into %stack.199, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe5, 0x19, 0x11, 0x90, 0xe5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x34, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr230, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 100, 0, 0, implicit $exec :: (store (s32) into %stack.200, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe6, 0x19, 0x11, 0x90, 0xe6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x32, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr231, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 96, 0, 0, implicit $exec :: (store (s32) into %stack.201, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe7, 0x19, 0x11, 0x90, 0xe7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x30, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr232, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 92, 0, 0, implicit $exec :: (store (s32) into %stack.202, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe8, 0x19, 0x11, 0x90, 0xe8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x2e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr233, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 88, 0, 0, implicit $exec :: (store (s32) into %stack.203, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe9, 0x19, 0x11, 0x90, 0xe9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x2c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr234, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 84, 0, 0, implicit $exec :: (store (s32) into %stack.204, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xea, 0x19, 0x11, 0x90, 0xea, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x2a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr235, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 80, 0, 0, implicit $exec :: (store (s32) into %stack.205, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xeb, 0x19, 0x11, 0x90, 0xeb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x28, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr236, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 76, 0, 0, implicit $exec :: (store (s32) into %stack.206, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xec, 0x19, 0x11, 0x90, 0xec, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x26, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr237, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 72, 0, 0, implicit $exec :: (store (s32) into %stack.207, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xed, 0x19, 0x11, 0x90, 0xed, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x24, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr238, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 68, 0, 0, implicit $exec :: (store (s32) into %stack.208, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xee, 0x19, 0x11, 0x90, 0xee, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x22, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr239, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 64, 0, 0, implicit $exec :: (store (s32) into %stack.209, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xef, 0x19, 0x11, 0x90, 0xef, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x20, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr240, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 60, 0, 0, implicit $exec :: (store (s32) into %stack.210, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf0, 0x19, 0x11, 0x90, 0xf0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x1e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr241, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 56, 0, 0, implicit $exec :: (store (s32) into %stack.211, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf1, 0x19, 0x11, 0x90, 0xf1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x1c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr242, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 52, 0, 0, implicit $exec :: (store (s32) into %stack.212, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf2, 0x19, 0x11, 0x90, 0xf2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x1a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr243, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 48, 0, 0, implicit $exec :: (store (s32) into %stack.213, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf3, 0x19, 0x11, 0x90, 0xf3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x18, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr244, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 44, 0, 0, implicit $exec :: (store (s32) into %stack.214, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf4, 0x19, 0x11, 0x90, 0xf4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x16, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr245, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 40, 0, 0, implicit $exec :: (store (s32) into %stack.215, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf5, 0x19, 0x11, 0x90, 0xf5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x14, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr246, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 36, 0, 0, implicit $exec :: (store (s32) into %stack.216, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf6, 0x19, 0x11, 0x90, 0xf6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x12, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr247, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 32, 0, 0, implicit $exec :: (store (s32) into %stack.217, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf7, 0x19, 0x11, 0x90, 0xf7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x10, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr248, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 28, 0, 0, implicit $exec :: (store (s32) into %stack.218, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf8, 0x19, 0x11, 0x90, 0xf8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x0e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr249, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 24, 0, 0, implicit $exec :: (store (s32) into %stack.219, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf9, 0x19, 0x11, 0x90, 0xf9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x0c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr250, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 20, 0, 0, implicit $exec :: (store (s32) into %stack.220, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfa, 0x19, 0x11, 0x90, 0xfa, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x0a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr251, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 16, 0, 0, implicit $exec :: (store (s32) into %stack.221, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfb, 0x19, 0x11, 0x90, 0xfb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x08, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr252, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 12, 0, 0, implicit $exec :: (store (s32) into %stack.222, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfc, 0x19, 0x11, 0x90, 0xfc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x06, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr253, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.223, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfd, 0x19, 0x11, 0x90, 0xfd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x04, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr254, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.224, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfe, 0x19, 0x11, 0x90, 0xfe, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr255, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.225, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xff, 0x19, 0x10, 0x90, 0xff, 0x19, 0x16, 0xe9, 0x05, 0x00, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr40, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 704, 0, 0, implicit $exec :: (store (s32) into %stack.226, addrspace 5) ; GFX90A-NEXT: $vgpr40 = V_MOV_B32_e32 8904, implicit $exec @@ -514,6 +1138,294 @@ ; GFX908-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX908-FLATSCR-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX908-FLATSCR-NEXT: {{ $}} + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr32_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr33_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr34_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr35_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr36_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr37_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr38_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr39_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr40_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr41_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr42_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr43_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr44_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr45_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr46_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr47_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr48_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr49_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr50_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr51_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr52_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr53_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr54_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr55_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr56_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr57_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr58_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr59_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr60_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr61_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr62_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr63_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr64_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr65_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr66_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr67_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr68_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr69_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr70_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr71_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr72_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr73_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr74_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr75_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr76_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr77_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr78_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr79_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr80_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr81_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr82_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr83_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr84_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr85_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr86_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr87_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr88_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr89_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr90_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr91_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr92_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr93_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr94_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr95_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr96_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr97_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr98_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr99_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr100_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr101_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr102_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr103_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr104_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr105_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr106_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr107_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr108_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr109_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr110_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr111_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr112_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr113_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr114_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr115_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr116_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr117_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr118_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr119_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr120_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr121_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr122_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr123_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr124_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr125_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr126_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr127_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr128_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr129_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr130_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr131_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr132_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr133_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr134_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr135_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr136_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr137_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr138_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr139_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr140_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr141_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr142_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr143_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr144_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr145_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr146_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr147_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr148_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr149_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr150_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr151_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr152_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr153_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr154_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr155_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr156_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr157_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr158_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr159_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr160_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr161_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr162_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr163_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr164_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr165_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr166_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr167_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr168_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr169_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr170_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr171_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr172_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr173_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr174_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr175_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr176_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr177_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr178_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr179_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr180_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr181_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr182_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr183_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr184_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr185_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr186_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr187_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr188_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr189_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr190_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr191_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr192_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr193_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr194_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr195_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr196_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr197_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr198_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr199_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr200_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr201_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr202_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr203_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr204_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr205_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr206_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr207_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr208_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr209_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr210_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr211_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr212_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr213_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr214_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr215_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr216_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr217_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr218_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr219_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr220_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr221_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr222_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr223_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr224_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr225_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr226_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr227_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr228_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr229_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr230_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr231_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr232_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr233_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr234_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr235_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr236_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr237_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr238_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr239_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr240_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr241_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr242_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr243_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr244_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr245_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr246_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr247_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr248_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr249_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr250_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr251_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr252_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr253_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr254_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr255_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX908-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX908-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr1, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.2, addrspace 5) ; GFX908-FLATSCR-NEXT: $vgpr1 = V_MOV_B32_e32 $sgpr32, implicit $exec @@ -537,230 +1449,566 @@ ; GFX90A-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX90A-FLATSCR-NEXT: liveins: $agpr32, $agpr33, $agpr34, $agpr35, $agpr36, $agpr37, $agpr38, $agpr39, $agpr40, $agpr41, $agpr42, $agpr43, $agpr44, $agpr45, $agpr46, $agpr47, $agpr48, $agpr49, $agpr50, $agpr51, $agpr52, $agpr53, $agpr54, $agpr55, $agpr56, $agpr57, $agpr58, $agpr59, $agpr60, $agpr61, $agpr62, $agpr63, $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15, $vgpr16, $vgpr17, $vgpr18, $vgpr19, $vgpr20, $vgpr21, $vgpr22, $vgpr23, $vgpr24, $vgpr25, $vgpr26, $vgpr27, $vgpr28, $vgpr29, $vgpr30, $vgpr31, $vgpr32, $vgpr33, $vgpr34, $vgpr35, $vgpr36, $vgpr37, $vgpr38, $vgpr39, $vgpr48, $vgpr49, $vgpr50, $vgpr51, $vgpr52, $vgpr53, $vgpr54, $vgpr55, $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX90A-FLATSCR-NEXT: {{ $}} + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr32_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr33_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr34_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr35_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr36_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr37_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr38_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr39_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr48_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr49_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr50_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr51_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr52_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr53_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr54_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr55_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr32, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr32_lo16, $vgpr0_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr33, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr33_lo16, $vgpr1_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 killed $agpr34, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr34_lo16, $vgpr2_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr3 = V_ACCVGPR_READ_B32_e64 killed $agpr35, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr35_lo16, $vgpr3_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 killed $agpr36, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr36_lo16, $vgpr4_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr5 = V_ACCVGPR_READ_B32_e64 killed $agpr37, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr37_lo16, $vgpr5_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr6 = V_ACCVGPR_READ_B32_e64 killed $agpr38, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr38_lo16, $vgpr6_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr7 = V_ACCVGPR_READ_B32_e64 killed $agpr39, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr39_lo16, $vgpr7_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr8 = V_ACCVGPR_READ_B32_e64 killed $agpr40, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr40_lo16, $vgpr8_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr9 = V_ACCVGPR_READ_B32_e64 killed $agpr41, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr41_lo16, $vgpr9_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr10 = V_ACCVGPR_READ_B32_e64 killed $agpr42, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr42_lo16, $vgpr10_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr11 = V_ACCVGPR_READ_B32_e64 killed $agpr43, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr43_lo16, $vgpr11_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr12 = V_ACCVGPR_READ_B32_e64 killed $agpr44, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr44_lo16, $vgpr12_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr13 = V_ACCVGPR_READ_B32_e64 killed $agpr45, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr45_lo16, $vgpr13_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr14 = V_ACCVGPR_READ_B32_e64 killed $agpr46, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr46_lo16, $vgpr14_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr15 = V_ACCVGPR_READ_B32_e64 killed $agpr47, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr47_lo16, $vgpr15_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr16 = V_ACCVGPR_READ_B32_e64 killed $agpr48, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr48_lo16, $vgpr16_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr17 = V_ACCVGPR_READ_B32_e64 killed $agpr49, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr49_lo16, $vgpr17_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr18 = V_ACCVGPR_READ_B32_e64 killed $agpr50, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr50_lo16, $vgpr18_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr19 = V_ACCVGPR_READ_B32_e64 killed $agpr51, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr51_lo16, $vgpr19_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr20 = V_ACCVGPR_READ_B32_e64 killed $agpr52, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr52_lo16, $vgpr20_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr21 = V_ACCVGPR_READ_B32_e64 killed $agpr53, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr53_lo16, $vgpr21_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr22 = V_ACCVGPR_READ_B32_e64 killed $agpr54, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr54_lo16, $vgpr22_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr23 = V_ACCVGPR_READ_B32_e64 killed $agpr55, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr55_lo16, $vgpr23_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr24 = V_ACCVGPR_READ_B32_e64 killed $agpr56, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr56_lo16, $vgpr24_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr25 = V_ACCVGPR_READ_B32_e64 killed $agpr57, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr57_lo16, $vgpr25_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr26 = V_ACCVGPR_READ_B32_e64 killed $agpr58, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr58_lo16, $vgpr26_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr27 = V_ACCVGPR_READ_B32_e64 killed $agpr59, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr59_lo16, $vgpr27_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr28 = V_ACCVGPR_READ_B32_e64 killed $agpr60, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr60_lo16, $vgpr28_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr29 = V_ACCVGPR_READ_B32_e64 killed $agpr61, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr61_lo16, $vgpr29_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr30 = V_ACCVGPR_READ_B32_e64 killed $agpr62, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr62_lo16, $vgpr30_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr31 = V_ACCVGPR_READ_B32_e64 killed $agpr63, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr63_lo16, $vgpr31_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr32 = V_ACCVGPR_READ_B32_e64 killed $agpr64, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr64_lo16, $vgpr32_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr33 = V_ACCVGPR_READ_B32_e64 killed $agpr65, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr65_lo16, $vgpr33_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr34 = V_ACCVGPR_READ_B32_e64 killed $agpr66, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr66_lo16, $vgpr34_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr35 = V_ACCVGPR_READ_B32_e64 killed $agpr67, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr67_lo16, $vgpr35_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr36 = V_ACCVGPR_READ_B32_e64 killed $agpr68, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr68_lo16, $vgpr36_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr37 = V_ACCVGPR_READ_B32_e64 killed $agpr69, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr69_lo16, $vgpr37_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr38 = V_ACCVGPR_READ_B32_e64 killed $agpr70, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr70_lo16, $vgpr38_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr39 = V_ACCVGPR_READ_B32_e64 killed $agpr71, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr71_lo16, $vgpr39_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr48 = V_ACCVGPR_READ_B32_e64 killed $agpr72, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr72_lo16, $vgpr48_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr49 = V_ACCVGPR_READ_B32_e64 killed $agpr73, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr73_lo16, $vgpr49_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr50 = V_ACCVGPR_READ_B32_e64 killed $agpr74, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr74_lo16, $vgpr50_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr51 = V_ACCVGPR_READ_B32_e64 killed $agpr75, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr75_lo16, $vgpr51_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr52 = V_ACCVGPR_READ_B32_e64 killed $agpr76, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr76_lo16, $vgpr52_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr53 = V_ACCVGPR_READ_B32_e64 killed $agpr77, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr77_lo16, $vgpr53_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr54 = V_ACCVGPR_READ_B32_e64 killed $agpr78, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr78_lo16, $vgpr54_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr55 = V_ACCVGPR_READ_B32_e64 killed $agpr79, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr79_lo16, $vgpr55_lo16 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr80, $sgpr32, 700, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.50, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd0, 0x18, 0x12, 0x90, 0xd0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xde, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr81, $sgpr32, 696, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.51, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd1, 0x18, 0x12, 0x90, 0xd1, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xdc, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr82, $sgpr32, 692, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.52, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd2, 0x18, 0x12, 0x90, 0xd2, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xda, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr83, $sgpr32, 688, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.53, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd3, 0x18, 0x12, 0x90, 0xd3, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr84, $sgpr32, 684, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.54, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd4, 0x18, 0x12, 0x90, 0xd4, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr85, $sgpr32, 680, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.55, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd5, 0x18, 0x12, 0x90, 0xd5, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr86, $sgpr32, 676, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.56, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd6, 0x18, 0x12, 0x90, 0xd6, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr87, $sgpr32, 672, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.57, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd7, 0x18, 0x12, 0x90, 0xd7, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr88, $sgpr32, 668, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.58, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd8, 0x18, 0x12, 0x90, 0xd8, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xce, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr89, $sgpr32, 664, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.59, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd9, 0x18, 0x12, 0x90, 0xd9, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xcc, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr90, $sgpr32, 660, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.60, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xda, 0x18, 0x12, 0x90, 0xda, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xca, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr91, $sgpr32, 656, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.61, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdb, 0x18, 0x12, 0x90, 0xdb, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr92, $sgpr32, 652, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.62, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdc, 0x18, 0x12, 0x90, 0xdc, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr93, $sgpr32, 648, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.63, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdd, 0x18, 0x12, 0x90, 0xdd, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr94, $sgpr32, 644, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.64, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xde, 0x18, 0x12, 0x90, 0xde, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr95, $sgpr32, 640, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.65, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdf, 0x18, 0x12, 0x90, 0xdf, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr96, $sgpr32, 636, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.66, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe0, 0x18, 0x12, 0x90, 0xe0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xbe, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr97, $sgpr32, 632, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.67, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe1, 0x18, 0x12, 0x90, 0xe1, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xbc, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr98, $sgpr32, 628, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.68, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe2, 0x18, 0x12, 0x90, 0xe2, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xba, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr99, $sgpr32, 624, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.69, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe3, 0x18, 0x12, 0x90, 0xe3, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr100, $sgpr32, 620, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.70, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe4, 0x18, 0x12, 0x90, 0xe4, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr101, $sgpr32, 616, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.71, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe5, 0x18, 0x12, 0x90, 0xe5, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr102, $sgpr32, 612, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.72, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe6, 0x18, 0x12, 0x90, 0xe6, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr103, $sgpr32, 608, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.73, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe7, 0x18, 0x12, 0x90, 0xe7, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr104, $sgpr32, 604, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.74, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe8, 0x18, 0x12, 0x90, 0xe8, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xae, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr105, $sgpr32, 600, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.75, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe9, 0x18, 0x12, 0x90, 0xe9, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xac, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr106, $sgpr32, 596, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.76, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xea, 0x18, 0x12, 0x90, 0xea, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xaa, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr107, $sgpr32, 592, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.77, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xeb, 0x18, 0x12, 0x90, 0xeb, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr108, $sgpr32, 588, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.78, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xec, 0x18, 0x12, 0x90, 0xec, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr109, $sgpr32, 584, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.79, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xed, 0x18, 0x12, 0x90, 0xed, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr110, $sgpr32, 580, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.80, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xee, 0x18, 0x12, 0x90, 0xee, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr111, $sgpr32, 576, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.81, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xef, 0x18, 0x12, 0x90, 0xef, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr112, $sgpr32, 572, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.82, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf0, 0x18, 0x12, 0x90, 0xf0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x9e, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr113, $sgpr32, 568, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.83, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf1, 0x18, 0x12, 0x90, 0xf1, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x9c, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr114, $sgpr32, 564, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.84, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf2, 0x18, 0x12, 0x90, 0xf2, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x9a, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr115, $sgpr32, 560, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.85, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf3, 0x18, 0x12, 0x90, 0xf3, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x98, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr116, $sgpr32, 556, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.86, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf4, 0x18, 0x12, 0x90, 0xf4, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x96, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr117, $sgpr32, 552, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.87, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf5, 0x18, 0x12, 0x90, 0xf5, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x94, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr118, $sgpr32, 548, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.88, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf6, 0x18, 0x12, 0x90, 0xf6, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x92, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr119, $sgpr32, 544, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.89, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf7, 0x18, 0x12, 0x90, 0xf7, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x90, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr120, $sgpr32, 540, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.90, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf8, 0x18, 0x12, 0x90, 0xf8, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x8e, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr121, $sgpr32, 536, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.91, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf9, 0x18, 0x12, 0x90, 0xf9, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x8c, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr122, $sgpr32, 532, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.92, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfa, 0x18, 0x12, 0x90, 0xfa, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x8a, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr123, $sgpr32, 528, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.93, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfb, 0x18, 0x12, 0x90, 0xfb, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x88, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr124, $sgpr32, 524, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.94, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfc, 0x18, 0x12, 0x90, 0xfc, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x86, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr125, $sgpr32, 520, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.95, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfd, 0x18, 0x12, 0x90, 0xfd, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x84, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr126, $sgpr32, 516, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.96, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfe, 0x18, 0x12, 0x90, 0xfe, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x82, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr127, $sgpr32, 512, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.97, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xff, 0x18, 0x12, 0x90, 0xff, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x80, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr128, $sgpr32, 508, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.98, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x80, 0x19, 0x12, 0x90, 0x80, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xfe, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr129, $sgpr32, 504, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.99, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x81, 0x19, 0x12, 0x90, 0x81, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xfc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr130, $sgpr32, 500, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.100, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x82, 0x19, 0x12, 0x90, 0x82, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xfa, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr131, $sgpr32, 496, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.101, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x83, 0x19, 0x12, 0x90, 0x83, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr132, $sgpr32, 492, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.102, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x84, 0x19, 0x12, 0x90, 0x84, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr133, $sgpr32, 488, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.103, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x85, 0x19, 0x12, 0x90, 0x85, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr134, $sgpr32, 484, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.104, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x86, 0x19, 0x12, 0x90, 0x86, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr135, $sgpr32, 480, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.105, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x87, 0x19, 0x12, 0x90, 0x87, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr136, $sgpr32, 476, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.106, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x88, 0x19, 0x12, 0x90, 0x88, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xee, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr137, $sgpr32, 472, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.107, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x89, 0x19, 0x12, 0x90, 0x89, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xec, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr138, $sgpr32, 468, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.108, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8a, 0x19, 0x12, 0x90, 0x8a, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xea, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr139, $sgpr32, 464, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.109, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8b, 0x19, 0x12, 0x90, 0x8b, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr140, $sgpr32, 460, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.110, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8c, 0x19, 0x12, 0x90, 0x8c, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr141, $sgpr32, 456, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.111, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8d, 0x19, 0x12, 0x90, 0x8d, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr142, $sgpr32, 452, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.112, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8e, 0x19, 0x12, 0x90, 0x8e, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr143, $sgpr32, 448, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.113, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8f, 0x19, 0x12, 0x90, 0x8f, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr144, $sgpr32, 444, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.114, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x90, 0x19, 0x12, 0x90, 0x90, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xde, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr145, $sgpr32, 440, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.115, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x91, 0x19, 0x12, 0x90, 0x91, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xdc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr146, $sgpr32, 436, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.116, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x92, 0x19, 0x12, 0x90, 0x92, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xda, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr147, $sgpr32, 432, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.117, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x93, 0x19, 0x12, 0x90, 0x93, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr148, $sgpr32, 428, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.118, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x94, 0x19, 0x12, 0x90, 0x94, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr149, $sgpr32, 424, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.119, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x95, 0x19, 0x12, 0x90, 0x95, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr150, $sgpr32, 420, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.120, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x96, 0x19, 0x12, 0x90, 0x96, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr151, $sgpr32, 416, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.121, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x97, 0x19, 0x12, 0x90, 0x97, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr152, $sgpr32, 412, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.122, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x98, 0x19, 0x12, 0x90, 0x98, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xce, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr153, $sgpr32, 408, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.123, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x99, 0x19, 0x12, 0x90, 0x99, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xcc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr154, $sgpr32, 404, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.124, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9a, 0x19, 0x12, 0x90, 0x9a, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xca, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr155, $sgpr32, 400, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.125, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9b, 0x19, 0x12, 0x90, 0x9b, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr156, $sgpr32, 396, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.126, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9c, 0x19, 0x12, 0x90, 0x9c, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr157, $sgpr32, 392, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.127, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9d, 0x19, 0x12, 0x90, 0x9d, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr158, $sgpr32, 388, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.128, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9e, 0x19, 0x12, 0x90, 0x9e, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr159, $sgpr32, 384, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.129, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9f, 0x19, 0x12, 0x90, 0x9f, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr160, $sgpr32, 380, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.130, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa0, 0x19, 0x12, 0x90, 0xa0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xbe, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr161, $sgpr32, 376, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.131, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa1, 0x19, 0x12, 0x90, 0xa1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xbc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr162, $sgpr32, 372, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.132, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa2, 0x19, 0x12, 0x90, 0xa2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xba, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr163, $sgpr32, 368, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.133, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa3, 0x19, 0x12, 0x90, 0xa3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr164, $sgpr32, 364, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.134, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa4, 0x19, 0x12, 0x90, 0xa4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr165, $sgpr32, 360, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.135, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa5, 0x19, 0x12, 0x90, 0xa5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr166, $sgpr32, 356, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.136, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa6, 0x19, 0x12, 0x90, 0xa6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr167, $sgpr32, 352, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.137, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa7, 0x19, 0x12, 0x90, 0xa7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr168, $sgpr32, 348, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.138, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa8, 0x19, 0x12, 0x90, 0xa8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xae, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr169, $sgpr32, 344, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.139, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa9, 0x19, 0x12, 0x90, 0xa9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xac, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr170, $sgpr32, 340, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.140, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xaa, 0x19, 0x12, 0x90, 0xaa, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xaa, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr171, $sgpr32, 336, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.141, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xab, 0x19, 0x12, 0x90, 0xab, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr172, $sgpr32, 332, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.142, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xac, 0x19, 0x12, 0x90, 0xac, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr173, $sgpr32, 328, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.143, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xad, 0x19, 0x12, 0x90, 0xad, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr174, $sgpr32, 324, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.144, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xae, 0x19, 0x12, 0x90, 0xae, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr175, $sgpr32, 320, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.145, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xaf, 0x19, 0x12, 0x90, 0xaf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr176, $sgpr32, 316, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.146, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb0, 0x19, 0x12, 0x90, 0xb0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x9e, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr177, $sgpr32, 312, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.147, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb1, 0x19, 0x12, 0x90, 0xb1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x9c, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr178, $sgpr32, 308, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.148, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb2, 0x19, 0x12, 0x90, 0xb2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x9a, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr179, $sgpr32, 304, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.149, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb3, 0x19, 0x12, 0x90, 0xb3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x98, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr180, $sgpr32, 300, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.150, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb4, 0x19, 0x12, 0x90, 0xb4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x96, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr181, $sgpr32, 296, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.151, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb5, 0x19, 0x12, 0x90, 0xb5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x94, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr182, $sgpr32, 292, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.152, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb6, 0x19, 0x12, 0x90, 0xb6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x92, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr183, $sgpr32, 288, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.153, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb7, 0x19, 0x12, 0x90, 0xb7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x90, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr184, $sgpr32, 284, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.154, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb8, 0x19, 0x12, 0x90, 0xb8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x8e, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr185, $sgpr32, 280, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.155, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb9, 0x19, 0x12, 0x90, 0xb9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x8c, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr186, $sgpr32, 276, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.156, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xba, 0x19, 0x12, 0x90, 0xba, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x8a, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr187, $sgpr32, 272, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.157, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbb, 0x19, 0x12, 0x90, 0xbb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x88, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr188, $sgpr32, 268, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.158, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbc, 0x19, 0x12, 0x90, 0xbc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x86, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr189, $sgpr32, 264, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.159, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbd, 0x19, 0x12, 0x90, 0xbd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x84, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr190, $sgpr32, 260, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.160, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbe, 0x19, 0x12, 0x90, 0xbe, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x82, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr191, $sgpr32, 256, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.161, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbf, 0x19, 0x12, 0x90, 0xbf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x80, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr192, $sgpr32, 252, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.162, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc0, 0x19, 0x11, 0x90, 0xc0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x7e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr193, $sgpr32, 248, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.163, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc1, 0x19, 0x11, 0x90, 0xc1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x7c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr194, $sgpr32, 244, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.164, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc2, 0x19, 0x11, 0x90, 0xc2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x7a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr195, $sgpr32, 240, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.165, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc3, 0x19, 0x11, 0x90, 0xc3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x78, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr196, $sgpr32, 236, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.166, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc4, 0x19, 0x11, 0x90, 0xc4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x76, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr197, $sgpr32, 232, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.167, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc5, 0x19, 0x11, 0x90, 0xc5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x74, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr198, $sgpr32, 228, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.168, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc6, 0x19, 0x11, 0x90, 0xc6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x72, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr199, $sgpr32, 224, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.169, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc7, 0x19, 0x11, 0x90, 0xc7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x70, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr200, $sgpr32, 220, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.170, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc8, 0x19, 0x11, 0x90, 0xc8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x6e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr201, $sgpr32, 216, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.171, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc9, 0x19, 0x11, 0x90, 0xc9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x6c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr202, $sgpr32, 212, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.172, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xca, 0x19, 0x11, 0x90, 0xca, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x6a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr203, $sgpr32, 208, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.173, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcb, 0x19, 0x11, 0x90, 0xcb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x68, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr204, $sgpr32, 204, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.174, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcc, 0x19, 0x11, 0x90, 0xcc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x66, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr205, $sgpr32, 200, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.175, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcd, 0x19, 0x11, 0x90, 0xcd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x64, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr206, $sgpr32, 196, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.176, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xce, 0x19, 0x11, 0x90, 0xce, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x62, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr207, $sgpr32, 192, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.177, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcf, 0x19, 0x11, 0x90, 0xcf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x60, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr208, $sgpr32, 188, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.178, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd0, 0x19, 0x11, 0x90, 0xd0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x5e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr209, $sgpr32, 184, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.179, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd1, 0x19, 0x11, 0x90, 0xd1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x5c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr210, $sgpr32, 180, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.180, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd2, 0x19, 0x11, 0x90, 0xd2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x5a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr211, $sgpr32, 176, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.181, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd3, 0x19, 0x11, 0x90, 0xd3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x58, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr212, $sgpr32, 172, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.182, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd4, 0x19, 0x11, 0x90, 0xd4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x56, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr213, $sgpr32, 168, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.183, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd5, 0x19, 0x11, 0x90, 0xd5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x54, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr214, $sgpr32, 164, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.184, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd6, 0x19, 0x11, 0x90, 0xd6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x52, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr215, $sgpr32, 160, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.185, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd7, 0x19, 0x11, 0x90, 0xd7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x50, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr216, $sgpr32, 156, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.186, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd8, 0x19, 0x11, 0x90, 0xd8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x4e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr217, $sgpr32, 152, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.187, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd9, 0x19, 0x11, 0x90, 0xd9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x4c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr218, $sgpr32, 148, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.188, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xda, 0x19, 0x11, 0x90, 0xda, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x4a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr219, $sgpr32, 144, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.189, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdb, 0x19, 0x11, 0x90, 0xdb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x48, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr220, $sgpr32, 140, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.190, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdc, 0x19, 0x11, 0x90, 0xdc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x46, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr221, $sgpr32, 136, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.191, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdd, 0x19, 0x11, 0x90, 0xdd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x44, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr222, $sgpr32, 132, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.192, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xde, 0x19, 0x11, 0x90, 0xde, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x42, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr223, $sgpr32, 128, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.193, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdf, 0x19, 0x11, 0x90, 0xdf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x40, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr224, $sgpr32, 124, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.194, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe0, 0x19, 0x11, 0x90, 0xe0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x3e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr225, $sgpr32, 120, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.195, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe1, 0x19, 0x11, 0x90, 0xe1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x3c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr226, $sgpr32, 116, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.196, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe2, 0x19, 0x11, 0x90, 0xe2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x3a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr227, $sgpr32, 112, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.197, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe3, 0x19, 0x11, 0x90, 0xe3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x38, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr228, $sgpr32, 108, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.198, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe4, 0x19, 0x11, 0x90, 0xe4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x36, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr229, $sgpr32, 104, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.199, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe5, 0x19, 0x11, 0x90, 0xe5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x34, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr230, $sgpr32, 100, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.200, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe6, 0x19, 0x11, 0x90, 0xe6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x32, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr231, $sgpr32, 96, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.201, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe7, 0x19, 0x11, 0x90, 0xe7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x30, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr232, $sgpr32, 92, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.202, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe8, 0x19, 0x11, 0x90, 0xe8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x2e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr233, $sgpr32, 88, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.203, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe9, 0x19, 0x11, 0x90, 0xe9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x2c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr234, $sgpr32, 84, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.204, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xea, 0x19, 0x11, 0x90, 0xea, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x2a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr235, $sgpr32, 80, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.205, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xeb, 0x19, 0x11, 0x90, 0xeb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x28, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr236, $sgpr32, 76, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.206, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xec, 0x19, 0x11, 0x90, 0xec, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x26, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr237, $sgpr32, 72, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.207, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xed, 0x19, 0x11, 0x90, 0xed, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x24, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr238, $sgpr32, 68, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.208, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xee, 0x19, 0x11, 0x90, 0xee, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x22, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr239, $sgpr32, 64, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.209, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xef, 0x19, 0x11, 0x90, 0xef, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x20, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr240, $sgpr32, 60, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.210, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf0, 0x19, 0x11, 0x90, 0xf0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x1e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr241, $sgpr32, 56, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.211, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf1, 0x19, 0x11, 0x90, 0xf1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x1c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr242, $sgpr32, 52, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.212, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf2, 0x19, 0x11, 0x90, 0xf2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x1a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr243, $sgpr32, 48, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.213, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf3, 0x19, 0x11, 0x90, 0xf3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x18, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr244, $sgpr32, 44, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.214, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf4, 0x19, 0x11, 0x90, 0xf4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x16, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr245, $sgpr32, 40, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.215, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf5, 0x19, 0x11, 0x90, 0xf5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x14, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr246, $sgpr32, 36, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.216, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf6, 0x19, 0x11, 0x90, 0xf6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x12, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr247, $sgpr32, 32, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.217, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf7, 0x19, 0x11, 0x90, 0xf7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x10, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr248, $sgpr32, 28, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.218, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf8, 0x19, 0x11, 0x90, 0xf8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x0e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr249, $sgpr32, 24, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.219, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf9, 0x19, 0x11, 0x90, 0xf9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x0c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr250, $sgpr32, 20, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.220, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfa, 0x19, 0x11, 0x90, 0xfa, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x0a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr251, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.221, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfb, 0x19, 0x11, 0x90, 0xfb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x08, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr252, $sgpr32, 12, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.222, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfc, 0x19, 0x11, 0x90, 0xfc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x06, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr253, $sgpr32, 8, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.223, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfd, 0x19, 0x11, 0x90, 0xfd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x04, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr254, $sgpr32, 4, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.224, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfe, 0x19, 0x11, 0x90, 0xfe, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr255, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.225, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xff, 0x19, 0x10, 0x90, 0xff, 0x19, 0x16, 0xe9, 0x05, 0x00, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr40, $sgpr32, 704, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.226, addrspace 5) ; GFX90A-FLATSCR-NEXT: $vgpr40 = V_MOV_B32_e32 $sgpr32, implicit $exec @@ -1037,6 +2285,294 @@ ; GFX908-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX908-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX908-NEXT: {{ $}} + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr32_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr33_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr34_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr35_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr36_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr37_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr38_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr39_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr40_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr41_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr42_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr43_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr44_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr45_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr46_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr47_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr48_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr49_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr50_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr51_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr52_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr53_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr54_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr55_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr56_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr57_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr58_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr59_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr60_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr61_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr62_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr63_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr64_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr65_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr66_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr67_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr68_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr69_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr70_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr71_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr72_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr73_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr74_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr75_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr76_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr77_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr78_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr79_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr80_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr81_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr82_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr83_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr84_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr85_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr86_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr87_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr88_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr89_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr90_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr91_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr92_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr93_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr94_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr95_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr96_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr97_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr98_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr99_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr100_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr101_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr102_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr103_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr104_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr105_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr106_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr107_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr108_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr109_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr110_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr111_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr112_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr113_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr114_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr115_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr116_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr117_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr118_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr119_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr120_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr121_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr122_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr123_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr124_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr125_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr126_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr127_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr128_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr129_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr130_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr131_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr132_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr133_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr134_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr135_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr136_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr137_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr138_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr139_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr140_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr141_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr142_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr143_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr144_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr145_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr146_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr147_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr148_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr149_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr150_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr151_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr152_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr153_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr154_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr155_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr156_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr157_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr158_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr159_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr160_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr161_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr162_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr163_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr164_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr165_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr166_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr167_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr168_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr169_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr170_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr171_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr172_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr173_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr174_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr175_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr176_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr177_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr178_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr179_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr180_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr181_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr182_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr183_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr184_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr185_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr186_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr187_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr188_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr189_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr190_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr191_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr192_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr193_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr194_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr195_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr196_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr197_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr198_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr199_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr200_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr201_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr202_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr203_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr204_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr205_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr206_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr207_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr208_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr209_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr210_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr211_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr212_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr213_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr214_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr215_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr216_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr217_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr218_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr219_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr220_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr221_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr222_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr223_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr224_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr225_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr226_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr227_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr228_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr229_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr230_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr231_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr232_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr233_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr234_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr235_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr236_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr237_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr238_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr239_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr240_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr241_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr242_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr243_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr244_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr245_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr246_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr247_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr248_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr249_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr250_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr251_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr252_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr253_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr254_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr255_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX908-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX908-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.2, addrspace 5) ; GFX908-NEXT: $vgpr1 = V_MOV_B32_e32 8200, implicit $exec @@ -1061,230 +2597,566 @@ ; GFX90A-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX90A-NEXT: liveins: $agpr32, $agpr33, $agpr34, $agpr35, $agpr36, $agpr37, $agpr38, $agpr39, $agpr40, $agpr41, $agpr42, $agpr43, $agpr44, $agpr45, $agpr46, $agpr47, $agpr48, $agpr49, $agpr50, $agpr51, $agpr52, $agpr53, $agpr54, $agpr55, $agpr56, $agpr57, $agpr58, $agpr59, $agpr60, $agpr61, $agpr62, $agpr63, $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15, $vgpr16, $vgpr17, $vgpr18, $vgpr19, $vgpr20, $vgpr21, $vgpr22, $vgpr23, $vgpr24, $vgpr25, $vgpr26, $vgpr27, $vgpr28, $vgpr29, $vgpr30, $vgpr31, $vgpr32, $vgpr33, $vgpr34, $vgpr35, $vgpr36, $vgpr37, $vgpr38, $vgpr39, $vgpr48, $vgpr49, $vgpr50, $vgpr51, $vgpr52, $vgpr53, $vgpr54, $vgpr55, $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX90A-NEXT: {{ $}} + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr32_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr33_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr34_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr35_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr36_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr37_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr38_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr39_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr48_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr49_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr50_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr51_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr52_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr53_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr54_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr55_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX90A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr32, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr32_lo16, $vgpr0_lo16 ; GFX90A-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr33, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr33_lo16, $vgpr1_lo16 ; GFX90A-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 killed $agpr34, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr34_lo16, $vgpr2_lo16 ; GFX90A-NEXT: $vgpr3 = V_ACCVGPR_READ_B32_e64 killed $agpr35, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr35_lo16, $vgpr3_lo16 ; GFX90A-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 killed $agpr36, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr36_lo16, $vgpr4_lo16 ; GFX90A-NEXT: $vgpr5 = V_ACCVGPR_READ_B32_e64 killed $agpr37, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr37_lo16, $vgpr5_lo16 ; GFX90A-NEXT: $vgpr6 = V_ACCVGPR_READ_B32_e64 killed $agpr38, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr38_lo16, $vgpr6_lo16 ; GFX90A-NEXT: $vgpr7 = V_ACCVGPR_READ_B32_e64 killed $agpr39, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr39_lo16, $vgpr7_lo16 ; GFX90A-NEXT: $vgpr8 = V_ACCVGPR_READ_B32_e64 killed $agpr40, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr40_lo16, $vgpr8_lo16 ; GFX90A-NEXT: $vgpr9 = V_ACCVGPR_READ_B32_e64 killed $agpr41, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr41_lo16, $vgpr9_lo16 ; GFX90A-NEXT: $vgpr10 = V_ACCVGPR_READ_B32_e64 killed $agpr42, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr42_lo16, $vgpr10_lo16 ; GFX90A-NEXT: $vgpr11 = V_ACCVGPR_READ_B32_e64 killed $agpr43, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr43_lo16, $vgpr11_lo16 ; GFX90A-NEXT: $vgpr12 = V_ACCVGPR_READ_B32_e64 killed $agpr44, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr44_lo16, $vgpr12_lo16 ; GFX90A-NEXT: $vgpr13 = V_ACCVGPR_READ_B32_e64 killed $agpr45, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr45_lo16, $vgpr13_lo16 ; GFX90A-NEXT: $vgpr14 = V_ACCVGPR_READ_B32_e64 killed $agpr46, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr46_lo16, $vgpr14_lo16 ; GFX90A-NEXT: $vgpr15 = V_ACCVGPR_READ_B32_e64 killed $agpr47, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr47_lo16, $vgpr15_lo16 ; GFX90A-NEXT: $vgpr16 = V_ACCVGPR_READ_B32_e64 killed $agpr48, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr48_lo16, $vgpr16_lo16 ; GFX90A-NEXT: $vgpr17 = V_ACCVGPR_READ_B32_e64 killed $agpr49, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr49_lo16, $vgpr17_lo16 ; GFX90A-NEXT: $vgpr18 = V_ACCVGPR_READ_B32_e64 killed $agpr50, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr50_lo16, $vgpr18_lo16 ; GFX90A-NEXT: $vgpr19 = V_ACCVGPR_READ_B32_e64 killed $agpr51, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr51_lo16, $vgpr19_lo16 ; GFX90A-NEXT: $vgpr20 = V_ACCVGPR_READ_B32_e64 killed $agpr52, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr52_lo16, $vgpr20_lo16 ; GFX90A-NEXT: $vgpr21 = V_ACCVGPR_READ_B32_e64 killed $agpr53, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr53_lo16, $vgpr21_lo16 ; GFX90A-NEXT: $vgpr22 = V_ACCVGPR_READ_B32_e64 killed $agpr54, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr54_lo16, $vgpr22_lo16 ; GFX90A-NEXT: $vgpr23 = V_ACCVGPR_READ_B32_e64 killed $agpr55, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr55_lo16, $vgpr23_lo16 ; GFX90A-NEXT: $vgpr24 = V_ACCVGPR_READ_B32_e64 killed $agpr56, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr56_lo16, $vgpr24_lo16 ; GFX90A-NEXT: $vgpr25 = V_ACCVGPR_READ_B32_e64 killed $agpr57, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr57_lo16, $vgpr25_lo16 ; GFX90A-NEXT: $vgpr26 = V_ACCVGPR_READ_B32_e64 killed $agpr58, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr58_lo16, $vgpr26_lo16 ; GFX90A-NEXT: $vgpr27 = V_ACCVGPR_READ_B32_e64 killed $agpr59, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr59_lo16, $vgpr27_lo16 ; GFX90A-NEXT: $vgpr28 = V_ACCVGPR_READ_B32_e64 killed $agpr60, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr60_lo16, $vgpr28_lo16 ; GFX90A-NEXT: $vgpr29 = V_ACCVGPR_READ_B32_e64 killed $agpr61, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr61_lo16, $vgpr29_lo16 ; GFX90A-NEXT: $vgpr30 = V_ACCVGPR_READ_B32_e64 killed $agpr62, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr62_lo16, $vgpr30_lo16 ; GFX90A-NEXT: $vgpr31 = V_ACCVGPR_READ_B32_e64 killed $agpr63, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr63_lo16, $vgpr31_lo16 ; GFX90A-NEXT: $vgpr32 = V_ACCVGPR_READ_B32_e64 killed $agpr64, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr64_lo16, $vgpr32_lo16 ; GFX90A-NEXT: $vgpr33 = V_ACCVGPR_READ_B32_e64 killed $agpr65, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr65_lo16, $vgpr33_lo16 ; GFX90A-NEXT: $vgpr34 = V_ACCVGPR_READ_B32_e64 killed $agpr66, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr66_lo16, $vgpr34_lo16 ; GFX90A-NEXT: $vgpr35 = V_ACCVGPR_READ_B32_e64 killed $agpr67, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr67_lo16, $vgpr35_lo16 ; GFX90A-NEXT: $vgpr36 = V_ACCVGPR_READ_B32_e64 killed $agpr68, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr68_lo16, $vgpr36_lo16 ; GFX90A-NEXT: $vgpr37 = V_ACCVGPR_READ_B32_e64 killed $agpr69, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr69_lo16, $vgpr37_lo16 ; GFX90A-NEXT: $vgpr38 = V_ACCVGPR_READ_B32_e64 killed $agpr70, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr70_lo16, $vgpr38_lo16 ; GFX90A-NEXT: $vgpr39 = V_ACCVGPR_READ_B32_e64 killed $agpr71, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr71_lo16, $vgpr39_lo16 ; GFX90A-NEXT: $vgpr48 = V_ACCVGPR_READ_B32_e64 killed $agpr72, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr72_lo16, $vgpr48_lo16 ; GFX90A-NEXT: $vgpr49 = V_ACCVGPR_READ_B32_e64 killed $agpr73, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr73_lo16, $vgpr49_lo16 ; GFX90A-NEXT: $vgpr50 = V_ACCVGPR_READ_B32_e64 killed $agpr74, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr74_lo16, $vgpr50_lo16 ; GFX90A-NEXT: $vgpr51 = V_ACCVGPR_READ_B32_e64 killed $agpr75, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr75_lo16, $vgpr51_lo16 ; GFX90A-NEXT: $vgpr52 = V_ACCVGPR_READ_B32_e64 killed $agpr76, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr76_lo16, $vgpr52_lo16 ; GFX90A-NEXT: $vgpr53 = V_ACCVGPR_READ_B32_e64 killed $agpr77, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr77_lo16, $vgpr53_lo16 ; GFX90A-NEXT: $vgpr54 = V_ACCVGPR_READ_B32_e64 killed $agpr78, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr78_lo16, $vgpr54_lo16 ; GFX90A-NEXT: $vgpr55 = V_ACCVGPR_READ_B32_e64 killed $agpr79, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr79_lo16, $vgpr55_lo16 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr80, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 700, 0, 0, implicit $exec :: (store (s32) into %stack.50, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd0, 0x18, 0x12, 0x90, 0xd0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xde, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr81, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 696, 0, 0, implicit $exec :: (store (s32) into %stack.51, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd1, 0x18, 0x12, 0x90, 0xd1, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xdc, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr82, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 692, 0, 0, implicit $exec :: (store (s32) into %stack.52, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd2, 0x18, 0x12, 0x90, 0xd2, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xda, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr83, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 688, 0, 0, implicit $exec :: (store (s32) into %stack.53, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd3, 0x18, 0x12, 0x90, 0xd3, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr84, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 684, 0, 0, implicit $exec :: (store (s32) into %stack.54, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd4, 0x18, 0x12, 0x90, 0xd4, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr85, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 680, 0, 0, implicit $exec :: (store (s32) into %stack.55, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd5, 0x18, 0x12, 0x90, 0xd5, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr86, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 676, 0, 0, implicit $exec :: (store (s32) into %stack.56, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd6, 0x18, 0x12, 0x90, 0xd6, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr87, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 672, 0, 0, implicit $exec :: (store (s32) into %stack.57, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd7, 0x18, 0x12, 0x90, 0xd7, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr88, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 668, 0, 0, implicit $exec :: (store (s32) into %stack.58, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd8, 0x18, 0x12, 0x90, 0xd8, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xce, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr89, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 664, 0, 0, implicit $exec :: (store (s32) into %stack.59, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd9, 0x18, 0x12, 0x90, 0xd9, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xcc, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr90, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 660, 0, 0, implicit $exec :: (store (s32) into %stack.60, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xda, 0x18, 0x12, 0x90, 0xda, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xca, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr91, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 656, 0, 0, implicit $exec :: (store (s32) into %stack.61, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdb, 0x18, 0x12, 0x90, 0xdb, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr92, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 652, 0, 0, implicit $exec :: (store (s32) into %stack.62, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdc, 0x18, 0x12, 0x90, 0xdc, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr93, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 648, 0, 0, implicit $exec :: (store (s32) into %stack.63, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdd, 0x18, 0x12, 0x90, 0xdd, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr94, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 644, 0, 0, implicit $exec :: (store (s32) into %stack.64, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xde, 0x18, 0x12, 0x90, 0xde, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr95, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 640, 0, 0, implicit $exec :: (store (s32) into %stack.65, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdf, 0x18, 0x12, 0x90, 0xdf, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr96, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 636, 0, 0, implicit $exec :: (store (s32) into %stack.66, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe0, 0x18, 0x12, 0x90, 0xe0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xbe, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr97, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 632, 0, 0, implicit $exec :: (store (s32) into %stack.67, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe1, 0x18, 0x12, 0x90, 0xe1, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xbc, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr98, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 628, 0, 0, implicit $exec :: (store (s32) into %stack.68, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe2, 0x18, 0x12, 0x90, 0xe2, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xba, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr99, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 624, 0, 0, implicit $exec :: (store (s32) into %stack.69, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe3, 0x18, 0x12, 0x90, 0xe3, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr100, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 620, 0, 0, implicit $exec :: (store (s32) into %stack.70, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe4, 0x18, 0x12, 0x90, 0xe4, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr101, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 616, 0, 0, implicit $exec :: (store (s32) into %stack.71, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe5, 0x18, 0x12, 0x90, 0xe5, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr102, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 612, 0, 0, implicit $exec :: (store (s32) into %stack.72, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe6, 0x18, 0x12, 0x90, 0xe6, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr103, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 608, 0, 0, implicit $exec :: (store (s32) into %stack.73, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe7, 0x18, 0x12, 0x90, 0xe7, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr104, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 604, 0, 0, implicit $exec :: (store (s32) into %stack.74, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe8, 0x18, 0x12, 0x90, 0xe8, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xae, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr105, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 600, 0, 0, implicit $exec :: (store (s32) into %stack.75, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe9, 0x18, 0x12, 0x90, 0xe9, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xac, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr106, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 596, 0, 0, implicit $exec :: (store (s32) into %stack.76, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xea, 0x18, 0x12, 0x90, 0xea, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xaa, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr107, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 592, 0, 0, implicit $exec :: (store (s32) into %stack.77, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xeb, 0x18, 0x12, 0x90, 0xeb, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr108, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 588, 0, 0, implicit $exec :: (store (s32) into %stack.78, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xec, 0x18, 0x12, 0x90, 0xec, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr109, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 584, 0, 0, implicit $exec :: (store (s32) into %stack.79, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xed, 0x18, 0x12, 0x90, 0xed, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr110, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 580, 0, 0, implicit $exec :: (store (s32) into %stack.80, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xee, 0x18, 0x12, 0x90, 0xee, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr111, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 576, 0, 0, implicit $exec :: (store (s32) into %stack.81, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xef, 0x18, 0x12, 0x90, 0xef, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr112, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 572, 0, 0, implicit $exec :: (store (s32) into %stack.82, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf0, 0x18, 0x12, 0x90, 0xf0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x9e, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr113, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 568, 0, 0, implicit $exec :: (store (s32) into %stack.83, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf1, 0x18, 0x12, 0x90, 0xf1, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x9c, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr114, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 564, 0, 0, implicit $exec :: (store (s32) into %stack.84, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf2, 0x18, 0x12, 0x90, 0xf2, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x9a, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr115, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 560, 0, 0, implicit $exec :: (store (s32) into %stack.85, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf3, 0x18, 0x12, 0x90, 0xf3, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x98, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr116, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 556, 0, 0, implicit $exec :: (store (s32) into %stack.86, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf4, 0x18, 0x12, 0x90, 0xf4, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x96, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr117, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 552, 0, 0, implicit $exec :: (store (s32) into %stack.87, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf5, 0x18, 0x12, 0x90, 0xf5, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x94, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr118, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 548, 0, 0, implicit $exec :: (store (s32) into %stack.88, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf6, 0x18, 0x12, 0x90, 0xf6, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x92, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr119, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 544, 0, 0, implicit $exec :: (store (s32) into %stack.89, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf7, 0x18, 0x12, 0x90, 0xf7, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x90, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr120, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 540, 0, 0, implicit $exec :: (store (s32) into %stack.90, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf8, 0x18, 0x12, 0x90, 0xf8, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x8e, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr121, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 536, 0, 0, implicit $exec :: (store (s32) into %stack.91, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf9, 0x18, 0x12, 0x90, 0xf9, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x8c, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr122, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 532, 0, 0, implicit $exec :: (store (s32) into %stack.92, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfa, 0x18, 0x12, 0x90, 0xfa, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x8a, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr123, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 528, 0, 0, implicit $exec :: (store (s32) into %stack.93, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfb, 0x18, 0x12, 0x90, 0xfb, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x88, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr124, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 524, 0, 0, implicit $exec :: (store (s32) into %stack.94, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfc, 0x18, 0x12, 0x90, 0xfc, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x86, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr125, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 520, 0, 0, implicit $exec :: (store (s32) into %stack.95, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfd, 0x18, 0x12, 0x90, 0xfd, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x84, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr126, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 516, 0, 0, implicit $exec :: (store (s32) into %stack.96, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfe, 0x18, 0x12, 0x90, 0xfe, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x82, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr127, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 512, 0, 0, implicit $exec :: (store (s32) into %stack.97, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xff, 0x18, 0x12, 0x90, 0xff, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x80, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr128, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 508, 0, 0, implicit $exec :: (store (s32) into %stack.98, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x80, 0x19, 0x12, 0x90, 0x80, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xfe, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr129, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 504, 0, 0, implicit $exec :: (store (s32) into %stack.99, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x81, 0x19, 0x12, 0x90, 0x81, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xfc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr130, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 500, 0, 0, implicit $exec :: (store (s32) into %stack.100, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x82, 0x19, 0x12, 0x90, 0x82, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xfa, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr131, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 496, 0, 0, implicit $exec :: (store (s32) into %stack.101, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x83, 0x19, 0x12, 0x90, 0x83, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr132, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 492, 0, 0, implicit $exec :: (store (s32) into %stack.102, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x84, 0x19, 0x12, 0x90, 0x84, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr133, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 488, 0, 0, implicit $exec :: (store (s32) into %stack.103, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x85, 0x19, 0x12, 0x90, 0x85, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr134, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 484, 0, 0, implicit $exec :: (store (s32) into %stack.104, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x86, 0x19, 0x12, 0x90, 0x86, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr135, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 480, 0, 0, implicit $exec :: (store (s32) into %stack.105, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x87, 0x19, 0x12, 0x90, 0x87, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr136, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 476, 0, 0, implicit $exec :: (store (s32) into %stack.106, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x88, 0x19, 0x12, 0x90, 0x88, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xee, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr137, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 472, 0, 0, implicit $exec :: (store (s32) into %stack.107, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x89, 0x19, 0x12, 0x90, 0x89, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xec, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr138, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 468, 0, 0, implicit $exec :: (store (s32) into %stack.108, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8a, 0x19, 0x12, 0x90, 0x8a, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xea, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr139, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 464, 0, 0, implicit $exec :: (store (s32) into %stack.109, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8b, 0x19, 0x12, 0x90, 0x8b, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr140, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 460, 0, 0, implicit $exec :: (store (s32) into %stack.110, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8c, 0x19, 0x12, 0x90, 0x8c, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr141, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 456, 0, 0, implicit $exec :: (store (s32) into %stack.111, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8d, 0x19, 0x12, 0x90, 0x8d, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr142, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 452, 0, 0, implicit $exec :: (store (s32) into %stack.112, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8e, 0x19, 0x12, 0x90, 0x8e, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr143, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 448, 0, 0, implicit $exec :: (store (s32) into %stack.113, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8f, 0x19, 0x12, 0x90, 0x8f, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr144, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 444, 0, 0, implicit $exec :: (store (s32) into %stack.114, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x90, 0x19, 0x12, 0x90, 0x90, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xde, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr145, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 440, 0, 0, implicit $exec :: (store (s32) into %stack.115, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x91, 0x19, 0x12, 0x90, 0x91, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xdc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr146, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 436, 0, 0, implicit $exec :: (store (s32) into %stack.116, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x92, 0x19, 0x12, 0x90, 0x92, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xda, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr147, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 432, 0, 0, implicit $exec :: (store (s32) into %stack.117, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x93, 0x19, 0x12, 0x90, 0x93, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr148, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 428, 0, 0, implicit $exec :: (store (s32) into %stack.118, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x94, 0x19, 0x12, 0x90, 0x94, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr149, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 424, 0, 0, implicit $exec :: (store (s32) into %stack.119, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x95, 0x19, 0x12, 0x90, 0x95, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr150, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 420, 0, 0, implicit $exec :: (store (s32) into %stack.120, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x96, 0x19, 0x12, 0x90, 0x96, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr151, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 416, 0, 0, implicit $exec :: (store (s32) into %stack.121, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x97, 0x19, 0x12, 0x90, 0x97, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr152, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 412, 0, 0, implicit $exec :: (store (s32) into %stack.122, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x98, 0x19, 0x12, 0x90, 0x98, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xce, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr153, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 408, 0, 0, implicit $exec :: (store (s32) into %stack.123, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x99, 0x19, 0x12, 0x90, 0x99, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xcc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr154, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 404, 0, 0, implicit $exec :: (store (s32) into %stack.124, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9a, 0x19, 0x12, 0x90, 0x9a, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xca, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr155, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 400, 0, 0, implicit $exec :: (store (s32) into %stack.125, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9b, 0x19, 0x12, 0x90, 0x9b, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr156, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 396, 0, 0, implicit $exec :: (store (s32) into %stack.126, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9c, 0x19, 0x12, 0x90, 0x9c, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr157, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 392, 0, 0, implicit $exec :: (store (s32) into %stack.127, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9d, 0x19, 0x12, 0x90, 0x9d, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr158, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 388, 0, 0, implicit $exec :: (store (s32) into %stack.128, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9e, 0x19, 0x12, 0x90, 0x9e, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr159, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 384, 0, 0, implicit $exec :: (store (s32) into %stack.129, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9f, 0x19, 0x12, 0x90, 0x9f, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr160, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 380, 0, 0, implicit $exec :: (store (s32) into %stack.130, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa0, 0x19, 0x12, 0x90, 0xa0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xbe, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr161, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 376, 0, 0, implicit $exec :: (store (s32) into %stack.131, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa1, 0x19, 0x12, 0x90, 0xa1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xbc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr162, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 372, 0, 0, implicit $exec :: (store (s32) into %stack.132, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa2, 0x19, 0x12, 0x90, 0xa2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xba, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr163, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 368, 0, 0, implicit $exec :: (store (s32) into %stack.133, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa3, 0x19, 0x12, 0x90, 0xa3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr164, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 364, 0, 0, implicit $exec :: (store (s32) into %stack.134, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa4, 0x19, 0x12, 0x90, 0xa4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr165, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 360, 0, 0, implicit $exec :: (store (s32) into %stack.135, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa5, 0x19, 0x12, 0x90, 0xa5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr166, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 356, 0, 0, implicit $exec :: (store (s32) into %stack.136, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa6, 0x19, 0x12, 0x90, 0xa6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr167, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 352, 0, 0, implicit $exec :: (store (s32) into %stack.137, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa7, 0x19, 0x12, 0x90, 0xa7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr168, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 348, 0, 0, implicit $exec :: (store (s32) into %stack.138, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa8, 0x19, 0x12, 0x90, 0xa8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xae, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr169, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 344, 0, 0, implicit $exec :: (store (s32) into %stack.139, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa9, 0x19, 0x12, 0x90, 0xa9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xac, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr170, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 340, 0, 0, implicit $exec :: (store (s32) into %stack.140, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xaa, 0x19, 0x12, 0x90, 0xaa, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xaa, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr171, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 336, 0, 0, implicit $exec :: (store (s32) into %stack.141, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xab, 0x19, 0x12, 0x90, 0xab, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr172, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 332, 0, 0, implicit $exec :: (store (s32) into %stack.142, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xac, 0x19, 0x12, 0x90, 0xac, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr173, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 328, 0, 0, implicit $exec :: (store (s32) into %stack.143, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xad, 0x19, 0x12, 0x90, 0xad, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr174, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 324, 0, 0, implicit $exec :: (store (s32) into %stack.144, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xae, 0x19, 0x12, 0x90, 0xae, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr175, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 320, 0, 0, implicit $exec :: (store (s32) into %stack.145, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xaf, 0x19, 0x12, 0x90, 0xaf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr176, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 316, 0, 0, implicit $exec :: (store (s32) into %stack.146, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb0, 0x19, 0x12, 0x90, 0xb0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x9e, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr177, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 312, 0, 0, implicit $exec :: (store (s32) into %stack.147, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb1, 0x19, 0x12, 0x90, 0xb1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x9c, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr178, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 308, 0, 0, implicit $exec :: (store (s32) into %stack.148, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb2, 0x19, 0x12, 0x90, 0xb2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x9a, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr179, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 304, 0, 0, implicit $exec :: (store (s32) into %stack.149, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb3, 0x19, 0x12, 0x90, 0xb3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x98, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr180, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 300, 0, 0, implicit $exec :: (store (s32) into %stack.150, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb4, 0x19, 0x12, 0x90, 0xb4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x96, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr181, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 296, 0, 0, implicit $exec :: (store (s32) into %stack.151, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb5, 0x19, 0x12, 0x90, 0xb5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x94, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr182, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 292, 0, 0, implicit $exec :: (store (s32) into %stack.152, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb6, 0x19, 0x12, 0x90, 0xb6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x92, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr183, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 288, 0, 0, implicit $exec :: (store (s32) into %stack.153, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb7, 0x19, 0x12, 0x90, 0xb7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x90, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr184, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 284, 0, 0, implicit $exec :: (store (s32) into %stack.154, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb8, 0x19, 0x12, 0x90, 0xb8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x8e, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr185, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 280, 0, 0, implicit $exec :: (store (s32) into %stack.155, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb9, 0x19, 0x12, 0x90, 0xb9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x8c, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr186, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 276, 0, 0, implicit $exec :: (store (s32) into %stack.156, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xba, 0x19, 0x12, 0x90, 0xba, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x8a, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr187, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 272, 0, 0, implicit $exec :: (store (s32) into %stack.157, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbb, 0x19, 0x12, 0x90, 0xbb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x88, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr188, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 268, 0, 0, implicit $exec :: (store (s32) into %stack.158, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbc, 0x19, 0x12, 0x90, 0xbc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x86, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr189, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 264, 0, 0, implicit $exec :: (store (s32) into %stack.159, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbd, 0x19, 0x12, 0x90, 0xbd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x84, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr190, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 260, 0, 0, implicit $exec :: (store (s32) into %stack.160, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbe, 0x19, 0x12, 0x90, 0xbe, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x82, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr191, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 256, 0, 0, implicit $exec :: (store (s32) into %stack.161, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbf, 0x19, 0x12, 0x90, 0xbf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x80, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr192, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 252, 0, 0, implicit $exec :: (store (s32) into %stack.162, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc0, 0x19, 0x11, 0x90, 0xc0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x7e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr193, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 248, 0, 0, implicit $exec :: (store (s32) into %stack.163, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc1, 0x19, 0x11, 0x90, 0xc1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x7c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr194, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 244, 0, 0, implicit $exec :: (store (s32) into %stack.164, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc2, 0x19, 0x11, 0x90, 0xc2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x7a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr195, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 240, 0, 0, implicit $exec :: (store (s32) into %stack.165, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc3, 0x19, 0x11, 0x90, 0xc3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x78, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr196, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 236, 0, 0, implicit $exec :: (store (s32) into %stack.166, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc4, 0x19, 0x11, 0x90, 0xc4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x76, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr197, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 232, 0, 0, implicit $exec :: (store (s32) into %stack.167, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc5, 0x19, 0x11, 0x90, 0xc5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x74, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr198, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 228, 0, 0, implicit $exec :: (store (s32) into %stack.168, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc6, 0x19, 0x11, 0x90, 0xc6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x72, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr199, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 224, 0, 0, implicit $exec :: (store (s32) into %stack.169, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc7, 0x19, 0x11, 0x90, 0xc7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x70, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr200, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 220, 0, 0, implicit $exec :: (store (s32) into %stack.170, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc8, 0x19, 0x11, 0x90, 0xc8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x6e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr201, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 216, 0, 0, implicit $exec :: (store (s32) into %stack.171, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc9, 0x19, 0x11, 0x90, 0xc9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x6c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr202, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 212, 0, 0, implicit $exec :: (store (s32) into %stack.172, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xca, 0x19, 0x11, 0x90, 0xca, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x6a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr203, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 208, 0, 0, implicit $exec :: (store (s32) into %stack.173, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcb, 0x19, 0x11, 0x90, 0xcb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x68, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr204, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 204, 0, 0, implicit $exec :: (store (s32) into %stack.174, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcc, 0x19, 0x11, 0x90, 0xcc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x66, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr205, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 200, 0, 0, implicit $exec :: (store (s32) into %stack.175, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcd, 0x19, 0x11, 0x90, 0xcd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x64, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr206, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 196, 0, 0, implicit $exec :: (store (s32) into %stack.176, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xce, 0x19, 0x11, 0x90, 0xce, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x62, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr207, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 192, 0, 0, implicit $exec :: (store (s32) into %stack.177, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcf, 0x19, 0x11, 0x90, 0xcf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x60, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr208, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 188, 0, 0, implicit $exec :: (store (s32) into %stack.178, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd0, 0x19, 0x11, 0x90, 0xd0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x5e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr209, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 184, 0, 0, implicit $exec :: (store (s32) into %stack.179, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd1, 0x19, 0x11, 0x90, 0xd1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x5c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr210, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 180, 0, 0, implicit $exec :: (store (s32) into %stack.180, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd2, 0x19, 0x11, 0x90, 0xd2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x5a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr211, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 176, 0, 0, implicit $exec :: (store (s32) into %stack.181, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd3, 0x19, 0x11, 0x90, 0xd3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x58, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr212, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 172, 0, 0, implicit $exec :: (store (s32) into %stack.182, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd4, 0x19, 0x11, 0x90, 0xd4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x56, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr213, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 168, 0, 0, implicit $exec :: (store (s32) into %stack.183, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd5, 0x19, 0x11, 0x90, 0xd5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x54, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr214, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 164, 0, 0, implicit $exec :: (store (s32) into %stack.184, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd6, 0x19, 0x11, 0x90, 0xd6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x52, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr215, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 160, 0, 0, implicit $exec :: (store (s32) into %stack.185, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd7, 0x19, 0x11, 0x90, 0xd7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x50, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr216, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 156, 0, 0, implicit $exec :: (store (s32) into %stack.186, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd8, 0x19, 0x11, 0x90, 0xd8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x4e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr217, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 152, 0, 0, implicit $exec :: (store (s32) into %stack.187, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd9, 0x19, 0x11, 0x90, 0xd9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x4c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr218, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 148, 0, 0, implicit $exec :: (store (s32) into %stack.188, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xda, 0x19, 0x11, 0x90, 0xda, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x4a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr219, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 144, 0, 0, implicit $exec :: (store (s32) into %stack.189, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdb, 0x19, 0x11, 0x90, 0xdb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x48, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr220, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 140, 0, 0, implicit $exec :: (store (s32) into %stack.190, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdc, 0x19, 0x11, 0x90, 0xdc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x46, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr221, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 136, 0, 0, implicit $exec :: (store (s32) into %stack.191, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdd, 0x19, 0x11, 0x90, 0xdd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x44, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr222, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 132, 0, 0, implicit $exec :: (store (s32) into %stack.192, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xde, 0x19, 0x11, 0x90, 0xde, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x42, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr223, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 128, 0, 0, implicit $exec :: (store (s32) into %stack.193, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdf, 0x19, 0x11, 0x90, 0xdf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x40, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr224, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 124, 0, 0, implicit $exec :: (store (s32) into %stack.194, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe0, 0x19, 0x11, 0x90, 0xe0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x3e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr225, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 120, 0, 0, implicit $exec :: (store (s32) into %stack.195, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe1, 0x19, 0x11, 0x90, 0xe1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x3c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr226, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 116, 0, 0, implicit $exec :: (store (s32) into %stack.196, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe2, 0x19, 0x11, 0x90, 0xe2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x3a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr227, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 112, 0, 0, implicit $exec :: (store (s32) into %stack.197, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe3, 0x19, 0x11, 0x90, 0xe3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x38, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr228, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 108, 0, 0, implicit $exec :: (store (s32) into %stack.198, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe4, 0x19, 0x11, 0x90, 0xe4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x36, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr229, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 104, 0, 0, implicit $exec :: (store (s32) into %stack.199, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe5, 0x19, 0x11, 0x90, 0xe5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x34, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr230, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 100, 0, 0, implicit $exec :: (store (s32) into %stack.200, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe6, 0x19, 0x11, 0x90, 0xe6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x32, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr231, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 96, 0, 0, implicit $exec :: (store (s32) into %stack.201, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe7, 0x19, 0x11, 0x90, 0xe7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x30, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr232, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 92, 0, 0, implicit $exec :: (store (s32) into %stack.202, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe8, 0x19, 0x11, 0x90, 0xe8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x2e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr233, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 88, 0, 0, implicit $exec :: (store (s32) into %stack.203, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe9, 0x19, 0x11, 0x90, 0xe9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x2c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr234, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 84, 0, 0, implicit $exec :: (store (s32) into %stack.204, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xea, 0x19, 0x11, 0x90, 0xea, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x2a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr235, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 80, 0, 0, implicit $exec :: (store (s32) into %stack.205, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xeb, 0x19, 0x11, 0x90, 0xeb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x28, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr236, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 76, 0, 0, implicit $exec :: (store (s32) into %stack.206, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xec, 0x19, 0x11, 0x90, 0xec, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x26, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr237, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 72, 0, 0, implicit $exec :: (store (s32) into %stack.207, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xed, 0x19, 0x11, 0x90, 0xed, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x24, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr238, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 68, 0, 0, implicit $exec :: (store (s32) into %stack.208, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xee, 0x19, 0x11, 0x90, 0xee, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x22, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr239, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 64, 0, 0, implicit $exec :: (store (s32) into %stack.209, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xef, 0x19, 0x11, 0x90, 0xef, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x20, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr240, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 60, 0, 0, implicit $exec :: (store (s32) into %stack.210, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf0, 0x19, 0x11, 0x90, 0xf0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x1e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr241, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 56, 0, 0, implicit $exec :: (store (s32) into %stack.211, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf1, 0x19, 0x11, 0x90, 0xf1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x1c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr242, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 52, 0, 0, implicit $exec :: (store (s32) into %stack.212, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf2, 0x19, 0x11, 0x90, 0xf2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x1a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr243, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 48, 0, 0, implicit $exec :: (store (s32) into %stack.213, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf3, 0x19, 0x11, 0x90, 0xf3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x18, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr244, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 44, 0, 0, implicit $exec :: (store (s32) into %stack.214, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf4, 0x19, 0x11, 0x90, 0xf4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x16, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr245, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 40, 0, 0, implicit $exec :: (store (s32) into %stack.215, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf5, 0x19, 0x11, 0x90, 0xf5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x14, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr246, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 36, 0, 0, implicit $exec :: (store (s32) into %stack.216, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf6, 0x19, 0x11, 0x90, 0xf6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x12, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr247, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 32, 0, 0, implicit $exec :: (store (s32) into %stack.217, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf7, 0x19, 0x11, 0x90, 0xf7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x10, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr248, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 28, 0, 0, implicit $exec :: (store (s32) into %stack.218, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf8, 0x19, 0x11, 0x90, 0xf8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x0e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr249, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 24, 0, 0, implicit $exec :: (store (s32) into %stack.219, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf9, 0x19, 0x11, 0x90, 0xf9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x0c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr250, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 20, 0, 0, implicit $exec :: (store (s32) into %stack.220, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfa, 0x19, 0x11, 0x90, 0xfa, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x0a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr251, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 16, 0, 0, implicit $exec :: (store (s32) into %stack.221, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfb, 0x19, 0x11, 0x90, 0xfb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x08, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr252, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 12, 0, 0, implicit $exec :: (store (s32) into %stack.222, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfc, 0x19, 0x11, 0x90, 0xfc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x06, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr253, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.223, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfd, 0x19, 0x11, 0x90, 0xfd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x04, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr254, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.224, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfe, 0x19, 0x11, 0x90, 0xfe, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr255, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.225, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xff, 0x19, 0x10, 0x90, 0xff, 0x19, 0x16, 0xe9, 0x05, 0x00, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr40, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 704, 0, 0, implicit $exec :: (store (s32) into %stack.226, addrspace 5) ; GFX90A-NEXT: $vgpr40 = V_MOV_B32_e32 8904, implicit $exec @@ -1532,6 +3404,294 @@ ; GFX908-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX908-FLATSCR-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX908-FLATSCR-NEXT: {{ $}} + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr32_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr33_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr34_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr35_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr36_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr37_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr38_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr39_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr40_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr41_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr42_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr43_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr44_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr45_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr46_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr47_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr48_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr49_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr50_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr51_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr52_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr53_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr54_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr55_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr56_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr57_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr58_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr59_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr60_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr61_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr62_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr63_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr64_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr65_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr66_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr67_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr68_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr69_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr70_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr71_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr72_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr73_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr74_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr75_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr76_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr77_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr78_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr79_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr80_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr81_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr82_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr83_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr84_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr85_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr86_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr87_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr88_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr89_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr90_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr91_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr92_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr93_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr94_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr95_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr96_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr97_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr98_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr99_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr100_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr101_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr102_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr103_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr104_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr105_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr106_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr107_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr108_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr109_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr110_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr111_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr112_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr113_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr114_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr115_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr116_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr117_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr118_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr119_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr120_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr121_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr122_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr123_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr124_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr125_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr126_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr127_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr128_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr129_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr130_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr131_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr132_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr133_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr134_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr135_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr136_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr137_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr138_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr139_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr140_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr141_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr142_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr143_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr144_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr145_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr146_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr147_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr148_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr149_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr150_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr151_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr152_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr153_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr154_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr155_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr156_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr157_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr158_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr159_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr160_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr161_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr162_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr163_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr164_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr165_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr166_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr167_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr168_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr169_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr170_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr171_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr172_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr173_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr174_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr175_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr176_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr177_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr178_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr179_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr180_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr181_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr182_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr183_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr184_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr185_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr186_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr187_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr188_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr189_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr190_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr191_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr192_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr193_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr194_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr195_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr196_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr197_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr198_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr199_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr200_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr201_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr202_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr203_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr204_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr205_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr206_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr207_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr208_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr209_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr210_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr211_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr212_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr213_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr214_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr215_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr216_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr217_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr218_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr219_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr220_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr221_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr222_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr223_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr224_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr225_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr226_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr227_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr228_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr229_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr230_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr231_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr232_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr233_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr234_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr235_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr236_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr237_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr238_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr239_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr240_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr241_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr242_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr243_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr244_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr245_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr246_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr247_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr248_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr249_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr250_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr251_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr252_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr253_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr254_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr255_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX908-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX908-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr1, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.2, addrspace 5) ; GFX908-FLATSCR-NEXT: $vgpr1 = V_MOV_B32_e32 $sgpr32, implicit $exec @@ -1557,230 +3717,566 @@ ; GFX90A-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX90A-FLATSCR-NEXT: liveins: $agpr32, $agpr33, $agpr34, $agpr35, $agpr36, $agpr37, $agpr38, $agpr39, $agpr40, $agpr41, $agpr42, $agpr43, $agpr44, $agpr45, $agpr46, $agpr47, $agpr48, $agpr49, $agpr50, $agpr51, $agpr52, $agpr53, $agpr54, $agpr55, $agpr56, $agpr57, $agpr58, $agpr59, $agpr60, $agpr61, $agpr62, $agpr63, $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15, $vgpr16, $vgpr17, $vgpr18, $vgpr19, $vgpr20, $vgpr21, $vgpr22, $vgpr23, $vgpr24, $vgpr25, $vgpr26, $vgpr27, $vgpr28, $vgpr29, $vgpr30, $vgpr31, $vgpr32, $vgpr33, $vgpr34, $vgpr35, $vgpr36, $vgpr37, $vgpr38, $vgpr39, $vgpr48, $vgpr49, $vgpr50, $vgpr51, $vgpr52, $vgpr53, $vgpr54, $vgpr55, $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX90A-FLATSCR-NEXT: {{ $}} + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr32_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr33_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr34_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr35_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr36_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr37_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr38_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr39_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr48_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr49_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr50_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr51_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr52_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr53_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr54_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr55_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr32, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr32_lo16, $vgpr0_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr33, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr33_lo16, $vgpr1_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 killed $agpr34, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr34_lo16, $vgpr2_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr3 = V_ACCVGPR_READ_B32_e64 killed $agpr35, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr35_lo16, $vgpr3_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 killed $agpr36, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr36_lo16, $vgpr4_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr5 = V_ACCVGPR_READ_B32_e64 killed $agpr37, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr37_lo16, $vgpr5_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr6 = V_ACCVGPR_READ_B32_e64 killed $agpr38, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr38_lo16, $vgpr6_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr7 = V_ACCVGPR_READ_B32_e64 killed $agpr39, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr39_lo16, $vgpr7_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr8 = V_ACCVGPR_READ_B32_e64 killed $agpr40, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr40_lo16, $vgpr8_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr9 = V_ACCVGPR_READ_B32_e64 killed $agpr41, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr41_lo16, $vgpr9_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr10 = V_ACCVGPR_READ_B32_e64 killed $agpr42, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr42_lo16, $vgpr10_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr11 = V_ACCVGPR_READ_B32_e64 killed $agpr43, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr43_lo16, $vgpr11_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr12 = V_ACCVGPR_READ_B32_e64 killed $agpr44, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr44_lo16, $vgpr12_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr13 = V_ACCVGPR_READ_B32_e64 killed $agpr45, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr45_lo16, $vgpr13_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr14 = V_ACCVGPR_READ_B32_e64 killed $agpr46, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr46_lo16, $vgpr14_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr15 = V_ACCVGPR_READ_B32_e64 killed $agpr47, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr47_lo16, $vgpr15_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr16 = V_ACCVGPR_READ_B32_e64 killed $agpr48, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr48_lo16, $vgpr16_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr17 = V_ACCVGPR_READ_B32_e64 killed $agpr49, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr49_lo16, $vgpr17_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr18 = V_ACCVGPR_READ_B32_e64 killed $agpr50, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr50_lo16, $vgpr18_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr19 = V_ACCVGPR_READ_B32_e64 killed $agpr51, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr51_lo16, $vgpr19_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr20 = V_ACCVGPR_READ_B32_e64 killed $agpr52, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr52_lo16, $vgpr20_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr21 = V_ACCVGPR_READ_B32_e64 killed $agpr53, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr53_lo16, $vgpr21_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr22 = V_ACCVGPR_READ_B32_e64 killed $agpr54, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr54_lo16, $vgpr22_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr23 = V_ACCVGPR_READ_B32_e64 killed $agpr55, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr55_lo16, $vgpr23_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr24 = V_ACCVGPR_READ_B32_e64 killed $agpr56, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr56_lo16, $vgpr24_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr25 = V_ACCVGPR_READ_B32_e64 killed $agpr57, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr57_lo16, $vgpr25_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr26 = V_ACCVGPR_READ_B32_e64 killed $agpr58, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr58_lo16, $vgpr26_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr27 = V_ACCVGPR_READ_B32_e64 killed $agpr59, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr59_lo16, $vgpr27_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr28 = V_ACCVGPR_READ_B32_e64 killed $agpr60, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr60_lo16, $vgpr28_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr29 = V_ACCVGPR_READ_B32_e64 killed $agpr61, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr61_lo16, $vgpr29_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr30 = V_ACCVGPR_READ_B32_e64 killed $agpr62, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr62_lo16, $vgpr30_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr31 = V_ACCVGPR_READ_B32_e64 killed $agpr63, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr63_lo16, $vgpr31_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr32 = V_ACCVGPR_READ_B32_e64 killed $agpr64, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr64_lo16, $vgpr32_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr33 = V_ACCVGPR_READ_B32_e64 killed $agpr65, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr65_lo16, $vgpr33_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr34 = V_ACCVGPR_READ_B32_e64 killed $agpr66, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr66_lo16, $vgpr34_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr35 = V_ACCVGPR_READ_B32_e64 killed $agpr67, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr67_lo16, $vgpr35_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr36 = V_ACCVGPR_READ_B32_e64 killed $agpr68, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr68_lo16, $vgpr36_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr37 = V_ACCVGPR_READ_B32_e64 killed $agpr69, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr69_lo16, $vgpr37_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr38 = V_ACCVGPR_READ_B32_e64 killed $agpr70, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr70_lo16, $vgpr38_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr39 = V_ACCVGPR_READ_B32_e64 killed $agpr71, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr71_lo16, $vgpr39_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr48 = V_ACCVGPR_READ_B32_e64 killed $agpr72, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr72_lo16, $vgpr48_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr49 = V_ACCVGPR_READ_B32_e64 killed $agpr73, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr73_lo16, $vgpr49_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr50 = V_ACCVGPR_READ_B32_e64 killed $agpr74, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr74_lo16, $vgpr50_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr51 = V_ACCVGPR_READ_B32_e64 killed $agpr75, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr75_lo16, $vgpr51_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr52 = V_ACCVGPR_READ_B32_e64 killed $agpr76, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr76_lo16, $vgpr52_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr53 = V_ACCVGPR_READ_B32_e64 killed $agpr77, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr77_lo16, $vgpr53_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr54 = V_ACCVGPR_READ_B32_e64 killed $agpr78, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr78_lo16, $vgpr54_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr55 = V_ACCVGPR_READ_B32_e64 killed $agpr79, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr79_lo16, $vgpr55_lo16 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr80, $sgpr32, 700, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.50, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd0, 0x18, 0x12, 0x90, 0xd0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xde, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr81, $sgpr32, 696, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.51, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd1, 0x18, 0x12, 0x90, 0xd1, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xdc, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr82, $sgpr32, 692, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.52, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd2, 0x18, 0x12, 0x90, 0xd2, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xda, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr83, $sgpr32, 688, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.53, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd3, 0x18, 0x12, 0x90, 0xd3, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr84, $sgpr32, 684, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.54, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd4, 0x18, 0x12, 0x90, 0xd4, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr85, $sgpr32, 680, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.55, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd5, 0x18, 0x12, 0x90, 0xd5, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr86, $sgpr32, 676, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.56, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd6, 0x18, 0x12, 0x90, 0xd6, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr87, $sgpr32, 672, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.57, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd7, 0x18, 0x12, 0x90, 0xd7, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr88, $sgpr32, 668, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.58, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd8, 0x18, 0x12, 0x90, 0xd8, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xce, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr89, $sgpr32, 664, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.59, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd9, 0x18, 0x12, 0x90, 0xd9, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xcc, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr90, $sgpr32, 660, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.60, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xda, 0x18, 0x12, 0x90, 0xda, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xca, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr91, $sgpr32, 656, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.61, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdb, 0x18, 0x12, 0x90, 0xdb, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr92, $sgpr32, 652, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.62, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdc, 0x18, 0x12, 0x90, 0xdc, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr93, $sgpr32, 648, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.63, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdd, 0x18, 0x12, 0x90, 0xdd, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr94, $sgpr32, 644, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.64, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xde, 0x18, 0x12, 0x90, 0xde, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr95, $sgpr32, 640, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.65, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdf, 0x18, 0x12, 0x90, 0xdf, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr96, $sgpr32, 636, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.66, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe0, 0x18, 0x12, 0x90, 0xe0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xbe, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr97, $sgpr32, 632, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.67, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe1, 0x18, 0x12, 0x90, 0xe1, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xbc, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr98, $sgpr32, 628, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.68, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe2, 0x18, 0x12, 0x90, 0xe2, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xba, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr99, $sgpr32, 624, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.69, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe3, 0x18, 0x12, 0x90, 0xe3, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr100, $sgpr32, 620, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.70, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe4, 0x18, 0x12, 0x90, 0xe4, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr101, $sgpr32, 616, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.71, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe5, 0x18, 0x12, 0x90, 0xe5, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr102, $sgpr32, 612, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.72, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe6, 0x18, 0x12, 0x90, 0xe6, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr103, $sgpr32, 608, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.73, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe7, 0x18, 0x12, 0x90, 0xe7, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr104, $sgpr32, 604, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.74, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe8, 0x18, 0x12, 0x90, 0xe8, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xae, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr105, $sgpr32, 600, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.75, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe9, 0x18, 0x12, 0x90, 0xe9, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xac, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr106, $sgpr32, 596, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.76, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xea, 0x18, 0x12, 0x90, 0xea, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xaa, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr107, $sgpr32, 592, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.77, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xeb, 0x18, 0x12, 0x90, 0xeb, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr108, $sgpr32, 588, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.78, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xec, 0x18, 0x12, 0x90, 0xec, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr109, $sgpr32, 584, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.79, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xed, 0x18, 0x12, 0x90, 0xed, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr110, $sgpr32, 580, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.80, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xee, 0x18, 0x12, 0x90, 0xee, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr111, $sgpr32, 576, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.81, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xef, 0x18, 0x12, 0x90, 0xef, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr112, $sgpr32, 572, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.82, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf0, 0x18, 0x12, 0x90, 0xf0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x9e, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr113, $sgpr32, 568, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.83, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf1, 0x18, 0x12, 0x90, 0xf1, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x9c, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr114, $sgpr32, 564, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.84, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf2, 0x18, 0x12, 0x90, 0xf2, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x9a, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr115, $sgpr32, 560, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.85, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf3, 0x18, 0x12, 0x90, 0xf3, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x98, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr116, $sgpr32, 556, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.86, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf4, 0x18, 0x12, 0x90, 0xf4, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x96, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr117, $sgpr32, 552, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.87, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf5, 0x18, 0x12, 0x90, 0xf5, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x94, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr118, $sgpr32, 548, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.88, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf6, 0x18, 0x12, 0x90, 0xf6, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x92, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr119, $sgpr32, 544, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.89, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf7, 0x18, 0x12, 0x90, 0xf7, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x90, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr120, $sgpr32, 540, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.90, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf8, 0x18, 0x12, 0x90, 0xf8, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x8e, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr121, $sgpr32, 536, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.91, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf9, 0x18, 0x12, 0x90, 0xf9, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x8c, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr122, $sgpr32, 532, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.92, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfa, 0x18, 0x12, 0x90, 0xfa, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x8a, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr123, $sgpr32, 528, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.93, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfb, 0x18, 0x12, 0x90, 0xfb, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x88, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr124, $sgpr32, 524, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.94, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfc, 0x18, 0x12, 0x90, 0xfc, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x86, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr125, $sgpr32, 520, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.95, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfd, 0x18, 0x12, 0x90, 0xfd, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x84, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr126, $sgpr32, 516, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.96, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfe, 0x18, 0x12, 0x90, 0xfe, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x82, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr127, $sgpr32, 512, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.97, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xff, 0x18, 0x12, 0x90, 0xff, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x80, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr128, $sgpr32, 508, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.98, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x80, 0x19, 0x12, 0x90, 0x80, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xfe, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr129, $sgpr32, 504, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.99, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x81, 0x19, 0x12, 0x90, 0x81, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xfc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr130, $sgpr32, 500, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.100, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x82, 0x19, 0x12, 0x90, 0x82, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xfa, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr131, $sgpr32, 496, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.101, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x83, 0x19, 0x12, 0x90, 0x83, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr132, $sgpr32, 492, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.102, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x84, 0x19, 0x12, 0x90, 0x84, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr133, $sgpr32, 488, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.103, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x85, 0x19, 0x12, 0x90, 0x85, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr134, $sgpr32, 484, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.104, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x86, 0x19, 0x12, 0x90, 0x86, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr135, $sgpr32, 480, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.105, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x87, 0x19, 0x12, 0x90, 0x87, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr136, $sgpr32, 476, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.106, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x88, 0x19, 0x12, 0x90, 0x88, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xee, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr137, $sgpr32, 472, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.107, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x89, 0x19, 0x12, 0x90, 0x89, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xec, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr138, $sgpr32, 468, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.108, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8a, 0x19, 0x12, 0x90, 0x8a, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xea, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr139, $sgpr32, 464, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.109, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8b, 0x19, 0x12, 0x90, 0x8b, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr140, $sgpr32, 460, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.110, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8c, 0x19, 0x12, 0x90, 0x8c, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr141, $sgpr32, 456, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.111, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8d, 0x19, 0x12, 0x90, 0x8d, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr142, $sgpr32, 452, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.112, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8e, 0x19, 0x12, 0x90, 0x8e, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr143, $sgpr32, 448, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.113, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8f, 0x19, 0x12, 0x90, 0x8f, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr144, $sgpr32, 444, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.114, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x90, 0x19, 0x12, 0x90, 0x90, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xde, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr145, $sgpr32, 440, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.115, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x91, 0x19, 0x12, 0x90, 0x91, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xdc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr146, $sgpr32, 436, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.116, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x92, 0x19, 0x12, 0x90, 0x92, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xda, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr147, $sgpr32, 432, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.117, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x93, 0x19, 0x12, 0x90, 0x93, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr148, $sgpr32, 428, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.118, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x94, 0x19, 0x12, 0x90, 0x94, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr149, $sgpr32, 424, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.119, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x95, 0x19, 0x12, 0x90, 0x95, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr150, $sgpr32, 420, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.120, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x96, 0x19, 0x12, 0x90, 0x96, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr151, $sgpr32, 416, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.121, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x97, 0x19, 0x12, 0x90, 0x97, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr152, $sgpr32, 412, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.122, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x98, 0x19, 0x12, 0x90, 0x98, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xce, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr153, $sgpr32, 408, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.123, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x99, 0x19, 0x12, 0x90, 0x99, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xcc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr154, $sgpr32, 404, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.124, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9a, 0x19, 0x12, 0x90, 0x9a, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xca, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr155, $sgpr32, 400, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.125, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9b, 0x19, 0x12, 0x90, 0x9b, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr156, $sgpr32, 396, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.126, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9c, 0x19, 0x12, 0x90, 0x9c, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr157, $sgpr32, 392, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.127, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9d, 0x19, 0x12, 0x90, 0x9d, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr158, $sgpr32, 388, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.128, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9e, 0x19, 0x12, 0x90, 0x9e, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr159, $sgpr32, 384, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.129, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9f, 0x19, 0x12, 0x90, 0x9f, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr160, $sgpr32, 380, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.130, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa0, 0x19, 0x12, 0x90, 0xa0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xbe, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr161, $sgpr32, 376, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.131, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa1, 0x19, 0x12, 0x90, 0xa1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xbc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr162, $sgpr32, 372, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.132, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa2, 0x19, 0x12, 0x90, 0xa2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xba, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr163, $sgpr32, 368, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.133, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa3, 0x19, 0x12, 0x90, 0xa3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr164, $sgpr32, 364, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.134, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa4, 0x19, 0x12, 0x90, 0xa4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr165, $sgpr32, 360, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.135, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa5, 0x19, 0x12, 0x90, 0xa5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr166, $sgpr32, 356, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.136, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa6, 0x19, 0x12, 0x90, 0xa6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr167, $sgpr32, 352, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.137, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa7, 0x19, 0x12, 0x90, 0xa7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr168, $sgpr32, 348, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.138, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa8, 0x19, 0x12, 0x90, 0xa8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xae, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr169, $sgpr32, 344, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.139, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa9, 0x19, 0x12, 0x90, 0xa9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xac, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr170, $sgpr32, 340, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.140, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xaa, 0x19, 0x12, 0x90, 0xaa, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xaa, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr171, $sgpr32, 336, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.141, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xab, 0x19, 0x12, 0x90, 0xab, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr172, $sgpr32, 332, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.142, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xac, 0x19, 0x12, 0x90, 0xac, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr173, $sgpr32, 328, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.143, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xad, 0x19, 0x12, 0x90, 0xad, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr174, $sgpr32, 324, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.144, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xae, 0x19, 0x12, 0x90, 0xae, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr175, $sgpr32, 320, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.145, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xaf, 0x19, 0x12, 0x90, 0xaf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr176, $sgpr32, 316, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.146, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb0, 0x19, 0x12, 0x90, 0xb0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x9e, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr177, $sgpr32, 312, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.147, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb1, 0x19, 0x12, 0x90, 0xb1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x9c, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr178, $sgpr32, 308, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.148, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb2, 0x19, 0x12, 0x90, 0xb2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x9a, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr179, $sgpr32, 304, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.149, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb3, 0x19, 0x12, 0x90, 0xb3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x98, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr180, $sgpr32, 300, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.150, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb4, 0x19, 0x12, 0x90, 0xb4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x96, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr181, $sgpr32, 296, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.151, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb5, 0x19, 0x12, 0x90, 0xb5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x94, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr182, $sgpr32, 292, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.152, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb6, 0x19, 0x12, 0x90, 0xb6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x92, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr183, $sgpr32, 288, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.153, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb7, 0x19, 0x12, 0x90, 0xb7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x90, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr184, $sgpr32, 284, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.154, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb8, 0x19, 0x12, 0x90, 0xb8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x8e, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr185, $sgpr32, 280, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.155, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb9, 0x19, 0x12, 0x90, 0xb9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x8c, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr186, $sgpr32, 276, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.156, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xba, 0x19, 0x12, 0x90, 0xba, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x8a, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr187, $sgpr32, 272, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.157, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbb, 0x19, 0x12, 0x90, 0xbb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x88, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr188, $sgpr32, 268, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.158, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbc, 0x19, 0x12, 0x90, 0xbc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x86, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr189, $sgpr32, 264, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.159, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbd, 0x19, 0x12, 0x90, 0xbd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x84, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr190, $sgpr32, 260, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.160, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbe, 0x19, 0x12, 0x90, 0xbe, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x82, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr191, $sgpr32, 256, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.161, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbf, 0x19, 0x12, 0x90, 0xbf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x80, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr192, $sgpr32, 252, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.162, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc0, 0x19, 0x11, 0x90, 0xc0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x7e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr193, $sgpr32, 248, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.163, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc1, 0x19, 0x11, 0x90, 0xc1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x7c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr194, $sgpr32, 244, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.164, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc2, 0x19, 0x11, 0x90, 0xc2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x7a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr195, $sgpr32, 240, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.165, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc3, 0x19, 0x11, 0x90, 0xc3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x78, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr196, $sgpr32, 236, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.166, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc4, 0x19, 0x11, 0x90, 0xc4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x76, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr197, $sgpr32, 232, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.167, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc5, 0x19, 0x11, 0x90, 0xc5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x74, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr198, $sgpr32, 228, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.168, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc6, 0x19, 0x11, 0x90, 0xc6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x72, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr199, $sgpr32, 224, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.169, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc7, 0x19, 0x11, 0x90, 0xc7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x70, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr200, $sgpr32, 220, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.170, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc8, 0x19, 0x11, 0x90, 0xc8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x6e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr201, $sgpr32, 216, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.171, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc9, 0x19, 0x11, 0x90, 0xc9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x6c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr202, $sgpr32, 212, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.172, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xca, 0x19, 0x11, 0x90, 0xca, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x6a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr203, $sgpr32, 208, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.173, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcb, 0x19, 0x11, 0x90, 0xcb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x68, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr204, $sgpr32, 204, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.174, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcc, 0x19, 0x11, 0x90, 0xcc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x66, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr205, $sgpr32, 200, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.175, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcd, 0x19, 0x11, 0x90, 0xcd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x64, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr206, $sgpr32, 196, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.176, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xce, 0x19, 0x11, 0x90, 0xce, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x62, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr207, $sgpr32, 192, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.177, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcf, 0x19, 0x11, 0x90, 0xcf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x60, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr208, $sgpr32, 188, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.178, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd0, 0x19, 0x11, 0x90, 0xd0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x5e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr209, $sgpr32, 184, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.179, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd1, 0x19, 0x11, 0x90, 0xd1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x5c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr210, $sgpr32, 180, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.180, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd2, 0x19, 0x11, 0x90, 0xd2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x5a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr211, $sgpr32, 176, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.181, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd3, 0x19, 0x11, 0x90, 0xd3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x58, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr212, $sgpr32, 172, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.182, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd4, 0x19, 0x11, 0x90, 0xd4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x56, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr213, $sgpr32, 168, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.183, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd5, 0x19, 0x11, 0x90, 0xd5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x54, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr214, $sgpr32, 164, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.184, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd6, 0x19, 0x11, 0x90, 0xd6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x52, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr215, $sgpr32, 160, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.185, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd7, 0x19, 0x11, 0x90, 0xd7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x50, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr216, $sgpr32, 156, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.186, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd8, 0x19, 0x11, 0x90, 0xd8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x4e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr217, $sgpr32, 152, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.187, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd9, 0x19, 0x11, 0x90, 0xd9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x4c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr218, $sgpr32, 148, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.188, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xda, 0x19, 0x11, 0x90, 0xda, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x4a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr219, $sgpr32, 144, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.189, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdb, 0x19, 0x11, 0x90, 0xdb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x48, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr220, $sgpr32, 140, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.190, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdc, 0x19, 0x11, 0x90, 0xdc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x46, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr221, $sgpr32, 136, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.191, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdd, 0x19, 0x11, 0x90, 0xdd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x44, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr222, $sgpr32, 132, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.192, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xde, 0x19, 0x11, 0x90, 0xde, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x42, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr223, $sgpr32, 128, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.193, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdf, 0x19, 0x11, 0x90, 0xdf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x40, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr224, $sgpr32, 124, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.194, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe0, 0x19, 0x11, 0x90, 0xe0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x3e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr225, $sgpr32, 120, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.195, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe1, 0x19, 0x11, 0x90, 0xe1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x3c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr226, $sgpr32, 116, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.196, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe2, 0x19, 0x11, 0x90, 0xe2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x3a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr227, $sgpr32, 112, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.197, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe3, 0x19, 0x11, 0x90, 0xe3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x38, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr228, $sgpr32, 108, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.198, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe4, 0x19, 0x11, 0x90, 0xe4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x36, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr229, $sgpr32, 104, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.199, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe5, 0x19, 0x11, 0x90, 0xe5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x34, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr230, $sgpr32, 100, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.200, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe6, 0x19, 0x11, 0x90, 0xe6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x32, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr231, $sgpr32, 96, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.201, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe7, 0x19, 0x11, 0x90, 0xe7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x30, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr232, $sgpr32, 92, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.202, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe8, 0x19, 0x11, 0x90, 0xe8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x2e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr233, $sgpr32, 88, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.203, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe9, 0x19, 0x11, 0x90, 0xe9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x2c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr234, $sgpr32, 84, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.204, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xea, 0x19, 0x11, 0x90, 0xea, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x2a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr235, $sgpr32, 80, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.205, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xeb, 0x19, 0x11, 0x90, 0xeb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x28, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr236, $sgpr32, 76, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.206, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xec, 0x19, 0x11, 0x90, 0xec, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x26, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr237, $sgpr32, 72, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.207, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xed, 0x19, 0x11, 0x90, 0xed, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x24, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr238, $sgpr32, 68, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.208, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xee, 0x19, 0x11, 0x90, 0xee, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x22, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr239, $sgpr32, 64, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.209, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xef, 0x19, 0x11, 0x90, 0xef, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x20, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr240, $sgpr32, 60, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.210, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf0, 0x19, 0x11, 0x90, 0xf0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x1e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr241, $sgpr32, 56, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.211, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf1, 0x19, 0x11, 0x90, 0xf1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x1c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr242, $sgpr32, 52, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.212, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf2, 0x19, 0x11, 0x90, 0xf2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x1a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr243, $sgpr32, 48, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.213, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf3, 0x19, 0x11, 0x90, 0xf3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x18, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr244, $sgpr32, 44, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.214, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf4, 0x19, 0x11, 0x90, 0xf4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x16, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr245, $sgpr32, 40, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.215, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf5, 0x19, 0x11, 0x90, 0xf5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x14, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr246, $sgpr32, 36, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.216, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf6, 0x19, 0x11, 0x90, 0xf6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x12, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr247, $sgpr32, 32, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.217, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf7, 0x19, 0x11, 0x90, 0xf7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x10, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr248, $sgpr32, 28, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.218, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf8, 0x19, 0x11, 0x90, 0xf8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x0e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr249, $sgpr32, 24, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.219, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf9, 0x19, 0x11, 0x90, 0xf9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x0c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr250, $sgpr32, 20, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.220, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfa, 0x19, 0x11, 0x90, 0xfa, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x0a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr251, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.221, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfb, 0x19, 0x11, 0x90, 0xfb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x08, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr252, $sgpr32, 12, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.222, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfc, 0x19, 0x11, 0x90, 0xfc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x06, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr253, $sgpr32, 8, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.223, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfd, 0x19, 0x11, 0x90, 0xfd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x04, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr254, $sgpr32, 4, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.224, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfe, 0x19, 0x11, 0x90, 0xfe, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr255, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.225, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xff, 0x19, 0x10, 0x90, 0xff, 0x19, 0x16, 0xe9, 0x05, 0x00, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr40, $sgpr32, 704, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.226, addrspace 5) ; GFX90A-FLATSCR-NEXT: $vgpr40 = V_MOV_B32_e32 $sgpr32, implicit $exec @@ -2057,6 +4553,294 @@ ; GFX908-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX908-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX908-NEXT: {{ $}} + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr32_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr33_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr34_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr35_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr36_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr37_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr38_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr39_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr40_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr41_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr42_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr43_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr44_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr45_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr46_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr47_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr48_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr49_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr50_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr51_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr52_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr53_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr54_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr55_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr56_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr57_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr58_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr59_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr60_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr61_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr62_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr63_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr64_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr65_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr66_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr67_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr68_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr69_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr70_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr71_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr72_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr73_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr74_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr75_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr76_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr77_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr78_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr79_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr80_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr81_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr82_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr83_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr84_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr85_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr86_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr87_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr88_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr89_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr90_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr91_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr92_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr93_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr94_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr95_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr96_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr97_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr98_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr99_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr100_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr101_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr102_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr103_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr104_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr105_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr106_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr107_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr108_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr109_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr110_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr111_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr112_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr113_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr114_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr115_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr116_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr117_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr118_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr119_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr120_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr121_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr122_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr123_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr124_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr125_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr126_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr127_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr128_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr129_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr130_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr131_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr132_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr133_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr134_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr135_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr136_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr137_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr138_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr139_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr140_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr141_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr142_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr143_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr144_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr145_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr146_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr147_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr148_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr149_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr150_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr151_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr152_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr153_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr154_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr155_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr156_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr157_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr158_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr159_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr160_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr161_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr162_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr163_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr164_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr165_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr166_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr167_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr168_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr169_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr170_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr171_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr172_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr173_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr174_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr175_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr176_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr177_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr178_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr179_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr180_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr181_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr182_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr183_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr184_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr185_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr186_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr187_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr188_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr189_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr190_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr191_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr192_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr193_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr194_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr195_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr196_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr197_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr198_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr199_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr200_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr201_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr202_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr203_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr204_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr205_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr206_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr207_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr208_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr209_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr210_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr211_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr212_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr213_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr214_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr215_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr216_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr217_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr218_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr219_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr220_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr221_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr222_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr223_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr224_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr225_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr226_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr227_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr228_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr229_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr230_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr231_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr232_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr233_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr234_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr235_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr236_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr237_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr238_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr239_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr240_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr241_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr242_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr243_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr244_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr245_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr246_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr247_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr248_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr249_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr250_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr251_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr252_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr253_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr254_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr255_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX908-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX908-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.2, addrspace 5) ; GFX908-NEXT: $vgpr1 = V_MOV_B32_e32 8200, implicit $exec @@ -2083,230 +4867,566 @@ ; GFX90A-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX90A-NEXT: liveins: $agpr32, $agpr33, $agpr34, $agpr35, $agpr36, $agpr37, $agpr38, $agpr39, $agpr40, $agpr41, $agpr42, $agpr43, $agpr44, $agpr45, $agpr46, $agpr47, $agpr48, $agpr49, $agpr50, $agpr51, $agpr52, $agpr53, $agpr54, $agpr55, $agpr56, $agpr57, $agpr58, $agpr59, $agpr60, $agpr61, $agpr62, $agpr63, $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15, $vgpr16, $vgpr17, $vgpr18, $vgpr19, $vgpr20, $vgpr21, $vgpr22, $vgpr23, $vgpr24, $vgpr25, $vgpr26, $vgpr27, $vgpr28, $vgpr29, $vgpr30, $vgpr31, $vgpr32, $vgpr33, $vgpr34, $vgpr35, $vgpr36, $vgpr37, $vgpr38, $vgpr39, $vgpr48, $vgpr49, $vgpr50, $vgpr51, $vgpr52, $vgpr53, $vgpr54, $vgpr55, $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX90A-NEXT: {{ $}} + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr32_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr33_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr34_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr35_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr36_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr37_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr38_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr39_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr48_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr49_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr50_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr51_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr52_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr53_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr54_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr55_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX90A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr32, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr32_lo16, $vgpr0_lo16 ; GFX90A-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr33, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr33_lo16, $vgpr1_lo16 ; GFX90A-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 killed $agpr34, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr34_lo16, $vgpr2_lo16 ; GFX90A-NEXT: $vgpr3 = V_ACCVGPR_READ_B32_e64 killed $agpr35, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr35_lo16, $vgpr3_lo16 ; GFX90A-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 killed $agpr36, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr36_lo16, $vgpr4_lo16 ; GFX90A-NEXT: $vgpr5 = V_ACCVGPR_READ_B32_e64 killed $agpr37, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr37_lo16, $vgpr5_lo16 ; GFX90A-NEXT: $vgpr6 = V_ACCVGPR_READ_B32_e64 killed $agpr38, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr38_lo16, $vgpr6_lo16 ; GFX90A-NEXT: $vgpr7 = V_ACCVGPR_READ_B32_e64 killed $agpr39, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr39_lo16, $vgpr7_lo16 ; GFX90A-NEXT: $vgpr8 = V_ACCVGPR_READ_B32_e64 killed $agpr40, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr40_lo16, $vgpr8_lo16 ; GFX90A-NEXT: $vgpr9 = V_ACCVGPR_READ_B32_e64 killed $agpr41, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr41_lo16, $vgpr9_lo16 ; GFX90A-NEXT: $vgpr10 = V_ACCVGPR_READ_B32_e64 killed $agpr42, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr42_lo16, $vgpr10_lo16 ; GFX90A-NEXT: $vgpr11 = V_ACCVGPR_READ_B32_e64 killed $agpr43, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr43_lo16, $vgpr11_lo16 ; GFX90A-NEXT: $vgpr12 = V_ACCVGPR_READ_B32_e64 killed $agpr44, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr44_lo16, $vgpr12_lo16 ; GFX90A-NEXT: $vgpr13 = V_ACCVGPR_READ_B32_e64 killed $agpr45, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr45_lo16, $vgpr13_lo16 ; GFX90A-NEXT: $vgpr14 = V_ACCVGPR_READ_B32_e64 killed $agpr46, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr46_lo16, $vgpr14_lo16 ; GFX90A-NEXT: $vgpr15 = V_ACCVGPR_READ_B32_e64 killed $agpr47, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr47_lo16, $vgpr15_lo16 ; GFX90A-NEXT: $vgpr16 = V_ACCVGPR_READ_B32_e64 killed $agpr48, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr48_lo16, $vgpr16_lo16 ; GFX90A-NEXT: $vgpr17 = V_ACCVGPR_READ_B32_e64 killed $agpr49, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr49_lo16, $vgpr17_lo16 ; GFX90A-NEXT: $vgpr18 = V_ACCVGPR_READ_B32_e64 killed $agpr50, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr50_lo16, $vgpr18_lo16 ; GFX90A-NEXT: $vgpr19 = V_ACCVGPR_READ_B32_e64 killed $agpr51, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr51_lo16, $vgpr19_lo16 ; GFX90A-NEXT: $vgpr20 = V_ACCVGPR_READ_B32_e64 killed $agpr52, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr52_lo16, $vgpr20_lo16 ; GFX90A-NEXT: $vgpr21 = V_ACCVGPR_READ_B32_e64 killed $agpr53, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr53_lo16, $vgpr21_lo16 ; GFX90A-NEXT: $vgpr22 = V_ACCVGPR_READ_B32_e64 killed $agpr54, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr54_lo16, $vgpr22_lo16 ; GFX90A-NEXT: $vgpr23 = V_ACCVGPR_READ_B32_e64 killed $agpr55, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr55_lo16, $vgpr23_lo16 ; GFX90A-NEXT: $vgpr24 = V_ACCVGPR_READ_B32_e64 killed $agpr56, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr56_lo16, $vgpr24_lo16 ; GFX90A-NEXT: $vgpr25 = V_ACCVGPR_READ_B32_e64 killed $agpr57, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr57_lo16, $vgpr25_lo16 ; GFX90A-NEXT: $vgpr26 = V_ACCVGPR_READ_B32_e64 killed $agpr58, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr58_lo16, $vgpr26_lo16 ; GFX90A-NEXT: $vgpr27 = V_ACCVGPR_READ_B32_e64 killed $agpr59, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr59_lo16, $vgpr27_lo16 ; GFX90A-NEXT: $vgpr28 = V_ACCVGPR_READ_B32_e64 killed $agpr60, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr60_lo16, $vgpr28_lo16 ; GFX90A-NEXT: $vgpr29 = V_ACCVGPR_READ_B32_e64 killed $agpr61, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr61_lo16, $vgpr29_lo16 ; GFX90A-NEXT: $vgpr30 = V_ACCVGPR_READ_B32_e64 killed $agpr62, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr62_lo16, $vgpr30_lo16 ; GFX90A-NEXT: $vgpr31 = V_ACCVGPR_READ_B32_e64 killed $agpr63, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr63_lo16, $vgpr31_lo16 ; GFX90A-NEXT: $vgpr32 = V_ACCVGPR_READ_B32_e64 killed $agpr64, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr64_lo16, $vgpr32_lo16 ; GFX90A-NEXT: $vgpr33 = V_ACCVGPR_READ_B32_e64 killed $agpr65, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr65_lo16, $vgpr33_lo16 ; GFX90A-NEXT: $vgpr34 = V_ACCVGPR_READ_B32_e64 killed $agpr66, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr66_lo16, $vgpr34_lo16 ; GFX90A-NEXT: $vgpr35 = V_ACCVGPR_READ_B32_e64 killed $agpr67, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr67_lo16, $vgpr35_lo16 ; GFX90A-NEXT: $vgpr36 = V_ACCVGPR_READ_B32_e64 killed $agpr68, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr68_lo16, $vgpr36_lo16 ; GFX90A-NEXT: $vgpr37 = V_ACCVGPR_READ_B32_e64 killed $agpr69, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr69_lo16, $vgpr37_lo16 ; GFX90A-NEXT: $vgpr38 = V_ACCVGPR_READ_B32_e64 killed $agpr70, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr70_lo16, $vgpr38_lo16 ; GFX90A-NEXT: $vgpr39 = V_ACCVGPR_READ_B32_e64 killed $agpr71, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr71_lo16, $vgpr39_lo16 ; GFX90A-NEXT: $vgpr48 = V_ACCVGPR_READ_B32_e64 killed $agpr72, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr72_lo16, $vgpr48_lo16 ; GFX90A-NEXT: $vgpr49 = V_ACCVGPR_READ_B32_e64 killed $agpr73, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr73_lo16, $vgpr49_lo16 ; GFX90A-NEXT: $vgpr50 = V_ACCVGPR_READ_B32_e64 killed $agpr74, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr74_lo16, $vgpr50_lo16 ; GFX90A-NEXT: $vgpr51 = V_ACCVGPR_READ_B32_e64 killed $agpr75, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr75_lo16, $vgpr51_lo16 ; GFX90A-NEXT: $vgpr52 = V_ACCVGPR_READ_B32_e64 killed $agpr76, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr76_lo16, $vgpr52_lo16 ; GFX90A-NEXT: $vgpr53 = V_ACCVGPR_READ_B32_e64 killed $agpr77, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr77_lo16, $vgpr53_lo16 ; GFX90A-NEXT: $vgpr54 = V_ACCVGPR_READ_B32_e64 killed $agpr78, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr78_lo16, $vgpr54_lo16 ; GFX90A-NEXT: $vgpr55 = V_ACCVGPR_READ_B32_e64 killed $agpr79, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr79_lo16, $vgpr55_lo16 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr80, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 700, 0, 0, implicit $exec :: (store (s32) into %stack.50, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd0, 0x18, 0x12, 0x90, 0xd0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xde, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr81, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 696, 0, 0, implicit $exec :: (store (s32) into %stack.51, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd1, 0x18, 0x12, 0x90, 0xd1, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xdc, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr82, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 692, 0, 0, implicit $exec :: (store (s32) into %stack.52, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd2, 0x18, 0x12, 0x90, 0xd2, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xda, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr83, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 688, 0, 0, implicit $exec :: (store (s32) into %stack.53, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd3, 0x18, 0x12, 0x90, 0xd3, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr84, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 684, 0, 0, implicit $exec :: (store (s32) into %stack.54, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd4, 0x18, 0x12, 0x90, 0xd4, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr85, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 680, 0, 0, implicit $exec :: (store (s32) into %stack.55, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd5, 0x18, 0x12, 0x90, 0xd5, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr86, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 676, 0, 0, implicit $exec :: (store (s32) into %stack.56, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd6, 0x18, 0x12, 0x90, 0xd6, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr87, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 672, 0, 0, implicit $exec :: (store (s32) into %stack.57, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd7, 0x18, 0x12, 0x90, 0xd7, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr88, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 668, 0, 0, implicit $exec :: (store (s32) into %stack.58, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd8, 0x18, 0x12, 0x90, 0xd8, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xce, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr89, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 664, 0, 0, implicit $exec :: (store (s32) into %stack.59, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd9, 0x18, 0x12, 0x90, 0xd9, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xcc, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr90, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 660, 0, 0, implicit $exec :: (store (s32) into %stack.60, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xda, 0x18, 0x12, 0x90, 0xda, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xca, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr91, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 656, 0, 0, implicit $exec :: (store (s32) into %stack.61, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdb, 0x18, 0x12, 0x90, 0xdb, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr92, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 652, 0, 0, implicit $exec :: (store (s32) into %stack.62, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdc, 0x18, 0x12, 0x90, 0xdc, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr93, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 648, 0, 0, implicit $exec :: (store (s32) into %stack.63, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdd, 0x18, 0x12, 0x90, 0xdd, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr94, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 644, 0, 0, implicit $exec :: (store (s32) into %stack.64, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xde, 0x18, 0x12, 0x90, 0xde, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr95, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 640, 0, 0, implicit $exec :: (store (s32) into %stack.65, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdf, 0x18, 0x12, 0x90, 0xdf, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr96, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 636, 0, 0, implicit $exec :: (store (s32) into %stack.66, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe0, 0x18, 0x12, 0x90, 0xe0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xbe, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr97, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 632, 0, 0, implicit $exec :: (store (s32) into %stack.67, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe1, 0x18, 0x12, 0x90, 0xe1, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xbc, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr98, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 628, 0, 0, implicit $exec :: (store (s32) into %stack.68, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe2, 0x18, 0x12, 0x90, 0xe2, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xba, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr99, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 624, 0, 0, implicit $exec :: (store (s32) into %stack.69, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe3, 0x18, 0x12, 0x90, 0xe3, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr100, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 620, 0, 0, implicit $exec :: (store (s32) into %stack.70, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe4, 0x18, 0x12, 0x90, 0xe4, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr101, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 616, 0, 0, implicit $exec :: (store (s32) into %stack.71, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe5, 0x18, 0x12, 0x90, 0xe5, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr102, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 612, 0, 0, implicit $exec :: (store (s32) into %stack.72, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe6, 0x18, 0x12, 0x90, 0xe6, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr103, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 608, 0, 0, implicit $exec :: (store (s32) into %stack.73, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe7, 0x18, 0x12, 0x90, 0xe7, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr104, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 604, 0, 0, implicit $exec :: (store (s32) into %stack.74, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe8, 0x18, 0x12, 0x90, 0xe8, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xae, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr105, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 600, 0, 0, implicit $exec :: (store (s32) into %stack.75, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe9, 0x18, 0x12, 0x90, 0xe9, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xac, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr106, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 596, 0, 0, implicit $exec :: (store (s32) into %stack.76, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xea, 0x18, 0x12, 0x90, 0xea, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xaa, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr107, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 592, 0, 0, implicit $exec :: (store (s32) into %stack.77, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xeb, 0x18, 0x12, 0x90, 0xeb, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr108, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 588, 0, 0, implicit $exec :: (store (s32) into %stack.78, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xec, 0x18, 0x12, 0x90, 0xec, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr109, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 584, 0, 0, implicit $exec :: (store (s32) into %stack.79, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xed, 0x18, 0x12, 0x90, 0xed, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr110, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 580, 0, 0, implicit $exec :: (store (s32) into %stack.80, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xee, 0x18, 0x12, 0x90, 0xee, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr111, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 576, 0, 0, implicit $exec :: (store (s32) into %stack.81, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xef, 0x18, 0x12, 0x90, 0xef, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr112, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 572, 0, 0, implicit $exec :: (store (s32) into %stack.82, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf0, 0x18, 0x12, 0x90, 0xf0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x9e, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr113, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 568, 0, 0, implicit $exec :: (store (s32) into %stack.83, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf1, 0x18, 0x12, 0x90, 0xf1, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x9c, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr114, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 564, 0, 0, implicit $exec :: (store (s32) into %stack.84, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf2, 0x18, 0x12, 0x90, 0xf2, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x9a, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr115, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 560, 0, 0, implicit $exec :: (store (s32) into %stack.85, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf3, 0x18, 0x12, 0x90, 0xf3, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x98, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr116, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 556, 0, 0, implicit $exec :: (store (s32) into %stack.86, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf4, 0x18, 0x12, 0x90, 0xf4, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x96, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr117, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 552, 0, 0, implicit $exec :: (store (s32) into %stack.87, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf5, 0x18, 0x12, 0x90, 0xf5, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x94, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr118, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 548, 0, 0, implicit $exec :: (store (s32) into %stack.88, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf6, 0x18, 0x12, 0x90, 0xf6, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x92, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr119, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 544, 0, 0, implicit $exec :: (store (s32) into %stack.89, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf7, 0x18, 0x12, 0x90, 0xf7, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x90, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr120, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 540, 0, 0, implicit $exec :: (store (s32) into %stack.90, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf8, 0x18, 0x12, 0x90, 0xf8, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x8e, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr121, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 536, 0, 0, implicit $exec :: (store (s32) into %stack.91, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf9, 0x18, 0x12, 0x90, 0xf9, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x8c, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr122, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 532, 0, 0, implicit $exec :: (store (s32) into %stack.92, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfa, 0x18, 0x12, 0x90, 0xfa, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x8a, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr123, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 528, 0, 0, implicit $exec :: (store (s32) into %stack.93, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfb, 0x18, 0x12, 0x90, 0xfb, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x88, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr124, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 524, 0, 0, implicit $exec :: (store (s32) into %stack.94, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfc, 0x18, 0x12, 0x90, 0xfc, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x86, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr125, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 520, 0, 0, implicit $exec :: (store (s32) into %stack.95, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfd, 0x18, 0x12, 0x90, 0xfd, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x84, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr126, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 516, 0, 0, implicit $exec :: (store (s32) into %stack.96, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfe, 0x18, 0x12, 0x90, 0xfe, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x82, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr127, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 512, 0, 0, implicit $exec :: (store (s32) into %stack.97, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xff, 0x18, 0x12, 0x90, 0xff, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x80, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr128, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 508, 0, 0, implicit $exec :: (store (s32) into %stack.98, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x80, 0x19, 0x12, 0x90, 0x80, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xfe, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr129, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 504, 0, 0, implicit $exec :: (store (s32) into %stack.99, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x81, 0x19, 0x12, 0x90, 0x81, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xfc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr130, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 500, 0, 0, implicit $exec :: (store (s32) into %stack.100, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x82, 0x19, 0x12, 0x90, 0x82, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xfa, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr131, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 496, 0, 0, implicit $exec :: (store (s32) into %stack.101, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x83, 0x19, 0x12, 0x90, 0x83, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr132, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 492, 0, 0, implicit $exec :: (store (s32) into %stack.102, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x84, 0x19, 0x12, 0x90, 0x84, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr133, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 488, 0, 0, implicit $exec :: (store (s32) into %stack.103, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x85, 0x19, 0x12, 0x90, 0x85, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr134, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 484, 0, 0, implicit $exec :: (store (s32) into %stack.104, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x86, 0x19, 0x12, 0x90, 0x86, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr135, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 480, 0, 0, implicit $exec :: (store (s32) into %stack.105, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x87, 0x19, 0x12, 0x90, 0x87, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr136, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 476, 0, 0, implicit $exec :: (store (s32) into %stack.106, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x88, 0x19, 0x12, 0x90, 0x88, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xee, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr137, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 472, 0, 0, implicit $exec :: (store (s32) into %stack.107, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x89, 0x19, 0x12, 0x90, 0x89, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xec, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr138, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 468, 0, 0, implicit $exec :: (store (s32) into %stack.108, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8a, 0x19, 0x12, 0x90, 0x8a, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xea, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr139, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 464, 0, 0, implicit $exec :: (store (s32) into %stack.109, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8b, 0x19, 0x12, 0x90, 0x8b, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr140, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 460, 0, 0, implicit $exec :: (store (s32) into %stack.110, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8c, 0x19, 0x12, 0x90, 0x8c, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr141, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 456, 0, 0, implicit $exec :: (store (s32) into %stack.111, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8d, 0x19, 0x12, 0x90, 0x8d, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr142, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 452, 0, 0, implicit $exec :: (store (s32) into %stack.112, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8e, 0x19, 0x12, 0x90, 0x8e, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr143, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 448, 0, 0, implicit $exec :: (store (s32) into %stack.113, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8f, 0x19, 0x12, 0x90, 0x8f, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr144, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 444, 0, 0, implicit $exec :: (store (s32) into %stack.114, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x90, 0x19, 0x12, 0x90, 0x90, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xde, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr145, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 440, 0, 0, implicit $exec :: (store (s32) into %stack.115, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x91, 0x19, 0x12, 0x90, 0x91, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xdc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr146, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 436, 0, 0, implicit $exec :: (store (s32) into %stack.116, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x92, 0x19, 0x12, 0x90, 0x92, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xda, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr147, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 432, 0, 0, implicit $exec :: (store (s32) into %stack.117, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x93, 0x19, 0x12, 0x90, 0x93, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr148, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 428, 0, 0, implicit $exec :: (store (s32) into %stack.118, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x94, 0x19, 0x12, 0x90, 0x94, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr149, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 424, 0, 0, implicit $exec :: (store (s32) into %stack.119, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x95, 0x19, 0x12, 0x90, 0x95, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr150, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 420, 0, 0, implicit $exec :: (store (s32) into %stack.120, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x96, 0x19, 0x12, 0x90, 0x96, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr151, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 416, 0, 0, implicit $exec :: (store (s32) into %stack.121, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x97, 0x19, 0x12, 0x90, 0x97, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr152, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 412, 0, 0, implicit $exec :: (store (s32) into %stack.122, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x98, 0x19, 0x12, 0x90, 0x98, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xce, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr153, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 408, 0, 0, implicit $exec :: (store (s32) into %stack.123, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x99, 0x19, 0x12, 0x90, 0x99, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xcc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr154, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 404, 0, 0, implicit $exec :: (store (s32) into %stack.124, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9a, 0x19, 0x12, 0x90, 0x9a, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xca, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr155, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 400, 0, 0, implicit $exec :: (store (s32) into %stack.125, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9b, 0x19, 0x12, 0x90, 0x9b, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr156, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 396, 0, 0, implicit $exec :: (store (s32) into %stack.126, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9c, 0x19, 0x12, 0x90, 0x9c, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr157, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 392, 0, 0, implicit $exec :: (store (s32) into %stack.127, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9d, 0x19, 0x12, 0x90, 0x9d, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr158, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 388, 0, 0, implicit $exec :: (store (s32) into %stack.128, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9e, 0x19, 0x12, 0x90, 0x9e, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr159, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 384, 0, 0, implicit $exec :: (store (s32) into %stack.129, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9f, 0x19, 0x12, 0x90, 0x9f, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr160, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 380, 0, 0, implicit $exec :: (store (s32) into %stack.130, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa0, 0x19, 0x12, 0x90, 0xa0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xbe, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr161, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 376, 0, 0, implicit $exec :: (store (s32) into %stack.131, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa1, 0x19, 0x12, 0x90, 0xa1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xbc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr162, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 372, 0, 0, implicit $exec :: (store (s32) into %stack.132, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa2, 0x19, 0x12, 0x90, 0xa2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xba, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr163, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 368, 0, 0, implicit $exec :: (store (s32) into %stack.133, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa3, 0x19, 0x12, 0x90, 0xa3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr164, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 364, 0, 0, implicit $exec :: (store (s32) into %stack.134, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa4, 0x19, 0x12, 0x90, 0xa4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr165, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 360, 0, 0, implicit $exec :: (store (s32) into %stack.135, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa5, 0x19, 0x12, 0x90, 0xa5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr166, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 356, 0, 0, implicit $exec :: (store (s32) into %stack.136, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa6, 0x19, 0x12, 0x90, 0xa6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr167, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 352, 0, 0, implicit $exec :: (store (s32) into %stack.137, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa7, 0x19, 0x12, 0x90, 0xa7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr168, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 348, 0, 0, implicit $exec :: (store (s32) into %stack.138, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa8, 0x19, 0x12, 0x90, 0xa8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xae, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr169, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 344, 0, 0, implicit $exec :: (store (s32) into %stack.139, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa9, 0x19, 0x12, 0x90, 0xa9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xac, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr170, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 340, 0, 0, implicit $exec :: (store (s32) into %stack.140, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xaa, 0x19, 0x12, 0x90, 0xaa, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xaa, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr171, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 336, 0, 0, implicit $exec :: (store (s32) into %stack.141, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xab, 0x19, 0x12, 0x90, 0xab, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr172, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 332, 0, 0, implicit $exec :: (store (s32) into %stack.142, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xac, 0x19, 0x12, 0x90, 0xac, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr173, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 328, 0, 0, implicit $exec :: (store (s32) into %stack.143, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xad, 0x19, 0x12, 0x90, 0xad, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr174, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 324, 0, 0, implicit $exec :: (store (s32) into %stack.144, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xae, 0x19, 0x12, 0x90, 0xae, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr175, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 320, 0, 0, implicit $exec :: (store (s32) into %stack.145, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xaf, 0x19, 0x12, 0x90, 0xaf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr176, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 316, 0, 0, implicit $exec :: (store (s32) into %stack.146, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb0, 0x19, 0x12, 0x90, 0xb0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x9e, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr177, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 312, 0, 0, implicit $exec :: (store (s32) into %stack.147, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb1, 0x19, 0x12, 0x90, 0xb1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x9c, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr178, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 308, 0, 0, implicit $exec :: (store (s32) into %stack.148, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb2, 0x19, 0x12, 0x90, 0xb2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x9a, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr179, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 304, 0, 0, implicit $exec :: (store (s32) into %stack.149, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb3, 0x19, 0x12, 0x90, 0xb3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x98, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr180, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 300, 0, 0, implicit $exec :: (store (s32) into %stack.150, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb4, 0x19, 0x12, 0x90, 0xb4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x96, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr181, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 296, 0, 0, implicit $exec :: (store (s32) into %stack.151, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb5, 0x19, 0x12, 0x90, 0xb5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x94, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr182, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 292, 0, 0, implicit $exec :: (store (s32) into %stack.152, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb6, 0x19, 0x12, 0x90, 0xb6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x92, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr183, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 288, 0, 0, implicit $exec :: (store (s32) into %stack.153, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb7, 0x19, 0x12, 0x90, 0xb7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x90, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr184, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 284, 0, 0, implicit $exec :: (store (s32) into %stack.154, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb8, 0x19, 0x12, 0x90, 0xb8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x8e, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr185, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 280, 0, 0, implicit $exec :: (store (s32) into %stack.155, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb9, 0x19, 0x12, 0x90, 0xb9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x8c, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr186, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 276, 0, 0, implicit $exec :: (store (s32) into %stack.156, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xba, 0x19, 0x12, 0x90, 0xba, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x8a, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr187, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 272, 0, 0, implicit $exec :: (store (s32) into %stack.157, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbb, 0x19, 0x12, 0x90, 0xbb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x88, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr188, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 268, 0, 0, implicit $exec :: (store (s32) into %stack.158, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbc, 0x19, 0x12, 0x90, 0xbc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x86, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr189, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 264, 0, 0, implicit $exec :: (store (s32) into %stack.159, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbd, 0x19, 0x12, 0x90, 0xbd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x84, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr190, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 260, 0, 0, implicit $exec :: (store (s32) into %stack.160, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbe, 0x19, 0x12, 0x90, 0xbe, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x82, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr191, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 256, 0, 0, implicit $exec :: (store (s32) into %stack.161, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbf, 0x19, 0x12, 0x90, 0xbf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x80, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr192, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 252, 0, 0, implicit $exec :: (store (s32) into %stack.162, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc0, 0x19, 0x11, 0x90, 0xc0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x7e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr193, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 248, 0, 0, implicit $exec :: (store (s32) into %stack.163, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc1, 0x19, 0x11, 0x90, 0xc1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x7c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr194, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 244, 0, 0, implicit $exec :: (store (s32) into %stack.164, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc2, 0x19, 0x11, 0x90, 0xc2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x7a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr195, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 240, 0, 0, implicit $exec :: (store (s32) into %stack.165, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc3, 0x19, 0x11, 0x90, 0xc3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x78, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr196, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 236, 0, 0, implicit $exec :: (store (s32) into %stack.166, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc4, 0x19, 0x11, 0x90, 0xc4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x76, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr197, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 232, 0, 0, implicit $exec :: (store (s32) into %stack.167, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc5, 0x19, 0x11, 0x90, 0xc5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x74, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr198, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 228, 0, 0, implicit $exec :: (store (s32) into %stack.168, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc6, 0x19, 0x11, 0x90, 0xc6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x72, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr199, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 224, 0, 0, implicit $exec :: (store (s32) into %stack.169, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc7, 0x19, 0x11, 0x90, 0xc7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x70, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr200, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 220, 0, 0, implicit $exec :: (store (s32) into %stack.170, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc8, 0x19, 0x11, 0x90, 0xc8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x6e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr201, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 216, 0, 0, implicit $exec :: (store (s32) into %stack.171, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc9, 0x19, 0x11, 0x90, 0xc9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x6c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr202, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 212, 0, 0, implicit $exec :: (store (s32) into %stack.172, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xca, 0x19, 0x11, 0x90, 0xca, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x6a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr203, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 208, 0, 0, implicit $exec :: (store (s32) into %stack.173, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcb, 0x19, 0x11, 0x90, 0xcb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x68, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr204, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 204, 0, 0, implicit $exec :: (store (s32) into %stack.174, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcc, 0x19, 0x11, 0x90, 0xcc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x66, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr205, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 200, 0, 0, implicit $exec :: (store (s32) into %stack.175, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcd, 0x19, 0x11, 0x90, 0xcd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x64, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr206, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 196, 0, 0, implicit $exec :: (store (s32) into %stack.176, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xce, 0x19, 0x11, 0x90, 0xce, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x62, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr207, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 192, 0, 0, implicit $exec :: (store (s32) into %stack.177, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcf, 0x19, 0x11, 0x90, 0xcf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x60, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr208, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 188, 0, 0, implicit $exec :: (store (s32) into %stack.178, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd0, 0x19, 0x11, 0x90, 0xd0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x5e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr209, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 184, 0, 0, implicit $exec :: (store (s32) into %stack.179, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd1, 0x19, 0x11, 0x90, 0xd1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x5c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr210, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 180, 0, 0, implicit $exec :: (store (s32) into %stack.180, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd2, 0x19, 0x11, 0x90, 0xd2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x5a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr211, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 176, 0, 0, implicit $exec :: (store (s32) into %stack.181, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd3, 0x19, 0x11, 0x90, 0xd3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x58, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr212, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 172, 0, 0, implicit $exec :: (store (s32) into %stack.182, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd4, 0x19, 0x11, 0x90, 0xd4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x56, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr213, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 168, 0, 0, implicit $exec :: (store (s32) into %stack.183, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd5, 0x19, 0x11, 0x90, 0xd5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x54, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr214, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 164, 0, 0, implicit $exec :: (store (s32) into %stack.184, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd6, 0x19, 0x11, 0x90, 0xd6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x52, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr215, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 160, 0, 0, implicit $exec :: (store (s32) into %stack.185, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd7, 0x19, 0x11, 0x90, 0xd7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x50, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr216, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 156, 0, 0, implicit $exec :: (store (s32) into %stack.186, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd8, 0x19, 0x11, 0x90, 0xd8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x4e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr217, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 152, 0, 0, implicit $exec :: (store (s32) into %stack.187, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd9, 0x19, 0x11, 0x90, 0xd9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x4c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr218, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 148, 0, 0, implicit $exec :: (store (s32) into %stack.188, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xda, 0x19, 0x11, 0x90, 0xda, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x4a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr219, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 144, 0, 0, implicit $exec :: (store (s32) into %stack.189, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdb, 0x19, 0x11, 0x90, 0xdb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x48, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr220, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 140, 0, 0, implicit $exec :: (store (s32) into %stack.190, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdc, 0x19, 0x11, 0x90, 0xdc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x46, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr221, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 136, 0, 0, implicit $exec :: (store (s32) into %stack.191, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdd, 0x19, 0x11, 0x90, 0xdd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x44, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr222, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 132, 0, 0, implicit $exec :: (store (s32) into %stack.192, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xde, 0x19, 0x11, 0x90, 0xde, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x42, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr223, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 128, 0, 0, implicit $exec :: (store (s32) into %stack.193, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdf, 0x19, 0x11, 0x90, 0xdf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x40, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr224, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 124, 0, 0, implicit $exec :: (store (s32) into %stack.194, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe0, 0x19, 0x11, 0x90, 0xe0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x3e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr225, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 120, 0, 0, implicit $exec :: (store (s32) into %stack.195, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe1, 0x19, 0x11, 0x90, 0xe1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x3c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr226, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 116, 0, 0, implicit $exec :: (store (s32) into %stack.196, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe2, 0x19, 0x11, 0x90, 0xe2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x3a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr227, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 112, 0, 0, implicit $exec :: (store (s32) into %stack.197, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe3, 0x19, 0x11, 0x90, 0xe3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x38, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr228, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 108, 0, 0, implicit $exec :: (store (s32) into %stack.198, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe4, 0x19, 0x11, 0x90, 0xe4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x36, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr229, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 104, 0, 0, implicit $exec :: (store (s32) into %stack.199, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe5, 0x19, 0x11, 0x90, 0xe5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x34, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr230, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 100, 0, 0, implicit $exec :: (store (s32) into %stack.200, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe6, 0x19, 0x11, 0x90, 0xe6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x32, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr231, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 96, 0, 0, implicit $exec :: (store (s32) into %stack.201, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe7, 0x19, 0x11, 0x90, 0xe7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x30, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr232, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 92, 0, 0, implicit $exec :: (store (s32) into %stack.202, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe8, 0x19, 0x11, 0x90, 0xe8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x2e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr233, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 88, 0, 0, implicit $exec :: (store (s32) into %stack.203, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe9, 0x19, 0x11, 0x90, 0xe9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x2c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr234, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 84, 0, 0, implicit $exec :: (store (s32) into %stack.204, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xea, 0x19, 0x11, 0x90, 0xea, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x2a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr235, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 80, 0, 0, implicit $exec :: (store (s32) into %stack.205, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xeb, 0x19, 0x11, 0x90, 0xeb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x28, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr236, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 76, 0, 0, implicit $exec :: (store (s32) into %stack.206, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xec, 0x19, 0x11, 0x90, 0xec, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x26, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr237, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 72, 0, 0, implicit $exec :: (store (s32) into %stack.207, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xed, 0x19, 0x11, 0x90, 0xed, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x24, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr238, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 68, 0, 0, implicit $exec :: (store (s32) into %stack.208, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xee, 0x19, 0x11, 0x90, 0xee, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x22, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr239, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 64, 0, 0, implicit $exec :: (store (s32) into %stack.209, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xef, 0x19, 0x11, 0x90, 0xef, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x20, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr240, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 60, 0, 0, implicit $exec :: (store (s32) into %stack.210, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf0, 0x19, 0x11, 0x90, 0xf0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x1e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr241, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 56, 0, 0, implicit $exec :: (store (s32) into %stack.211, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf1, 0x19, 0x11, 0x90, 0xf1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x1c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr242, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 52, 0, 0, implicit $exec :: (store (s32) into %stack.212, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf2, 0x19, 0x11, 0x90, 0xf2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x1a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr243, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 48, 0, 0, implicit $exec :: (store (s32) into %stack.213, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf3, 0x19, 0x11, 0x90, 0xf3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x18, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr244, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 44, 0, 0, implicit $exec :: (store (s32) into %stack.214, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf4, 0x19, 0x11, 0x90, 0xf4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x16, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr245, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 40, 0, 0, implicit $exec :: (store (s32) into %stack.215, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf5, 0x19, 0x11, 0x90, 0xf5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x14, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr246, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 36, 0, 0, implicit $exec :: (store (s32) into %stack.216, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf6, 0x19, 0x11, 0x90, 0xf6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x12, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr247, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 32, 0, 0, implicit $exec :: (store (s32) into %stack.217, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf7, 0x19, 0x11, 0x90, 0xf7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x10, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr248, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 28, 0, 0, implicit $exec :: (store (s32) into %stack.218, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf8, 0x19, 0x11, 0x90, 0xf8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x0e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr249, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 24, 0, 0, implicit $exec :: (store (s32) into %stack.219, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf9, 0x19, 0x11, 0x90, 0xf9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x0c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr250, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 20, 0, 0, implicit $exec :: (store (s32) into %stack.220, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfa, 0x19, 0x11, 0x90, 0xfa, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x0a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr251, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 16, 0, 0, implicit $exec :: (store (s32) into %stack.221, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfb, 0x19, 0x11, 0x90, 0xfb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x08, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr252, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 12, 0, 0, implicit $exec :: (store (s32) into %stack.222, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfc, 0x19, 0x11, 0x90, 0xfc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x06, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr253, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.223, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfd, 0x19, 0x11, 0x90, 0xfd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x04, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr254, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.224, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfe, 0x19, 0x11, 0x90, 0xfe, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr255, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.225, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xff, 0x19, 0x10, 0x90, 0xff, 0x19, 0x16, 0xe9, 0x05, 0x00, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr40, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 704, 0, 0, implicit $exec :: (store (s32) into %stack.226, addrspace 5) ; GFX90A-NEXT: $vgpr40 = V_MOV_B32_e32 8904, implicit $exec @@ -2555,6 +5675,294 @@ ; GFX908-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX908-FLATSCR-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX908-FLATSCR-NEXT: {{ $}} + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr32_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr33_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr34_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr35_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr36_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr37_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr38_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr39_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr40_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr41_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr42_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr43_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr44_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr45_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr46_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr47_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr48_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr49_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr50_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr51_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr52_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr53_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr54_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr55_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr56_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr57_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr58_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr59_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr60_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr61_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr62_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr63_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr64_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr65_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr66_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr67_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr68_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr69_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr70_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr71_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr72_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr73_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr74_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr75_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr76_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr77_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr78_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr79_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr80_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr81_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr82_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr83_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr84_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr85_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr86_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr87_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr88_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr89_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr90_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr91_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr92_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr93_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr94_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr95_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr96_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr97_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr98_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr99_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr100_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr101_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr102_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr103_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr104_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr105_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr106_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr107_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr108_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr109_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr110_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr111_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr112_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr113_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr114_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr115_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr116_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr117_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr118_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr119_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr120_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr121_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr122_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr123_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr124_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr125_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr126_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr127_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr128_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr129_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr130_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr131_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr132_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr133_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr134_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr135_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr136_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr137_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr138_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr139_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr140_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr141_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr142_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr143_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr144_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr145_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr146_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr147_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr148_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr149_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr150_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr151_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr152_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr153_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr154_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr155_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr156_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr157_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr158_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr159_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr160_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr161_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr162_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr163_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr164_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr165_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr166_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr167_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr168_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr169_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr170_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr171_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr172_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr173_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr174_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr175_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr176_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr177_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr178_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr179_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr180_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr181_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr182_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr183_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr184_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr185_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr186_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr187_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr188_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr189_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr190_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr191_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr192_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr193_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr194_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr195_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr196_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr197_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr198_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr199_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr200_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr201_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr202_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr203_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr204_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr205_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr206_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr207_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr208_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr209_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr210_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr211_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr212_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr213_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr214_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr215_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr216_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr217_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr218_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr219_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr220_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr221_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr222_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr223_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr224_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr225_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr226_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr227_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr228_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr229_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr230_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr231_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr232_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr233_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr234_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr235_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr236_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr237_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr238_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr239_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr240_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr241_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr242_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr243_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr244_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr245_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr246_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr247_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr248_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr249_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr250_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr251_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr252_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr253_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr254_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr255_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX908-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX908-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr1, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.2, addrspace 5) ; GFX908-FLATSCR-NEXT: $vgpr1 = V_MOV_B32_e32 $sgpr32, implicit $exec @@ -2582,230 +5990,566 @@ ; GFX90A-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX90A-FLATSCR-NEXT: liveins: $agpr32, $agpr33, $agpr34, $agpr35, $agpr36, $agpr37, $agpr38, $agpr39, $agpr40, $agpr41, $agpr42, $agpr43, $agpr44, $agpr45, $agpr46, $agpr47, $agpr48, $agpr49, $agpr50, $agpr51, $agpr52, $agpr53, $agpr54, $agpr55, $agpr56, $agpr57, $agpr58, $agpr59, $agpr60, $agpr61, $agpr62, $agpr63, $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15, $vgpr16, $vgpr17, $vgpr18, $vgpr19, $vgpr20, $vgpr21, $vgpr22, $vgpr23, $vgpr24, $vgpr25, $vgpr26, $vgpr27, $vgpr28, $vgpr29, $vgpr30, $vgpr31, $vgpr32, $vgpr33, $vgpr34, $vgpr35, $vgpr36, $vgpr37, $vgpr38, $vgpr39, $vgpr48, $vgpr49, $vgpr50, $vgpr51, $vgpr52, $vgpr53, $vgpr54, $vgpr55, $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX90A-FLATSCR-NEXT: {{ $}} + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr32_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr33_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr34_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr35_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr36_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr37_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr38_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr39_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr48_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr49_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr50_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr51_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr52_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr53_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr54_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr55_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr32, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr32_lo16, $vgpr0_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr33, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr33_lo16, $vgpr1_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 killed $agpr34, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr34_lo16, $vgpr2_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr3 = V_ACCVGPR_READ_B32_e64 killed $agpr35, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr35_lo16, $vgpr3_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 killed $agpr36, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr36_lo16, $vgpr4_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr5 = V_ACCVGPR_READ_B32_e64 killed $agpr37, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr37_lo16, $vgpr5_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr6 = V_ACCVGPR_READ_B32_e64 killed $agpr38, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr38_lo16, $vgpr6_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr7 = V_ACCVGPR_READ_B32_e64 killed $agpr39, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr39_lo16, $vgpr7_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr8 = V_ACCVGPR_READ_B32_e64 killed $agpr40, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr40_lo16, $vgpr8_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr9 = V_ACCVGPR_READ_B32_e64 killed $agpr41, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr41_lo16, $vgpr9_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr10 = V_ACCVGPR_READ_B32_e64 killed $agpr42, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr42_lo16, $vgpr10_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr11 = V_ACCVGPR_READ_B32_e64 killed $agpr43, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr43_lo16, $vgpr11_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr12 = V_ACCVGPR_READ_B32_e64 killed $agpr44, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr44_lo16, $vgpr12_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr13 = V_ACCVGPR_READ_B32_e64 killed $agpr45, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr45_lo16, $vgpr13_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr14 = V_ACCVGPR_READ_B32_e64 killed $agpr46, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr46_lo16, $vgpr14_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr15 = V_ACCVGPR_READ_B32_e64 killed $agpr47, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr47_lo16, $vgpr15_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr16 = V_ACCVGPR_READ_B32_e64 killed $agpr48, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr48_lo16, $vgpr16_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr17 = V_ACCVGPR_READ_B32_e64 killed $agpr49, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr49_lo16, $vgpr17_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr18 = V_ACCVGPR_READ_B32_e64 killed $agpr50, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr50_lo16, $vgpr18_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr19 = V_ACCVGPR_READ_B32_e64 killed $agpr51, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr51_lo16, $vgpr19_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr20 = V_ACCVGPR_READ_B32_e64 killed $agpr52, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr52_lo16, $vgpr20_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr21 = V_ACCVGPR_READ_B32_e64 killed $agpr53, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr53_lo16, $vgpr21_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr22 = V_ACCVGPR_READ_B32_e64 killed $agpr54, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr54_lo16, $vgpr22_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr23 = V_ACCVGPR_READ_B32_e64 killed $agpr55, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr55_lo16, $vgpr23_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr24 = V_ACCVGPR_READ_B32_e64 killed $agpr56, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr56_lo16, $vgpr24_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr25 = V_ACCVGPR_READ_B32_e64 killed $agpr57, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr57_lo16, $vgpr25_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr26 = V_ACCVGPR_READ_B32_e64 killed $agpr58, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr58_lo16, $vgpr26_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr27 = V_ACCVGPR_READ_B32_e64 killed $agpr59, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr59_lo16, $vgpr27_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr28 = V_ACCVGPR_READ_B32_e64 killed $agpr60, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr60_lo16, $vgpr28_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr29 = V_ACCVGPR_READ_B32_e64 killed $agpr61, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr61_lo16, $vgpr29_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr30 = V_ACCVGPR_READ_B32_e64 killed $agpr62, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr62_lo16, $vgpr30_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr31 = V_ACCVGPR_READ_B32_e64 killed $agpr63, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr63_lo16, $vgpr31_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr32 = V_ACCVGPR_READ_B32_e64 killed $agpr64, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr64_lo16, $vgpr32_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr33 = V_ACCVGPR_READ_B32_e64 killed $agpr65, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr65_lo16, $vgpr33_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr34 = V_ACCVGPR_READ_B32_e64 killed $agpr66, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr66_lo16, $vgpr34_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr35 = V_ACCVGPR_READ_B32_e64 killed $agpr67, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr67_lo16, $vgpr35_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr36 = V_ACCVGPR_READ_B32_e64 killed $agpr68, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr68_lo16, $vgpr36_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr37 = V_ACCVGPR_READ_B32_e64 killed $agpr69, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr69_lo16, $vgpr37_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr38 = V_ACCVGPR_READ_B32_e64 killed $agpr70, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr70_lo16, $vgpr38_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr39 = V_ACCVGPR_READ_B32_e64 killed $agpr71, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr71_lo16, $vgpr39_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr48 = V_ACCVGPR_READ_B32_e64 killed $agpr72, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr72_lo16, $vgpr48_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr49 = V_ACCVGPR_READ_B32_e64 killed $agpr73, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr73_lo16, $vgpr49_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr50 = V_ACCVGPR_READ_B32_e64 killed $agpr74, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr74_lo16, $vgpr50_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr51 = V_ACCVGPR_READ_B32_e64 killed $agpr75, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr75_lo16, $vgpr51_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr52 = V_ACCVGPR_READ_B32_e64 killed $agpr76, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr76_lo16, $vgpr52_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr53 = V_ACCVGPR_READ_B32_e64 killed $agpr77, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr77_lo16, $vgpr53_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr54 = V_ACCVGPR_READ_B32_e64 killed $agpr78, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr78_lo16, $vgpr54_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr55 = V_ACCVGPR_READ_B32_e64 killed $agpr79, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr79_lo16, $vgpr55_lo16 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr80, $sgpr32, 700, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.50, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd0, 0x18, 0x12, 0x90, 0xd0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xde, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr81, $sgpr32, 696, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.51, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd1, 0x18, 0x12, 0x90, 0xd1, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xdc, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr82, $sgpr32, 692, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.52, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd2, 0x18, 0x12, 0x90, 0xd2, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xda, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr83, $sgpr32, 688, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.53, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd3, 0x18, 0x12, 0x90, 0xd3, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr84, $sgpr32, 684, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.54, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd4, 0x18, 0x12, 0x90, 0xd4, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr85, $sgpr32, 680, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.55, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd5, 0x18, 0x12, 0x90, 0xd5, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr86, $sgpr32, 676, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.56, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd6, 0x18, 0x12, 0x90, 0xd6, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr87, $sgpr32, 672, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.57, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd7, 0x18, 0x12, 0x90, 0xd7, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr88, $sgpr32, 668, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.58, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd8, 0x18, 0x12, 0x90, 0xd8, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xce, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr89, $sgpr32, 664, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.59, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd9, 0x18, 0x12, 0x90, 0xd9, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xcc, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr90, $sgpr32, 660, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.60, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xda, 0x18, 0x12, 0x90, 0xda, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xca, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr91, $sgpr32, 656, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.61, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdb, 0x18, 0x12, 0x90, 0xdb, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr92, $sgpr32, 652, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.62, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdc, 0x18, 0x12, 0x90, 0xdc, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr93, $sgpr32, 648, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.63, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdd, 0x18, 0x12, 0x90, 0xdd, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr94, $sgpr32, 644, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.64, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xde, 0x18, 0x12, 0x90, 0xde, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr95, $sgpr32, 640, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.65, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdf, 0x18, 0x12, 0x90, 0xdf, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr96, $sgpr32, 636, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.66, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe0, 0x18, 0x12, 0x90, 0xe0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xbe, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr97, $sgpr32, 632, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.67, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe1, 0x18, 0x12, 0x90, 0xe1, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xbc, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr98, $sgpr32, 628, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.68, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe2, 0x18, 0x12, 0x90, 0xe2, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xba, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr99, $sgpr32, 624, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.69, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe3, 0x18, 0x12, 0x90, 0xe3, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr100, $sgpr32, 620, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.70, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe4, 0x18, 0x12, 0x90, 0xe4, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr101, $sgpr32, 616, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.71, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe5, 0x18, 0x12, 0x90, 0xe5, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr102, $sgpr32, 612, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.72, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe6, 0x18, 0x12, 0x90, 0xe6, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr103, $sgpr32, 608, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.73, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe7, 0x18, 0x12, 0x90, 0xe7, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr104, $sgpr32, 604, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.74, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe8, 0x18, 0x12, 0x90, 0xe8, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xae, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr105, $sgpr32, 600, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.75, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe9, 0x18, 0x12, 0x90, 0xe9, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xac, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr106, $sgpr32, 596, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.76, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xea, 0x18, 0x12, 0x90, 0xea, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xaa, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr107, $sgpr32, 592, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.77, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xeb, 0x18, 0x12, 0x90, 0xeb, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr108, $sgpr32, 588, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.78, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xec, 0x18, 0x12, 0x90, 0xec, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr109, $sgpr32, 584, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.79, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xed, 0x18, 0x12, 0x90, 0xed, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr110, $sgpr32, 580, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.80, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xee, 0x18, 0x12, 0x90, 0xee, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr111, $sgpr32, 576, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.81, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xef, 0x18, 0x12, 0x90, 0xef, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr112, $sgpr32, 572, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.82, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf0, 0x18, 0x12, 0x90, 0xf0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x9e, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr113, $sgpr32, 568, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.83, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf1, 0x18, 0x12, 0x90, 0xf1, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x9c, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr114, $sgpr32, 564, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.84, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf2, 0x18, 0x12, 0x90, 0xf2, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x9a, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr115, $sgpr32, 560, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.85, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf3, 0x18, 0x12, 0x90, 0xf3, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x98, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr116, $sgpr32, 556, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.86, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf4, 0x18, 0x12, 0x90, 0xf4, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x96, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr117, $sgpr32, 552, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.87, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf5, 0x18, 0x12, 0x90, 0xf5, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x94, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr118, $sgpr32, 548, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.88, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf6, 0x18, 0x12, 0x90, 0xf6, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x92, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr119, $sgpr32, 544, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.89, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf7, 0x18, 0x12, 0x90, 0xf7, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x90, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr120, $sgpr32, 540, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.90, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf8, 0x18, 0x12, 0x90, 0xf8, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x8e, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr121, $sgpr32, 536, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.91, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf9, 0x18, 0x12, 0x90, 0xf9, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x8c, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr122, $sgpr32, 532, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.92, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfa, 0x18, 0x12, 0x90, 0xfa, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x8a, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr123, $sgpr32, 528, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.93, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfb, 0x18, 0x12, 0x90, 0xfb, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x88, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr124, $sgpr32, 524, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.94, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfc, 0x18, 0x12, 0x90, 0xfc, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x86, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr125, $sgpr32, 520, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.95, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfd, 0x18, 0x12, 0x90, 0xfd, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x84, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr126, $sgpr32, 516, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.96, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfe, 0x18, 0x12, 0x90, 0xfe, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x82, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr127, $sgpr32, 512, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.97, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xff, 0x18, 0x12, 0x90, 0xff, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x80, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr128, $sgpr32, 508, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.98, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x80, 0x19, 0x12, 0x90, 0x80, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xfe, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr129, $sgpr32, 504, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.99, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x81, 0x19, 0x12, 0x90, 0x81, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xfc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr130, $sgpr32, 500, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.100, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x82, 0x19, 0x12, 0x90, 0x82, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xfa, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr131, $sgpr32, 496, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.101, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x83, 0x19, 0x12, 0x90, 0x83, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr132, $sgpr32, 492, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.102, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x84, 0x19, 0x12, 0x90, 0x84, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr133, $sgpr32, 488, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.103, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x85, 0x19, 0x12, 0x90, 0x85, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr134, $sgpr32, 484, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.104, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x86, 0x19, 0x12, 0x90, 0x86, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr135, $sgpr32, 480, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.105, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x87, 0x19, 0x12, 0x90, 0x87, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr136, $sgpr32, 476, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.106, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x88, 0x19, 0x12, 0x90, 0x88, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xee, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr137, $sgpr32, 472, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.107, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x89, 0x19, 0x12, 0x90, 0x89, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xec, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr138, $sgpr32, 468, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.108, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8a, 0x19, 0x12, 0x90, 0x8a, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xea, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr139, $sgpr32, 464, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.109, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8b, 0x19, 0x12, 0x90, 0x8b, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr140, $sgpr32, 460, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.110, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8c, 0x19, 0x12, 0x90, 0x8c, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr141, $sgpr32, 456, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.111, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8d, 0x19, 0x12, 0x90, 0x8d, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr142, $sgpr32, 452, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.112, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8e, 0x19, 0x12, 0x90, 0x8e, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr143, $sgpr32, 448, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.113, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8f, 0x19, 0x12, 0x90, 0x8f, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr144, $sgpr32, 444, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.114, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x90, 0x19, 0x12, 0x90, 0x90, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xde, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr145, $sgpr32, 440, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.115, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x91, 0x19, 0x12, 0x90, 0x91, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xdc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr146, $sgpr32, 436, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.116, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x92, 0x19, 0x12, 0x90, 0x92, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xda, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr147, $sgpr32, 432, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.117, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x93, 0x19, 0x12, 0x90, 0x93, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr148, $sgpr32, 428, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.118, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x94, 0x19, 0x12, 0x90, 0x94, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr149, $sgpr32, 424, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.119, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x95, 0x19, 0x12, 0x90, 0x95, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr150, $sgpr32, 420, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.120, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x96, 0x19, 0x12, 0x90, 0x96, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr151, $sgpr32, 416, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.121, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x97, 0x19, 0x12, 0x90, 0x97, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr152, $sgpr32, 412, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.122, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x98, 0x19, 0x12, 0x90, 0x98, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xce, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr153, $sgpr32, 408, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.123, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x99, 0x19, 0x12, 0x90, 0x99, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xcc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr154, $sgpr32, 404, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.124, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9a, 0x19, 0x12, 0x90, 0x9a, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xca, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr155, $sgpr32, 400, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.125, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9b, 0x19, 0x12, 0x90, 0x9b, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr156, $sgpr32, 396, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.126, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9c, 0x19, 0x12, 0x90, 0x9c, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr157, $sgpr32, 392, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.127, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9d, 0x19, 0x12, 0x90, 0x9d, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr158, $sgpr32, 388, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.128, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9e, 0x19, 0x12, 0x90, 0x9e, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr159, $sgpr32, 384, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.129, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9f, 0x19, 0x12, 0x90, 0x9f, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr160, $sgpr32, 380, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.130, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa0, 0x19, 0x12, 0x90, 0xa0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xbe, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr161, $sgpr32, 376, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.131, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa1, 0x19, 0x12, 0x90, 0xa1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xbc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr162, $sgpr32, 372, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.132, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa2, 0x19, 0x12, 0x90, 0xa2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xba, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr163, $sgpr32, 368, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.133, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa3, 0x19, 0x12, 0x90, 0xa3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr164, $sgpr32, 364, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.134, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa4, 0x19, 0x12, 0x90, 0xa4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr165, $sgpr32, 360, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.135, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa5, 0x19, 0x12, 0x90, 0xa5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr166, $sgpr32, 356, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.136, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa6, 0x19, 0x12, 0x90, 0xa6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr167, $sgpr32, 352, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.137, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa7, 0x19, 0x12, 0x90, 0xa7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr168, $sgpr32, 348, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.138, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa8, 0x19, 0x12, 0x90, 0xa8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xae, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr169, $sgpr32, 344, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.139, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa9, 0x19, 0x12, 0x90, 0xa9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xac, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr170, $sgpr32, 340, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.140, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xaa, 0x19, 0x12, 0x90, 0xaa, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xaa, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr171, $sgpr32, 336, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.141, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xab, 0x19, 0x12, 0x90, 0xab, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr172, $sgpr32, 332, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.142, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xac, 0x19, 0x12, 0x90, 0xac, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr173, $sgpr32, 328, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.143, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xad, 0x19, 0x12, 0x90, 0xad, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr174, $sgpr32, 324, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.144, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xae, 0x19, 0x12, 0x90, 0xae, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr175, $sgpr32, 320, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.145, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xaf, 0x19, 0x12, 0x90, 0xaf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr176, $sgpr32, 316, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.146, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb0, 0x19, 0x12, 0x90, 0xb0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x9e, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr177, $sgpr32, 312, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.147, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb1, 0x19, 0x12, 0x90, 0xb1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x9c, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr178, $sgpr32, 308, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.148, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb2, 0x19, 0x12, 0x90, 0xb2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x9a, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr179, $sgpr32, 304, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.149, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb3, 0x19, 0x12, 0x90, 0xb3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x98, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr180, $sgpr32, 300, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.150, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb4, 0x19, 0x12, 0x90, 0xb4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x96, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr181, $sgpr32, 296, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.151, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb5, 0x19, 0x12, 0x90, 0xb5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x94, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr182, $sgpr32, 292, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.152, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb6, 0x19, 0x12, 0x90, 0xb6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x92, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr183, $sgpr32, 288, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.153, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb7, 0x19, 0x12, 0x90, 0xb7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x90, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr184, $sgpr32, 284, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.154, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb8, 0x19, 0x12, 0x90, 0xb8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x8e, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr185, $sgpr32, 280, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.155, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb9, 0x19, 0x12, 0x90, 0xb9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x8c, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr186, $sgpr32, 276, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.156, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xba, 0x19, 0x12, 0x90, 0xba, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x8a, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr187, $sgpr32, 272, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.157, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbb, 0x19, 0x12, 0x90, 0xbb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x88, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr188, $sgpr32, 268, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.158, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbc, 0x19, 0x12, 0x90, 0xbc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x86, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr189, $sgpr32, 264, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.159, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbd, 0x19, 0x12, 0x90, 0xbd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x84, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr190, $sgpr32, 260, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.160, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbe, 0x19, 0x12, 0x90, 0xbe, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x82, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr191, $sgpr32, 256, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.161, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbf, 0x19, 0x12, 0x90, 0xbf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x80, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr192, $sgpr32, 252, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.162, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc0, 0x19, 0x11, 0x90, 0xc0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x7e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr193, $sgpr32, 248, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.163, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc1, 0x19, 0x11, 0x90, 0xc1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x7c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr194, $sgpr32, 244, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.164, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc2, 0x19, 0x11, 0x90, 0xc2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x7a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr195, $sgpr32, 240, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.165, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc3, 0x19, 0x11, 0x90, 0xc3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x78, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr196, $sgpr32, 236, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.166, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc4, 0x19, 0x11, 0x90, 0xc4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x76, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr197, $sgpr32, 232, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.167, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc5, 0x19, 0x11, 0x90, 0xc5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x74, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr198, $sgpr32, 228, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.168, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc6, 0x19, 0x11, 0x90, 0xc6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x72, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr199, $sgpr32, 224, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.169, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc7, 0x19, 0x11, 0x90, 0xc7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x70, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr200, $sgpr32, 220, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.170, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc8, 0x19, 0x11, 0x90, 0xc8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x6e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr201, $sgpr32, 216, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.171, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc9, 0x19, 0x11, 0x90, 0xc9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x6c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr202, $sgpr32, 212, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.172, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xca, 0x19, 0x11, 0x90, 0xca, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x6a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr203, $sgpr32, 208, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.173, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcb, 0x19, 0x11, 0x90, 0xcb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x68, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr204, $sgpr32, 204, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.174, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcc, 0x19, 0x11, 0x90, 0xcc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x66, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr205, $sgpr32, 200, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.175, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcd, 0x19, 0x11, 0x90, 0xcd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x64, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr206, $sgpr32, 196, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.176, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xce, 0x19, 0x11, 0x90, 0xce, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x62, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr207, $sgpr32, 192, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.177, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcf, 0x19, 0x11, 0x90, 0xcf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x60, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr208, $sgpr32, 188, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.178, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd0, 0x19, 0x11, 0x90, 0xd0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x5e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr209, $sgpr32, 184, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.179, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd1, 0x19, 0x11, 0x90, 0xd1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x5c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr210, $sgpr32, 180, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.180, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd2, 0x19, 0x11, 0x90, 0xd2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x5a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr211, $sgpr32, 176, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.181, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd3, 0x19, 0x11, 0x90, 0xd3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x58, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr212, $sgpr32, 172, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.182, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd4, 0x19, 0x11, 0x90, 0xd4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x56, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr213, $sgpr32, 168, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.183, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd5, 0x19, 0x11, 0x90, 0xd5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x54, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr214, $sgpr32, 164, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.184, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd6, 0x19, 0x11, 0x90, 0xd6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x52, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr215, $sgpr32, 160, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.185, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd7, 0x19, 0x11, 0x90, 0xd7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x50, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr216, $sgpr32, 156, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.186, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd8, 0x19, 0x11, 0x90, 0xd8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x4e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr217, $sgpr32, 152, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.187, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd9, 0x19, 0x11, 0x90, 0xd9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x4c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr218, $sgpr32, 148, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.188, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xda, 0x19, 0x11, 0x90, 0xda, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x4a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr219, $sgpr32, 144, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.189, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdb, 0x19, 0x11, 0x90, 0xdb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x48, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr220, $sgpr32, 140, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.190, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdc, 0x19, 0x11, 0x90, 0xdc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x46, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr221, $sgpr32, 136, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.191, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdd, 0x19, 0x11, 0x90, 0xdd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x44, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr222, $sgpr32, 132, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.192, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xde, 0x19, 0x11, 0x90, 0xde, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x42, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr223, $sgpr32, 128, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.193, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdf, 0x19, 0x11, 0x90, 0xdf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x40, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr224, $sgpr32, 124, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.194, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe0, 0x19, 0x11, 0x90, 0xe0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x3e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr225, $sgpr32, 120, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.195, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe1, 0x19, 0x11, 0x90, 0xe1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x3c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr226, $sgpr32, 116, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.196, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe2, 0x19, 0x11, 0x90, 0xe2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x3a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr227, $sgpr32, 112, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.197, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe3, 0x19, 0x11, 0x90, 0xe3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x38, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr228, $sgpr32, 108, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.198, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe4, 0x19, 0x11, 0x90, 0xe4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x36, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr229, $sgpr32, 104, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.199, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe5, 0x19, 0x11, 0x90, 0xe5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x34, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr230, $sgpr32, 100, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.200, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe6, 0x19, 0x11, 0x90, 0xe6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x32, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr231, $sgpr32, 96, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.201, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe7, 0x19, 0x11, 0x90, 0xe7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x30, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr232, $sgpr32, 92, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.202, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe8, 0x19, 0x11, 0x90, 0xe8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x2e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr233, $sgpr32, 88, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.203, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe9, 0x19, 0x11, 0x90, 0xe9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x2c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr234, $sgpr32, 84, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.204, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xea, 0x19, 0x11, 0x90, 0xea, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x2a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr235, $sgpr32, 80, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.205, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xeb, 0x19, 0x11, 0x90, 0xeb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x28, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr236, $sgpr32, 76, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.206, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xec, 0x19, 0x11, 0x90, 0xec, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x26, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr237, $sgpr32, 72, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.207, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xed, 0x19, 0x11, 0x90, 0xed, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x24, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr238, $sgpr32, 68, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.208, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xee, 0x19, 0x11, 0x90, 0xee, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x22, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr239, $sgpr32, 64, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.209, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xef, 0x19, 0x11, 0x90, 0xef, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x20, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr240, $sgpr32, 60, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.210, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf0, 0x19, 0x11, 0x90, 0xf0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x1e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr241, $sgpr32, 56, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.211, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf1, 0x19, 0x11, 0x90, 0xf1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x1c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr242, $sgpr32, 52, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.212, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf2, 0x19, 0x11, 0x90, 0xf2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x1a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr243, $sgpr32, 48, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.213, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf3, 0x19, 0x11, 0x90, 0xf3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x18, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr244, $sgpr32, 44, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.214, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf4, 0x19, 0x11, 0x90, 0xf4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x16, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr245, $sgpr32, 40, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.215, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf5, 0x19, 0x11, 0x90, 0xf5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x14, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr246, $sgpr32, 36, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.216, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf6, 0x19, 0x11, 0x90, 0xf6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x12, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr247, $sgpr32, 32, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.217, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf7, 0x19, 0x11, 0x90, 0xf7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x10, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr248, $sgpr32, 28, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.218, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf8, 0x19, 0x11, 0x90, 0xf8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x0e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr249, $sgpr32, 24, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.219, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf9, 0x19, 0x11, 0x90, 0xf9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x0c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr250, $sgpr32, 20, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.220, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfa, 0x19, 0x11, 0x90, 0xfa, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x0a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr251, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.221, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfb, 0x19, 0x11, 0x90, 0xfb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x08, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr252, $sgpr32, 12, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.222, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfc, 0x19, 0x11, 0x90, 0xfc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x06, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr253, $sgpr32, 8, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.223, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfd, 0x19, 0x11, 0x90, 0xfd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x04, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr254, $sgpr32, 4, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.224, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfe, 0x19, 0x11, 0x90, 0xfe, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr255, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.225, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xff, 0x19, 0x10, 0x90, 0xff, 0x19, 0x16, 0xe9, 0x05, 0x00, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr40, $sgpr32, 704, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.226, addrspace 5) ; GFX90A-FLATSCR-NEXT: $vgpr40 = V_MOV_B32_e32 $sgpr32, implicit $exec @@ -3082,6 +6826,294 @@ ; GFX908-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX908-NEXT: liveins: $agpr0, $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX908-NEXT: {{ $}} + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr32_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr33_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr34_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr35_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr36_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr37_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr38_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr39_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr40_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr41_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr42_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr43_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr44_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr45_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr46_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr47_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr48_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr49_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr50_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr51_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr52_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr53_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr54_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr55_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr56_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr57_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr58_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr59_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr60_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr61_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr62_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr63_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr64_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr65_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr66_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr67_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr68_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr69_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr70_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr71_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr72_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr73_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr74_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr75_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr76_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr77_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr78_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr79_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr80_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr81_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr82_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr83_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr84_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr85_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr86_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr87_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr88_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr89_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr90_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr91_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr92_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr93_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr94_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr95_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr96_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr97_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr98_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr99_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr100_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr101_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr102_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr103_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr104_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr105_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr106_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr107_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr108_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr109_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr110_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr111_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr112_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr113_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr114_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr115_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr116_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr117_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr118_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr119_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr120_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr121_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr122_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr123_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr124_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr125_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr126_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr127_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr128_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr129_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr130_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr131_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr132_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr133_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr134_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr135_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr136_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr137_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr138_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr139_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr140_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr141_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr142_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr143_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr144_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr145_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr146_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr147_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr148_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr149_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr150_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr151_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr152_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr153_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr154_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr155_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr156_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr157_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr158_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr159_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr160_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr161_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr162_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr163_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr164_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr165_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr166_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr167_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr168_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr169_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr170_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr171_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr172_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr173_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr174_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr175_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr176_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr177_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr178_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr179_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr180_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr181_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr182_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr183_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr184_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr185_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr186_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr187_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr188_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr189_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr190_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr191_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr192_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr193_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr194_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr195_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr196_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr197_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr198_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr199_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr200_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr201_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr202_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr203_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr204_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr205_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr206_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr207_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr208_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr209_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr210_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr211_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr212_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr213_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr214_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr215_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr216_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr217_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr218_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr219_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr220_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr221_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr222_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr223_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr224_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr225_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr226_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr227_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr228_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr229_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr230_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr231_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr232_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr233_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr234_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr235_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr236_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr237_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr238_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr239_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr240_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr241_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr242_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr243_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr244_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr245_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr246_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr247_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr248_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr249_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr250_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr251_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr252_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr253_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr254_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr255_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX908-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX908-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.2, addrspace 5) ; GFX908-NEXT: $vgpr1 = V_MOV_B32_e32 8200, implicit $exec @@ -3104,230 +7136,566 @@ ; GFX90A-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX90A-NEXT: liveins: $agpr0, $agpr32, $agpr33, $agpr34, $agpr35, $agpr36, $agpr37, $agpr38, $agpr39, $agpr40, $agpr41, $agpr42, $agpr43, $agpr44, $agpr45, $agpr46, $agpr47, $agpr48, $agpr49, $agpr50, $agpr51, $agpr52, $agpr53, $agpr54, $agpr55, $agpr56, $agpr57, $agpr58, $agpr59, $agpr60, $agpr61, $agpr62, $agpr63, $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15, $vgpr16, $vgpr17, $vgpr18, $vgpr19, $vgpr20, $vgpr21, $vgpr22, $vgpr23, $vgpr24, $vgpr25, $vgpr26, $vgpr27, $vgpr28, $vgpr29, $vgpr30, $vgpr31, $vgpr32, $vgpr33, $vgpr34, $vgpr35, $vgpr36, $vgpr37, $vgpr38, $vgpr39, $vgpr48, $vgpr49, $vgpr50, $vgpr51, $vgpr52, $vgpr53, $vgpr54, $vgpr55, $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX90A-NEXT: {{ $}} + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr32_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr33_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr34_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr35_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr36_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr37_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr38_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr39_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr48_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr49_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr50_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr51_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr52_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr53_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr54_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr55_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX90A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr32, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr32_lo16, $vgpr0_lo16 ; GFX90A-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr33, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr33_lo16, $vgpr1_lo16 ; GFX90A-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 killed $agpr34, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr34_lo16, $vgpr2_lo16 ; GFX90A-NEXT: $vgpr3 = V_ACCVGPR_READ_B32_e64 killed $agpr35, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr35_lo16, $vgpr3_lo16 ; GFX90A-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 killed $agpr36, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr36_lo16, $vgpr4_lo16 ; GFX90A-NEXT: $vgpr5 = V_ACCVGPR_READ_B32_e64 killed $agpr37, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr37_lo16, $vgpr5_lo16 ; GFX90A-NEXT: $vgpr6 = V_ACCVGPR_READ_B32_e64 killed $agpr38, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr38_lo16, $vgpr6_lo16 ; GFX90A-NEXT: $vgpr7 = V_ACCVGPR_READ_B32_e64 killed $agpr39, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr39_lo16, $vgpr7_lo16 ; GFX90A-NEXT: $vgpr8 = V_ACCVGPR_READ_B32_e64 killed $agpr40, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr40_lo16, $vgpr8_lo16 ; GFX90A-NEXT: $vgpr9 = V_ACCVGPR_READ_B32_e64 killed $agpr41, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr41_lo16, $vgpr9_lo16 ; GFX90A-NEXT: $vgpr10 = V_ACCVGPR_READ_B32_e64 killed $agpr42, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr42_lo16, $vgpr10_lo16 ; GFX90A-NEXT: $vgpr11 = V_ACCVGPR_READ_B32_e64 killed $agpr43, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr43_lo16, $vgpr11_lo16 ; GFX90A-NEXT: $vgpr12 = V_ACCVGPR_READ_B32_e64 killed $agpr44, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr44_lo16, $vgpr12_lo16 ; GFX90A-NEXT: $vgpr13 = V_ACCVGPR_READ_B32_e64 killed $agpr45, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr45_lo16, $vgpr13_lo16 ; GFX90A-NEXT: $vgpr14 = V_ACCVGPR_READ_B32_e64 killed $agpr46, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr46_lo16, $vgpr14_lo16 ; GFX90A-NEXT: $vgpr15 = V_ACCVGPR_READ_B32_e64 killed $agpr47, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr47_lo16, $vgpr15_lo16 ; GFX90A-NEXT: $vgpr16 = V_ACCVGPR_READ_B32_e64 killed $agpr48, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr48_lo16, $vgpr16_lo16 ; GFX90A-NEXT: $vgpr17 = V_ACCVGPR_READ_B32_e64 killed $agpr49, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr49_lo16, $vgpr17_lo16 ; GFX90A-NEXT: $vgpr18 = V_ACCVGPR_READ_B32_e64 killed $agpr50, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr50_lo16, $vgpr18_lo16 ; GFX90A-NEXT: $vgpr19 = V_ACCVGPR_READ_B32_e64 killed $agpr51, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr51_lo16, $vgpr19_lo16 ; GFX90A-NEXT: $vgpr20 = V_ACCVGPR_READ_B32_e64 killed $agpr52, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr52_lo16, $vgpr20_lo16 ; GFX90A-NEXT: $vgpr21 = V_ACCVGPR_READ_B32_e64 killed $agpr53, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr53_lo16, $vgpr21_lo16 ; GFX90A-NEXT: $vgpr22 = V_ACCVGPR_READ_B32_e64 killed $agpr54, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr54_lo16, $vgpr22_lo16 ; GFX90A-NEXT: $vgpr23 = V_ACCVGPR_READ_B32_e64 killed $agpr55, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr55_lo16, $vgpr23_lo16 ; GFX90A-NEXT: $vgpr24 = V_ACCVGPR_READ_B32_e64 killed $agpr56, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr56_lo16, $vgpr24_lo16 ; GFX90A-NEXT: $vgpr25 = V_ACCVGPR_READ_B32_e64 killed $agpr57, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr57_lo16, $vgpr25_lo16 ; GFX90A-NEXT: $vgpr26 = V_ACCVGPR_READ_B32_e64 killed $agpr58, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr58_lo16, $vgpr26_lo16 ; GFX90A-NEXT: $vgpr27 = V_ACCVGPR_READ_B32_e64 killed $agpr59, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr59_lo16, $vgpr27_lo16 ; GFX90A-NEXT: $vgpr28 = V_ACCVGPR_READ_B32_e64 killed $agpr60, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr60_lo16, $vgpr28_lo16 ; GFX90A-NEXT: $vgpr29 = V_ACCVGPR_READ_B32_e64 killed $agpr61, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr61_lo16, $vgpr29_lo16 ; GFX90A-NEXT: $vgpr30 = V_ACCVGPR_READ_B32_e64 killed $agpr62, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr62_lo16, $vgpr30_lo16 ; GFX90A-NEXT: $vgpr31 = V_ACCVGPR_READ_B32_e64 killed $agpr63, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr63_lo16, $vgpr31_lo16 ; GFX90A-NEXT: $vgpr32 = V_ACCVGPR_READ_B32_e64 killed $agpr64, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr64_lo16, $vgpr32_lo16 ; GFX90A-NEXT: $vgpr33 = V_ACCVGPR_READ_B32_e64 killed $agpr65, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr65_lo16, $vgpr33_lo16 ; GFX90A-NEXT: $vgpr34 = V_ACCVGPR_READ_B32_e64 killed $agpr66, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr66_lo16, $vgpr34_lo16 ; GFX90A-NEXT: $vgpr35 = V_ACCVGPR_READ_B32_e64 killed $agpr67, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr67_lo16, $vgpr35_lo16 ; GFX90A-NEXT: $vgpr36 = V_ACCVGPR_READ_B32_e64 killed $agpr68, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr68_lo16, $vgpr36_lo16 ; GFX90A-NEXT: $vgpr37 = V_ACCVGPR_READ_B32_e64 killed $agpr69, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr69_lo16, $vgpr37_lo16 ; GFX90A-NEXT: $vgpr38 = V_ACCVGPR_READ_B32_e64 killed $agpr70, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr70_lo16, $vgpr38_lo16 ; GFX90A-NEXT: $vgpr39 = V_ACCVGPR_READ_B32_e64 killed $agpr71, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr71_lo16, $vgpr39_lo16 ; GFX90A-NEXT: $vgpr48 = V_ACCVGPR_READ_B32_e64 killed $agpr72, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr72_lo16, $vgpr48_lo16 ; GFX90A-NEXT: $vgpr49 = V_ACCVGPR_READ_B32_e64 killed $agpr73, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr73_lo16, $vgpr49_lo16 ; GFX90A-NEXT: $vgpr50 = V_ACCVGPR_READ_B32_e64 killed $agpr74, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr74_lo16, $vgpr50_lo16 ; GFX90A-NEXT: $vgpr51 = V_ACCVGPR_READ_B32_e64 killed $agpr75, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr75_lo16, $vgpr51_lo16 ; GFX90A-NEXT: $vgpr52 = V_ACCVGPR_READ_B32_e64 killed $agpr76, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr76_lo16, $vgpr52_lo16 ; GFX90A-NEXT: $vgpr53 = V_ACCVGPR_READ_B32_e64 killed $agpr77, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr77_lo16, $vgpr53_lo16 ; GFX90A-NEXT: $vgpr54 = V_ACCVGPR_READ_B32_e64 killed $agpr78, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr78_lo16, $vgpr54_lo16 ; GFX90A-NEXT: $vgpr55 = V_ACCVGPR_READ_B32_e64 killed $agpr79, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr79_lo16, $vgpr55_lo16 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr80, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 700, 0, 0, implicit $exec :: (store (s32) into %stack.50, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd0, 0x18, 0x12, 0x90, 0xd0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xde, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr81, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 696, 0, 0, implicit $exec :: (store (s32) into %stack.51, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd1, 0x18, 0x12, 0x90, 0xd1, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xdc, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr82, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 692, 0, 0, implicit $exec :: (store (s32) into %stack.52, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd2, 0x18, 0x12, 0x90, 0xd2, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xda, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr83, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 688, 0, 0, implicit $exec :: (store (s32) into %stack.53, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd3, 0x18, 0x12, 0x90, 0xd3, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr84, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 684, 0, 0, implicit $exec :: (store (s32) into %stack.54, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd4, 0x18, 0x12, 0x90, 0xd4, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr85, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 680, 0, 0, implicit $exec :: (store (s32) into %stack.55, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd5, 0x18, 0x12, 0x90, 0xd5, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr86, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 676, 0, 0, implicit $exec :: (store (s32) into %stack.56, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd6, 0x18, 0x12, 0x90, 0xd6, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr87, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 672, 0, 0, implicit $exec :: (store (s32) into %stack.57, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd7, 0x18, 0x12, 0x90, 0xd7, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr88, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 668, 0, 0, implicit $exec :: (store (s32) into %stack.58, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd8, 0x18, 0x12, 0x90, 0xd8, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xce, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr89, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 664, 0, 0, implicit $exec :: (store (s32) into %stack.59, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd9, 0x18, 0x12, 0x90, 0xd9, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xcc, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr90, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 660, 0, 0, implicit $exec :: (store (s32) into %stack.60, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xda, 0x18, 0x12, 0x90, 0xda, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xca, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr91, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 656, 0, 0, implicit $exec :: (store (s32) into %stack.61, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdb, 0x18, 0x12, 0x90, 0xdb, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr92, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 652, 0, 0, implicit $exec :: (store (s32) into %stack.62, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdc, 0x18, 0x12, 0x90, 0xdc, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr93, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 648, 0, 0, implicit $exec :: (store (s32) into %stack.63, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdd, 0x18, 0x12, 0x90, 0xdd, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr94, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 644, 0, 0, implicit $exec :: (store (s32) into %stack.64, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xde, 0x18, 0x12, 0x90, 0xde, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr95, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 640, 0, 0, implicit $exec :: (store (s32) into %stack.65, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdf, 0x18, 0x12, 0x90, 0xdf, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr96, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 636, 0, 0, implicit $exec :: (store (s32) into %stack.66, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe0, 0x18, 0x12, 0x90, 0xe0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xbe, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr97, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 632, 0, 0, implicit $exec :: (store (s32) into %stack.67, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe1, 0x18, 0x12, 0x90, 0xe1, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xbc, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr98, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 628, 0, 0, implicit $exec :: (store (s32) into %stack.68, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe2, 0x18, 0x12, 0x90, 0xe2, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xba, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr99, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 624, 0, 0, implicit $exec :: (store (s32) into %stack.69, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe3, 0x18, 0x12, 0x90, 0xe3, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr100, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 620, 0, 0, implicit $exec :: (store (s32) into %stack.70, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe4, 0x18, 0x12, 0x90, 0xe4, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr101, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 616, 0, 0, implicit $exec :: (store (s32) into %stack.71, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe5, 0x18, 0x12, 0x90, 0xe5, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr102, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 612, 0, 0, implicit $exec :: (store (s32) into %stack.72, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe6, 0x18, 0x12, 0x90, 0xe6, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr103, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 608, 0, 0, implicit $exec :: (store (s32) into %stack.73, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe7, 0x18, 0x12, 0x90, 0xe7, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr104, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 604, 0, 0, implicit $exec :: (store (s32) into %stack.74, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe8, 0x18, 0x12, 0x90, 0xe8, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xae, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr105, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 600, 0, 0, implicit $exec :: (store (s32) into %stack.75, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe9, 0x18, 0x12, 0x90, 0xe9, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xac, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr106, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 596, 0, 0, implicit $exec :: (store (s32) into %stack.76, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xea, 0x18, 0x12, 0x90, 0xea, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xaa, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr107, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 592, 0, 0, implicit $exec :: (store (s32) into %stack.77, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xeb, 0x18, 0x12, 0x90, 0xeb, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr108, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 588, 0, 0, implicit $exec :: (store (s32) into %stack.78, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xec, 0x18, 0x12, 0x90, 0xec, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr109, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 584, 0, 0, implicit $exec :: (store (s32) into %stack.79, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xed, 0x18, 0x12, 0x90, 0xed, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr110, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 580, 0, 0, implicit $exec :: (store (s32) into %stack.80, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xee, 0x18, 0x12, 0x90, 0xee, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr111, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 576, 0, 0, implicit $exec :: (store (s32) into %stack.81, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xef, 0x18, 0x12, 0x90, 0xef, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr112, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 572, 0, 0, implicit $exec :: (store (s32) into %stack.82, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf0, 0x18, 0x12, 0x90, 0xf0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x9e, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr113, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 568, 0, 0, implicit $exec :: (store (s32) into %stack.83, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf1, 0x18, 0x12, 0x90, 0xf1, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x9c, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr114, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 564, 0, 0, implicit $exec :: (store (s32) into %stack.84, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf2, 0x18, 0x12, 0x90, 0xf2, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x9a, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr115, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 560, 0, 0, implicit $exec :: (store (s32) into %stack.85, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf3, 0x18, 0x12, 0x90, 0xf3, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x98, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr116, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 556, 0, 0, implicit $exec :: (store (s32) into %stack.86, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf4, 0x18, 0x12, 0x90, 0xf4, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x96, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr117, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 552, 0, 0, implicit $exec :: (store (s32) into %stack.87, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf5, 0x18, 0x12, 0x90, 0xf5, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x94, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr118, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 548, 0, 0, implicit $exec :: (store (s32) into %stack.88, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf6, 0x18, 0x12, 0x90, 0xf6, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x92, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr119, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 544, 0, 0, implicit $exec :: (store (s32) into %stack.89, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf7, 0x18, 0x12, 0x90, 0xf7, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x90, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr120, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 540, 0, 0, implicit $exec :: (store (s32) into %stack.90, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf8, 0x18, 0x12, 0x90, 0xf8, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x8e, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr121, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 536, 0, 0, implicit $exec :: (store (s32) into %stack.91, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf9, 0x18, 0x12, 0x90, 0xf9, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x8c, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr122, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 532, 0, 0, implicit $exec :: (store (s32) into %stack.92, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfa, 0x18, 0x12, 0x90, 0xfa, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x8a, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr123, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 528, 0, 0, implicit $exec :: (store (s32) into %stack.93, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfb, 0x18, 0x12, 0x90, 0xfb, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x88, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr124, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 524, 0, 0, implicit $exec :: (store (s32) into %stack.94, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfc, 0x18, 0x12, 0x90, 0xfc, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x86, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr125, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 520, 0, 0, implicit $exec :: (store (s32) into %stack.95, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfd, 0x18, 0x12, 0x90, 0xfd, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x84, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr126, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 516, 0, 0, implicit $exec :: (store (s32) into %stack.96, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfe, 0x18, 0x12, 0x90, 0xfe, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x82, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr127, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 512, 0, 0, implicit $exec :: (store (s32) into %stack.97, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xff, 0x18, 0x12, 0x90, 0xff, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x80, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr128, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 508, 0, 0, implicit $exec :: (store (s32) into %stack.98, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x80, 0x19, 0x12, 0x90, 0x80, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xfe, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr129, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 504, 0, 0, implicit $exec :: (store (s32) into %stack.99, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x81, 0x19, 0x12, 0x90, 0x81, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xfc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr130, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 500, 0, 0, implicit $exec :: (store (s32) into %stack.100, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x82, 0x19, 0x12, 0x90, 0x82, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xfa, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr131, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 496, 0, 0, implicit $exec :: (store (s32) into %stack.101, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x83, 0x19, 0x12, 0x90, 0x83, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr132, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 492, 0, 0, implicit $exec :: (store (s32) into %stack.102, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x84, 0x19, 0x12, 0x90, 0x84, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr133, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 488, 0, 0, implicit $exec :: (store (s32) into %stack.103, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x85, 0x19, 0x12, 0x90, 0x85, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr134, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 484, 0, 0, implicit $exec :: (store (s32) into %stack.104, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x86, 0x19, 0x12, 0x90, 0x86, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr135, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 480, 0, 0, implicit $exec :: (store (s32) into %stack.105, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x87, 0x19, 0x12, 0x90, 0x87, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr136, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 476, 0, 0, implicit $exec :: (store (s32) into %stack.106, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x88, 0x19, 0x12, 0x90, 0x88, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xee, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr137, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 472, 0, 0, implicit $exec :: (store (s32) into %stack.107, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x89, 0x19, 0x12, 0x90, 0x89, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xec, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr138, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 468, 0, 0, implicit $exec :: (store (s32) into %stack.108, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8a, 0x19, 0x12, 0x90, 0x8a, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xea, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr139, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 464, 0, 0, implicit $exec :: (store (s32) into %stack.109, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8b, 0x19, 0x12, 0x90, 0x8b, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr140, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 460, 0, 0, implicit $exec :: (store (s32) into %stack.110, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8c, 0x19, 0x12, 0x90, 0x8c, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr141, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 456, 0, 0, implicit $exec :: (store (s32) into %stack.111, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8d, 0x19, 0x12, 0x90, 0x8d, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr142, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 452, 0, 0, implicit $exec :: (store (s32) into %stack.112, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8e, 0x19, 0x12, 0x90, 0x8e, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr143, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 448, 0, 0, implicit $exec :: (store (s32) into %stack.113, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8f, 0x19, 0x12, 0x90, 0x8f, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr144, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 444, 0, 0, implicit $exec :: (store (s32) into %stack.114, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x90, 0x19, 0x12, 0x90, 0x90, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xde, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr145, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 440, 0, 0, implicit $exec :: (store (s32) into %stack.115, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x91, 0x19, 0x12, 0x90, 0x91, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xdc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr146, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 436, 0, 0, implicit $exec :: (store (s32) into %stack.116, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x92, 0x19, 0x12, 0x90, 0x92, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xda, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr147, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 432, 0, 0, implicit $exec :: (store (s32) into %stack.117, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x93, 0x19, 0x12, 0x90, 0x93, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr148, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 428, 0, 0, implicit $exec :: (store (s32) into %stack.118, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x94, 0x19, 0x12, 0x90, 0x94, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr149, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 424, 0, 0, implicit $exec :: (store (s32) into %stack.119, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x95, 0x19, 0x12, 0x90, 0x95, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr150, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 420, 0, 0, implicit $exec :: (store (s32) into %stack.120, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x96, 0x19, 0x12, 0x90, 0x96, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr151, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 416, 0, 0, implicit $exec :: (store (s32) into %stack.121, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x97, 0x19, 0x12, 0x90, 0x97, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr152, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 412, 0, 0, implicit $exec :: (store (s32) into %stack.122, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x98, 0x19, 0x12, 0x90, 0x98, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xce, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr153, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 408, 0, 0, implicit $exec :: (store (s32) into %stack.123, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x99, 0x19, 0x12, 0x90, 0x99, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xcc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr154, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 404, 0, 0, implicit $exec :: (store (s32) into %stack.124, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9a, 0x19, 0x12, 0x90, 0x9a, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xca, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr155, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 400, 0, 0, implicit $exec :: (store (s32) into %stack.125, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9b, 0x19, 0x12, 0x90, 0x9b, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr156, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 396, 0, 0, implicit $exec :: (store (s32) into %stack.126, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9c, 0x19, 0x12, 0x90, 0x9c, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr157, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 392, 0, 0, implicit $exec :: (store (s32) into %stack.127, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9d, 0x19, 0x12, 0x90, 0x9d, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr158, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 388, 0, 0, implicit $exec :: (store (s32) into %stack.128, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9e, 0x19, 0x12, 0x90, 0x9e, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr159, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 384, 0, 0, implicit $exec :: (store (s32) into %stack.129, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9f, 0x19, 0x12, 0x90, 0x9f, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr160, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 380, 0, 0, implicit $exec :: (store (s32) into %stack.130, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa0, 0x19, 0x12, 0x90, 0xa0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xbe, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr161, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 376, 0, 0, implicit $exec :: (store (s32) into %stack.131, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa1, 0x19, 0x12, 0x90, 0xa1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xbc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr162, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 372, 0, 0, implicit $exec :: (store (s32) into %stack.132, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa2, 0x19, 0x12, 0x90, 0xa2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xba, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr163, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 368, 0, 0, implicit $exec :: (store (s32) into %stack.133, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa3, 0x19, 0x12, 0x90, 0xa3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr164, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 364, 0, 0, implicit $exec :: (store (s32) into %stack.134, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa4, 0x19, 0x12, 0x90, 0xa4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr165, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 360, 0, 0, implicit $exec :: (store (s32) into %stack.135, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa5, 0x19, 0x12, 0x90, 0xa5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr166, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 356, 0, 0, implicit $exec :: (store (s32) into %stack.136, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa6, 0x19, 0x12, 0x90, 0xa6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr167, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 352, 0, 0, implicit $exec :: (store (s32) into %stack.137, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa7, 0x19, 0x12, 0x90, 0xa7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr168, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 348, 0, 0, implicit $exec :: (store (s32) into %stack.138, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa8, 0x19, 0x12, 0x90, 0xa8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xae, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr169, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 344, 0, 0, implicit $exec :: (store (s32) into %stack.139, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa9, 0x19, 0x12, 0x90, 0xa9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xac, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr170, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 340, 0, 0, implicit $exec :: (store (s32) into %stack.140, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xaa, 0x19, 0x12, 0x90, 0xaa, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xaa, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr171, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 336, 0, 0, implicit $exec :: (store (s32) into %stack.141, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xab, 0x19, 0x12, 0x90, 0xab, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr172, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 332, 0, 0, implicit $exec :: (store (s32) into %stack.142, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xac, 0x19, 0x12, 0x90, 0xac, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr173, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 328, 0, 0, implicit $exec :: (store (s32) into %stack.143, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xad, 0x19, 0x12, 0x90, 0xad, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr174, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 324, 0, 0, implicit $exec :: (store (s32) into %stack.144, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xae, 0x19, 0x12, 0x90, 0xae, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr175, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 320, 0, 0, implicit $exec :: (store (s32) into %stack.145, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xaf, 0x19, 0x12, 0x90, 0xaf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr176, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 316, 0, 0, implicit $exec :: (store (s32) into %stack.146, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb0, 0x19, 0x12, 0x90, 0xb0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x9e, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr177, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 312, 0, 0, implicit $exec :: (store (s32) into %stack.147, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb1, 0x19, 0x12, 0x90, 0xb1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x9c, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr178, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 308, 0, 0, implicit $exec :: (store (s32) into %stack.148, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb2, 0x19, 0x12, 0x90, 0xb2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x9a, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr179, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 304, 0, 0, implicit $exec :: (store (s32) into %stack.149, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb3, 0x19, 0x12, 0x90, 0xb3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x98, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr180, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 300, 0, 0, implicit $exec :: (store (s32) into %stack.150, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb4, 0x19, 0x12, 0x90, 0xb4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x96, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr181, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 296, 0, 0, implicit $exec :: (store (s32) into %stack.151, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb5, 0x19, 0x12, 0x90, 0xb5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x94, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr182, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 292, 0, 0, implicit $exec :: (store (s32) into %stack.152, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb6, 0x19, 0x12, 0x90, 0xb6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x92, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr183, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 288, 0, 0, implicit $exec :: (store (s32) into %stack.153, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb7, 0x19, 0x12, 0x90, 0xb7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x90, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr184, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 284, 0, 0, implicit $exec :: (store (s32) into %stack.154, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb8, 0x19, 0x12, 0x90, 0xb8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x8e, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr185, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 280, 0, 0, implicit $exec :: (store (s32) into %stack.155, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb9, 0x19, 0x12, 0x90, 0xb9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x8c, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr186, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 276, 0, 0, implicit $exec :: (store (s32) into %stack.156, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xba, 0x19, 0x12, 0x90, 0xba, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x8a, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr187, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 272, 0, 0, implicit $exec :: (store (s32) into %stack.157, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbb, 0x19, 0x12, 0x90, 0xbb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x88, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr188, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 268, 0, 0, implicit $exec :: (store (s32) into %stack.158, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbc, 0x19, 0x12, 0x90, 0xbc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x86, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr189, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 264, 0, 0, implicit $exec :: (store (s32) into %stack.159, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbd, 0x19, 0x12, 0x90, 0xbd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x84, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr190, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 260, 0, 0, implicit $exec :: (store (s32) into %stack.160, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbe, 0x19, 0x12, 0x90, 0xbe, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x82, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr191, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 256, 0, 0, implicit $exec :: (store (s32) into %stack.161, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbf, 0x19, 0x12, 0x90, 0xbf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x80, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr192, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 252, 0, 0, implicit $exec :: (store (s32) into %stack.162, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc0, 0x19, 0x11, 0x90, 0xc0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x7e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr193, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 248, 0, 0, implicit $exec :: (store (s32) into %stack.163, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc1, 0x19, 0x11, 0x90, 0xc1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x7c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr194, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 244, 0, 0, implicit $exec :: (store (s32) into %stack.164, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc2, 0x19, 0x11, 0x90, 0xc2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x7a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr195, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 240, 0, 0, implicit $exec :: (store (s32) into %stack.165, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc3, 0x19, 0x11, 0x90, 0xc3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x78, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr196, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 236, 0, 0, implicit $exec :: (store (s32) into %stack.166, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc4, 0x19, 0x11, 0x90, 0xc4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x76, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr197, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 232, 0, 0, implicit $exec :: (store (s32) into %stack.167, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc5, 0x19, 0x11, 0x90, 0xc5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x74, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr198, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 228, 0, 0, implicit $exec :: (store (s32) into %stack.168, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc6, 0x19, 0x11, 0x90, 0xc6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x72, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr199, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 224, 0, 0, implicit $exec :: (store (s32) into %stack.169, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc7, 0x19, 0x11, 0x90, 0xc7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x70, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr200, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 220, 0, 0, implicit $exec :: (store (s32) into %stack.170, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc8, 0x19, 0x11, 0x90, 0xc8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x6e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr201, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 216, 0, 0, implicit $exec :: (store (s32) into %stack.171, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc9, 0x19, 0x11, 0x90, 0xc9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x6c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr202, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 212, 0, 0, implicit $exec :: (store (s32) into %stack.172, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xca, 0x19, 0x11, 0x90, 0xca, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x6a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr203, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 208, 0, 0, implicit $exec :: (store (s32) into %stack.173, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcb, 0x19, 0x11, 0x90, 0xcb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x68, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr204, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 204, 0, 0, implicit $exec :: (store (s32) into %stack.174, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcc, 0x19, 0x11, 0x90, 0xcc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x66, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr205, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 200, 0, 0, implicit $exec :: (store (s32) into %stack.175, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcd, 0x19, 0x11, 0x90, 0xcd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x64, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr206, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 196, 0, 0, implicit $exec :: (store (s32) into %stack.176, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xce, 0x19, 0x11, 0x90, 0xce, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x62, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr207, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 192, 0, 0, implicit $exec :: (store (s32) into %stack.177, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcf, 0x19, 0x11, 0x90, 0xcf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x60, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr208, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 188, 0, 0, implicit $exec :: (store (s32) into %stack.178, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd0, 0x19, 0x11, 0x90, 0xd0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x5e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr209, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 184, 0, 0, implicit $exec :: (store (s32) into %stack.179, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd1, 0x19, 0x11, 0x90, 0xd1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x5c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr210, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 180, 0, 0, implicit $exec :: (store (s32) into %stack.180, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd2, 0x19, 0x11, 0x90, 0xd2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x5a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr211, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 176, 0, 0, implicit $exec :: (store (s32) into %stack.181, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd3, 0x19, 0x11, 0x90, 0xd3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x58, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr212, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 172, 0, 0, implicit $exec :: (store (s32) into %stack.182, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd4, 0x19, 0x11, 0x90, 0xd4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x56, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr213, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 168, 0, 0, implicit $exec :: (store (s32) into %stack.183, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd5, 0x19, 0x11, 0x90, 0xd5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x54, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr214, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 164, 0, 0, implicit $exec :: (store (s32) into %stack.184, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd6, 0x19, 0x11, 0x90, 0xd6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x52, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr215, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 160, 0, 0, implicit $exec :: (store (s32) into %stack.185, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd7, 0x19, 0x11, 0x90, 0xd7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x50, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr216, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 156, 0, 0, implicit $exec :: (store (s32) into %stack.186, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd8, 0x19, 0x11, 0x90, 0xd8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x4e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr217, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 152, 0, 0, implicit $exec :: (store (s32) into %stack.187, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd9, 0x19, 0x11, 0x90, 0xd9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x4c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr218, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 148, 0, 0, implicit $exec :: (store (s32) into %stack.188, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xda, 0x19, 0x11, 0x90, 0xda, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x4a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr219, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 144, 0, 0, implicit $exec :: (store (s32) into %stack.189, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdb, 0x19, 0x11, 0x90, 0xdb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x48, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr220, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 140, 0, 0, implicit $exec :: (store (s32) into %stack.190, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdc, 0x19, 0x11, 0x90, 0xdc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x46, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr221, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 136, 0, 0, implicit $exec :: (store (s32) into %stack.191, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdd, 0x19, 0x11, 0x90, 0xdd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x44, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr222, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 132, 0, 0, implicit $exec :: (store (s32) into %stack.192, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xde, 0x19, 0x11, 0x90, 0xde, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x42, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr223, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 128, 0, 0, implicit $exec :: (store (s32) into %stack.193, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdf, 0x19, 0x11, 0x90, 0xdf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x40, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr224, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 124, 0, 0, implicit $exec :: (store (s32) into %stack.194, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe0, 0x19, 0x11, 0x90, 0xe0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x3e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr225, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 120, 0, 0, implicit $exec :: (store (s32) into %stack.195, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe1, 0x19, 0x11, 0x90, 0xe1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x3c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr226, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 116, 0, 0, implicit $exec :: (store (s32) into %stack.196, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe2, 0x19, 0x11, 0x90, 0xe2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x3a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr227, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 112, 0, 0, implicit $exec :: (store (s32) into %stack.197, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe3, 0x19, 0x11, 0x90, 0xe3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x38, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr228, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 108, 0, 0, implicit $exec :: (store (s32) into %stack.198, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe4, 0x19, 0x11, 0x90, 0xe4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x36, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr229, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 104, 0, 0, implicit $exec :: (store (s32) into %stack.199, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe5, 0x19, 0x11, 0x90, 0xe5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x34, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr230, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 100, 0, 0, implicit $exec :: (store (s32) into %stack.200, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe6, 0x19, 0x11, 0x90, 0xe6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x32, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr231, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 96, 0, 0, implicit $exec :: (store (s32) into %stack.201, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe7, 0x19, 0x11, 0x90, 0xe7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x30, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr232, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 92, 0, 0, implicit $exec :: (store (s32) into %stack.202, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe8, 0x19, 0x11, 0x90, 0xe8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x2e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr233, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 88, 0, 0, implicit $exec :: (store (s32) into %stack.203, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe9, 0x19, 0x11, 0x90, 0xe9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x2c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr234, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 84, 0, 0, implicit $exec :: (store (s32) into %stack.204, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xea, 0x19, 0x11, 0x90, 0xea, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x2a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr235, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 80, 0, 0, implicit $exec :: (store (s32) into %stack.205, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xeb, 0x19, 0x11, 0x90, 0xeb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x28, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr236, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 76, 0, 0, implicit $exec :: (store (s32) into %stack.206, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xec, 0x19, 0x11, 0x90, 0xec, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x26, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr237, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 72, 0, 0, implicit $exec :: (store (s32) into %stack.207, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xed, 0x19, 0x11, 0x90, 0xed, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x24, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr238, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 68, 0, 0, implicit $exec :: (store (s32) into %stack.208, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xee, 0x19, 0x11, 0x90, 0xee, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x22, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr239, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 64, 0, 0, implicit $exec :: (store (s32) into %stack.209, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xef, 0x19, 0x11, 0x90, 0xef, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x20, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr240, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 60, 0, 0, implicit $exec :: (store (s32) into %stack.210, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf0, 0x19, 0x11, 0x90, 0xf0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x1e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr241, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 56, 0, 0, implicit $exec :: (store (s32) into %stack.211, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf1, 0x19, 0x11, 0x90, 0xf1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x1c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr242, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 52, 0, 0, implicit $exec :: (store (s32) into %stack.212, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf2, 0x19, 0x11, 0x90, 0xf2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x1a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr243, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 48, 0, 0, implicit $exec :: (store (s32) into %stack.213, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf3, 0x19, 0x11, 0x90, 0xf3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x18, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr244, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 44, 0, 0, implicit $exec :: (store (s32) into %stack.214, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf4, 0x19, 0x11, 0x90, 0xf4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x16, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr245, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 40, 0, 0, implicit $exec :: (store (s32) into %stack.215, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf5, 0x19, 0x11, 0x90, 0xf5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x14, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr246, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 36, 0, 0, implicit $exec :: (store (s32) into %stack.216, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf6, 0x19, 0x11, 0x90, 0xf6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x12, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr247, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 32, 0, 0, implicit $exec :: (store (s32) into %stack.217, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf7, 0x19, 0x11, 0x90, 0xf7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x10, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr248, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 28, 0, 0, implicit $exec :: (store (s32) into %stack.218, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf8, 0x19, 0x11, 0x90, 0xf8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x0e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr249, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 24, 0, 0, implicit $exec :: (store (s32) into %stack.219, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf9, 0x19, 0x11, 0x90, 0xf9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x0c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr250, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 20, 0, 0, implicit $exec :: (store (s32) into %stack.220, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfa, 0x19, 0x11, 0x90, 0xfa, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x0a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr251, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 16, 0, 0, implicit $exec :: (store (s32) into %stack.221, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfb, 0x19, 0x11, 0x90, 0xfb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x08, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr252, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 12, 0, 0, implicit $exec :: (store (s32) into %stack.222, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfc, 0x19, 0x11, 0x90, 0xfc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x06, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr253, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.223, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfd, 0x19, 0x11, 0x90, 0xfd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x04, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr254, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.224, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfe, 0x19, 0x11, 0x90, 0xfe, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr255, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.225, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xff, 0x19, 0x10, 0x90, 0xff, 0x19, 0x16, 0xe9, 0x05, 0x00, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr40, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 704, 0, 0, implicit $exec :: (store (s32) into %stack.226, addrspace 5) ; GFX90A-NEXT: $vgpr40 = V_MOV_B32_e32 8904, implicit $exec @@ -3574,6 +7942,294 @@ ; GFX908-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX908-FLATSCR-NEXT: liveins: $agpr0, $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX908-FLATSCR-NEXT: {{ $}} + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr32_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr33_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr34_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr35_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr36_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr37_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr38_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr39_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr40_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr41_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr42_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr43_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr44_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr45_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr46_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr47_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr48_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr49_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr50_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr51_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr52_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr53_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr54_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr55_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr56_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr57_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr58_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr59_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr60_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr61_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr62_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr63_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr64_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr65_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr66_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr67_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr68_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr69_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr70_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr71_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr72_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr73_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr74_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr75_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr76_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr77_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr78_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr79_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr80_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr81_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr82_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr83_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr84_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr85_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr86_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr87_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr88_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr89_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr90_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr91_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr92_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr93_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr94_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr95_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr96_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr97_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr98_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr99_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr100_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr101_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr102_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr103_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr104_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr105_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr106_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr107_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr108_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr109_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr110_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr111_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr112_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr113_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr114_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr115_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr116_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr117_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr118_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr119_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr120_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr121_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr122_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr123_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr124_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr125_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr126_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr127_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr128_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr129_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr130_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr131_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr132_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr133_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr134_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr135_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr136_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr137_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr138_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr139_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr140_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr141_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr142_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr143_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr144_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr145_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr146_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr147_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr148_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr149_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr150_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr151_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr152_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr153_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr154_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr155_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr156_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr157_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr158_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr159_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr160_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr161_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr162_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr163_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr164_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr165_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr166_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr167_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr168_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr169_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr170_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr171_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr172_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr173_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr174_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr175_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr176_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr177_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr178_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr179_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr180_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr181_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr182_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr183_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr184_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr185_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr186_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr187_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr188_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr189_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr190_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr191_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr192_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr193_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr194_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr195_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr196_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr197_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr198_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr199_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr200_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr201_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr202_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr203_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr204_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr205_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr206_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr207_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr208_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr209_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr210_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr211_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr212_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr213_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr214_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr215_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr216_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr217_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr218_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr219_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr220_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr221_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr222_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr223_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr224_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr225_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr226_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr227_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr228_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr229_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr230_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr231_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr232_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr233_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr234_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr235_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr236_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr237_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr238_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr239_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr240_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr241_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr242_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr243_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr244_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr245_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr246_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr247_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr248_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr249_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr250_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr251_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr252_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr253_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr254_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr255_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX908-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX908-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr1, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.2, addrspace 5) ; GFX908-FLATSCR-NEXT: $vgpr1 = V_MOV_B32_e32 $sgpr32, implicit $exec @@ -3597,230 +8253,566 @@ ; GFX90A-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX90A-FLATSCR-NEXT: liveins: $agpr0, $agpr32, $agpr33, $agpr34, $agpr35, $agpr36, $agpr37, $agpr38, $agpr39, $agpr40, $agpr41, $agpr42, $agpr43, $agpr44, $agpr45, $agpr46, $agpr47, $agpr48, $agpr49, $agpr50, $agpr51, $agpr52, $agpr53, $agpr54, $agpr55, $agpr56, $agpr57, $agpr58, $agpr59, $agpr60, $agpr61, $agpr62, $agpr63, $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15, $vgpr16, $vgpr17, $vgpr18, $vgpr19, $vgpr20, $vgpr21, $vgpr22, $vgpr23, $vgpr24, $vgpr25, $vgpr26, $vgpr27, $vgpr28, $vgpr29, $vgpr30, $vgpr31, $vgpr32, $vgpr33, $vgpr34, $vgpr35, $vgpr36, $vgpr37, $vgpr38, $vgpr39, $vgpr48, $vgpr49, $vgpr50, $vgpr51, $vgpr52, $vgpr53, $vgpr54, $vgpr55, $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX90A-FLATSCR-NEXT: {{ $}} + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr32_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr33_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr34_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr35_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr36_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr37_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr38_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr39_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr48_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr49_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr50_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr51_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr52_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr53_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr54_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr55_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr32, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr32_lo16, $vgpr0_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr33, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr33_lo16, $vgpr1_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 killed $agpr34, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr34_lo16, $vgpr2_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr3 = V_ACCVGPR_READ_B32_e64 killed $agpr35, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr35_lo16, $vgpr3_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 killed $agpr36, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr36_lo16, $vgpr4_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr5 = V_ACCVGPR_READ_B32_e64 killed $agpr37, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr37_lo16, $vgpr5_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr6 = V_ACCVGPR_READ_B32_e64 killed $agpr38, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr38_lo16, $vgpr6_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr7 = V_ACCVGPR_READ_B32_e64 killed $agpr39, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr39_lo16, $vgpr7_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr8 = V_ACCVGPR_READ_B32_e64 killed $agpr40, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr40_lo16, $vgpr8_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr9 = V_ACCVGPR_READ_B32_e64 killed $agpr41, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr41_lo16, $vgpr9_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr10 = V_ACCVGPR_READ_B32_e64 killed $agpr42, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr42_lo16, $vgpr10_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr11 = V_ACCVGPR_READ_B32_e64 killed $agpr43, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr43_lo16, $vgpr11_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr12 = V_ACCVGPR_READ_B32_e64 killed $agpr44, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr44_lo16, $vgpr12_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr13 = V_ACCVGPR_READ_B32_e64 killed $agpr45, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr45_lo16, $vgpr13_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr14 = V_ACCVGPR_READ_B32_e64 killed $agpr46, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr46_lo16, $vgpr14_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr15 = V_ACCVGPR_READ_B32_e64 killed $agpr47, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr47_lo16, $vgpr15_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr16 = V_ACCVGPR_READ_B32_e64 killed $agpr48, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr48_lo16, $vgpr16_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr17 = V_ACCVGPR_READ_B32_e64 killed $agpr49, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr49_lo16, $vgpr17_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr18 = V_ACCVGPR_READ_B32_e64 killed $agpr50, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr50_lo16, $vgpr18_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr19 = V_ACCVGPR_READ_B32_e64 killed $agpr51, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr51_lo16, $vgpr19_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr20 = V_ACCVGPR_READ_B32_e64 killed $agpr52, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr52_lo16, $vgpr20_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr21 = V_ACCVGPR_READ_B32_e64 killed $agpr53, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr53_lo16, $vgpr21_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr22 = V_ACCVGPR_READ_B32_e64 killed $agpr54, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr54_lo16, $vgpr22_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr23 = V_ACCVGPR_READ_B32_e64 killed $agpr55, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr55_lo16, $vgpr23_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr24 = V_ACCVGPR_READ_B32_e64 killed $agpr56, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr56_lo16, $vgpr24_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr25 = V_ACCVGPR_READ_B32_e64 killed $agpr57, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr57_lo16, $vgpr25_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr26 = V_ACCVGPR_READ_B32_e64 killed $agpr58, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr58_lo16, $vgpr26_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr27 = V_ACCVGPR_READ_B32_e64 killed $agpr59, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr59_lo16, $vgpr27_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr28 = V_ACCVGPR_READ_B32_e64 killed $agpr60, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr60_lo16, $vgpr28_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr29 = V_ACCVGPR_READ_B32_e64 killed $agpr61, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr61_lo16, $vgpr29_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr30 = V_ACCVGPR_READ_B32_e64 killed $agpr62, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr62_lo16, $vgpr30_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr31 = V_ACCVGPR_READ_B32_e64 killed $agpr63, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr63_lo16, $vgpr31_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr32 = V_ACCVGPR_READ_B32_e64 killed $agpr64, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr64_lo16, $vgpr32_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr33 = V_ACCVGPR_READ_B32_e64 killed $agpr65, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr65_lo16, $vgpr33_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr34 = V_ACCVGPR_READ_B32_e64 killed $agpr66, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr66_lo16, $vgpr34_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr35 = V_ACCVGPR_READ_B32_e64 killed $agpr67, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr67_lo16, $vgpr35_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr36 = V_ACCVGPR_READ_B32_e64 killed $agpr68, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr68_lo16, $vgpr36_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr37 = V_ACCVGPR_READ_B32_e64 killed $agpr69, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr69_lo16, $vgpr37_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr38 = V_ACCVGPR_READ_B32_e64 killed $agpr70, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr70_lo16, $vgpr38_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr39 = V_ACCVGPR_READ_B32_e64 killed $agpr71, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr71_lo16, $vgpr39_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr48 = V_ACCVGPR_READ_B32_e64 killed $agpr72, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr72_lo16, $vgpr48_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr49 = V_ACCVGPR_READ_B32_e64 killed $agpr73, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr73_lo16, $vgpr49_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr50 = V_ACCVGPR_READ_B32_e64 killed $agpr74, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr74_lo16, $vgpr50_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr51 = V_ACCVGPR_READ_B32_e64 killed $agpr75, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr75_lo16, $vgpr51_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr52 = V_ACCVGPR_READ_B32_e64 killed $agpr76, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr76_lo16, $vgpr52_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr53 = V_ACCVGPR_READ_B32_e64 killed $agpr77, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr77_lo16, $vgpr53_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr54 = V_ACCVGPR_READ_B32_e64 killed $agpr78, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr78_lo16, $vgpr54_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr55 = V_ACCVGPR_READ_B32_e64 killed $agpr79, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr79_lo16, $vgpr55_lo16 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr80, $sgpr32, 700, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.50, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd0, 0x18, 0x12, 0x90, 0xd0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xde, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr81, $sgpr32, 696, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.51, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd1, 0x18, 0x12, 0x90, 0xd1, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xdc, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr82, $sgpr32, 692, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.52, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd2, 0x18, 0x12, 0x90, 0xd2, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xda, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr83, $sgpr32, 688, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.53, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd3, 0x18, 0x12, 0x90, 0xd3, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr84, $sgpr32, 684, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.54, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd4, 0x18, 0x12, 0x90, 0xd4, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr85, $sgpr32, 680, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.55, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd5, 0x18, 0x12, 0x90, 0xd5, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr86, $sgpr32, 676, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.56, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd6, 0x18, 0x12, 0x90, 0xd6, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr87, $sgpr32, 672, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.57, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd7, 0x18, 0x12, 0x90, 0xd7, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr88, $sgpr32, 668, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.58, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd8, 0x18, 0x12, 0x90, 0xd8, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xce, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr89, $sgpr32, 664, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.59, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd9, 0x18, 0x12, 0x90, 0xd9, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xcc, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr90, $sgpr32, 660, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.60, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xda, 0x18, 0x12, 0x90, 0xda, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xca, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr91, $sgpr32, 656, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.61, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdb, 0x18, 0x12, 0x90, 0xdb, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr92, $sgpr32, 652, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.62, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdc, 0x18, 0x12, 0x90, 0xdc, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr93, $sgpr32, 648, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.63, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdd, 0x18, 0x12, 0x90, 0xdd, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr94, $sgpr32, 644, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.64, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xde, 0x18, 0x12, 0x90, 0xde, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr95, $sgpr32, 640, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.65, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdf, 0x18, 0x12, 0x90, 0xdf, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr96, $sgpr32, 636, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.66, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe0, 0x18, 0x12, 0x90, 0xe0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xbe, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr97, $sgpr32, 632, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.67, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe1, 0x18, 0x12, 0x90, 0xe1, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xbc, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr98, $sgpr32, 628, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.68, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe2, 0x18, 0x12, 0x90, 0xe2, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xba, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr99, $sgpr32, 624, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.69, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe3, 0x18, 0x12, 0x90, 0xe3, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr100, $sgpr32, 620, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.70, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe4, 0x18, 0x12, 0x90, 0xe4, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr101, $sgpr32, 616, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.71, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe5, 0x18, 0x12, 0x90, 0xe5, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr102, $sgpr32, 612, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.72, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe6, 0x18, 0x12, 0x90, 0xe6, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr103, $sgpr32, 608, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.73, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe7, 0x18, 0x12, 0x90, 0xe7, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr104, $sgpr32, 604, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.74, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe8, 0x18, 0x12, 0x90, 0xe8, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xae, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr105, $sgpr32, 600, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.75, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe9, 0x18, 0x12, 0x90, 0xe9, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xac, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr106, $sgpr32, 596, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.76, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xea, 0x18, 0x12, 0x90, 0xea, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xaa, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr107, $sgpr32, 592, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.77, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xeb, 0x18, 0x12, 0x90, 0xeb, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr108, $sgpr32, 588, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.78, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xec, 0x18, 0x12, 0x90, 0xec, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr109, $sgpr32, 584, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.79, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xed, 0x18, 0x12, 0x90, 0xed, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr110, $sgpr32, 580, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.80, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xee, 0x18, 0x12, 0x90, 0xee, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr111, $sgpr32, 576, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.81, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xef, 0x18, 0x12, 0x90, 0xef, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr112, $sgpr32, 572, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.82, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf0, 0x18, 0x12, 0x90, 0xf0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x9e, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr113, $sgpr32, 568, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.83, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf1, 0x18, 0x12, 0x90, 0xf1, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x9c, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr114, $sgpr32, 564, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.84, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf2, 0x18, 0x12, 0x90, 0xf2, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x9a, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr115, $sgpr32, 560, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.85, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf3, 0x18, 0x12, 0x90, 0xf3, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x98, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr116, $sgpr32, 556, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.86, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf4, 0x18, 0x12, 0x90, 0xf4, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x96, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr117, $sgpr32, 552, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.87, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf5, 0x18, 0x12, 0x90, 0xf5, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x94, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr118, $sgpr32, 548, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.88, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf6, 0x18, 0x12, 0x90, 0xf6, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x92, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr119, $sgpr32, 544, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.89, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf7, 0x18, 0x12, 0x90, 0xf7, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x90, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr120, $sgpr32, 540, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.90, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf8, 0x18, 0x12, 0x90, 0xf8, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x8e, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr121, $sgpr32, 536, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.91, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf9, 0x18, 0x12, 0x90, 0xf9, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x8c, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr122, $sgpr32, 532, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.92, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfa, 0x18, 0x12, 0x90, 0xfa, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x8a, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr123, $sgpr32, 528, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.93, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfb, 0x18, 0x12, 0x90, 0xfb, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x88, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr124, $sgpr32, 524, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.94, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfc, 0x18, 0x12, 0x90, 0xfc, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x86, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr125, $sgpr32, 520, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.95, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfd, 0x18, 0x12, 0x90, 0xfd, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x84, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr126, $sgpr32, 516, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.96, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfe, 0x18, 0x12, 0x90, 0xfe, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x82, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr127, $sgpr32, 512, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.97, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xff, 0x18, 0x12, 0x90, 0xff, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x80, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr128, $sgpr32, 508, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.98, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x80, 0x19, 0x12, 0x90, 0x80, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xfe, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr129, $sgpr32, 504, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.99, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x81, 0x19, 0x12, 0x90, 0x81, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xfc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr130, $sgpr32, 500, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.100, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x82, 0x19, 0x12, 0x90, 0x82, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xfa, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr131, $sgpr32, 496, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.101, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x83, 0x19, 0x12, 0x90, 0x83, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr132, $sgpr32, 492, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.102, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x84, 0x19, 0x12, 0x90, 0x84, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr133, $sgpr32, 488, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.103, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x85, 0x19, 0x12, 0x90, 0x85, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr134, $sgpr32, 484, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.104, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x86, 0x19, 0x12, 0x90, 0x86, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr135, $sgpr32, 480, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.105, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x87, 0x19, 0x12, 0x90, 0x87, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr136, $sgpr32, 476, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.106, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x88, 0x19, 0x12, 0x90, 0x88, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xee, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr137, $sgpr32, 472, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.107, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x89, 0x19, 0x12, 0x90, 0x89, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xec, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr138, $sgpr32, 468, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.108, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8a, 0x19, 0x12, 0x90, 0x8a, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xea, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr139, $sgpr32, 464, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.109, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8b, 0x19, 0x12, 0x90, 0x8b, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr140, $sgpr32, 460, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.110, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8c, 0x19, 0x12, 0x90, 0x8c, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr141, $sgpr32, 456, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.111, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8d, 0x19, 0x12, 0x90, 0x8d, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr142, $sgpr32, 452, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.112, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8e, 0x19, 0x12, 0x90, 0x8e, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr143, $sgpr32, 448, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.113, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8f, 0x19, 0x12, 0x90, 0x8f, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr144, $sgpr32, 444, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.114, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x90, 0x19, 0x12, 0x90, 0x90, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xde, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr145, $sgpr32, 440, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.115, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x91, 0x19, 0x12, 0x90, 0x91, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xdc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr146, $sgpr32, 436, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.116, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x92, 0x19, 0x12, 0x90, 0x92, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xda, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr147, $sgpr32, 432, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.117, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x93, 0x19, 0x12, 0x90, 0x93, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr148, $sgpr32, 428, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.118, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x94, 0x19, 0x12, 0x90, 0x94, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr149, $sgpr32, 424, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.119, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x95, 0x19, 0x12, 0x90, 0x95, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr150, $sgpr32, 420, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.120, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x96, 0x19, 0x12, 0x90, 0x96, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr151, $sgpr32, 416, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.121, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x97, 0x19, 0x12, 0x90, 0x97, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr152, $sgpr32, 412, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.122, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x98, 0x19, 0x12, 0x90, 0x98, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xce, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr153, $sgpr32, 408, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.123, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x99, 0x19, 0x12, 0x90, 0x99, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xcc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr154, $sgpr32, 404, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.124, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9a, 0x19, 0x12, 0x90, 0x9a, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xca, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr155, $sgpr32, 400, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.125, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9b, 0x19, 0x12, 0x90, 0x9b, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr156, $sgpr32, 396, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.126, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9c, 0x19, 0x12, 0x90, 0x9c, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr157, $sgpr32, 392, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.127, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9d, 0x19, 0x12, 0x90, 0x9d, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr158, $sgpr32, 388, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.128, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9e, 0x19, 0x12, 0x90, 0x9e, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr159, $sgpr32, 384, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.129, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9f, 0x19, 0x12, 0x90, 0x9f, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr160, $sgpr32, 380, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.130, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa0, 0x19, 0x12, 0x90, 0xa0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xbe, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr161, $sgpr32, 376, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.131, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa1, 0x19, 0x12, 0x90, 0xa1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xbc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr162, $sgpr32, 372, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.132, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa2, 0x19, 0x12, 0x90, 0xa2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xba, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr163, $sgpr32, 368, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.133, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa3, 0x19, 0x12, 0x90, 0xa3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr164, $sgpr32, 364, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.134, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa4, 0x19, 0x12, 0x90, 0xa4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr165, $sgpr32, 360, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.135, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa5, 0x19, 0x12, 0x90, 0xa5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr166, $sgpr32, 356, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.136, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa6, 0x19, 0x12, 0x90, 0xa6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr167, $sgpr32, 352, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.137, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa7, 0x19, 0x12, 0x90, 0xa7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr168, $sgpr32, 348, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.138, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa8, 0x19, 0x12, 0x90, 0xa8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xae, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr169, $sgpr32, 344, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.139, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa9, 0x19, 0x12, 0x90, 0xa9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xac, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr170, $sgpr32, 340, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.140, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xaa, 0x19, 0x12, 0x90, 0xaa, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xaa, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr171, $sgpr32, 336, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.141, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xab, 0x19, 0x12, 0x90, 0xab, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr172, $sgpr32, 332, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.142, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xac, 0x19, 0x12, 0x90, 0xac, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr173, $sgpr32, 328, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.143, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xad, 0x19, 0x12, 0x90, 0xad, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr174, $sgpr32, 324, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.144, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xae, 0x19, 0x12, 0x90, 0xae, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr175, $sgpr32, 320, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.145, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xaf, 0x19, 0x12, 0x90, 0xaf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr176, $sgpr32, 316, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.146, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb0, 0x19, 0x12, 0x90, 0xb0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x9e, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr177, $sgpr32, 312, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.147, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb1, 0x19, 0x12, 0x90, 0xb1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x9c, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr178, $sgpr32, 308, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.148, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb2, 0x19, 0x12, 0x90, 0xb2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x9a, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr179, $sgpr32, 304, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.149, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb3, 0x19, 0x12, 0x90, 0xb3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x98, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr180, $sgpr32, 300, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.150, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb4, 0x19, 0x12, 0x90, 0xb4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x96, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr181, $sgpr32, 296, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.151, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb5, 0x19, 0x12, 0x90, 0xb5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x94, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr182, $sgpr32, 292, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.152, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb6, 0x19, 0x12, 0x90, 0xb6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x92, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr183, $sgpr32, 288, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.153, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb7, 0x19, 0x12, 0x90, 0xb7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x90, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr184, $sgpr32, 284, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.154, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb8, 0x19, 0x12, 0x90, 0xb8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x8e, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr185, $sgpr32, 280, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.155, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb9, 0x19, 0x12, 0x90, 0xb9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x8c, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr186, $sgpr32, 276, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.156, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xba, 0x19, 0x12, 0x90, 0xba, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x8a, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr187, $sgpr32, 272, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.157, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbb, 0x19, 0x12, 0x90, 0xbb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x88, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr188, $sgpr32, 268, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.158, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbc, 0x19, 0x12, 0x90, 0xbc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x86, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr189, $sgpr32, 264, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.159, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbd, 0x19, 0x12, 0x90, 0xbd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x84, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr190, $sgpr32, 260, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.160, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbe, 0x19, 0x12, 0x90, 0xbe, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x82, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr191, $sgpr32, 256, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.161, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbf, 0x19, 0x12, 0x90, 0xbf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x80, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr192, $sgpr32, 252, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.162, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc0, 0x19, 0x11, 0x90, 0xc0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x7e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr193, $sgpr32, 248, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.163, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc1, 0x19, 0x11, 0x90, 0xc1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x7c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr194, $sgpr32, 244, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.164, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc2, 0x19, 0x11, 0x90, 0xc2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x7a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr195, $sgpr32, 240, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.165, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc3, 0x19, 0x11, 0x90, 0xc3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x78, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr196, $sgpr32, 236, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.166, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc4, 0x19, 0x11, 0x90, 0xc4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x76, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr197, $sgpr32, 232, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.167, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc5, 0x19, 0x11, 0x90, 0xc5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x74, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr198, $sgpr32, 228, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.168, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc6, 0x19, 0x11, 0x90, 0xc6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x72, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr199, $sgpr32, 224, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.169, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc7, 0x19, 0x11, 0x90, 0xc7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x70, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr200, $sgpr32, 220, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.170, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc8, 0x19, 0x11, 0x90, 0xc8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x6e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr201, $sgpr32, 216, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.171, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc9, 0x19, 0x11, 0x90, 0xc9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x6c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr202, $sgpr32, 212, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.172, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xca, 0x19, 0x11, 0x90, 0xca, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x6a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr203, $sgpr32, 208, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.173, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcb, 0x19, 0x11, 0x90, 0xcb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x68, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr204, $sgpr32, 204, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.174, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcc, 0x19, 0x11, 0x90, 0xcc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x66, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr205, $sgpr32, 200, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.175, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcd, 0x19, 0x11, 0x90, 0xcd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x64, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr206, $sgpr32, 196, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.176, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xce, 0x19, 0x11, 0x90, 0xce, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x62, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr207, $sgpr32, 192, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.177, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcf, 0x19, 0x11, 0x90, 0xcf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x60, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr208, $sgpr32, 188, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.178, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd0, 0x19, 0x11, 0x90, 0xd0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x5e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr209, $sgpr32, 184, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.179, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd1, 0x19, 0x11, 0x90, 0xd1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x5c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr210, $sgpr32, 180, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.180, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd2, 0x19, 0x11, 0x90, 0xd2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x5a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr211, $sgpr32, 176, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.181, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd3, 0x19, 0x11, 0x90, 0xd3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x58, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr212, $sgpr32, 172, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.182, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd4, 0x19, 0x11, 0x90, 0xd4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x56, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr213, $sgpr32, 168, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.183, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd5, 0x19, 0x11, 0x90, 0xd5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x54, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr214, $sgpr32, 164, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.184, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd6, 0x19, 0x11, 0x90, 0xd6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x52, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr215, $sgpr32, 160, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.185, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd7, 0x19, 0x11, 0x90, 0xd7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x50, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr216, $sgpr32, 156, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.186, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd8, 0x19, 0x11, 0x90, 0xd8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x4e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr217, $sgpr32, 152, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.187, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd9, 0x19, 0x11, 0x90, 0xd9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x4c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr218, $sgpr32, 148, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.188, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xda, 0x19, 0x11, 0x90, 0xda, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x4a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr219, $sgpr32, 144, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.189, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdb, 0x19, 0x11, 0x90, 0xdb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x48, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr220, $sgpr32, 140, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.190, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdc, 0x19, 0x11, 0x90, 0xdc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x46, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr221, $sgpr32, 136, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.191, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdd, 0x19, 0x11, 0x90, 0xdd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x44, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr222, $sgpr32, 132, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.192, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xde, 0x19, 0x11, 0x90, 0xde, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x42, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr223, $sgpr32, 128, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.193, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdf, 0x19, 0x11, 0x90, 0xdf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x40, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr224, $sgpr32, 124, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.194, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe0, 0x19, 0x11, 0x90, 0xe0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x3e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr225, $sgpr32, 120, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.195, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe1, 0x19, 0x11, 0x90, 0xe1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x3c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr226, $sgpr32, 116, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.196, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe2, 0x19, 0x11, 0x90, 0xe2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x3a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr227, $sgpr32, 112, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.197, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe3, 0x19, 0x11, 0x90, 0xe3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x38, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr228, $sgpr32, 108, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.198, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe4, 0x19, 0x11, 0x90, 0xe4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x36, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr229, $sgpr32, 104, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.199, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe5, 0x19, 0x11, 0x90, 0xe5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x34, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr230, $sgpr32, 100, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.200, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe6, 0x19, 0x11, 0x90, 0xe6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x32, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr231, $sgpr32, 96, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.201, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe7, 0x19, 0x11, 0x90, 0xe7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x30, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr232, $sgpr32, 92, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.202, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe8, 0x19, 0x11, 0x90, 0xe8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x2e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr233, $sgpr32, 88, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.203, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe9, 0x19, 0x11, 0x90, 0xe9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x2c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr234, $sgpr32, 84, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.204, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xea, 0x19, 0x11, 0x90, 0xea, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x2a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr235, $sgpr32, 80, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.205, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xeb, 0x19, 0x11, 0x90, 0xeb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x28, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr236, $sgpr32, 76, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.206, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xec, 0x19, 0x11, 0x90, 0xec, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x26, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr237, $sgpr32, 72, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.207, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xed, 0x19, 0x11, 0x90, 0xed, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x24, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr238, $sgpr32, 68, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.208, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xee, 0x19, 0x11, 0x90, 0xee, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x22, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr239, $sgpr32, 64, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.209, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xef, 0x19, 0x11, 0x90, 0xef, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x20, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr240, $sgpr32, 60, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.210, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf0, 0x19, 0x11, 0x90, 0xf0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x1e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr241, $sgpr32, 56, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.211, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf1, 0x19, 0x11, 0x90, 0xf1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x1c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr242, $sgpr32, 52, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.212, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf2, 0x19, 0x11, 0x90, 0xf2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x1a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr243, $sgpr32, 48, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.213, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf3, 0x19, 0x11, 0x90, 0xf3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x18, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr244, $sgpr32, 44, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.214, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf4, 0x19, 0x11, 0x90, 0xf4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x16, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr245, $sgpr32, 40, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.215, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf5, 0x19, 0x11, 0x90, 0xf5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x14, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr246, $sgpr32, 36, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.216, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf6, 0x19, 0x11, 0x90, 0xf6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x12, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr247, $sgpr32, 32, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.217, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf7, 0x19, 0x11, 0x90, 0xf7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x10, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr248, $sgpr32, 28, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.218, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf8, 0x19, 0x11, 0x90, 0xf8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x0e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr249, $sgpr32, 24, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.219, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf9, 0x19, 0x11, 0x90, 0xf9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x0c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr250, $sgpr32, 20, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.220, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfa, 0x19, 0x11, 0x90, 0xfa, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x0a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr251, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.221, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfb, 0x19, 0x11, 0x90, 0xfb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x08, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr252, $sgpr32, 12, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.222, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfc, 0x19, 0x11, 0x90, 0xfc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x06, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr253, $sgpr32, 8, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.223, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfd, 0x19, 0x11, 0x90, 0xfd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x04, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr254, $sgpr32, 4, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.224, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfe, 0x19, 0x11, 0x90, 0xfe, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr255, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.225, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xff, 0x19, 0x10, 0x90, 0xff, 0x19, 0x16, 0xe9, 0x05, 0x00, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr40, $sgpr32, 704, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.226, addrspace 5) ; GFX90A-FLATSCR-NEXT: $vgpr40 = V_MOV_B32_e32 $sgpr32, implicit $exec @@ -4096,6 +9088,294 @@ ; GFX908-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX908-NEXT: liveins: $agpr0_agpr1, $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX908-NEXT: {{ $}} + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr32_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr33_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr34_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr35_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr36_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr37_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr38_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr39_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr40_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr41_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr42_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr43_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr44_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr45_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr46_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr47_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr48_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr49_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr50_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr51_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr52_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr53_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr54_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr55_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr56_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr57_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr58_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr59_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr60_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr61_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr62_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr63_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr64_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr65_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr66_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr67_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr68_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr69_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr70_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr71_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr72_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr73_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr74_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr75_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr76_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr77_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr78_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr79_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr80_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr81_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr82_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr83_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr84_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr85_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr86_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr87_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr88_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr89_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr90_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr91_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr92_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr93_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr94_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr95_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr96_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr97_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr98_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr99_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr100_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr101_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr102_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr103_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr104_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr105_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr106_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr107_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr108_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr109_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr110_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr111_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr112_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr113_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr114_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr115_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr116_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr117_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr118_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr119_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr120_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr121_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr122_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr123_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr124_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr125_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr126_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr127_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr128_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr129_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr130_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr131_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr132_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr133_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr134_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr135_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr136_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr137_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr138_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr139_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr140_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr141_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr142_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr143_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr144_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr145_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr146_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr147_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr148_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr149_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr150_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr151_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr152_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr153_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr154_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr155_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr156_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr157_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr158_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr159_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr160_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr161_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr162_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr163_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr164_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr165_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr166_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr167_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr168_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr169_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr170_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr171_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr172_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr173_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr174_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr175_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr176_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr177_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr178_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr179_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr180_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr181_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr182_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr183_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr184_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr185_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr186_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr187_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr188_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr189_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr190_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr191_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr192_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr193_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr194_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr195_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr196_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr197_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr198_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr199_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr200_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr201_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr202_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr203_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr204_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr205_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr206_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr207_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr208_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr209_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr210_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr211_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr212_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr213_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr214_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr215_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr216_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr217_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr218_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr219_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr220_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr221_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr222_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr223_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr224_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr225_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr226_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr227_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr228_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr229_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr230_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr231_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr232_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr233_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr234_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr235_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr236_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr237_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr238_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr239_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr240_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr241_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr242_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr243_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr244_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr245_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr246_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr247_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr248_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr249_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr250_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr251_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr252_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr253_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr254_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr255_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX908-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX908-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.2, addrspace 5) ; GFX908-NEXT: $vgpr1 = V_MOV_B32_e32 8200, implicit $exec @@ -4120,230 +9400,566 @@ ; GFX90A-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX90A-NEXT: liveins: $agpr32, $agpr33, $agpr34, $agpr35, $agpr36, $agpr37, $agpr38, $agpr39, $agpr40, $agpr41, $agpr42, $agpr43, $agpr44, $agpr45, $agpr46, $agpr47, $agpr48, $agpr49, $agpr50, $agpr51, $agpr52, $agpr53, $agpr54, $agpr55, $agpr56, $agpr57, $agpr58, $agpr59, $agpr60, $agpr61, $agpr62, $agpr63, $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15, $vgpr16, $vgpr17, $vgpr18, $vgpr19, $vgpr20, $vgpr21, $vgpr22, $vgpr23, $vgpr24, $vgpr25, $vgpr26, $vgpr27, $vgpr28, $vgpr29, $vgpr30, $vgpr31, $vgpr32, $vgpr33, $vgpr34, $vgpr35, $vgpr36, $vgpr37, $vgpr38, $vgpr39, $vgpr48, $vgpr49, $vgpr50, $vgpr51, $vgpr52, $vgpr53, $vgpr54, $vgpr55, $agpr0_agpr1, $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX90A-NEXT: {{ $}} + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr32_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr33_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr34_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr35_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr36_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr37_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr38_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr39_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr48_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr49_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr50_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr51_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr52_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr53_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr54_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr55_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX90A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr32, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr32_lo16, $vgpr0_lo16 ; GFX90A-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr33, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr33_lo16, $vgpr1_lo16 ; GFX90A-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 killed $agpr34, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr34_lo16, $vgpr2_lo16 ; GFX90A-NEXT: $vgpr3 = V_ACCVGPR_READ_B32_e64 killed $agpr35, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr35_lo16, $vgpr3_lo16 ; GFX90A-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 killed $agpr36, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr36_lo16, $vgpr4_lo16 ; GFX90A-NEXT: $vgpr5 = V_ACCVGPR_READ_B32_e64 killed $agpr37, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr37_lo16, $vgpr5_lo16 ; GFX90A-NEXT: $vgpr6 = V_ACCVGPR_READ_B32_e64 killed $agpr38, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr38_lo16, $vgpr6_lo16 ; GFX90A-NEXT: $vgpr7 = V_ACCVGPR_READ_B32_e64 killed $agpr39, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr39_lo16, $vgpr7_lo16 ; GFX90A-NEXT: $vgpr8 = V_ACCVGPR_READ_B32_e64 killed $agpr40, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr40_lo16, $vgpr8_lo16 ; GFX90A-NEXT: $vgpr9 = V_ACCVGPR_READ_B32_e64 killed $agpr41, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr41_lo16, $vgpr9_lo16 ; GFX90A-NEXT: $vgpr10 = V_ACCVGPR_READ_B32_e64 killed $agpr42, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr42_lo16, $vgpr10_lo16 ; GFX90A-NEXT: $vgpr11 = V_ACCVGPR_READ_B32_e64 killed $agpr43, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr43_lo16, $vgpr11_lo16 ; GFX90A-NEXT: $vgpr12 = V_ACCVGPR_READ_B32_e64 killed $agpr44, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr44_lo16, $vgpr12_lo16 ; GFX90A-NEXT: $vgpr13 = V_ACCVGPR_READ_B32_e64 killed $agpr45, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr45_lo16, $vgpr13_lo16 ; GFX90A-NEXT: $vgpr14 = V_ACCVGPR_READ_B32_e64 killed $agpr46, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr46_lo16, $vgpr14_lo16 ; GFX90A-NEXT: $vgpr15 = V_ACCVGPR_READ_B32_e64 killed $agpr47, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr47_lo16, $vgpr15_lo16 ; GFX90A-NEXT: $vgpr16 = V_ACCVGPR_READ_B32_e64 killed $agpr48, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr48_lo16, $vgpr16_lo16 ; GFX90A-NEXT: $vgpr17 = V_ACCVGPR_READ_B32_e64 killed $agpr49, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr49_lo16, $vgpr17_lo16 ; GFX90A-NEXT: $vgpr18 = V_ACCVGPR_READ_B32_e64 killed $agpr50, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr50_lo16, $vgpr18_lo16 ; GFX90A-NEXT: $vgpr19 = V_ACCVGPR_READ_B32_e64 killed $agpr51, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr51_lo16, $vgpr19_lo16 ; GFX90A-NEXT: $vgpr20 = V_ACCVGPR_READ_B32_e64 killed $agpr52, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr52_lo16, $vgpr20_lo16 ; GFX90A-NEXT: $vgpr21 = V_ACCVGPR_READ_B32_e64 killed $agpr53, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr53_lo16, $vgpr21_lo16 ; GFX90A-NEXT: $vgpr22 = V_ACCVGPR_READ_B32_e64 killed $agpr54, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr54_lo16, $vgpr22_lo16 ; GFX90A-NEXT: $vgpr23 = V_ACCVGPR_READ_B32_e64 killed $agpr55, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr55_lo16, $vgpr23_lo16 ; GFX90A-NEXT: $vgpr24 = V_ACCVGPR_READ_B32_e64 killed $agpr56, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr56_lo16, $vgpr24_lo16 ; GFX90A-NEXT: $vgpr25 = V_ACCVGPR_READ_B32_e64 killed $agpr57, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr57_lo16, $vgpr25_lo16 ; GFX90A-NEXT: $vgpr26 = V_ACCVGPR_READ_B32_e64 killed $agpr58, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr58_lo16, $vgpr26_lo16 ; GFX90A-NEXT: $vgpr27 = V_ACCVGPR_READ_B32_e64 killed $agpr59, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr59_lo16, $vgpr27_lo16 ; GFX90A-NEXT: $vgpr28 = V_ACCVGPR_READ_B32_e64 killed $agpr60, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr60_lo16, $vgpr28_lo16 ; GFX90A-NEXT: $vgpr29 = V_ACCVGPR_READ_B32_e64 killed $agpr61, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr61_lo16, $vgpr29_lo16 ; GFX90A-NEXT: $vgpr30 = V_ACCVGPR_READ_B32_e64 killed $agpr62, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr62_lo16, $vgpr30_lo16 ; GFX90A-NEXT: $vgpr31 = V_ACCVGPR_READ_B32_e64 killed $agpr63, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr63_lo16, $vgpr31_lo16 ; GFX90A-NEXT: $vgpr32 = V_ACCVGPR_READ_B32_e64 killed $agpr64, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr64_lo16, $vgpr32_lo16 ; GFX90A-NEXT: $vgpr33 = V_ACCVGPR_READ_B32_e64 killed $agpr65, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr65_lo16, $vgpr33_lo16 ; GFX90A-NEXT: $vgpr34 = V_ACCVGPR_READ_B32_e64 killed $agpr66, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr66_lo16, $vgpr34_lo16 ; GFX90A-NEXT: $vgpr35 = V_ACCVGPR_READ_B32_e64 killed $agpr67, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr67_lo16, $vgpr35_lo16 ; GFX90A-NEXT: $vgpr36 = V_ACCVGPR_READ_B32_e64 killed $agpr68, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr68_lo16, $vgpr36_lo16 ; GFX90A-NEXT: $vgpr37 = V_ACCVGPR_READ_B32_e64 killed $agpr69, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr69_lo16, $vgpr37_lo16 ; GFX90A-NEXT: $vgpr38 = V_ACCVGPR_READ_B32_e64 killed $agpr70, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr70_lo16, $vgpr38_lo16 ; GFX90A-NEXT: $vgpr39 = V_ACCVGPR_READ_B32_e64 killed $agpr71, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr71_lo16, $vgpr39_lo16 ; GFX90A-NEXT: $vgpr48 = V_ACCVGPR_READ_B32_e64 killed $agpr72, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr72_lo16, $vgpr48_lo16 ; GFX90A-NEXT: $vgpr49 = V_ACCVGPR_READ_B32_e64 killed $agpr73, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr73_lo16, $vgpr49_lo16 ; GFX90A-NEXT: $vgpr50 = V_ACCVGPR_READ_B32_e64 killed $agpr74, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr74_lo16, $vgpr50_lo16 ; GFX90A-NEXT: $vgpr51 = V_ACCVGPR_READ_B32_e64 killed $agpr75, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr75_lo16, $vgpr51_lo16 ; GFX90A-NEXT: $vgpr52 = V_ACCVGPR_READ_B32_e64 killed $agpr76, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr76_lo16, $vgpr52_lo16 ; GFX90A-NEXT: $vgpr53 = V_ACCVGPR_READ_B32_e64 killed $agpr77, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr77_lo16, $vgpr53_lo16 ; GFX90A-NEXT: $vgpr54 = V_ACCVGPR_READ_B32_e64 killed $agpr78, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr78_lo16, $vgpr54_lo16 ; GFX90A-NEXT: $vgpr55 = V_ACCVGPR_READ_B32_e64 killed $agpr79, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr79_lo16, $vgpr55_lo16 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr80, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 700, 0, 0, implicit $exec :: (store (s32) into %stack.50, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd0, 0x18, 0x12, 0x90, 0xd0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xde, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr81, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 696, 0, 0, implicit $exec :: (store (s32) into %stack.51, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd1, 0x18, 0x12, 0x90, 0xd1, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xdc, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr82, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 692, 0, 0, implicit $exec :: (store (s32) into %stack.52, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd2, 0x18, 0x12, 0x90, 0xd2, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xda, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr83, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 688, 0, 0, implicit $exec :: (store (s32) into %stack.53, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd3, 0x18, 0x12, 0x90, 0xd3, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr84, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 684, 0, 0, implicit $exec :: (store (s32) into %stack.54, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd4, 0x18, 0x12, 0x90, 0xd4, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr85, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 680, 0, 0, implicit $exec :: (store (s32) into %stack.55, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd5, 0x18, 0x12, 0x90, 0xd5, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr86, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 676, 0, 0, implicit $exec :: (store (s32) into %stack.56, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd6, 0x18, 0x12, 0x90, 0xd6, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr87, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 672, 0, 0, implicit $exec :: (store (s32) into %stack.57, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd7, 0x18, 0x12, 0x90, 0xd7, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr88, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 668, 0, 0, implicit $exec :: (store (s32) into %stack.58, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd8, 0x18, 0x12, 0x90, 0xd8, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xce, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr89, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 664, 0, 0, implicit $exec :: (store (s32) into %stack.59, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd9, 0x18, 0x12, 0x90, 0xd9, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xcc, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr90, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 660, 0, 0, implicit $exec :: (store (s32) into %stack.60, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xda, 0x18, 0x12, 0x90, 0xda, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xca, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr91, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 656, 0, 0, implicit $exec :: (store (s32) into %stack.61, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdb, 0x18, 0x12, 0x90, 0xdb, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr92, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 652, 0, 0, implicit $exec :: (store (s32) into %stack.62, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdc, 0x18, 0x12, 0x90, 0xdc, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr93, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 648, 0, 0, implicit $exec :: (store (s32) into %stack.63, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdd, 0x18, 0x12, 0x90, 0xdd, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr94, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 644, 0, 0, implicit $exec :: (store (s32) into %stack.64, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xde, 0x18, 0x12, 0x90, 0xde, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr95, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 640, 0, 0, implicit $exec :: (store (s32) into %stack.65, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdf, 0x18, 0x12, 0x90, 0xdf, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr96, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 636, 0, 0, implicit $exec :: (store (s32) into %stack.66, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe0, 0x18, 0x12, 0x90, 0xe0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xbe, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr97, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 632, 0, 0, implicit $exec :: (store (s32) into %stack.67, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe1, 0x18, 0x12, 0x90, 0xe1, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xbc, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr98, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 628, 0, 0, implicit $exec :: (store (s32) into %stack.68, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe2, 0x18, 0x12, 0x90, 0xe2, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xba, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr99, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 624, 0, 0, implicit $exec :: (store (s32) into %stack.69, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe3, 0x18, 0x12, 0x90, 0xe3, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr100, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 620, 0, 0, implicit $exec :: (store (s32) into %stack.70, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe4, 0x18, 0x12, 0x90, 0xe4, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr101, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 616, 0, 0, implicit $exec :: (store (s32) into %stack.71, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe5, 0x18, 0x12, 0x90, 0xe5, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr102, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 612, 0, 0, implicit $exec :: (store (s32) into %stack.72, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe6, 0x18, 0x12, 0x90, 0xe6, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr103, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 608, 0, 0, implicit $exec :: (store (s32) into %stack.73, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe7, 0x18, 0x12, 0x90, 0xe7, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr104, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 604, 0, 0, implicit $exec :: (store (s32) into %stack.74, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe8, 0x18, 0x12, 0x90, 0xe8, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xae, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr105, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 600, 0, 0, implicit $exec :: (store (s32) into %stack.75, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe9, 0x18, 0x12, 0x90, 0xe9, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xac, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr106, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 596, 0, 0, implicit $exec :: (store (s32) into %stack.76, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xea, 0x18, 0x12, 0x90, 0xea, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xaa, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr107, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 592, 0, 0, implicit $exec :: (store (s32) into %stack.77, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xeb, 0x18, 0x12, 0x90, 0xeb, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr108, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 588, 0, 0, implicit $exec :: (store (s32) into %stack.78, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xec, 0x18, 0x12, 0x90, 0xec, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr109, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 584, 0, 0, implicit $exec :: (store (s32) into %stack.79, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xed, 0x18, 0x12, 0x90, 0xed, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr110, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 580, 0, 0, implicit $exec :: (store (s32) into %stack.80, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xee, 0x18, 0x12, 0x90, 0xee, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr111, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 576, 0, 0, implicit $exec :: (store (s32) into %stack.81, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xef, 0x18, 0x12, 0x90, 0xef, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr112, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 572, 0, 0, implicit $exec :: (store (s32) into %stack.82, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf0, 0x18, 0x12, 0x90, 0xf0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x9e, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr113, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 568, 0, 0, implicit $exec :: (store (s32) into %stack.83, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf1, 0x18, 0x12, 0x90, 0xf1, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x9c, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr114, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 564, 0, 0, implicit $exec :: (store (s32) into %stack.84, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf2, 0x18, 0x12, 0x90, 0xf2, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x9a, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr115, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 560, 0, 0, implicit $exec :: (store (s32) into %stack.85, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf3, 0x18, 0x12, 0x90, 0xf3, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x98, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr116, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 556, 0, 0, implicit $exec :: (store (s32) into %stack.86, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf4, 0x18, 0x12, 0x90, 0xf4, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x96, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr117, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 552, 0, 0, implicit $exec :: (store (s32) into %stack.87, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf5, 0x18, 0x12, 0x90, 0xf5, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x94, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr118, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 548, 0, 0, implicit $exec :: (store (s32) into %stack.88, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf6, 0x18, 0x12, 0x90, 0xf6, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x92, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr119, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 544, 0, 0, implicit $exec :: (store (s32) into %stack.89, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf7, 0x18, 0x12, 0x90, 0xf7, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x90, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr120, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 540, 0, 0, implicit $exec :: (store (s32) into %stack.90, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf8, 0x18, 0x12, 0x90, 0xf8, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x8e, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr121, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 536, 0, 0, implicit $exec :: (store (s32) into %stack.91, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf9, 0x18, 0x12, 0x90, 0xf9, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x8c, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr122, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 532, 0, 0, implicit $exec :: (store (s32) into %stack.92, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfa, 0x18, 0x12, 0x90, 0xfa, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x8a, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr123, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 528, 0, 0, implicit $exec :: (store (s32) into %stack.93, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfb, 0x18, 0x12, 0x90, 0xfb, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x88, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr124, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 524, 0, 0, implicit $exec :: (store (s32) into %stack.94, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfc, 0x18, 0x12, 0x90, 0xfc, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x86, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr125, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 520, 0, 0, implicit $exec :: (store (s32) into %stack.95, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfd, 0x18, 0x12, 0x90, 0xfd, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x84, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr126, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 516, 0, 0, implicit $exec :: (store (s32) into %stack.96, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfe, 0x18, 0x12, 0x90, 0xfe, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x82, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr127, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 512, 0, 0, implicit $exec :: (store (s32) into %stack.97, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xff, 0x18, 0x12, 0x90, 0xff, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x80, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr128, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 508, 0, 0, implicit $exec :: (store (s32) into %stack.98, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x80, 0x19, 0x12, 0x90, 0x80, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xfe, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr129, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 504, 0, 0, implicit $exec :: (store (s32) into %stack.99, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x81, 0x19, 0x12, 0x90, 0x81, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xfc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr130, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 500, 0, 0, implicit $exec :: (store (s32) into %stack.100, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x82, 0x19, 0x12, 0x90, 0x82, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xfa, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr131, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 496, 0, 0, implicit $exec :: (store (s32) into %stack.101, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x83, 0x19, 0x12, 0x90, 0x83, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr132, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 492, 0, 0, implicit $exec :: (store (s32) into %stack.102, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x84, 0x19, 0x12, 0x90, 0x84, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr133, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 488, 0, 0, implicit $exec :: (store (s32) into %stack.103, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x85, 0x19, 0x12, 0x90, 0x85, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr134, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 484, 0, 0, implicit $exec :: (store (s32) into %stack.104, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x86, 0x19, 0x12, 0x90, 0x86, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr135, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 480, 0, 0, implicit $exec :: (store (s32) into %stack.105, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x87, 0x19, 0x12, 0x90, 0x87, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr136, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 476, 0, 0, implicit $exec :: (store (s32) into %stack.106, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x88, 0x19, 0x12, 0x90, 0x88, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xee, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr137, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 472, 0, 0, implicit $exec :: (store (s32) into %stack.107, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x89, 0x19, 0x12, 0x90, 0x89, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xec, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr138, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 468, 0, 0, implicit $exec :: (store (s32) into %stack.108, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8a, 0x19, 0x12, 0x90, 0x8a, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xea, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr139, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 464, 0, 0, implicit $exec :: (store (s32) into %stack.109, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8b, 0x19, 0x12, 0x90, 0x8b, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr140, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 460, 0, 0, implicit $exec :: (store (s32) into %stack.110, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8c, 0x19, 0x12, 0x90, 0x8c, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr141, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 456, 0, 0, implicit $exec :: (store (s32) into %stack.111, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8d, 0x19, 0x12, 0x90, 0x8d, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr142, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 452, 0, 0, implicit $exec :: (store (s32) into %stack.112, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8e, 0x19, 0x12, 0x90, 0x8e, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr143, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 448, 0, 0, implicit $exec :: (store (s32) into %stack.113, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8f, 0x19, 0x12, 0x90, 0x8f, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr144, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 444, 0, 0, implicit $exec :: (store (s32) into %stack.114, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x90, 0x19, 0x12, 0x90, 0x90, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xde, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr145, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 440, 0, 0, implicit $exec :: (store (s32) into %stack.115, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x91, 0x19, 0x12, 0x90, 0x91, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xdc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr146, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 436, 0, 0, implicit $exec :: (store (s32) into %stack.116, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x92, 0x19, 0x12, 0x90, 0x92, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xda, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr147, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 432, 0, 0, implicit $exec :: (store (s32) into %stack.117, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x93, 0x19, 0x12, 0x90, 0x93, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr148, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 428, 0, 0, implicit $exec :: (store (s32) into %stack.118, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x94, 0x19, 0x12, 0x90, 0x94, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr149, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 424, 0, 0, implicit $exec :: (store (s32) into %stack.119, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x95, 0x19, 0x12, 0x90, 0x95, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr150, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 420, 0, 0, implicit $exec :: (store (s32) into %stack.120, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x96, 0x19, 0x12, 0x90, 0x96, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr151, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 416, 0, 0, implicit $exec :: (store (s32) into %stack.121, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x97, 0x19, 0x12, 0x90, 0x97, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr152, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 412, 0, 0, implicit $exec :: (store (s32) into %stack.122, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x98, 0x19, 0x12, 0x90, 0x98, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xce, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr153, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 408, 0, 0, implicit $exec :: (store (s32) into %stack.123, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x99, 0x19, 0x12, 0x90, 0x99, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xcc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr154, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 404, 0, 0, implicit $exec :: (store (s32) into %stack.124, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9a, 0x19, 0x12, 0x90, 0x9a, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xca, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr155, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 400, 0, 0, implicit $exec :: (store (s32) into %stack.125, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9b, 0x19, 0x12, 0x90, 0x9b, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr156, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 396, 0, 0, implicit $exec :: (store (s32) into %stack.126, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9c, 0x19, 0x12, 0x90, 0x9c, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr157, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 392, 0, 0, implicit $exec :: (store (s32) into %stack.127, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9d, 0x19, 0x12, 0x90, 0x9d, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr158, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 388, 0, 0, implicit $exec :: (store (s32) into %stack.128, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9e, 0x19, 0x12, 0x90, 0x9e, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr159, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 384, 0, 0, implicit $exec :: (store (s32) into %stack.129, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9f, 0x19, 0x12, 0x90, 0x9f, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr160, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 380, 0, 0, implicit $exec :: (store (s32) into %stack.130, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa0, 0x19, 0x12, 0x90, 0xa0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xbe, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr161, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 376, 0, 0, implicit $exec :: (store (s32) into %stack.131, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa1, 0x19, 0x12, 0x90, 0xa1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xbc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr162, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 372, 0, 0, implicit $exec :: (store (s32) into %stack.132, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa2, 0x19, 0x12, 0x90, 0xa2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xba, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr163, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 368, 0, 0, implicit $exec :: (store (s32) into %stack.133, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa3, 0x19, 0x12, 0x90, 0xa3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr164, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 364, 0, 0, implicit $exec :: (store (s32) into %stack.134, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa4, 0x19, 0x12, 0x90, 0xa4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr165, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 360, 0, 0, implicit $exec :: (store (s32) into %stack.135, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa5, 0x19, 0x12, 0x90, 0xa5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr166, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 356, 0, 0, implicit $exec :: (store (s32) into %stack.136, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa6, 0x19, 0x12, 0x90, 0xa6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr167, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 352, 0, 0, implicit $exec :: (store (s32) into %stack.137, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa7, 0x19, 0x12, 0x90, 0xa7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr168, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 348, 0, 0, implicit $exec :: (store (s32) into %stack.138, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa8, 0x19, 0x12, 0x90, 0xa8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xae, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr169, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 344, 0, 0, implicit $exec :: (store (s32) into %stack.139, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa9, 0x19, 0x12, 0x90, 0xa9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xac, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr170, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 340, 0, 0, implicit $exec :: (store (s32) into %stack.140, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xaa, 0x19, 0x12, 0x90, 0xaa, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xaa, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr171, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 336, 0, 0, implicit $exec :: (store (s32) into %stack.141, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xab, 0x19, 0x12, 0x90, 0xab, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr172, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 332, 0, 0, implicit $exec :: (store (s32) into %stack.142, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xac, 0x19, 0x12, 0x90, 0xac, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr173, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 328, 0, 0, implicit $exec :: (store (s32) into %stack.143, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xad, 0x19, 0x12, 0x90, 0xad, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr174, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 324, 0, 0, implicit $exec :: (store (s32) into %stack.144, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xae, 0x19, 0x12, 0x90, 0xae, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr175, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 320, 0, 0, implicit $exec :: (store (s32) into %stack.145, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xaf, 0x19, 0x12, 0x90, 0xaf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr176, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 316, 0, 0, implicit $exec :: (store (s32) into %stack.146, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb0, 0x19, 0x12, 0x90, 0xb0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x9e, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr177, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 312, 0, 0, implicit $exec :: (store (s32) into %stack.147, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb1, 0x19, 0x12, 0x90, 0xb1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x9c, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr178, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 308, 0, 0, implicit $exec :: (store (s32) into %stack.148, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb2, 0x19, 0x12, 0x90, 0xb2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x9a, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr179, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 304, 0, 0, implicit $exec :: (store (s32) into %stack.149, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb3, 0x19, 0x12, 0x90, 0xb3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x98, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr180, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 300, 0, 0, implicit $exec :: (store (s32) into %stack.150, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb4, 0x19, 0x12, 0x90, 0xb4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x96, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr181, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 296, 0, 0, implicit $exec :: (store (s32) into %stack.151, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb5, 0x19, 0x12, 0x90, 0xb5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x94, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr182, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 292, 0, 0, implicit $exec :: (store (s32) into %stack.152, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb6, 0x19, 0x12, 0x90, 0xb6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x92, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr183, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 288, 0, 0, implicit $exec :: (store (s32) into %stack.153, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb7, 0x19, 0x12, 0x90, 0xb7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x90, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr184, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 284, 0, 0, implicit $exec :: (store (s32) into %stack.154, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb8, 0x19, 0x12, 0x90, 0xb8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x8e, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr185, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 280, 0, 0, implicit $exec :: (store (s32) into %stack.155, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb9, 0x19, 0x12, 0x90, 0xb9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x8c, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr186, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 276, 0, 0, implicit $exec :: (store (s32) into %stack.156, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xba, 0x19, 0x12, 0x90, 0xba, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x8a, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr187, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 272, 0, 0, implicit $exec :: (store (s32) into %stack.157, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbb, 0x19, 0x12, 0x90, 0xbb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x88, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr188, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 268, 0, 0, implicit $exec :: (store (s32) into %stack.158, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbc, 0x19, 0x12, 0x90, 0xbc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x86, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr189, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 264, 0, 0, implicit $exec :: (store (s32) into %stack.159, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbd, 0x19, 0x12, 0x90, 0xbd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x84, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr190, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 260, 0, 0, implicit $exec :: (store (s32) into %stack.160, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbe, 0x19, 0x12, 0x90, 0xbe, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x82, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr191, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 256, 0, 0, implicit $exec :: (store (s32) into %stack.161, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbf, 0x19, 0x12, 0x90, 0xbf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x80, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr192, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 252, 0, 0, implicit $exec :: (store (s32) into %stack.162, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc0, 0x19, 0x11, 0x90, 0xc0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x7e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr193, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 248, 0, 0, implicit $exec :: (store (s32) into %stack.163, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc1, 0x19, 0x11, 0x90, 0xc1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x7c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr194, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 244, 0, 0, implicit $exec :: (store (s32) into %stack.164, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc2, 0x19, 0x11, 0x90, 0xc2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x7a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr195, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 240, 0, 0, implicit $exec :: (store (s32) into %stack.165, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc3, 0x19, 0x11, 0x90, 0xc3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x78, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr196, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 236, 0, 0, implicit $exec :: (store (s32) into %stack.166, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc4, 0x19, 0x11, 0x90, 0xc4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x76, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr197, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 232, 0, 0, implicit $exec :: (store (s32) into %stack.167, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc5, 0x19, 0x11, 0x90, 0xc5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x74, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr198, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 228, 0, 0, implicit $exec :: (store (s32) into %stack.168, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc6, 0x19, 0x11, 0x90, 0xc6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x72, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr199, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 224, 0, 0, implicit $exec :: (store (s32) into %stack.169, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc7, 0x19, 0x11, 0x90, 0xc7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x70, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr200, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 220, 0, 0, implicit $exec :: (store (s32) into %stack.170, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc8, 0x19, 0x11, 0x90, 0xc8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x6e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr201, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 216, 0, 0, implicit $exec :: (store (s32) into %stack.171, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc9, 0x19, 0x11, 0x90, 0xc9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x6c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr202, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 212, 0, 0, implicit $exec :: (store (s32) into %stack.172, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xca, 0x19, 0x11, 0x90, 0xca, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x6a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr203, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 208, 0, 0, implicit $exec :: (store (s32) into %stack.173, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcb, 0x19, 0x11, 0x90, 0xcb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x68, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr204, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 204, 0, 0, implicit $exec :: (store (s32) into %stack.174, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcc, 0x19, 0x11, 0x90, 0xcc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x66, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr205, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 200, 0, 0, implicit $exec :: (store (s32) into %stack.175, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcd, 0x19, 0x11, 0x90, 0xcd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x64, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr206, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 196, 0, 0, implicit $exec :: (store (s32) into %stack.176, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xce, 0x19, 0x11, 0x90, 0xce, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x62, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr207, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 192, 0, 0, implicit $exec :: (store (s32) into %stack.177, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcf, 0x19, 0x11, 0x90, 0xcf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x60, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr208, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 188, 0, 0, implicit $exec :: (store (s32) into %stack.178, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd0, 0x19, 0x11, 0x90, 0xd0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x5e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr209, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 184, 0, 0, implicit $exec :: (store (s32) into %stack.179, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd1, 0x19, 0x11, 0x90, 0xd1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x5c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr210, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 180, 0, 0, implicit $exec :: (store (s32) into %stack.180, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd2, 0x19, 0x11, 0x90, 0xd2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x5a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr211, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 176, 0, 0, implicit $exec :: (store (s32) into %stack.181, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd3, 0x19, 0x11, 0x90, 0xd3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x58, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr212, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 172, 0, 0, implicit $exec :: (store (s32) into %stack.182, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd4, 0x19, 0x11, 0x90, 0xd4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x56, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr213, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 168, 0, 0, implicit $exec :: (store (s32) into %stack.183, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd5, 0x19, 0x11, 0x90, 0xd5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x54, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr214, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 164, 0, 0, implicit $exec :: (store (s32) into %stack.184, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd6, 0x19, 0x11, 0x90, 0xd6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x52, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr215, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 160, 0, 0, implicit $exec :: (store (s32) into %stack.185, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd7, 0x19, 0x11, 0x90, 0xd7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x50, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr216, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 156, 0, 0, implicit $exec :: (store (s32) into %stack.186, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd8, 0x19, 0x11, 0x90, 0xd8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x4e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr217, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 152, 0, 0, implicit $exec :: (store (s32) into %stack.187, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd9, 0x19, 0x11, 0x90, 0xd9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x4c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr218, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 148, 0, 0, implicit $exec :: (store (s32) into %stack.188, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xda, 0x19, 0x11, 0x90, 0xda, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x4a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr219, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 144, 0, 0, implicit $exec :: (store (s32) into %stack.189, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdb, 0x19, 0x11, 0x90, 0xdb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x48, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr220, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 140, 0, 0, implicit $exec :: (store (s32) into %stack.190, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdc, 0x19, 0x11, 0x90, 0xdc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x46, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr221, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 136, 0, 0, implicit $exec :: (store (s32) into %stack.191, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdd, 0x19, 0x11, 0x90, 0xdd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x44, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr222, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 132, 0, 0, implicit $exec :: (store (s32) into %stack.192, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xde, 0x19, 0x11, 0x90, 0xde, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x42, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr223, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 128, 0, 0, implicit $exec :: (store (s32) into %stack.193, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdf, 0x19, 0x11, 0x90, 0xdf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x40, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr224, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 124, 0, 0, implicit $exec :: (store (s32) into %stack.194, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe0, 0x19, 0x11, 0x90, 0xe0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x3e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr225, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 120, 0, 0, implicit $exec :: (store (s32) into %stack.195, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe1, 0x19, 0x11, 0x90, 0xe1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x3c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr226, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 116, 0, 0, implicit $exec :: (store (s32) into %stack.196, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe2, 0x19, 0x11, 0x90, 0xe2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x3a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr227, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 112, 0, 0, implicit $exec :: (store (s32) into %stack.197, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe3, 0x19, 0x11, 0x90, 0xe3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x38, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr228, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 108, 0, 0, implicit $exec :: (store (s32) into %stack.198, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe4, 0x19, 0x11, 0x90, 0xe4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x36, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr229, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 104, 0, 0, implicit $exec :: (store (s32) into %stack.199, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe5, 0x19, 0x11, 0x90, 0xe5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x34, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr230, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 100, 0, 0, implicit $exec :: (store (s32) into %stack.200, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe6, 0x19, 0x11, 0x90, 0xe6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x32, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr231, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 96, 0, 0, implicit $exec :: (store (s32) into %stack.201, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe7, 0x19, 0x11, 0x90, 0xe7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x30, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr232, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 92, 0, 0, implicit $exec :: (store (s32) into %stack.202, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe8, 0x19, 0x11, 0x90, 0xe8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x2e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr233, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 88, 0, 0, implicit $exec :: (store (s32) into %stack.203, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe9, 0x19, 0x11, 0x90, 0xe9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x2c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr234, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 84, 0, 0, implicit $exec :: (store (s32) into %stack.204, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xea, 0x19, 0x11, 0x90, 0xea, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x2a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr235, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 80, 0, 0, implicit $exec :: (store (s32) into %stack.205, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xeb, 0x19, 0x11, 0x90, 0xeb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x28, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr236, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 76, 0, 0, implicit $exec :: (store (s32) into %stack.206, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xec, 0x19, 0x11, 0x90, 0xec, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x26, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr237, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 72, 0, 0, implicit $exec :: (store (s32) into %stack.207, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xed, 0x19, 0x11, 0x90, 0xed, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x24, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr238, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 68, 0, 0, implicit $exec :: (store (s32) into %stack.208, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xee, 0x19, 0x11, 0x90, 0xee, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x22, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr239, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 64, 0, 0, implicit $exec :: (store (s32) into %stack.209, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xef, 0x19, 0x11, 0x90, 0xef, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x20, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr240, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 60, 0, 0, implicit $exec :: (store (s32) into %stack.210, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf0, 0x19, 0x11, 0x90, 0xf0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x1e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr241, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 56, 0, 0, implicit $exec :: (store (s32) into %stack.211, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf1, 0x19, 0x11, 0x90, 0xf1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x1c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr242, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 52, 0, 0, implicit $exec :: (store (s32) into %stack.212, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf2, 0x19, 0x11, 0x90, 0xf2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x1a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr243, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 48, 0, 0, implicit $exec :: (store (s32) into %stack.213, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf3, 0x19, 0x11, 0x90, 0xf3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x18, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr244, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 44, 0, 0, implicit $exec :: (store (s32) into %stack.214, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf4, 0x19, 0x11, 0x90, 0xf4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x16, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr245, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 40, 0, 0, implicit $exec :: (store (s32) into %stack.215, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf5, 0x19, 0x11, 0x90, 0xf5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x14, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr246, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 36, 0, 0, implicit $exec :: (store (s32) into %stack.216, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf6, 0x19, 0x11, 0x90, 0xf6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x12, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr247, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 32, 0, 0, implicit $exec :: (store (s32) into %stack.217, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf7, 0x19, 0x11, 0x90, 0xf7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x10, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr248, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 28, 0, 0, implicit $exec :: (store (s32) into %stack.218, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf8, 0x19, 0x11, 0x90, 0xf8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x0e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr249, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 24, 0, 0, implicit $exec :: (store (s32) into %stack.219, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf9, 0x19, 0x11, 0x90, 0xf9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x0c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr250, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 20, 0, 0, implicit $exec :: (store (s32) into %stack.220, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfa, 0x19, 0x11, 0x90, 0xfa, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x0a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr251, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 16, 0, 0, implicit $exec :: (store (s32) into %stack.221, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfb, 0x19, 0x11, 0x90, 0xfb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x08, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr252, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 12, 0, 0, implicit $exec :: (store (s32) into %stack.222, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfc, 0x19, 0x11, 0x90, 0xfc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x06, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr253, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.223, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfd, 0x19, 0x11, 0x90, 0xfd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x04, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr254, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.224, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfe, 0x19, 0x11, 0x90, 0xfe, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr255, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.225, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xff, 0x19, 0x10, 0x90, 0xff, 0x19, 0x16, 0xe9, 0x05, 0x00, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr40, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 704, 0, 0, implicit $exec :: (store (s32) into %stack.226, addrspace 5) ; GFX90A-NEXT: $vgpr40 = V_MOV_B32_e32 8904, implicit $exec @@ -4591,6 +10207,294 @@ ; GFX908-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX908-FLATSCR-NEXT: liveins: $agpr0_agpr1, $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX908-FLATSCR-NEXT: {{ $}} + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr32_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr33_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr34_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr35_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr36_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr37_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr38_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr39_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr40_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr41_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr42_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr43_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr44_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr45_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr46_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr47_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr48_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr49_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr50_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr51_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr52_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr53_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr54_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr55_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr56_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr57_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr58_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr59_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr60_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr61_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr62_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr63_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr64_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr65_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr66_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr67_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr68_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr69_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr70_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr71_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr72_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr73_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr74_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr75_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr76_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr77_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr78_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr79_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr80_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr81_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr82_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr83_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr84_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr85_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr86_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr87_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr88_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr89_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr90_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr91_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr92_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr93_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr94_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr95_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr96_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr97_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr98_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr99_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr100_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr101_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr102_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr103_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr104_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr105_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr106_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr107_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr108_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr109_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr110_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr111_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr112_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr113_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr114_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr115_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr116_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr117_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr118_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr119_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr120_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr121_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr122_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr123_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr124_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr125_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr126_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr127_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr128_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr129_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr130_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr131_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr132_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr133_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr134_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr135_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr136_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr137_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr138_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr139_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr140_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr141_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr142_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr143_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr144_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr145_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr146_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr147_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr148_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr149_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr150_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr151_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr152_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr153_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr154_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr155_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr156_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr157_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr158_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr159_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr160_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr161_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr162_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr163_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr164_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr165_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr166_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr167_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr168_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr169_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr170_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr171_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr172_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr173_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr174_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr175_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr176_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr177_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr178_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr179_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr180_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr181_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr182_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr183_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr184_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr185_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr186_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr187_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr188_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr189_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr190_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr191_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr192_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr193_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr194_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr195_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr196_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr197_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr198_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr199_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr200_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr201_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr202_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr203_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr204_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr205_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr206_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr207_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr208_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr209_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr210_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr211_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr212_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr213_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr214_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr215_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr216_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr217_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr218_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr219_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr220_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr221_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr222_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr223_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr224_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr225_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr226_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr227_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr228_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr229_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr230_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr231_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr232_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr233_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr234_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr235_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr236_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr237_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr238_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr239_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr240_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr241_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr242_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr243_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr244_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr245_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr246_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr247_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr248_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr249_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr250_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr251_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr252_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr253_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr254_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr255_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX908-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX908-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr1, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.2, addrspace 5) ; GFX908-FLATSCR-NEXT: $vgpr1 = V_MOV_B32_e32 $sgpr32, implicit $exec @@ -4616,230 +10520,566 @@ ; GFX90A-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX90A-FLATSCR-NEXT: liveins: $agpr32, $agpr33, $agpr34, $agpr35, $agpr36, $agpr37, $agpr38, $agpr39, $agpr40, $agpr41, $agpr42, $agpr43, $agpr44, $agpr45, $agpr46, $agpr47, $agpr48, $agpr49, $agpr50, $agpr51, $agpr52, $agpr53, $agpr54, $agpr55, $agpr56, $agpr57, $agpr58, $agpr59, $agpr60, $agpr61, $agpr62, $agpr63, $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15, $vgpr16, $vgpr17, $vgpr18, $vgpr19, $vgpr20, $vgpr21, $vgpr22, $vgpr23, $vgpr24, $vgpr25, $vgpr26, $vgpr27, $vgpr28, $vgpr29, $vgpr30, $vgpr31, $vgpr32, $vgpr33, $vgpr34, $vgpr35, $vgpr36, $vgpr37, $vgpr38, $vgpr39, $vgpr48, $vgpr49, $vgpr50, $vgpr51, $vgpr52, $vgpr53, $vgpr54, $vgpr55, $agpr0_agpr1, $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX90A-FLATSCR-NEXT: {{ $}} + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr32_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr33_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr34_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr35_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr36_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr37_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr38_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr39_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr48_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr49_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr50_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr51_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr52_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr53_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr54_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr55_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr32, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr32_lo16, $vgpr0_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr33, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr33_lo16, $vgpr1_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 killed $agpr34, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr34_lo16, $vgpr2_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr3 = V_ACCVGPR_READ_B32_e64 killed $agpr35, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr35_lo16, $vgpr3_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 killed $agpr36, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr36_lo16, $vgpr4_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr5 = V_ACCVGPR_READ_B32_e64 killed $agpr37, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr37_lo16, $vgpr5_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr6 = V_ACCVGPR_READ_B32_e64 killed $agpr38, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr38_lo16, $vgpr6_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr7 = V_ACCVGPR_READ_B32_e64 killed $agpr39, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr39_lo16, $vgpr7_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr8 = V_ACCVGPR_READ_B32_e64 killed $agpr40, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr40_lo16, $vgpr8_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr9 = V_ACCVGPR_READ_B32_e64 killed $agpr41, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr41_lo16, $vgpr9_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr10 = V_ACCVGPR_READ_B32_e64 killed $agpr42, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr42_lo16, $vgpr10_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr11 = V_ACCVGPR_READ_B32_e64 killed $agpr43, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr43_lo16, $vgpr11_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr12 = V_ACCVGPR_READ_B32_e64 killed $agpr44, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr44_lo16, $vgpr12_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr13 = V_ACCVGPR_READ_B32_e64 killed $agpr45, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr45_lo16, $vgpr13_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr14 = V_ACCVGPR_READ_B32_e64 killed $agpr46, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr46_lo16, $vgpr14_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr15 = V_ACCVGPR_READ_B32_e64 killed $agpr47, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr47_lo16, $vgpr15_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr16 = V_ACCVGPR_READ_B32_e64 killed $agpr48, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr48_lo16, $vgpr16_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr17 = V_ACCVGPR_READ_B32_e64 killed $agpr49, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr49_lo16, $vgpr17_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr18 = V_ACCVGPR_READ_B32_e64 killed $agpr50, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr50_lo16, $vgpr18_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr19 = V_ACCVGPR_READ_B32_e64 killed $agpr51, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr51_lo16, $vgpr19_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr20 = V_ACCVGPR_READ_B32_e64 killed $agpr52, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr52_lo16, $vgpr20_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr21 = V_ACCVGPR_READ_B32_e64 killed $agpr53, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr53_lo16, $vgpr21_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr22 = V_ACCVGPR_READ_B32_e64 killed $agpr54, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr54_lo16, $vgpr22_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr23 = V_ACCVGPR_READ_B32_e64 killed $agpr55, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr55_lo16, $vgpr23_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr24 = V_ACCVGPR_READ_B32_e64 killed $agpr56, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr56_lo16, $vgpr24_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr25 = V_ACCVGPR_READ_B32_e64 killed $agpr57, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr57_lo16, $vgpr25_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr26 = V_ACCVGPR_READ_B32_e64 killed $agpr58, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr58_lo16, $vgpr26_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr27 = V_ACCVGPR_READ_B32_e64 killed $agpr59, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr59_lo16, $vgpr27_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr28 = V_ACCVGPR_READ_B32_e64 killed $agpr60, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr60_lo16, $vgpr28_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr29 = V_ACCVGPR_READ_B32_e64 killed $agpr61, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr61_lo16, $vgpr29_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr30 = V_ACCVGPR_READ_B32_e64 killed $agpr62, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr62_lo16, $vgpr30_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr31 = V_ACCVGPR_READ_B32_e64 killed $agpr63, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr63_lo16, $vgpr31_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr32 = V_ACCVGPR_READ_B32_e64 killed $agpr64, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr64_lo16, $vgpr32_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr33 = V_ACCVGPR_READ_B32_e64 killed $agpr65, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr65_lo16, $vgpr33_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr34 = V_ACCVGPR_READ_B32_e64 killed $agpr66, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr66_lo16, $vgpr34_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr35 = V_ACCVGPR_READ_B32_e64 killed $agpr67, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr67_lo16, $vgpr35_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr36 = V_ACCVGPR_READ_B32_e64 killed $agpr68, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr68_lo16, $vgpr36_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr37 = V_ACCVGPR_READ_B32_e64 killed $agpr69, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr69_lo16, $vgpr37_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr38 = V_ACCVGPR_READ_B32_e64 killed $agpr70, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr70_lo16, $vgpr38_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr39 = V_ACCVGPR_READ_B32_e64 killed $agpr71, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr71_lo16, $vgpr39_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr48 = V_ACCVGPR_READ_B32_e64 killed $agpr72, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr72_lo16, $vgpr48_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr49 = V_ACCVGPR_READ_B32_e64 killed $agpr73, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr73_lo16, $vgpr49_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr50 = V_ACCVGPR_READ_B32_e64 killed $agpr74, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr74_lo16, $vgpr50_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr51 = V_ACCVGPR_READ_B32_e64 killed $agpr75, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr75_lo16, $vgpr51_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr52 = V_ACCVGPR_READ_B32_e64 killed $agpr76, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr76_lo16, $vgpr52_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr53 = V_ACCVGPR_READ_B32_e64 killed $agpr77, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr77_lo16, $vgpr53_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr54 = V_ACCVGPR_READ_B32_e64 killed $agpr78, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr78_lo16, $vgpr54_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr55 = V_ACCVGPR_READ_B32_e64 killed $agpr79, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr79_lo16, $vgpr55_lo16 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr80, $sgpr32, 700, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.50, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd0, 0x18, 0x12, 0x90, 0xd0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xde, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr81, $sgpr32, 696, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.51, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd1, 0x18, 0x12, 0x90, 0xd1, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xdc, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr82, $sgpr32, 692, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.52, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd2, 0x18, 0x12, 0x90, 0xd2, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xda, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr83, $sgpr32, 688, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.53, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd3, 0x18, 0x12, 0x90, 0xd3, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr84, $sgpr32, 684, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.54, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd4, 0x18, 0x12, 0x90, 0xd4, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr85, $sgpr32, 680, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.55, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd5, 0x18, 0x12, 0x90, 0xd5, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr86, $sgpr32, 676, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.56, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd6, 0x18, 0x12, 0x90, 0xd6, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr87, $sgpr32, 672, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.57, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd7, 0x18, 0x12, 0x90, 0xd7, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr88, $sgpr32, 668, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.58, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd8, 0x18, 0x12, 0x90, 0xd8, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xce, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr89, $sgpr32, 664, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.59, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd9, 0x18, 0x12, 0x90, 0xd9, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xcc, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr90, $sgpr32, 660, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.60, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xda, 0x18, 0x12, 0x90, 0xda, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xca, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr91, $sgpr32, 656, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.61, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdb, 0x18, 0x12, 0x90, 0xdb, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr92, $sgpr32, 652, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.62, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdc, 0x18, 0x12, 0x90, 0xdc, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr93, $sgpr32, 648, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.63, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdd, 0x18, 0x12, 0x90, 0xdd, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr94, $sgpr32, 644, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.64, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xde, 0x18, 0x12, 0x90, 0xde, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr95, $sgpr32, 640, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.65, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdf, 0x18, 0x12, 0x90, 0xdf, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr96, $sgpr32, 636, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.66, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe0, 0x18, 0x12, 0x90, 0xe0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xbe, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr97, $sgpr32, 632, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.67, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe1, 0x18, 0x12, 0x90, 0xe1, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xbc, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr98, $sgpr32, 628, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.68, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe2, 0x18, 0x12, 0x90, 0xe2, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xba, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr99, $sgpr32, 624, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.69, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe3, 0x18, 0x12, 0x90, 0xe3, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr100, $sgpr32, 620, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.70, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe4, 0x18, 0x12, 0x90, 0xe4, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr101, $sgpr32, 616, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.71, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe5, 0x18, 0x12, 0x90, 0xe5, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr102, $sgpr32, 612, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.72, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe6, 0x18, 0x12, 0x90, 0xe6, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr103, $sgpr32, 608, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.73, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe7, 0x18, 0x12, 0x90, 0xe7, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr104, $sgpr32, 604, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.74, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe8, 0x18, 0x12, 0x90, 0xe8, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xae, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr105, $sgpr32, 600, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.75, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe9, 0x18, 0x12, 0x90, 0xe9, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xac, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr106, $sgpr32, 596, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.76, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xea, 0x18, 0x12, 0x90, 0xea, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xaa, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr107, $sgpr32, 592, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.77, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xeb, 0x18, 0x12, 0x90, 0xeb, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr108, $sgpr32, 588, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.78, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xec, 0x18, 0x12, 0x90, 0xec, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr109, $sgpr32, 584, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.79, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xed, 0x18, 0x12, 0x90, 0xed, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr110, $sgpr32, 580, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.80, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xee, 0x18, 0x12, 0x90, 0xee, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr111, $sgpr32, 576, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.81, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xef, 0x18, 0x12, 0x90, 0xef, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr112, $sgpr32, 572, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.82, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf0, 0x18, 0x12, 0x90, 0xf0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x9e, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr113, $sgpr32, 568, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.83, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf1, 0x18, 0x12, 0x90, 0xf1, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x9c, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr114, $sgpr32, 564, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.84, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf2, 0x18, 0x12, 0x90, 0xf2, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x9a, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr115, $sgpr32, 560, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.85, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf3, 0x18, 0x12, 0x90, 0xf3, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x98, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr116, $sgpr32, 556, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.86, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf4, 0x18, 0x12, 0x90, 0xf4, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x96, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr117, $sgpr32, 552, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.87, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf5, 0x18, 0x12, 0x90, 0xf5, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x94, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr118, $sgpr32, 548, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.88, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf6, 0x18, 0x12, 0x90, 0xf6, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x92, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr119, $sgpr32, 544, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.89, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf7, 0x18, 0x12, 0x90, 0xf7, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x90, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr120, $sgpr32, 540, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.90, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf8, 0x18, 0x12, 0x90, 0xf8, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x8e, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr121, $sgpr32, 536, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.91, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf9, 0x18, 0x12, 0x90, 0xf9, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x8c, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr122, $sgpr32, 532, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.92, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfa, 0x18, 0x12, 0x90, 0xfa, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x8a, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr123, $sgpr32, 528, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.93, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfb, 0x18, 0x12, 0x90, 0xfb, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x88, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr124, $sgpr32, 524, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.94, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfc, 0x18, 0x12, 0x90, 0xfc, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x86, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr125, $sgpr32, 520, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.95, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfd, 0x18, 0x12, 0x90, 0xfd, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x84, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr126, $sgpr32, 516, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.96, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfe, 0x18, 0x12, 0x90, 0xfe, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x82, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr127, $sgpr32, 512, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.97, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xff, 0x18, 0x12, 0x90, 0xff, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x80, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr128, $sgpr32, 508, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.98, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x80, 0x19, 0x12, 0x90, 0x80, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xfe, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr129, $sgpr32, 504, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.99, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x81, 0x19, 0x12, 0x90, 0x81, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xfc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr130, $sgpr32, 500, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.100, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x82, 0x19, 0x12, 0x90, 0x82, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xfa, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr131, $sgpr32, 496, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.101, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x83, 0x19, 0x12, 0x90, 0x83, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr132, $sgpr32, 492, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.102, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x84, 0x19, 0x12, 0x90, 0x84, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr133, $sgpr32, 488, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.103, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x85, 0x19, 0x12, 0x90, 0x85, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr134, $sgpr32, 484, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.104, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x86, 0x19, 0x12, 0x90, 0x86, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr135, $sgpr32, 480, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.105, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x87, 0x19, 0x12, 0x90, 0x87, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr136, $sgpr32, 476, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.106, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x88, 0x19, 0x12, 0x90, 0x88, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xee, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr137, $sgpr32, 472, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.107, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x89, 0x19, 0x12, 0x90, 0x89, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xec, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr138, $sgpr32, 468, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.108, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8a, 0x19, 0x12, 0x90, 0x8a, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xea, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr139, $sgpr32, 464, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.109, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8b, 0x19, 0x12, 0x90, 0x8b, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr140, $sgpr32, 460, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.110, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8c, 0x19, 0x12, 0x90, 0x8c, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr141, $sgpr32, 456, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.111, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8d, 0x19, 0x12, 0x90, 0x8d, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr142, $sgpr32, 452, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.112, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8e, 0x19, 0x12, 0x90, 0x8e, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr143, $sgpr32, 448, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.113, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8f, 0x19, 0x12, 0x90, 0x8f, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr144, $sgpr32, 444, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.114, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x90, 0x19, 0x12, 0x90, 0x90, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xde, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr145, $sgpr32, 440, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.115, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x91, 0x19, 0x12, 0x90, 0x91, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xdc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr146, $sgpr32, 436, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.116, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x92, 0x19, 0x12, 0x90, 0x92, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xda, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr147, $sgpr32, 432, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.117, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x93, 0x19, 0x12, 0x90, 0x93, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr148, $sgpr32, 428, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.118, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x94, 0x19, 0x12, 0x90, 0x94, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr149, $sgpr32, 424, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.119, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x95, 0x19, 0x12, 0x90, 0x95, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr150, $sgpr32, 420, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.120, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x96, 0x19, 0x12, 0x90, 0x96, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr151, $sgpr32, 416, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.121, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x97, 0x19, 0x12, 0x90, 0x97, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr152, $sgpr32, 412, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.122, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x98, 0x19, 0x12, 0x90, 0x98, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xce, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr153, $sgpr32, 408, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.123, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x99, 0x19, 0x12, 0x90, 0x99, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xcc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr154, $sgpr32, 404, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.124, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9a, 0x19, 0x12, 0x90, 0x9a, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xca, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr155, $sgpr32, 400, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.125, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9b, 0x19, 0x12, 0x90, 0x9b, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr156, $sgpr32, 396, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.126, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9c, 0x19, 0x12, 0x90, 0x9c, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr157, $sgpr32, 392, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.127, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9d, 0x19, 0x12, 0x90, 0x9d, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr158, $sgpr32, 388, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.128, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9e, 0x19, 0x12, 0x90, 0x9e, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr159, $sgpr32, 384, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.129, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9f, 0x19, 0x12, 0x90, 0x9f, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr160, $sgpr32, 380, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.130, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa0, 0x19, 0x12, 0x90, 0xa0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xbe, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr161, $sgpr32, 376, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.131, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa1, 0x19, 0x12, 0x90, 0xa1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xbc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr162, $sgpr32, 372, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.132, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa2, 0x19, 0x12, 0x90, 0xa2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xba, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr163, $sgpr32, 368, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.133, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa3, 0x19, 0x12, 0x90, 0xa3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr164, $sgpr32, 364, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.134, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa4, 0x19, 0x12, 0x90, 0xa4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr165, $sgpr32, 360, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.135, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa5, 0x19, 0x12, 0x90, 0xa5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr166, $sgpr32, 356, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.136, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa6, 0x19, 0x12, 0x90, 0xa6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr167, $sgpr32, 352, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.137, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa7, 0x19, 0x12, 0x90, 0xa7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr168, $sgpr32, 348, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.138, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa8, 0x19, 0x12, 0x90, 0xa8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xae, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr169, $sgpr32, 344, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.139, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa9, 0x19, 0x12, 0x90, 0xa9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xac, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr170, $sgpr32, 340, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.140, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xaa, 0x19, 0x12, 0x90, 0xaa, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xaa, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr171, $sgpr32, 336, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.141, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xab, 0x19, 0x12, 0x90, 0xab, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr172, $sgpr32, 332, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.142, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xac, 0x19, 0x12, 0x90, 0xac, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr173, $sgpr32, 328, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.143, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xad, 0x19, 0x12, 0x90, 0xad, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr174, $sgpr32, 324, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.144, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xae, 0x19, 0x12, 0x90, 0xae, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr175, $sgpr32, 320, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.145, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xaf, 0x19, 0x12, 0x90, 0xaf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr176, $sgpr32, 316, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.146, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb0, 0x19, 0x12, 0x90, 0xb0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x9e, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr177, $sgpr32, 312, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.147, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb1, 0x19, 0x12, 0x90, 0xb1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x9c, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr178, $sgpr32, 308, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.148, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb2, 0x19, 0x12, 0x90, 0xb2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x9a, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr179, $sgpr32, 304, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.149, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb3, 0x19, 0x12, 0x90, 0xb3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x98, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr180, $sgpr32, 300, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.150, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb4, 0x19, 0x12, 0x90, 0xb4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x96, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr181, $sgpr32, 296, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.151, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb5, 0x19, 0x12, 0x90, 0xb5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x94, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr182, $sgpr32, 292, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.152, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb6, 0x19, 0x12, 0x90, 0xb6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x92, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr183, $sgpr32, 288, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.153, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb7, 0x19, 0x12, 0x90, 0xb7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x90, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr184, $sgpr32, 284, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.154, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb8, 0x19, 0x12, 0x90, 0xb8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x8e, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr185, $sgpr32, 280, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.155, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb9, 0x19, 0x12, 0x90, 0xb9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x8c, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr186, $sgpr32, 276, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.156, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xba, 0x19, 0x12, 0x90, 0xba, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x8a, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr187, $sgpr32, 272, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.157, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbb, 0x19, 0x12, 0x90, 0xbb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x88, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr188, $sgpr32, 268, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.158, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbc, 0x19, 0x12, 0x90, 0xbc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x86, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr189, $sgpr32, 264, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.159, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbd, 0x19, 0x12, 0x90, 0xbd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x84, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr190, $sgpr32, 260, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.160, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbe, 0x19, 0x12, 0x90, 0xbe, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x82, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr191, $sgpr32, 256, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.161, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbf, 0x19, 0x12, 0x90, 0xbf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x80, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr192, $sgpr32, 252, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.162, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc0, 0x19, 0x11, 0x90, 0xc0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x7e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr193, $sgpr32, 248, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.163, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc1, 0x19, 0x11, 0x90, 0xc1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x7c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr194, $sgpr32, 244, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.164, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc2, 0x19, 0x11, 0x90, 0xc2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x7a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr195, $sgpr32, 240, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.165, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc3, 0x19, 0x11, 0x90, 0xc3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x78, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr196, $sgpr32, 236, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.166, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc4, 0x19, 0x11, 0x90, 0xc4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x76, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr197, $sgpr32, 232, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.167, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc5, 0x19, 0x11, 0x90, 0xc5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x74, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr198, $sgpr32, 228, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.168, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc6, 0x19, 0x11, 0x90, 0xc6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x72, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr199, $sgpr32, 224, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.169, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc7, 0x19, 0x11, 0x90, 0xc7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x70, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr200, $sgpr32, 220, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.170, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc8, 0x19, 0x11, 0x90, 0xc8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x6e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr201, $sgpr32, 216, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.171, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc9, 0x19, 0x11, 0x90, 0xc9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x6c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr202, $sgpr32, 212, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.172, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xca, 0x19, 0x11, 0x90, 0xca, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x6a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr203, $sgpr32, 208, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.173, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcb, 0x19, 0x11, 0x90, 0xcb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x68, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr204, $sgpr32, 204, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.174, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcc, 0x19, 0x11, 0x90, 0xcc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x66, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr205, $sgpr32, 200, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.175, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcd, 0x19, 0x11, 0x90, 0xcd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x64, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr206, $sgpr32, 196, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.176, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xce, 0x19, 0x11, 0x90, 0xce, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x62, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr207, $sgpr32, 192, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.177, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcf, 0x19, 0x11, 0x90, 0xcf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x60, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr208, $sgpr32, 188, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.178, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd0, 0x19, 0x11, 0x90, 0xd0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x5e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr209, $sgpr32, 184, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.179, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd1, 0x19, 0x11, 0x90, 0xd1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x5c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr210, $sgpr32, 180, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.180, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd2, 0x19, 0x11, 0x90, 0xd2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x5a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr211, $sgpr32, 176, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.181, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd3, 0x19, 0x11, 0x90, 0xd3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x58, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr212, $sgpr32, 172, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.182, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd4, 0x19, 0x11, 0x90, 0xd4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x56, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr213, $sgpr32, 168, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.183, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd5, 0x19, 0x11, 0x90, 0xd5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x54, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr214, $sgpr32, 164, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.184, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd6, 0x19, 0x11, 0x90, 0xd6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x52, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr215, $sgpr32, 160, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.185, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd7, 0x19, 0x11, 0x90, 0xd7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x50, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr216, $sgpr32, 156, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.186, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd8, 0x19, 0x11, 0x90, 0xd8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x4e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr217, $sgpr32, 152, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.187, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd9, 0x19, 0x11, 0x90, 0xd9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x4c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr218, $sgpr32, 148, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.188, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xda, 0x19, 0x11, 0x90, 0xda, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x4a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr219, $sgpr32, 144, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.189, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdb, 0x19, 0x11, 0x90, 0xdb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x48, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr220, $sgpr32, 140, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.190, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdc, 0x19, 0x11, 0x90, 0xdc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x46, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr221, $sgpr32, 136, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.191, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdd, 0x19, 0x11, 0x90, 0xdd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x44, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr222, $sgpr32, 132, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.192, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xde, 0x19, 0x11, 0x90, 0xde, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x42, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr223, $sgpr32, 128, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.193, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdf, 0x19, 0x11, 0x90, 0xdf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x40, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr224, $sgpr32, 124, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.194, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe0, 0x19, 0x11, 0x90, 0xe0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x3e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr225, $sgpr32, 120, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.195, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe1, 0x19, 0x11, 0x90, 0xe1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x3c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr226, $sgpr32, 116, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.196, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe2, 0x19, 0x11, 0x90, 0xe2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x3a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr227, $sgpr32, 112, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.197, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe3, 0x19, 0x11, 0x90, 0xe3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x38, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr228, $sgpr32, 108, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.198, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe4, 0x19, 0x11, 0x90, 0xe4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x36, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr229, $sgpr32, 104, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.199, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe5, 0x19, 0x11, 0x90, 0xe5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x34, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr230, $sgpr32, 100, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.200, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe6, 0x19, 0x11, 0x90, 0xe6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x32, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr231, $sgpr32, 96, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.201, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe7, 0x19, 0x11, 0x90, 0xe7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x30, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr232, $sgpr32, 92, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.202, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe8, 0x19, 0x11, 0x90, 0xe8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x2e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr233, $sgpr32, 88, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.203, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe9, 0x19, 0x11, 0x90, 0xe9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x2c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr234, $sgpr32, 84, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.204, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xea, 0x19, 0x11, 0x90, 0xea, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x2a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr235, $sgpr32, 80, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.205, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xeb, 0x19, 0x11, 0x90, 0xeb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x28, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr236, $sgpr32, 76, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.206, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xec, 0x19, 0x11, 0x90, 0xec, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x26, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr237, $sgpr32, 72, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.207, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xed, 0x19, 0x11, 0x90, 0xed, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x24, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr238, $sgpr32, 68, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.208, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xee, 0x19, 0x11, 0x90, 0xee, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x22, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr239, $sgpr32, 64, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.209, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xef, 0x19, 0x11, 0x90, 0xef, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x20, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr240, $sgpr32, 60, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.210, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf0, 0x19, 0x11, 0x90, 0xf0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x1e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr241, $sgpr32, 56, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.211, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf1, 0x19, 0x11, 0x90, 0xf1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x1c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr242, $sgpr32, 52, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.212, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf2, 0x19, 0x11, 0x90, 0xf2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x1a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr243, $sgpr32, 48, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.213, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf3, 0x19, 0x11, 0x90, 0xf3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x18, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr244, $sgpr32, 44, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.214, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf4, 0x19, 0x11, 0x90, 0xf4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x16, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr245, $sgpr32, 40, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.215, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf5, 0x19, 0x11, 0x90, 0xf5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x14, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr246, $sgpr32, 36, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.216, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf6, 0x19, 0x11, 0x90, 0xf6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x12, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr247, $sgpr32, 32, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.217, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf7, 0x19, 0x11, 0x90, 0xf7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x10, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr248, $sgpr32, 28, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.218, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf8, 0x19, 0x11, 0x90, 0xf8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x0e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr249, $sgpr32, 24, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.219, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf9, 0x19, 0x11, 0x90, 0xf9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x0c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr250, $sgpr32, 20, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.220, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfa, 0x19, 0x11, 0x90, 0xfa, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x0a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr251, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.221, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfb, 0x19, 0x11, 0x90, 0xfb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x08, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr252, $sgpr32, 12, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.222, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfc, 0x19, 0x11, 0x90, 0xfc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x06, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr253, $sgpr32, 8, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.223, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfd, 0x19, 0x11, 0x90, 0xfd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x04, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr254, $sgpr32, 4, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.224, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfe, 0x19, 0x11, 0x90, 0xfe, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr255, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.225, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xff, 0x19, 0x10, 0x90, 0xff, 0x19, 0x16, 0xe9, 0x05, 0x00, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr40, $sgpr32, 704, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.226, addrspace 5) ; GFX90A-FLATSCR-NEXT: $vgpr40 = V_MOV_B32_e32 $sgpr32, implicit $exec @@ -5114,6 +11354,294 @@ ; GFX908-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX908-NEXT: liveins: $agpr0_agpr1, $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX908-NEXT: {{ $}} + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr32_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr33_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr34_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr35_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr36_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr37_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr38_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr39_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr40_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr41_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr42_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr43_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr44_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr45_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr46_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr47_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr48_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr49_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr50_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr51_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr52_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr53_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr54_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr55_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr56_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr57_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr58_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr59_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr60_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr61_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr62_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr63_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr64_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr65_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr66_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr67_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr68_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr69_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr70_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr71_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr72_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr73_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr74_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr75_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr76_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr77_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr78_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr79_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr80_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr81_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr82_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr83_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr84_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr85_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr86_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr87_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr88_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr89_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr90_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr91_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr92_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr93_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr94_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr95_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr96_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr97_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr98_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr99_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr100_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr101_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr102_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr103_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr104_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr105_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr106_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr107_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr108_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr109_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr110_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr111_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr112_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr113_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr114_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr115_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr116_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr117_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr118_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr119_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr120_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr121_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr122_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr123_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr124_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr125_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr126_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr127_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr128_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr129_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr130_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr131_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr132_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr133_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr134_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr135_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr136_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr137_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr138_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr139_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr140_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr141_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr142_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr143_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr144_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr145_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr146_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr147_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr148_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr149_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr150_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr151_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr152_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr153_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr154_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr155_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr156_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr157_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr158_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr159_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr160_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr161_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr162_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr163_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr164_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr165_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr166_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr167_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr168_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr169_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr170_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr171_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr172_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr173_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr174_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr175_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr176_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr177_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr178_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr179_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr180_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr181_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr182_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr183_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr184_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr185_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr186_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr187_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr188_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr189_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr190_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr191_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr192_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr193_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr194_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr195_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr196_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr197_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr198_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr199_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr200_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr201_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr202_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr203_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr204_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr205_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr206_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr207_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr208_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr209_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr210_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr211_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr212_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr213_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr214_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr215_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr216_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr217_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr218_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr219_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr220_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr221_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr222_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr223_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr224_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr225_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr226_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr227_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr228_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr229_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr230_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr231_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr232_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr233_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr234_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr235_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr236_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr237_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr238_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr239_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr240_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr241_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr242_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr243_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr244_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr245_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr246_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr247_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr248_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr249_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr250_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr251_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr252_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr253_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr254_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr255_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX908-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX908-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.2, addrspace 5) ; GFX908-NEXT: $vgpr1 = V_MOV_B32_e32 8200, implicit $exec @@ -5140,230 +11668,566 @@ ; GFX90A-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX90A-NEXT: liveins: $agpr32, $agpr33, $agpr34, $agpr35, $agpr36, $agpr37, $agpr38, $agpr39, $agpr40, $agpr41, $agpr42, $agpr43, $agpr44, $agpr45, $agpr46, $agpr47, $agpr48, $agpr49, $agpr50, $agpr51, $agpr52, $agpr53, $agpr54, $agpr55, $agpr56, $agpr57, $agpr58, $agpr59, $agpr60, $agpr61, $agpr62, $agpr63, $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15, $vgpr16, $vgpr17, $vgpr18, $vgpr19, $vgpr20, $vgpr21, $vgpr22, $vgpr23, $vgpr24, $vgpr25, $vgpr26, $vgpr27, $vgpr28, $vgpr29, $vgpr30, $vgpr31, $vgpr32, $vgpr33, $vgpr34, $vgpr35, $vgpr36, $vgpr37, $vgpr38, $vgpr39, $vgpr48, $vgpr49, $vgpr50, $vgpr51, $vgpr52, $vgpr53, $vgpr54, $vgpr55, $agpr0_agpr1, $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX90A-NEXT: {{ $}} + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr32_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr33_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr34_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr35_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr36_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr37_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr38_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr39_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr48_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr49_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr50_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr51_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr52_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr53_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr54_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr55_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX90A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr32, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr32_lo16, $vgpr0_lo16 ; GFX90A-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr33, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr33_lo16, $vgpr1_lo16 ; GFX90A-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 killed $agpr34, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr34_lo16, $vgpr2_lo16 ; GFX90A-NEXT: $vgpr3 = V_ACCVGPR_READ_B32_e64 killed $agpr35, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr35_lo16, $vgpr3_lo16 ; GFX90A-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 killed $agpr36, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr36_lo16, $vgpr4_lo16 ; GFX90A-NEXT: $vgpr5 = V_ACCVGPR_READ_B32_e64 killed $agpr37, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr37_lo16, $vgpr5_lo16 ; GFX90A-NEXT: $vgpr6 = V_ACCVGPR_READ_B32_e64 killed $agpr38, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr38_lo16, $vgpr6_lo16 ; GFX90A-NEXT: $vgpr7 = V_ACCVGPR_READ_B32_e64 killed $agpr39, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr39_lo16, $vgpr7_lo16 ; GFX90A-NEXT: $vgpr8 = V_ACCVGPR_READ_B32_e64 killed $agpr40, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr40_lo16, $vgpr8_lo16 ; GFX90A-NEXT: $vgpr9 = V_ACCVGPR_READ_B32_e64 killed $agpr41, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr41_lo16, $vgpr9_lo16 ; GFX90A-NEXT: $vgpr10 = V_ACCVGPR_READ_B32_e64 killed $agpr42, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr42_lo16, $vgpr10_lo16 ; GFX90A-NEXT: $vgpr11 = V_ACCVGPR_READ_B32_e64 killed $agpr43, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr43_lo16, $vgpr11_lo16 ; GFX90A-NEXT: $vgpr12 = V_ACCVGPR_READ_B32_e64 killed $agpr44, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr44_lo16, $vgpr12_lo16 ; GFX90A-NEXT: $vgpr13 = V_ACCVGPR_READ_B32_e64 killed $agpr45, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr45_lo16, $vgpr13_lo16 ; GFX90A-NEXT: $vgpr14 = V_ACCVGPR_READ_B32_e64 killed $agpr46, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr46_lo16, $vgpr14_lo16 ; GFX90A-NEXT: $vgpr15 = V_ACCVGPR_READ_B32_e64 killed $agpr47, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr47_lo16, $vgpr15_lo16 ; GFX90A-NEXT: $vgpr16 = V_ACCVGPR_READ_B32_e64 killed $agpr48, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr48_lo16, $vgpr16_lo16 ; GFX90A-NEXT: $vgpr17 = V_ACCVGPR_READ_B32_e64 killed $agpr49, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr49_lo16, $vgpr17_lo16 ; GFX90A-NEXT: $vgpr18 = V_ACCVGPR_READ_B32_e64 killed $agpr50, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr50_lo16, $vgpr18_lo16 ; GFX90A-NEXT: $vgpr19 = V_ACCVGPR_READ_B32_e64 killed $agpr51, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr51_lo16, $vgpr19_lo16 ; GFX90A-NEXT: $vgpr20 = V_ACCVGPR_READ_B32_e64 killed $agpr52, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr52_lo16, $vgpr20_lo16 ; GFX90A-NEXT: $vgpr21 = V_ACCVGPR_READ_B32_e64 killed $agpr53, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr53_lo16, $vgpr21_lo16 ; GFX90A-NEXT: $vgpr22 = V_ACCVGPR_READ_B32_e64 killed $agpr54, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr54_lo16, $vgpr22_lo16 ; GFX90A-NEXT: $vgpr23 = V_ACCVGPR_READ_B32_e64 killed $agpr55, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr55_lo16, $vgpr23_lo16 ; GFX90A-NEXT: $vgpr24 = V_ACCVGPR_READ_B32_e64 killed $agpr56, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr56_lo16, $vgpr24_lo16 ; GFX90A-NEXT: $vgpr25 = V_ACCVGPR_READ_B32_e64 killed $agpr57, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr57_lo16, $vgpr25_lo16 ; GFX90A-NEXT: $vgpr26 = V_ACCVGPR_READ_B32_e64 killed $agpr58, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr58_lo16, $vgpr26_lo16 ; GFX90A-NEXT: $vgpr27 = V_ACCVGPR_READ_B32_e64 killed $agpr59, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr59_lo16, $vgpr27_lo16 ; GFX90A-NEXT: $vgpr28 = V_ACCVGPR_READ_B32_e64 killed $agpr60, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr60_lo16, $vgpr28_lo16 ; GFX90A-NEXT: $vgpr29 = V_ACCVGPR_READ_B32_e64 killed $agpr61, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr61_lo16, $vgpr29_lo16 ; GFX90A-NEXT: $vgpr30 = V_ACCVGPR_READ_B32_e64 killed $agpr62, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr62_lo16, $vgpr30_lo16 ; GFX90A-NEXT: $vgpr31 = V_ACCVGPR_READ_B32_e64 killed $agpr63, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr63_lo16, $vgpr31_lo16 ; GFX90A-NEXT: $vgpr32 = V_ACCVGPR_READ_B32_e64 killed $agpr64, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr64_lo16, $vgpr32_lo16 ; GFX90A-NEXT: $vgpr33 = V_ACCVGPR_READ_B32_e64 killed $agpr65, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr65_lo16, $vgpr33_lo16 ; GFX90A-NEXT: $vgpr34 = V_ACCVGPR_READ_B32_e64 killed $agpr66, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr66_lo16, $vgpr34_lo16 ; GFX90A-NEXT: $vgpr35 = V_ACCVGPR_READ_B32_e64 killed $agpr67, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr67_lo16, $vgpr35_lo16 ; GFX90A-NEXT: $vgpr36 = V_ACCVGPR_READ_B32_e64 killed $agpr68, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr68_lo16, $vgpr36_lo16 ; GFX90A-NEXT: $vgpr37 = V_ACCVGPR_READ_B32_e64 killed $agpr69, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr69_lo16, $vgpr37_lo16 ; GFX90A-NEXT: $vgpr38 = V_ACCVGPR_READ_B32_e64 killed $agpr70, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr70_lo16, $vgpr38_lo16 ; GFX90A-NEXT: $vgpr39 = V_ACCVGPR_READ_B32_e64 killed $agpr71, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr71_lo16, $vgpr39_lo16 ; GFX90A-NEXT: $vgpr48 = V_ACCVGPR_READ_B32_e64 killed $agpr72, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr72_lo16, $vgpr48_lo16 ; GFX90A-NEXT: $vgpr49 = V_ACCVGPR_READ_B32_e64 killed $agpr73, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr73_lo16, $vgpr49_lo16 ; GFX90A-NEXT: $vgpr50 = V_ACCVGPR_READ_B32_e64 killed $agpr74, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr74_lo16, $vgpr50_lo16 ; GFX90A-NEXT: $vgpr51 = V_ACCVGPR_READ_B32_e64 killed $agpr75, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr75_lo16, $vgpr51_lo16 ; GFX90A-NEXT: $vgpr52 = V_ACCVGPR_READ_B32_e64 killed $agpr76, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr76_lo16, $vgpr52_lo16 ; GFX90A-NEXT: $vgpr53 = V_ACCVGPR_READ_B32_e64 killed $agpr77, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr77_lo16, $vgpr53_lo16 ; GFX90A-NEXT: $vgpr54 = V_ACCVGPR_READ_B32_e64 killed $agpr78, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr78_lo16, $vgpr54_lo16 ; GFX90A-NEXT: $vgpr55 = V_ACCVGPR_READ_B32_e64 killed $agpr79, implicit $exec + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION register $agpr79_lo16, $vgpr55_lo16 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr80, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 700, 0, 0, implicit $exec :: (store (s32) into %stack.50, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd0, 0x18, 0x12, 0x90, 0xd0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xde, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr81, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 696, 0, 0, implicit $exec :: (store (s32) into %stack.51, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd1, 0x18, 0x12, 0x90, 0xd1, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xdc, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr82, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 692, 0, 0, implicit $exec :: (store (s32) into %stack.52, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd2, 0x18, 0x12, 0x90, 0xd2, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xda, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr83, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 688, 0, 0, implicit $exec :: (store (s32) into %stack.53, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd3, 0x18, 0x12, 0x90, 0xd3, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr84, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 684, 0, 0, implicit $exec :: (store (s32) into %stack.54, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd4, 0x18, 0x12, 0x90, 0xd4, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr85, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 680, 0, 0, implicit $exec :: (store (s32) into %stack.55, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd5, 0x18, 0x12, 0x90, 0xd5, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr86, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 676, 0, 0, implicit $exec :: (store (s32) into %stack.56, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd6, 0x18, 0x12, 0x90, 0xd6, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr87, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 672, 0, 0, implicit $exec :: (store (s32) into %stack.57, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd7, 0x18, 0x12, 0x90, 0xd7, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr88, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 668, 0, 0, implicit $exec :: (store (s32) into %stack.58, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd8, 0x18, 0x12, 0x90, 0xd8, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xce, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr89, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 664, 0, 0, implicit $exec :: (store (s32) into %stack.59, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd9, 0x18, 0x12, 0x90, 0xd9, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xcc, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr90, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 660, 0, 0, implicit $exec :: (store (s32) into %stack.60, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xda, 0x18, 0x12, 0x90, 0xda, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xca, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr91, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 656, 0, 0, implicit $exec :: (store (s32) into %stack.61, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdb, 0x18, 0x12, 0x90, 0xdb, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr92, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 652, 0, 0, implicit $exec :: (store (s32) into %stack.62, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdc, 0x18, 0x12, 0x90, 0xdc, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr93, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 648, 0, 0, implicit $exec :: (store (s32) into %stack.63, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdd, 0x18, 0x12, 0x90, 0xdd, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr94, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 644, 0, 0, implicit $exec :: (store (s32) into %stack.64, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xde, 0x18, 0x12, 0x90, 0xde, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr95, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 640, 0, 0, implicit $exec :: (store (s32) into %stack.65, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdf, 0x18, 0x12, 0x90, 0xdf, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr96, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 636, 0, 0, implicit $exec :: (store (s32) into %stack.66, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe0, 0x18, 0x12, 0x90, 0xe0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xbe, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr97, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 632, 0, 0, implicit $exec :: (store (s32) into %stack.67, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe1, 0x18, 0x12, 0x90, 0xe1, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xbc, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr98, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 628, 0, 0, implicit $exec :: (store (s32) into %stack.68, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe2, 0x18, 0x12, 0x90, 0xe2, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xba, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr99, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 624, 0, 0, implicit $exec :: (store (s32) into %stack.69, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe3, 0x18, 0x12, 0x90, 0xe3, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr100, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 620, 0, 0, implicit $exec :: (store (s32) into %stack.70, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe4, 0x18, 0x12, 0x90, 0xe4, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr101, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 616, 0, 0, implicit $exec :: (store (s32) into %stack.71, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe5, 0x18, 0x12, 0x90, 0xe5, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr102, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 612, 0, 0, implicit $exec :: (store (s32) into %stack.72, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe6, 0x18, 0x12, 0x90, 0xe6, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr103, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 608, 0, 0, implicit $exec :: (store (s32) into %stack.73, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe7, 0x18, 0x12, 0x90, 0xe7, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr104, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 604, 0, 0, implicit $exec :: (store (s32) into %stack.74, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe8, 0x18, 0x12, 0x90, 0xe8, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xae, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr105, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 600, 0, 0, implicit $exec :: (store (s32) into %stack.75, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe9, 0x18, 0x12, 0x90, 0xe9, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xac, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr106, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 596, 0, 0, implicit $exec :: (store (s32) into %stack.76, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xea, 0x18, 0x12, 0x90, 0xea, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xaa, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr107, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 592, 0, 0, implicit $exec :: (store (s32) into %stack.77, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xeb, 0x18, 0x12, 0x90, 0xeb, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr108, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 588, 0, 0, implicit $exec :: (store (s32) into %stack.78, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xec, 0x18, 0x12, 0x90, 0xec, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr109, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 584, 0, 0, implicit $exec :: (store (s32) into %stack.79, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xed, 0x18, 0x12, 0x90, 0xed, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr110, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 580, 0, 0, implicit $exec :: (store (s32) into %stack.80, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xee, 0x18, 0x12, 0x90, 0xee, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr111, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 576, 0, 0, implicit $exec :: (store (s32) into %stack.81, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xef, 0x18, 0x12, 0x90, 0xef, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr112, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 572, 0, 0, implicit $exec :: (store (s32) into %stack.82, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf0, 0x18, 0x12, 0x90, 0xf0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x9e, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr113, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 568, 0, 0, implicit $exec :: (store (s32) into %stack.83, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf1, 0x18, 0x12, 0x90, 0xf1, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x9c, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr114, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 564, 0, 0, implicit $exec :: (store (s32) into %stack.84, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf2, 0x18, 0x12, 0x90, 0xf2, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x9a, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr115, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 560, 0, 0, implicit $exec :: (store (s32) into %stack.85, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf3, 0x18, 0x12, 0x90, 0xf3, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x98, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr116, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 556, 0, 0, implicit $exec :: (store (s32) into %stack.86, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf4, 0x18, 0x12, 0x90, 0xf4, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x96, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr117, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 552, 0, 0, implicit $exec :: (store (s32) into %stack.87, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf5, 0x18, 0x12, 0x90, 0xf5, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x94, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr118, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 548, 0, 0, implicit $exec :: (store (s32) into %stack.88, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf6, 0x18, 0x12, 0x90, 0xf6, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x92, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr119, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 544, 0, 0, implicit $exec :: (store (s32) into %stack.89, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf7, 0x18, 0x12, 0x90, 0xf7, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x90, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr120, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 540, 0, 0, implicit $exec :: (store (s32) into %stack.90, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf8, 0x18, 0x12, 0x90, 0xf8, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x8e, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr121, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 536, 0, 0, implicit $exec :: (store (s32) into %stack.91, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf9, 0x18, 0x12, 0x90, 0xf9, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x8c, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr122, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 532, 0, 0, implicit $exec :: (store (s32) into %stack.92, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfa, 0x18, 0x12, 0x90, 0xfa, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x8a, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr123, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 528, 0, 0, implicit $exec :: (store (s32) into %stack.93, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfb, 0x18, 0x12, 0x90, 0xfb, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x88, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr124, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 524, 0, 0, implicit $exec :: (store (s32) into %stack.94, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfc, 0x18, 0x12, 0x90, 0xfc, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x86, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr125, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 520, 0, 0, implicit $exec :: (store (s32) into %stack.95, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfd, 0x18, 0x12, 0x90, 0xfd, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x84, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr126, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 516, 0, 0, implicit $exec :: (store (s32) into %stack.96, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfe, 0x18, 0x12, 0x90, 0xfe, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x82, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr127, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 512, 0, 0, implicit $exec :: (store (s32) into %stack.97, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xff, 0x18, 0x12, 0x90, 0xff, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x80, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr128, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 508, 0, 0, implicit $exec :: (store (s32) into %stack.98, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x80, 0x19, 0x12, 0x90, 0x80, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xfe, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr129, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 504, 0, 0, implicit $exec :: (store (s32) into %stack.99, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x81, 0x19, 0x12, 0x90, 0x81, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xfc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr130, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 500, 0, 0, implicit $exec :: (store (s32) into %stack.100, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x82, 0x19, 0x12, 0x90, 0x82, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xfa, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr131, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 496, 0, 0, implicit $exec :: (store (s32) into %stack.101, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x83, 0x19, 0x12, 0x90, 0x83, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr132, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 492, 0, 0, implicit $exec :: (store (s32) into %stack.102, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x84, 0x19, 0x12, 0x90, 0x84, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr133, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 488, 0, 0, implicit $exec :: (store (s32) into %stack.103, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x85, 0x19, 0x12, 0x90, 0x85, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr134, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 484, 0, 0, implicit $exec :: (store (s32) into %stack.104, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x86, 0x19, 0x12, 0x90, 0x86, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr135, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 480, 0, 0, implicit $exec :: (store (s32) into %stack.105, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x87, 0x19, 0x12, 0x90, 0x87, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr136, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 476, 0, 0, implicit $exec :: (store (s32) into %stack.106, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x88, 0x19, 0x12, 0x90, 0x88, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xee, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr137, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 472, 0, 0, implicit $exec :: (store (s32) into %stack.107, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x89, 0x19, 0x12, 0x90, 0x89, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xec, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr138, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 468, 0, 0, implicit $exec :: (store (s32) into %stack.108, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8a, 0x19, 0x12, 0x90, 0x8a, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xea, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr139, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 464, 0, 0, implicit $exec :: (store (s32) into %stack.109, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8b, 0x19, 0x12, 0x90, 0x8b, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr140, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 460, 0, 0, implicit $exec :: (store (s32) into %stack.110, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8c, 0x19, 0x12, 0x90, 0x8c, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr141, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 456, 0, 0, implicit $exec :: (store (s32) into %stack.111, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8d, 0x19, 0x12, 0x90, 0x8d, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr142, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 452, 0, 0, implicit $exec :: (store (s32) into %stack.112, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8e, 0x19, 0x12, 0x90, 0x8e, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr143, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 448, 0, 0, implicit $exec :: (store (s32) into %stack.113, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8f, 0x19, 0x12, 0x90, 0x8f, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr144, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 444, 0, 0, implicit $exec :: (store (s32) into %stack.114, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x90, 0x19, 0x12, 0x90, 0x90, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xde, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr145, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 440, 0, 0, implicit $exec :: (store (s32) into %stack.115, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x91, 0x19, 0x12, 0x90, 0x91, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xdc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr146, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 436, 0, 0, implicit $exec :: (store (s32) into %stack.116, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x92, 0x19, 0x12, 0x90, 0x92, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xda, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr147, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 432, 0, 0, implicit $exec :: (store (s32) into %stack.117, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x93, 0x19, 0x12, 0x90, 0x93, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr148, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 428, 0, 0, implicit $exec :: (store (s32) into %stack.118, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x94, 0x19, 0x12, 0x90, 0x94, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr149, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 424, 0, 0, implicit $exec :: (store (s32) into %stack.119, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x95, 0x19, 0x12, 0x90, 0x95, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr150, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 420, 0, 0, implicit $exec :: (store (s32) into %stack.120, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x96, 0x19, 0x12, 0x90, 0x96, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr151, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 416, 0, 0, implicit $exec :: (store (s32) into %stack.121, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x97, 0x19, 0x12, 0x90, 0x97, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr152, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 412, 0, 0, implicit $exec :: (store (s32) into %stack.122, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x98, 0x19, 0x12, 0x90, 0x98, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xce, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr153, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 408, 0, 0, implicit $exec :: (store (s32) into %stack.123, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x99, 0x19, 0x12, 0x90, 0x99, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xcc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr154, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 404, 0, 0, implicit $exec :: (store (s32) into %stack.124, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9a, 0x19, 0x12, 0x90, 0x9a, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xca, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr155, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 400, 0, 0, implicit $exec :: (store (s32) into %stack.125, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9b, 0x19, 0x12, 0x90, 0x9b, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr156, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 396, 0, 0, implicit $exec :: (store (s32) into %stack.126, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9c, 0x19, 0x12, 0x90, 0x9c, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr157, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 392, 0, 0, implicit $exec :: (store (s32) into %stack.127, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9d, 0x19, 0x12, 0x90, 0x9d, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr158, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 388, 0, 0, implicit $exec :: (store (s32) into %stack.128, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9e, 0x19, 0x12, 0x90, 0x9e, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr159, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 384, 0, 0, implicit $exec :: (store (s32) into %stack.129, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9f, 0x19, 0x12, 0x90, 0x9f, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr160, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 380, 0, 0, implicit $exec :: (store (s32) into %stack.130, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa0, 0x19, 0x12, 0x90, 0xa0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xbe, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr161, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 376, 0, 0, implicit $exec :: (store (s32) into %stack.131, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa1, 0x19, 0x12, 0x90, 0xa1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xbc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr162, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 372, 0, 0, implicit $exec :: (store (s32) into %stack.132, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa2, 0x19, 0x12, 0x90, 0xa2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xba, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr163, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 368, 0, 0, implicit $exec :: (store (s32) into %stack.133, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa3, 0x19, 0x12, 0x90, 0xa3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr164, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 364, 0, 0, implicit $exec :: (store (s32) into %stack.134, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa4, 0x19, 0x12, 0x90, 0xa4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr165, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 360, 0, 0, implicit $exec :: (store (s32) into %stack.135, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa5, 0x19, 0x12, 0x90, 0xa5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr166, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 356, 0, 0, implicit $exec :: (store (s32) into %stack.136, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa6, 0x19, 0x12, 0x90, 0xa6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr167, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 352, 0, 0, implicit $exec :: (store (s32) into %stack.137, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa7, 0x19, 0x12, 0x90, 0xa7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr168, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 348, 0, 0, implicit $exec :: (store (s32) into %stack.138, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa8, 0x19, 0x12, 0x90, 0xa8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xae, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr169, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 344, 0, 0, implicit $exec :: (store (s32) into %stack.139, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa9, 0x19, 0x12, 0x90, 0xa9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xac, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr170, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 340, 0, 0, implicit $exec :: (store (s32) into %stack.140, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xaa, 0x19, 0x12, 0x90, 0xaa, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xaa, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr171, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 336, 0, 0, implicit $exec :: (store (s32) into %stack.141, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xab, 0x19, 0x12, 0x90, 0xab, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr172, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 332, 0, 0, implicit $exec :: (store (s32) into %stack.142, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xac, 0x19, 0x12, 0x90, 0xac, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr173, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 328, 0, 0, implicit $exec :: (store (s32) into %stack.143, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xad, 0x19, 0x12, 0x90, 0xad, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr174, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 324, 0, 0, implicit $exec :: (store (s32) into %stack.144, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xae, 0x19, 0x12, 0x90, 0xae, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr175, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 320, 0, 0, implicit $exec :: (store (s32) into %stack.145, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xaf, 0x19, 0x12, 0x90, 0xaf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr176, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 316, 0, 0, implicit $exec :: (store (s32) into %stack.146, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb0, 0x19, 0x12, 0x90, 0xb0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x9e, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr177, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 312, 0, 0, implicit $exec :: (store (s32) into %stack.147, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb1, 0x19, 0x12, 0x90, 0xb1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x9c, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr178, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 308, 0, 0, implicit $exec :: (store (s32) into %stack.148, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb2, 0x19, 0x12, 0x90, 0xb2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x9a, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr179, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 304, 0, 0, implicit $exec :: (store (s32) into %stack.149, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb3, 0x19, 0x12, 0x90, 0xb3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x98, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr180, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 300, 0, 0, implicit $exec :: (store (s32) into %stack.150, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb4, 0x19, 0x12, 0x90, 0xb4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x96, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr181, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 296, 0, 0, implicit $exec :: (store (s32) into %stack.151, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb5, 0x19, 0x12, 0x90, 0xb5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x94, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr182, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 292, 0, 0, implicit $exec :: (store (s32) into %stack.152, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb6, 0x19, 0x12, 0x90, 0xb6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x92, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr183, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 288, 0, 0, implicit $exec :: (store (s32) into %stack.153, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb7, 0x19, 0x12, 0x90, 0xb7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x90, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr184, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 284, 0, 0, implicit $exec :: (store (s32) into %stack.154, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb8, 0x19, 0x12, 0x90, 0xb8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x8e, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr185, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 280, 0, 0, implicit $exec :: (store (s32) into %stack.155, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb9, 0x19, 0x12, 0x90, 0xb9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x8c, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr186, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 276, 0, 0, implicit $exec :: (store (s32) into %stack.156, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xba, 0x19, 0x12, 0x90, 0xba, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x8a, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr187, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 272, 0, 0, implicit $exec :: (store (s32) into %stack.157, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbb, 0x19, 0x12, 0x90, 0xbb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x88, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr188, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 268, 0, 0, implicit $exec :: (store (s32) into %stack.158, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbc, 0x19, 0x12, 0x90, 0xbc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x86, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr189, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 264, 0, 0, implicit $exec :: (store (s32) into %stack.159, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbd, 0x19, 0x12, 0x90, 0xbd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x84, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr190, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 260, 0, 0, implicit $exec :: (store (s32) into %stack.160, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbe, 0x19, 0x12, 0x90, 0xbe, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x82, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr191, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 256, 0, 0, implicit $exec :: (store (s32) into %stack.161, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbf, 0x19, 0x12, 0x90, 0xbf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x80, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr192, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 252, 0, 0, implicit $exec :: (store (s32) into %stack.162, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc0, 0x19, 0x11, 0x90, 0xc0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x7e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr193, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 248, 0, 0, implicit $exec :: (store (s32) into %stack.163, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc1, 0x19, 0x11, 0x90, 0xc1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x7c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr194, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 244, 0, 0, implicit $exec :: (store (s32) into %stack.164, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc2, 0x19, 0x11, 0x90, 0xc2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x7a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr195, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 240, 0, 0, implicit $exec :: (store (s32) into %stack.165, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc3, 0x19, 0x11, 0x90, 0xc3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x78, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr196, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 236, 0, 0, implicit $exec :: (store (s32) into %stack.166, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc4, 0x19, 0x11, 0x90, 0xc4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x76, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr197, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 232, 0, 0, implicit $exec :: (store (s32) into %stack.167, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc5, 0x19, 0x11, 0x90, 0xc5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x74, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr198, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 228, 0, 0, implicit $exec :: (store (s32) into %stack.168, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc6, 0x19, 0x11, 0x90, 0xc6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x72, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr199, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 224, 0, 0, implicit $exec :: (store (s32) into %stack.169, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc7, 0x19, 0x11, 0x90, 0xc7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x70, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr200, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 220, 0, 0, implicit $exec :: (store (s32) into %stack.170, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc8, 0x19, 0x11, 0x90, 0xc8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x6e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr201, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 216, 0, 0, implicit $exec :: (store (s32) into %stack.171, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc9, 0x19, 0x11, 0x90, 0xc9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x6c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr202, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 212, 0, 0, implicit $exec :: (store (s32) into %stack.172, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xca, 0x19, 0x11, 0x90, 0xca, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x6a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr203, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 208, 0, 0, implicit $exec :: (store (s32) into %stack.173, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcb, 0x19, 0x11, 0x90, 0xcb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x68, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr204, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 204, 0, 0, implicit $exec :: (store (s32) into %stack.174, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcc, 0x19, 0x11, 0x90, 0xcc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x66, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr205, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 200, 0, 0, implicit $exec :: (store (s32) into %stack.175, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcd, 0x19, 0x11, 0x90, 0xcd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x64, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr206, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 196, 0, 0, implicit $exec :: (store (s32) into %stack.176, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xce, 0x19, 0x11, 0x90, 0xce, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x62, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr207, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 192, 0, 0, implicit $exec :: (store (s32) into %stack.177, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcf, 0x19, 0x11, 0x90, 0xcf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x60, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr208, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 188, 0, 0, implicit $exec :: (store (s32) into %stack.178, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd0, 0x19, 0x11, 0x90, 0xd0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x5e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr209, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 184, 0, 0, implicit $exec :: (store (s32) into %stack.179, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd1, 0x19, 0x11, 0x90, 0xd1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x5c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr210, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 180, 0, 0, implicit $exec :: (store (s32) into %stack.180, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd2, 0x19, 0x11, 0x90, 0xd2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x5a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr211, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 176, 0, 0, implicit $exec :: (store (s32) into %stack.181, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd3, 0x19, 0x11, 0x90, 0xd3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x58, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr212, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 172, 0, 0, implicit $exec :: (store (s32) into %stack.182, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd4, 0x19, 0x11, 0x90, 0xd4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x56, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr213, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 168, 0, 0, implicit $exec :: (store (s32) into %stack.183, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd5, 0x19, 0x11, 0x90, 0xd5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x54, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr214, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 164, 0, 0, implicit $exec :: (store (s32) into %stack.184, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd6, 0x19, 0x11, 0x90, 0xd6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x52, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr215, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 160, 0, 0, implicit $exec :: (store (s32) into %stack.185, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd7, 0x19, 0x11, 0x90, 0xd7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x50, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr216, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 156, 0, 0, implicit $exec :: (store (s32) into %stack.186, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd8, 0x19, 0x11, 0x90, 0xd8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x4e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr217, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 152, 0, 0, implicit $exec :: (store (s32) into %stack.187, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd9, 0x19, 0x11, 0x90, 0xd9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x4c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr218, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 148, 0, 0, implicit $exec :: (store (s32) into %stack.188, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xda, 0x19, 0x11, 0x90, 0xda, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x4a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr219, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 144, 0, 0, implicit $exec :: (store (s32) into %stack.189, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdb, 0x19, 0x11, 0x90, 0xdb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x48, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr220, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 140, 0, 0, implicit $exec :: (store (s32) into %stack.190, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdc, 0x19, 0x11, 0x90, 0xdc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x46, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr221, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 136, 0, 0, implicit $exec :: (store (s32) into %stack.191, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdd, 0x19, 0x11, 0x90, 0xdd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x44, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr222, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 132, 0, 0, implicit $exec :: (store (s32) into %stack.192, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xde, 0x19, 0x11, 0x90, 0xde, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x42, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr223, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 128, 0, 0, implicit $exec :: (store (s32) into %stack.193, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdf, 0x19, 0x11, 0x90, 0xdf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x40, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr224, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 124, 0, 0, implicit $exec :: (store (s32) into %stack.194, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe0, 0x19, 0x11, 0x90, 0xe0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x3e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr225, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 120, 0, 0, implicit $exec :: (store (s32) into %stack.195, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe1, 0x19, 0x11, 0x90, 0xe1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x3c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr226, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 116, 0, 0, implicit $exec :: (store (s32) into %stack.196, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe2, 0x19, 0x11, 0x90, 0xe2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x3a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr227, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 112, 0, 0, implicit $exec :: (store (s32) into %stack.197, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe3, 0x19, 0x11, 0x90, 0xe3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x38, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr228, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 108, 0, 0, implicit $exec :: (store (s32) into %stack.198, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe4, 0x19, 0x11, 0x90, 0xe4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x36, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr229, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 104, 0, 0, implicit $exec :: (store (s32) into %stack.199, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe5, 0x19, 0x11, 0x90, 0xe5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x34, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr230, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 100, 0, 0, implicit $exec :: (store (s32) into %stack.200, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe6, 0x19, 0x11, 0x90, 0xe6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x32, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr231, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 96, 0, 0, implicit $exec :: (store (s32) into %stack.201, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe7, 0x19, 0x11, 0x90, 0xe7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x30, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr232, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 92, 0, 0, implicit $exec :: (store (s32) into %stack.202, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe8, 0x19, 0x11, 0x90, 0xe8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x2e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr233, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 88, 0, 0, implicit $exec :: (store (s32) into %stack.203, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe9, 0x19, 0x11, 0x90, 0xe9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x2c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr234, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 84, 0, 0, implicit $exec :: (store (s32) into %stack.204, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xea, 0x19, 0x11, 0x90, 0xea, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x2a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr235, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 80, 0, 0, implicit $exec :: (store (s32) into %stack.205, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xeb, 0x19, 0x11, 0x90, 0xeb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x28, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr236, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 76, 0, 0, implicit $exec :: (store (s32) into %stack.206, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xec, 0x19, 0x11, 0x90, 0xec, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x26, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr237, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 72, 0, 0, implicit $exec :: (store (s32) into %stack.207, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xed, 0x19, 0x11, 0x90, 0xed, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x24, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr238, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 68, 0, 0, implicit $exec :: (store (s32) into %stack.208, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xee, 0x19, 0x11, 0x90, 0xee, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x22, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr239, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 64, 0, 0, implicit $exec :: (store (s32) into %stack.209, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xef, 0x19, 0x11, 0x90, 0xef, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x20, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr240, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 60, 0, 0, implicit $exec :: (store (s32) into %stack.210, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf0, 0x19, 0x11, 0x90, 0xf0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x1e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr241, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 56, 0, 0, implicit $exec :: (store (s32) into %stack.211, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf1, 0x19, 0x11, 0x90, 0xf1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x1c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr242, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 52, 0, 0, implicit $exec :: (store (s32) into %stack.212, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf2, 0x19, 0x11, 0x90, 0xf2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x1a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr243, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 48, 0, 0, implicit $exec :: (store (s32) into %stack.213, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf3, 0x19, 0x11, 0x90, 0xf3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x18, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr244, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 44, 0, 0, implicit $exec :: (store (s32) into %stack.214, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf4, 0x19, 0x11, 0x90, 0xf4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x16, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr245, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 40, 0, 0, implicit $exec :: (store (s32) into %stack.215, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf5, 0x19, 0x11, 0x90, 0xf5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x14, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr246, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 36, 0, 0, implicit $exec :: (store (s32) into %stack.216, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf6, 0x19, 0x11, 0x90, 0xf6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x12, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr247, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 32, 0, 0, implicit $exec :: (store (s32) into %stack.217, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf7, 0x19, 0x11, 0x90, 0xf7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x10, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr248, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 28, 0, 0, implicit $exec :: (store (s32) into %stack.218, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf8, 0x19, 0x11, 0x90, 0xf8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x0e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr249, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 24, 0, 0, implicit $exec :: (store (s32) into %stack.219, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf9, 0x19, 0x11, 0x90, 0xf9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x0c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr250, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 20, 0, 0, implicit $exec :: (store (s32) into %stack.220, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfa, 0x19, 0x11, 0x90, 0xfa, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x0a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr251, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 16, 0, 0, implicit $exec :: (store (s32) into %stack.221, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfb, 0x19, 0x11, 0x90, 0xfb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x08, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr252, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 12, 0, 0, implicit $exec :: (store (s32) into %stack.222, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfc, 0x19, 0x11, 0x90, 0xfc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x06, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr253, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.223, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfd, 0x19, 0x11, 0x90, 0xfd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x04, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr254, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.224, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfe, 0x19, 0x11, 0x90, 0xfe, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr255, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.225, addrspace 5) + ; GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xff, 0x19, 0x10, 0x90, 0xff, 0x19, 0x16, 0xe9, 0x05, 0x00, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr40, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 704, 0, 0, implicit $exec :: (store (s32) into %stack.226, addrspace 5) ; GFX90A-NEXT: $vgpr40 = V_MOV_B32_e32 8904, implicit $exec @@ -5612,6 +12476,294 @@ ; GFX908-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX908-FLATSCR-NEXT: liveins: $agpr0_agpr1, $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX908-FLATSCR-NEXT: {{ $}} + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr32_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr33_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr34_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr35_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr36_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr37_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr38_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr39_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr40_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr41_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr42_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr43_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr44_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr45_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr46_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr47_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr48_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr49_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr50_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr51_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr52_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr53_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr54_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr55_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr56_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr57_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr58_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr59_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr60_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr61_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr62_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr63_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr64_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr65_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr66_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr67_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr68_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr69_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr70_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr71_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr72_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr73_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr74_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr75_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr76_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr77_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr78_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr79_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr80_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr81_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr82_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr83_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr84_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr85_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr86_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr87_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr88_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr89_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr90_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr91_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr92_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr93_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr94_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr95_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr96_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr97_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr98_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr99_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr100_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr101_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr102_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr103_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr104_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr105_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr106_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr107_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr108_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr109_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr110_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr111_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr112_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr113_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr114_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr115_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr116_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr117_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr118_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr119_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr120_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr121_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr122_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr123_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr124_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr125_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr126_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr127_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr128_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr129_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr130_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr131_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr132_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr133_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr134_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr135_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr136_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr137_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr138_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr139_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr140_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr141_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr142_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr143_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr144_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr145_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr146_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr147_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr148_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr149_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr150_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr151_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr152_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr153_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr154_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr155_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr156_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr157_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr158_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr159_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr160_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr161_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr162_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr163_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr164_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr165_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr166_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr167_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr168_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr169_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr170_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr171_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr172_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr173_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr174_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr175_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr176_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr177_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr178_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr179_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr180_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr181_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr182_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr183_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr184_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr185_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr186_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr187_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr188_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr189_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr190_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr191_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr192_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr193_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr194_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr195_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr196_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr197_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr198_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr199_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr200_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr201_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr202_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr203_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr204_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr205_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr206_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr207_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr208_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr209_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr210_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr211_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr212_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr213_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr214_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr215_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr216_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr217_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr218_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr219_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr220_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr221_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr222_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr223_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr224_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr225_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr226_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr227_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr228_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr229_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr230_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr231_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr232_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr233_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr234_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr235_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr236_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr237_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr238_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr239_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr240_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr241_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr242_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr243_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr244_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr245_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr246_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr247_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr248_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr249_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr250_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr251_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr252_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr253_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr254_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr255_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX908-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX908-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX908-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr1, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.2, addrspace 5) ; GFX908-FLATSCR-NEXT: $vgpr1 = V_MOV_B32_e32 $sgpr32, implicit $exec @@ -5639,230 +12791,566 @@ ; GFX90A-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX90A-FLATSCR-NEXT: liveins: $agpr32, $agpr33, $agpr34, $agpr35, $agpr36, $agpr37, $agpr38, $agpr39, $agpr40, $agpr41, $agpr42, $agpr43, $agpr44, $agpr45, $agpr46, $agpr47, $agpr48, $agpr49, $agpr50, $agpr51, $agpr52, $agpr53, $agpr54, $agpr55, $agpr56, $agpr57, $agpr58, $agpr59, $agpr60, $agpr61, $agpr62, $agpr63, $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15, $vgpr16, $vgpr17, $vgpr18, $vgpr19, $vgpr20, $vgpr21, $vgpr22, $vgpr23, $vgpr24, $vgpr25, $vgpr26, $vgpr27, $vgpr28, $vgpr29, $vgpr30, $vgpr31, $vgpr32, $vgpr33, $vgpr34, $vgpr35, $vgpr36, $vgpr37, $vgpr38, $vgpr39, $vgpr48, $vgpr49, $vgpr50, $vgpr51, $vgpr52, $vgpr53, $vgpr54, $vgpr55, $agpr0_agpr1, $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX90A-FLATSCR-NEXT: {{ $}} + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr32_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr33_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr34_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr35_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr36_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr37_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr38_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr39_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr48_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr49_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr50_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr51_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr52_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr53_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr54_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr55_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr32, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr32_lo16, $vgpr0_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr33, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr33_lo16, $vgpr1_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 killed $agpr34, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr34_lo16, $vgpr2_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr3 = V_ACCVGPR_READ_B32_e64 killed $agpr35, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr35_lo16, $vgpr3_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 killed $agpr36, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr36_lo16, $vgpr4_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr5 = V_ACCVGPR_READ_B32_e64 killed $agpr37, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr37_lo16, $vgpr5_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr6 = V_ACCVGPR_READ_B32_e64 killed $agpr38, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr38_lo16, $vgpr6_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr7 = V_ACCVGPR_READ_B32_e64 killed $agpr39, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr39_lo16, $vgpr7_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr8 = V_ACCVGPR_READ_B32_e64 killed $agpr40, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr40_lo16, $vgpr8_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr9 = V_ACCVGPR_READ_B32_e64 killed $agpr41, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr41_lo16, $vgpr9_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr10 = V_ACCVGPR_READ_B32_e64 killed $agpr42, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr42_lo16, $vgpr10_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr11 = V_ACCVGPR_READ_B32_e64 killed $agpr43, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr43_lo16, $vgpr11_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr12 = V_ACCVGPR_READ_B32_e64 killed $agpr44, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr44_lo16, $vgpr12_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr13 = V_ACCVGPR_READ_B32_e64 killed $agpr45, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr45_lo16, $vgpr13_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr14 = V_ACCVGPR_READ_B32_e64 killed $agpr46, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr46_lo16, $vgpr14_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr15 = V_ACCVGPR_READ_B32_e64 killed $agpr47, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr47_lo16, $vgpr15_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr16 = V_ACCVGPR_READ_B32_e64 killed $agpr48, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr48_lo16, $vgpr16_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr17 = V_ACCVGPR_READ_B32_e64 killed $agpr49, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr49_lo16, $vgpr17_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr18 = V_ACCVGPR_READ_B32_e64 killed $agpr50, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr50_lo16, $vgpr18_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr19 = V_ACCVGPR_READ_B32_e64 killed $agpr51, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr51_lo16, $vgpr19_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr20 = V_ACCVGPR_READ_B32_e64 killed $agpr52, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr52_lo16, $vgpr20_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr21 = V_ACCVGPR_READ_B32_e64 killed $agpr53, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr53_lo16, $vgpr21_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr22 = V_ACCVGPR_READ_B32_e64 killed $agpr54, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr54_lo16, $vgpr22_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr23 = V_ACCVGPR_READ_B32_e64 killed $agpr55, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr55_lo16, $vgpr23_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr24 = V_ACCVGPR_READ_B32_e64 killed $agpr56, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr56_lo16, $vgpr24_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr25 = V_ACCVGPR_READ_B32_e64 killed $agpr57, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr57_lo16, $vgpr25_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr26 = V_ACCVGPR_READ_B32_e64 killed $agpr58, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr58_lo16, $vgpr26_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr27 = V_ACCVGPR_READ_B32_e64 killed $agpr59, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr59_lo16, $vgpr27_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr28 = V_ACCVGPR_READ_B32_e64 killed $agpr60, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr60_lo16, $vgpr28_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr29 = V_ACCVGPR_READ_B32_e64 killed $agpr61, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr61_lo16, $vgpr29_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr30 = V_ACCVGPR_READ_B32_e64 killed $agpr62, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr62_lo16, $vgpr30_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr31 = V_ACCVGPR_READ_B32_e64 killed $agpr63, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr63_lo16, $vgpr31_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr32 = V_ACCVGPR_READ_B32_e64 killed $agpr64, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr64_lo16, $vgpr32_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr33 = V_ACCVGPR_READ_B32_e64 killed $agpr65, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr65_lo16, $vgpr33_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr34 = V_ACCVGPR_READ_B32_e64 killed $agpr66, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr66_lo16, $vgpr34_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr35 = V_ACCVGPR_READ_B32_e64 killed $agpr67, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr67_lo16, $vgpr35_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr36 = V_ACCVGPR_READ_B32_e64 killed $agpr68, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr68_lo16, $vgpr36_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr37 = V_ACCVGPR_READ_B32_e64 killed $agpr69, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr69_lo16, $vgpr37_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr38 = V_ACCVGPR_READ_B32_e64 killed $agpr70, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr70_lo16, $vgpr38_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr39 = V_ACCVGPR_READ_B32_e64 killed $agpr71, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr71_lo16, $vgpr39_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr48 = V_ACCVGPR_READ_B32_e64 killed $agpr72, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr72_lo16, $vgpr48_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr49 = V_ACCVGPR_READ_B32_e64 killed $agpr73, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr73_lo16, $vgpr49_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr50 = V_ACCVGPR_READ_B32_e64 killed $agpr74, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr74_lo16, $vgpr50_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr51 = V_ACCVGPR_READ_B32_e64 killed $agpr75, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr75_lo16, $vgpr51_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr52 = V_ACCVGPR_READ_B32_e64 killed $agpr76, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr76_lo16, $vgpr52_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr53 = V_ACCVGPR_READ_B32_e64 killed $agpr77, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr77_lo16, $vgpr53_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr54 = V_ACCVGPR_READ_B32_e64 killed $agpr78, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr78_lo16, $vgpr54_lo16 ; GFX90A-FLATSCR-NEXT: $vgpr55 = V_ACCVGPR_READ_B32_e64 killed $agpr79, implicit $exec + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION register $agpr79_lo16, $vgpr55_lo16 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr80, $sgpr32, 700, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.50, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd0, 0x18, 0x12, 0x90, 0xd0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xde, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr81, $sgpr32, 696, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.51, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd1, 0x18, 0x12, 0x90, 0xd1, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xdc, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr82, $sgpr32, 692, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.52, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd2, 0x18, 0x12, 0x90, 0xd2, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xda, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr83, $sgpr32, 688, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.53, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd3, 0x18, 0x12, 0x90, 0xd3, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr84, $sgpr32, 684, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.54, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd4, 0x18, 0x12, 0x90, 0xd4, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr85, $sgpr32, 680, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.55, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd5, 0x18, 0x12, 0x90, 0xd5, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr86, $sgpr32, 676, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.56, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd6, 0x18, 0x12, 0x90, 0xd6, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr87, $sgpr32, 672, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.57, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd7, 0x18, 0x12, 0x90, 0xd7, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xd0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr88, $sgpr32, 668, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.58, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd8, 0x18, 0x12, 0x90, 0xd8, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xce, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr89, $sgpr32, 664, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.59, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd9, 0x18, 0x12, 0x90, 0xd9, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xcc, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr90, $sgpr32, 660, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.60, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xda, 0x18, 0x12, 0x90, 0xda, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xca, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr91, $sgpr32, 656, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.61, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdb, 0x18, 0x12, 0x90, 0xdb, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr92, $sgpr32, 652, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.62, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdc, 0x18, 0x12, 0x90, 0xdc, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr93, $sgpr32, 648, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.63, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdd, 0x18, 0x12, 0x90, 0xdd, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr94, $sgpr32, 644, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.64, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xde, 0x18, 0x12, 0x90, 0xde, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr95, $sgpr32, 640, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.65, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdf, 0x18, 0x12, 0x90, 0xdf, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xc0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr96, $sgpr32, 636, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.66, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe0, 0x18, 0x12, 0x90, 0xe0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xbe, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr97, $sgpr32, 632, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.67, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe1, 0x18, 0x12, 0x90, 0xe1, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xbc, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr98, $sgpr32, 628, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.68, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe2, 0x18, 0x12, 0x90, 0xe2, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xba, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr99, $sgpr32, 624, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.69, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe3, 0x18, 0x12, 0x90, 0xe3, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr100, $sgpr32, 620, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.70, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe4, 0x18, 0x12, 0x90, 0xe4, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr101, $sgpr32, 616, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.71, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe5, 0x18, 0x12, 0x90, 0xe5, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr102, $sgpr32, 612, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.72, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe6, 0x18, 0x12, 0x90, 0xe6, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr103, $sgpr32, 608, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.73, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe7, 0x18, 0x12, 0x90, 0xe7, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xb0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr104, $sgpr32, 604, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.74, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe8, 0x18, 0x12, 0x90, 0xe8, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xae, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr105, $sgpr32, 600, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.75, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe9, 0x18, 0x12, 0x90, 0xe9, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xac, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr106, $sgpr32, 596, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.76, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xea, 0x18, 0x12, 0x90, 0xea, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xaa, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr107, $sgpr32, 592, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.77, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xeb, 0x18, 0x12, 0x90, 0xeb, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa8, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr108, $sgpr32, 588, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.78, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xec, 0x18, 0x12, 0x90, 0xec, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa6, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr109, $sgpr32, 584, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.79, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xed, 0x18, 0x12, 0x90, 0xed, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa4, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr110, $sgpr32, 580, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.80, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xee, 0x18, 0x12, 0x90, 0xee, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa2, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr111, $sgpr32, 576, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.81, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xef, 0x18, 0x12, 0x90, 0xef, 0x18, 0x16, 0xe9, 0x05, 0x80, 0xa0, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr112, $sgpr32, 572, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.82, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf0, 0x18, 0x12, 0x90, 0xf0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x9e, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr113, $sgpr32, 568, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.83, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf1, 0x18, 0x12, 0x90, 0xf1, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x9c, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr114, $sgpr32, 564, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.84, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf2, 0x18, 0x12, 0x90, 0xf2, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x9a, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr115, $sgpr32, 560, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.85, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf3, 0x18, 0x12, 0x90, 0xf3, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x98, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr116, $sgpr32, 556, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.86, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf4, 0x18, 0x12, 0x90, 0xf4, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x96, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr117, $sgpr32, 552, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.87, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf5, 0x18, 0x12, 0x90, 0xf5, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x94, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr118, $sgpr32, 548, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.88, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf6, 0x18, 0x12, 0x90, 0xf6, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x92, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr119, $sgpr32, 544, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.89, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf7, 0x18, 0x12, 0x90, 0xf7, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x90, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr120, $sgpr32, 540, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.90, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf8, 0x18, 0x12, 0x90, 0xf8, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x8e, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr121, $sgpr32, 536, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.91, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf9, 0x18, 0x12, 0x90, 0xf9, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x8c, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr122, $sgpr32, 532, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.92, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfa, 0x18, 0x12, 0x90, 0xfa, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x8a, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr123, $sgpr32, 528, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.93, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfb, 0x18, 0x12, 0x90, 0xfb, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x88, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr124, $sgpr32, 524, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.94, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfc, 0x18, 0x12, 0x90, 0xfc, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x86, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr125, $sgpr32, 520, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.95, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfd, 0x18, 0x12, 0x90, 0xfd, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x84, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr126, $sgpr32, 516, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.96, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfe, 0x18, 0x12, 0x90, 0xfe, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x82, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr127, $sgpr32, 512, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.97, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xff, 0x18, 0x12, 0x90, 0xff, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x80, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr128, $sgpr32, 508, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.98, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x80, 0x19, 0x12, 0x90, 0x80, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xfe, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr129, $sgpr32, 504, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.99, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x81, 0x19, 0x12, 0x90, 0x81, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xfc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr130, $sgpr32, 500, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.100, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x82, 0x19, 0x12, 0x90, 0x82, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xfa, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr131, $sgpr32, 496, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.101, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x83, 0x19, 0x12, 0x90, 0x83, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr132, $sgpr32, 492, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.102, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x84, 0x19, 0x12, 0x90, 0x84, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr133, $sgpr32, 488, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.103, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x85, 0x19, 0x12, 0x90, 0x85, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr134, $sgpr32, 484, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.104, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x86, 0x19, 0x12, 0x90, 0x86, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr135, $sgpr32, 480, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.105, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x87, 0x19, 0x12, 0x90, 0x87, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xf0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr136, $sgpr32, 476, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.106, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x88, 0x19, 0x12, 0x90, 0x88, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xee, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr137, $sgpr32, 472, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.107, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x89, 0x19, 0x12, 0x90, 0x89, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xec, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr138, $sgpr32, 468, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.108, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8a, 0x19, 0x12, 0x90, 0x8a, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xea, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr139, $sgpr32, 464, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.109, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8b, 0x19, 0x12, 0x90, 0x8b, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr140, $sgpr32, 460, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.110, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8c, 0x19, 0x12, 0x90, 0x8c, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr141, $sgpr32, 456, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.111, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8d, 0x19, 0x12, 0x90, 0x8d, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr142, $sgpr32, 452, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.112, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8e, 0x19, 0x12, 0x90, 0x8e, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr143, $sgpr32, 448, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.113, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x8f, 0x19, 0x12, 0x90, 0x8f, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xe0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr144, $sgpr32, 444, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.114, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x90, 0x19, 0x12, 0x90, 0x90, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xde, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr145, $sgpr32, 440, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.115, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x91, 0x19, 0x12, 0x90, 0x91, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xdc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr146, $sgpr32, 436, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.116, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x92, 0x19, 0x12, 0x90, 0x92, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xda, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr147, $sgpr32, 432, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.117, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x93, 0x19, 0x12, 0x90, 0x93, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr148, $sgpr32, 428, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.118, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x94, 0x19, 0x12, 0x90, 0x94, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr149, $sgpr32, 424, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.119, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x95, 0x19, 0x12, 0x90, 0x95, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr150, $sgpr32, 420, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.120, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x96, 0x19, 0x12, 0x90, 0x96, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr151, $sgpr32, 416, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.121, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x97, 0x19, 0x12, 0x90, 0x97, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xd0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr152, $sgpr32, 412, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.122, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x98, 0x19, 0x12, 0x90, 0x98, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xce, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr153, $sgpr32, 408, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.123, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x99, 0x19, 0x12, 0x90, 0x99, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xcc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr154, $sgpr32, 404, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.124, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9a, 0x19, 0x12, 0x90, 0x9a, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xca, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr155, $sgpr32, 400, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.125, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9b, 0x19, 0x12, 0x90, 0x9b, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr156, $sgpr32, 396, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.126, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9c, 0x19, 0x12, 0x90, 0x9c, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr157, $sgpr32, 392, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.127, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9d, 0x19, 0x12, 0x90, 0x9d, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr158, $sgpr32, 388, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.128, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9e, 0x19, 0x12, 0x90, 0x9e, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr159, $sgpr32, 384, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.129, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x9f, 0x19, 0x12, 0x90, 0x9f, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xc0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr160, $sgpr32, 380, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.130, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa0, 0x19, 0x12, 0x90, 0xa0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xbe, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr161, $sgpr32, 376, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.131, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa1, 0x19, 0x12, 0x90, 0xa1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xbc, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr162, $sgpr32, 372, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.132, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa2, 0x19, 0x12, 0x90, 0xa2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xba, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr163, $sgpr32, 368, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.133, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa3, 0x19, 0x12, 0x90, 0xa3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr164, $sgpr32, 364, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.134, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa4, 0x19, 0x12, 0x90, 0xa4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr165, $sgpr32, 360, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.135, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa5, 0x19, 0x12, 0x90, 0xa5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr166, $sgpr32, 356, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.136, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa6, 0x19, 0x12, 0x90, 0xa6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr167, $sgpr32, 352, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.137, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa7, 0x19, 0x12, 0x90, 0xa7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xb0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr168, $sgpr32, 348, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.138, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa8, 0x19, 0x12, 0x90, 0xa8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xae, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr169, $sgpr32, 344, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.139, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa9, 0x19, 0x12, 0x90, 0xa9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xac, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr170, $sgpr32, 340, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.140, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xaa, 0x19, 0x12, 0x90, 0xaa, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xaa, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr171, $sgpr32, 336, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.141, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xab, 0x19, 0x12, 0x90, 0xab, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa8, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr172, $sgpr32, 332, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.142, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xac, 0x19, 0x12, 0x90, 0xac, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa6, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr173, $sgpr32, 328, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.143, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xad, 0x19, 0x12, 0x90, 0xad, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa4, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr174, $sgpr32, 324, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.144, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xae, 0x19, 0x12, 0x90, 0xae, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa2, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr175, $sgpr32, 320, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.145, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xaf, 0x19, 0x12, 0x90, 0xaf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0xa0, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr176, $sgpr32, 316, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.146, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb0, 0x19, 0x12, 0x90, 0xb0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x9e, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr177, $sgpr32, 312, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.147, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb1, 0x19, 0x12, 0x90, 0xb1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x9c, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr178, $sgpr32, 308, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.148, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb2, 0x19, 0x12, 0x90, 0xb2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x9a, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr179, $sgpr32, 304, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.149, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb3, 0x19, 0x12, 0x90, 0xb3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x98, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr180, $sgpr32, 300, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.150, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb4, 0x19, 0x12, 0x90, 0xb4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x96, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr181, $sgpr32, 296, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.151, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb5, 0x19, 0x12, 0x90, 0xb5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x94, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr182, $sgpr32, 292, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.152, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb6, 0x19, 0x12, 0x90, 0xb6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x92, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr183, $sgpr32, 288, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.153, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb7, 0x19, 0x12, 0x90, 0xb7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x90, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr184, $sgpr32, 284, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.154, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb8, 0x19, 0x12, 0x90, 0xb8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x8e, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr185, $sgpr32, 280, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.155, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb9, 0x19, 0x12, 0x90, 0xb9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x8c, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr186, $sgpr32, 276, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.156, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xba, 0x19, 0x12, 0x90, 0xba, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x8a, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr187, $sgpr32, 272, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.157, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbb, 0x19, 0x12, 0x90, 0xbb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x88, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr188, $sgpr32, 268, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.158, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbc, 0x19, 0x12, 0x90, 0xbc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x86, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr189, $sgpr32, 264, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.159, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbd, 0x19, 0x12, 0x90, 0xbd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x84, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr190, $sgpr32, 260, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.160, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbe, 0x19, 0x12, 0x90, 0xbe, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x82, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr191, $sgpr32, 256, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.161, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbf, 0x19, 0x12, 0x90, 0xbf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x80, 0x01, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr192, $sgpr32, 252, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.162, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc0, 0x19, 0x11, 0x90, 0xc0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x7e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr193, $sgpr32, 248, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.163, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc1, 0x19, 0x11, 0x90, 0xc1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x7c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr194, $sgpr32, 244, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.164, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc2, 0x19, 0x11, 0x90, 0xc2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x7a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr195, $sgpr32, 240, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.165, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc3, 0x19, 0x11, 0x90, 0xc3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x78, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr196, $sgpr32, 236, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.166, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc4, 0x19, 0x11, 0x90, 0xc4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x76, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr197, $sgpr32, 232, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.167, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc5, 0x19, 0x11, 0x90, 0xc5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x74, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr198, $sgpr32, 228, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.168, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc6, 0x19, 0x11, 0x90, 0xc6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x72, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr199, $sgpr32, 224, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.169, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc7, 0x19, 0x11, 0x90, 0xc7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x70, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr200, $sgpr32, 220, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.170, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc8, 0x19, 0x11, 0x90, 0xc8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x6e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr201, $sgpr32, 216, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.171, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xc9, 0x19, 0x11, 0x90, 0xc9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x6c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr202, $sgpr32, 212, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.172, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xca, 0x19, 0x11, 0x90, 0xca, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x6a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr203, $sgpr32, 208, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.173, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcb, 0x19, 0x11, 0x90, 0xcb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x68, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr204, $sgpr32, 204, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.174, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcc, 0x19, 0x11, 0x90, 0xcc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x66, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr205, $sgpr32, 200, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.175, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcd, 0x19, 0x11, 0x90, 0xcd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x64, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr206, $sgpr32, 196, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.176, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xce, 0x19, 0x11, 0x90, 0xce, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x62, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr207, $sgpr32, 192, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.177, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xcf, 0x19, 0x11, 0x90, 0xcf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x60, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr208, $sgpr32, 188, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.178, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd0, 0x19, 0x11, 0x90, 0xd0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x5e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr209, $sgpr32, 184, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.179, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd1, 0x19, 0x11, 0x90, 0xd1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x5c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr210, $sgpr32, 180, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.180, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd2, 0x19, 0x11, 0x90, 0xd2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x5a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr211, $sgpr32, 176, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.181, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd3, 0x19, 0x11, 0x90, 0xd3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x58, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr212, $sgpr32, 172, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.182, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd4, 0x19, 0x11, 0x90, 0xd4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x56, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr213, $sgpr32, 168, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.183, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd5, 0x19, 0x11, 0x90, 0xd5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x54, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr214, $sgpr32, 164, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.184, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd6, 0x19, 0x11, 0x90, 0xd6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x52, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr215, $sgpr32, 160, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.185, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd7, 0x19, 0x11, 0x90, 0xd7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x50, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr216, $sgpr32, 156, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.186, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd8, 0x19, 0x11, 0x90, 0xd8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x4e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr217, $sgpr32, 152, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.187, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xd9, 0x19, 0x11, 0x90, 0xd9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x4c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr218, $sgpr32, 148, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.188, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xda, 0x19, 0x11, 0x90, 0xda, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x4a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr219, $sgpr32, 144, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.189, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdb, 0x19, 0x11, 0x90, 0xdb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x48, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr220, $sgpr32, 140, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.190, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdc, 0x19, 0x11, 0x90, 0xdc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x46, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr221, $sgpr32, 136, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.191, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdd, 0x19, 0x11, 0x90, 0xdd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x44, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr222, $sgpr32, 132, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.192, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xde, 0x19, 0x11, 0x90, 0xde, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x42, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr223, $sgpr32, 128, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.193, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xdf, 0x19, 0x11, 0x90, 0xdf, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x40, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr224, $sgpr32, 124, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.194, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe0, 0x19, 0x11, 0x90, 0xe0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x3e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr225, $sgpr32, 120, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.195, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe1, 0x19, 0x11, 0x90, 0xe1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x3c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr226, $sgpr32, 116, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.196, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe2, 0x19, 0x11, 0x90, 0xe2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x3a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr227, $sgpr32, 112, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.197, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe3, 0x19, 0x11, 0x90, 0xe3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x38, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr228, $sgpr32, 108, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.198, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe4, 0x19, 0x11, 0x90, 0xe4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x36, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr229, $sgpr32, 104, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.199, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe5, 0x19, 0x11, 0x90, 0xe5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x34, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr230, $sgpr32, 100, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.200, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe6, 0x19, 0x11, 0x90, 0xe6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x32, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr231, $sgpr32, 96, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.201, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe7, 0x19, 0x11, 0x90, 0xe7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x30, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr232, $sgpr32, 92, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.202, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe8, 0x19, 0x11, 0x90, 0xe8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x2e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr233, $sgpr32, 88, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.203, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xe9, 0x19, 0x11, 0x90, 0xe9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x2c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr234, $sgpr32, 84, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.204, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xea, 0x19, 0x11, 0x90, 0xea, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x2a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr235, $sgpr32, 80, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.205, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xeb, 0x19, 0x11, 0x90, 0xeb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x28, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr236, $sgpr32, 76, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.206, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xec, 0x19, 0x11, 0x90, 0xec, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x26, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr237, $sgpr32, 72, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.207, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xed, 0x19, 0x11, 0x90, 0xed, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x24, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr238, $sgpr32, 68, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.208, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xee, 0x19, 0x11, 0x90, 0xee, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x22, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr239, $sgpr32, 64, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.209, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xef, 0x19, 0x11, 0x90, 0xef, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x20, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr240, $sgpr32, 60, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.210, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf0, 0x19, 0x11, 0x90, 0xf0, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x1e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr241, $sgpr32, 56, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.211, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf1, 0x19, 0x11, 0x90, 0xf1, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x1c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr242, $sgpr32, 52, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.212, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf2, 0x19, 0x11, 0x90, 0xf2, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x1a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr243, $sgpr32, 48, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.213, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf3, 0x19, 0x11, 0x90, 0xf3, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x18, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr244, $sgpr32, 44, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.214, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf4, 0x19, 0x11, 0x90, 0xf4, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x16, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr245, $sgpr32, 40, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.215, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf5, 0x19, 0x11, 0x90, 0xf5, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x14, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr246, $sgpr32, 36, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.216, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf6, 0x19, 0x11, 0x90, 0xf6, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x12, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr247, $sgpr32, 32, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.217, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf7, 0x19, 0x11, 0x90, 0xf7, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x10, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr248, $sgpr32, 28, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.218, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf8, 0x19, 0x11, 0x90, 0xf8, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x0e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr249, $sgpr32, 24, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.219, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xf9, 0x19, 0x11, 0x90, 0xf9, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x0c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr250, $sgpr32, 20, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.220, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfa, 0x19, 0x11, 0x90, 0xfa, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x0a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr251, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.221, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfb, 0x19, 0x11, 0x90, 0xfb, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x08, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr252, $sgpr32, 12, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.222, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfc, 0x19, 0x11, 0x90, 0xfc, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x06, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr253, $sgpr32, 8, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.223, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfd, 0x19, 0x11, 0x90, 0xfd, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x04, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr254, $sgpr32, 4, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.224, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xfe, 0x19, 0x11, 0x90, 0xfe, 0x19, 0x16, 0xe9, 0x05, 0x80, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr255, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.225, addrspace 5) + ; GFX90A-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xff, 0x19, 0x10, 0x90, 0xff, 0x19, 0x16, 0xe9, 0x05, 0x00, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GFX90A-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX90A-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr40, $sgpr32, 704, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.226, addrspace 5) ; GFX90A-FLATSCR-NEXT: $vgpr40 = V_MOV_B32_e32 $sgpr32, implicit $exec diff --git a/llvm/test/CodeGen/AMDGPU/agpr-copy-no-free-registers.ll b/llvm/test/CodeGen/AMDGPU/agpr-copy-no-free-registers.ll --- a/llvm/test/CodeGen/AMDGPU/agpr-copy-no-free-registers.ll +++ b/llvm/test/CodeGen/AMDGPU/agpr-copy-no-free-registers.ll @@ -455,6 +455,7 @@ ; GFX90A-LABEL: v32_asm_def_use: ; GFX90A: ; %bb.0: ; GFX90A-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) +; GFX90A-NEXT: v_accvgpr_read_b32 v35, a32 ; Reload Reuse ; GFX90A-NEXT: v_mov_b32_e32 v34, v0 ; GFX90A-NEXT: v_mov_b32_e32 v33, v1 ; GFX90A-NEXT: ;;#ASMSTART @@ -482,8 +483,8 @@ ; GFX90A-NEXT: ;;#ASMSTART ; GFX90A-NEXT: ; copy ; GFX90A-NEXT: ;;#ASMEND -; GFX90A-NEXT: v_accvgpr_read_b32 v35, a32 ; Reload Reuse ; GFX90A-NEXT: v_accvgpr_mov_b32 a32, a1 +; GFX90A-NEXT: s_nop 0 ; GFX90A-NEXT: v_mfma_f32_16x16x1f32 a[0:15], v34, v33, a[16:31] ; GFX90A-NEXT: ;;#ASMSTART ; GFX90A-NEXT: ; copy @@ -1066,6 +1067,7 @@ ; GFX90A-LABEL: no_free_vgprs_at_sgpr_to_agpr_copy: ; GFX90A: ; %bb.0: ; GFX90A-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) +; GFX90A-NEXT: v_accvgpr_read_b32 v34, a32 ; Reload Reuse ; GFX90A-NEXT: v_mov_b32_e32 v33, v0 ; GFX90A-NEXT: v_mov_b32_e32 v32, v1 ; GFX90A-NEXT: ;;#ASMSTART @@ -1087,8 +1089,7 @@ ; GFX90A-NEXT: v_accvgpr_write_b32 a18, s2 ; GFX90A-NEXT: v_accvgpr_write_b32 a17, s1 ; GFX90A-NEXT: v_accvgpr_write_b32 a16, s0 -; GFX90A-NEXT: v_accvgpr_read_b32 v34, a32 ; Reload Reuse -; GFX90A-NEXT: s_nop 0 +; GFX90A-NEXT: s_nop 1 ; GFX90A-NEXT: v_mfma_f32_16x16x1f32 a[0:15], v33, v32, a[16:31] ; GFX90A-NEXT: s_nop 7 ; GFX90A-NEXT: s_nop 2 diff --git a/llvm/test/CodeGen/AMDGPU/agpr-copy-reuse-writes.mir b/llvm/test/CodeGen/AMDGPU/agpr-copy-reuse-writes.mir --- a/llvm/test/CodeGen/AMDGPU/agpr-copy-reuse-writes.mir +++ b/llvm/test/CodeGen/AMDGPU/agpr-copy-reuse-writes.mir @@ -10,6 +10,16 @@ ; GFX908-LABEL: name: standard ; GFX908: liveins: $vgpr0, $vgpr1 ; GFX908-NEXT: {{ $}} + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa , 0, 6 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 ; GFX908-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 $vgpr1, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3 ; GFX908-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec ; GFX908-NEXT: $agpr2 = V_ACCVGPR_WRITE_B32_e64 $vgpr1, implicit $exec @@ -41,6 +51,14 @@ ; GFX908-LABEL: name: src_is_spill ; GFX908: liveins: $vgpr0, $vgpr1 ; GFX908-NEXT: {{ $}} + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 ; GFX908-NEXT: $agpr0_agpr1 = IMPLICIT_DEF ; GFX908-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1, implicit $agpr0_agpr1 ; GFX908-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec, implicit killed $agpr0_agpr1 @@ -65,6 +83,12 @@ ; GFX908-LABEL: name: overlapping_agpr ; GFX908: liveins: $agpr0_agpr1_agpr2_agpr3 ; GFX908-NEXT: {{ $}} + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa , 0, 6 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 ; GFX908-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 $agpr3, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3 ; GFX908-NEXT: $agpr4 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec, implicit-def $agpr1_agpr2_agpr3_agpr4 ; GFX908-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 $agpr2, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3 diff --git a/llvm/test/CodeGen/AMDGPU/amdgpu-spill-cfi-saved-regs.ll b/llvm/test/CodeGen/AMDGPU/amdgpu-spill-cfi-saved-regs.ll new file mode 100644 --- /dev/null +++ b/llvm/test/CodeGen/AMDGPU/amdgpu-spill-cfi-saved-regs.ll @@ -0,0 +1,175 @@ +; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx900 -amdgpu-spill-cfi-saved-regs -verify-machineinstrs -o - %s | FileCheck --check-prefixes=CHECK,WAVE64 %s +; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx1010 -mattr=+wavefrontsize32,-wavefrontsize64 -amdgpu-spill-cfi-saved-regs -verify-machineinstrs -o - %s | FileCheck --check-prefixes=CHECK,WAVE32 %s + +; CHECK-LABEL: kern: +; CHECK: .cfi_startproc +; CHECK-NOT: .cfi_{{.*}} +; CHECK: %bb.0: +; CHECK-NEXT: .cfi_escape 0x0f, 0x04, 0x30, 0x36, 0xe9, 0x02 +; CHECK-NEXT: .cfi_undefined 16 +; CHECK-NOT: .cfi_{{.*}} +; CHECK: .cfi_endproc +define protected amdgpu_kernel void @kern() #0 { +entry: + ret void +} + +; CHECK-LABEL: func_saved_in_clobbered_vgpr: +; CHECK: .cfi_startproc +; CHECK-NOT: .cfi_{{.*}} +; CHECK: %bb.0: +; SGPR32 = 64 +; CHECK-NEXT: .cfi_llvm_def_aspace_cfa 64, 0, 6 +; CHECK-NEXT: .cfi_escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + + +; FIXME: ideally this would not care what VGPR we spill to, but since we are +; using .cfi_escape it isn't trivial/possible to make this general yet + +; WAVE64: v_writelane_b32 v0, exec_lo, 0 +; WAVE64-NEXT: v_writelane_b32 v0, exec_hi, 1 +; DW_CFA_expression [0x10] +; EXEC_MASK_wave64 ULEB128(17)=[0x11] +; BLOCK_LENGTH ULEB128(12)=[0x0c] +; DW_OP_regx [0x90] +; VGPR0_wave64 ULEB128(2560)=[0x80, 0x14] +; DW_OP_bit_piece [0x9d] +; PIECE_SIZE [0x20] +; PIECE_OFFSET [0x00] +; DW_OP_regx [0x90] +; VGPR0_wave64 ULEB128(2560)=[0x80, 0x14] +; DW_OP_bit_piece [0x9d] +; PIECE_SIZE [0x20] +; PIECE_OFFSET [0x20] +; WAVE64-NEXT: .cfi_escape 0x10, 0x11, 0x0c, 0x90, 0x80, 0x14, 0x9d, 0x20, 0x00, 0x90, 0x80, 0x14, 0x9d, 0x20, 0x20 + +; WAVE32: v_writelane_b32 v0, exec_lo, 0 +; DW_CFA_expression [0x10] +; EXEC_MASK_wave32 ULEB128(1)=[0x01] +; BLOCK_LENGTH ULEB128(6)=[0x06] +; DW_OP_regx [0x90] +; VGPR0_wave32 ULEB128(1536)=[0x80, 0x0c] +; DW_OP_bit_piece [0x9d] +; PIECE_SIZE [0x20] +; PIECE_OFFSET [0x00] +; WAVE32-NEXT: .cfi_escape 0x10, 0x01, 0x06, 0x90, 0x80, 0x0c, 0x9d, 0x20, 0x00 + +; CHECK-NOT: .cfi_{{.*}} +; CHECK: .cfi_endproc +define hidden void @func_saved_in_clobbered_vgpr() #0 { +entry: + ret void +} + +; Check that the option causes a CSR VGPR to spill when needed. + +; CHECK-LABEL: func_saved_in_preserved_vgpr: +; CHECK: %bb.0: + +; CHECK: s_or_saveexec_b{{(32|64)}} +; CHECK: buffer_store_dword [[CSR:v[0-9]+]], off, s[0:3], s32 ; 4-byte Folded Spill +; CHECK: s_mov_b{{(32|64)}} {{(exec|exec_lo)}}, + +; WAVE64: v_writelane_b32 [[CSR]], exec_lo, {{[0-9]+}} +; WAVE64-NEXT: v_writelane_b32 [[CSR]], exec_hi, {{[0-9]+}} + +; WAVE32: v_writelane_b32 [[CSR]], exec_lo, {{[0-9]+}} + +define hidden void @func_saved_in_preserved_vgpr() #0 { +entry: + call void asm sideeffect "; clobber nonpreserved VGPRs", + "~{v0},~{v1},~{v2},~{v3},~{v4},~{v5},~{v6},~{v7},~{v8},~{v9} + ,~{v10},~{v11},~{v12},~{v13},~{v14},~{v15},~{v16},~{v17},~{v18},~{v19} + ,~{v20},~{v21},~{v22},~{v23},~{v24},~{v25},~{v26},~{v27},~{v28},~{v29} + ,~{v30},~{v31},~{v32},~{v33},~{v34},~{v35},~{v36},~{v37},~{v38},~{v39}"() + ret void +} + +; There's no return here, so the return address live in was deleted. +; CHECK-LABEL: {{^}}empty_func: +; CHECK-NOT: v_writelane_b32 v0, s30, 0 +; CHECK-NOT: v_writelane_b32 v0, s31, 1 +define void @empty_func() { + unreachable +} + +; Check that the option causes RA and EXEC to be spilled to memory. + +; CHECK-LABEL: no_vgprs_to_spill_into: +; CHECK: %bb.0: + +; WAVE64: v_mov_b32_e32 v0, exec_lo +; WAVE64-NEXT: buffer_store_dword v0, off, s[0:3], s32 ; 4-byte Folded Spill +; WAVE64-NEXT: v_mov_b32_e32 v0, exec_hi +; WAVE64-NEXT: buffer_store_dword v0, off, s[0:3], s32 offset:4 ; 4-byte Folded Spill +; WAVE64-NEXT: .cfi_offset 17, 0 + +define void @no_vgprs_to_spill_into() #1 { + call void asm sideeffect "", + "~{v0},~{v1},~{v2},~{v3},~{v4},~{v5},~{v6},~{v7},~{v8},~{v9} + ,~{v10},~{v11},~{v12},~{v13},~{v14},~{v15},~{v16},~{v17},~{v18},~{v19} + ,~{v20},~{v21},~{v22},~{v23},~{v24}"() + + ret void +} + +; Check that the FP and EXEC needs to be spilled to memory, even though +; we have reserved VGPR but there are no available free lanes. + +; CHECK-LABEL: callee_need_to_spill_fp_exec_to_memory: +; CHECK: %bb.0: + +; WAVE32: s_xor_saveexec_b32 [[EXEC_COPY:s[0-9]+]], -1 +; WAVE32-NEXT: buffer_store_dword [[RES_VGPR:v[0-9]+]], off, s[0:3], s33 offset:192 ; 4-byte Folded Spill +; WAVE32: s_mov_b32 exec_lo, [[EXEC_COPY]] +; WAVE32-NEXT: v_mov_b32_e32 [[TEMP_VGPR:v[0-9]+]], exec_lo +; WAVE32-NEXT: buffer_store_dword [[TEMP_VGPR]], off, s[0:3], s33 offset:196 ; 4-byte Folded Spill +; WAVE32-NEXT: .cfi_offset 1, 6272 +; WAVE32-NEXT: v_mov_b32_e32 [[TEMP_VGPR]], s4 +; WAVE32-NEXT: buffer_store_dword [[TEMP_VGPR]], off, s[0:3], s33 offset:200 ; 4-byte Folded Spill +; WAVE32: buffer_store_dword v40, off, s[0:3], s33 offset +; WAVE32-COUNT-47: buffer_store_dword v{{[0-9]+}}, off, s[0:3], s33 +; WAVE32: v_writelane_b32 [[RES_VGPR]], s34, 0 +; WAVE32-COUNT-31: v_writelane_b32 [[RES_VGPR]], s{{[0-9]+}}, {{[0-9]+}} + + +define void @callee_need_to_spill_fp_exec_to_memory() #2 { + call void asm sideeffect "; clobber nonpreserved and 32 CSR SGPRs", + "~{s4},~{s5},~{s6},~{s7},~{s8},~{s9} + ,~{s10},~{s11},~{s12},~{s13},~{s14},~{s15},~{s16},~{s17},~{s18},~{s19} + ,~{s20},~{s21},~{s22},~{s23},~{s24},~{s25},~{s26},~{s27},~{s28},~{s29} + ,~{s34},~{s35},~{s36},~{s37},~{s38},~{s39} + ,~{s40},~{s41},~{s42},~{s43},~{s44},~{s45},~{s46},~{s47},~{s48},~{s49} + ,~{s50},~{s51},~{s52},~{s53},~{s54},~{s55},~{s56},~{s57},~{s58},~{s59} + ,~{s60},~{s61},~{s62},~{s63},~{s64},~{s65} + ,~{vcc}"() + + call void asm sideeffect "; clobber all VGPRs except v39", + "~{v0},~{v1},~{v2},~{v3},~{v4},~{v5},~{v6},~{v7},~{v8},~{v9} + ,~{v10},~{v11},~{v12},~{v13},~{v14},~{v15},~{v16},~{v17},~{v18},~{v19} + ,~{v20},~{v21},~{v22},~{v23},~{v24},~{v25},~{v26},~{v27},~{v28},~{v29} + ,~{v30},~{v31},~{v32},~{v33},~{v34},~{v35},~{v36},~{v37},~{v38} + ,~{v40},~{v41},~{v42},~{v43},~{v44},~{v45},~{v46},~{v47},~{v48},~{v49} + ,~{v50},~{v51},~{v52},~{v53},~{v54},~{v55},~{v56},~{v57},~{v58},~{v59} + ,~{v60},~{v61},~{v62},~{v63},~{v64},~{v65},~{v66},~{v67},~{v68},~{v69} + ,~{v70},~{v71},~{v72},~{v73},~{v74},~{v75},~{v76},~{v77},~{v78},~{v79} + ,~{v80},~{v81},~{v82},~{v83},~{v84},~{v85},~{v86},~{v87},~{v88},~{v89} + ,~{v90},~{v91},~{v92},~{v93},~{v94},~{v95},~{v96},~{v97},~{v98},~{v99} + ,~{v100},~{v101},~{v102},~{v103},~{v104},~{v105},~{v106},~{v107},~{v108},~{v109} + ,~{v110},~{v111},~{v112},~{v113},~{v114},~{v115},~{v116},~{v117},~{v118},~{v119} + ,~{v120},~{v121},~{v122},~{v123},~{v124},~{v125},~{v126},~{v127},~{v128},~{v129}"() + ret void +} + + +attributes #0 = { nounwind } +attributes #1 = { nounwind "amdgpu-waves-per-eu"="10,10" } +attributes #2 = { nounwind "frame-pointer"="all" "amdgpu-waves-per-eu"="12,12" } + +!llvm.dbg.cu = !{!0} +!llvm.module.flags = !{!2, !3} + +!0 = distinct !DICompileUnit(language: DW_LANG_C99, file: !1, emissionKind: FullDebug) +!1 = !DIFile(filename: "filename", directory: "directory") +!2 = !{i32 7, !"Dwarf Version", i32 4} +!3 = !{i32 2, !"Debug Info Version", i32 3} diff --git a/llvm/test/CodeGen/AMDGPU/av_spill_cross_bb_usage.mir b/llvm/test/CodeGen/AMDGPU/av_spill_cross_bb_usage.mir --- a/llvm/test/CodeGen/AMDGPU/av_spill_cross_bb_usage.mir +++ b/llvm/test/CodeGen/AMDGPU/av_spill_cross_bb_usage.mir @@ -25,21 +25,466 @@ ; GCN-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GCN-NEXT: liveins: $sgpr30, $sgpr31, $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15, $vgpr40, $vgpr41, $vgpr42, $vgpr43, $vgpr44, $vgpr45, $vgpr46, $vgpr56, $vgpr57, $vgpr58, $vgpr59, $vgpr60, $vgpr61, $sgpr30_sgpr31 ; GCN-NEXT: {{ $}} + ; GCN-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr32_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr33_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr34_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr35_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr36_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr37_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr38_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr39_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr48_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr49_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr50_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr51_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr52_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr53_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr54_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr55_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr64_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr65_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr66_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr67_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr68_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr69_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr70_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr71_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr80_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr81_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr82_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr83_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr84_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr85_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr86_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr87_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr96_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr97_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr98_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr99_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr100_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr101_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr102_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr103_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr112_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr113_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr114_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr115_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr116_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr117_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr118_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr119_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr128_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr129_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr130_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr131_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr132_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr133_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr134_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr135_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr144_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr145_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr146_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr147_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr148_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr149_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr150_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr151_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr160_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr161_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr162_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr163_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr164_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr165_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr166_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr167_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr176_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr177_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr178_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr179_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr180_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr181_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr182_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr183_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr192_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr193_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr194_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr195_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr196_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr197_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr198_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr199_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr208_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr209_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr210_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr211_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr212_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr213_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr214_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr215_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr224_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr225_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr226_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr227_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr228_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr229_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr230_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr231_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr240_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr241_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr242_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr243_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr244_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr245_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr246_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr247_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr32_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr33_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr34_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr35_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr36_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr37_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr38_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr39_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr40_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr41_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr42_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr43_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr44_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr45_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr46_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr47_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr48_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr49_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr50_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr51_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr52_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr53_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr54_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr55_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr56_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr57_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr58_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr59_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr60_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr61_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr62_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr63_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr64_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr65_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr66_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr67_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr68_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr69_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr70_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr71_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr72_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr73_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr74_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr75_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr76_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr77_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr78_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr79_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr80_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr81_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr82_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr83_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr84_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr85_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr86_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr87_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr88_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr89_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr90_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr91_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr92_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr93_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr94_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr95_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr96_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr97_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr98_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr99_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr100_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr101_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr102_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr103_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr104_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr105_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr106_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr107_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr108_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr109_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr110_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr111_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr112_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr113_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr114_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr115_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr116_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr117_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr118_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr119_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr120_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr121_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr122_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr123_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr124_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr125_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr126_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr127_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr128_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr129_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr130_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr131_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr132_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr133_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr134_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr135_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr136_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr137_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr138_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr139_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr140_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr141_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr142_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr143_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr144_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr145_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr146_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr147_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr148_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr149_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr150_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr151_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr152_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr153_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr154_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr155_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr156_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr157_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr158_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr159_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr160_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr161_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr162_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr163_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr164_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr165_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr166_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr167_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr168_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr169_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr170_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr171_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr172_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr173_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr174_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr175_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr176_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr177_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr178_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr179_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr180_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr181_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr182_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr183_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr184_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr185_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr186_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr187_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr188_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr189_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr190_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr191_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr192_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr193_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr194_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr195_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr196_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr197_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr198_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr199_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr200_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr201_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr202_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr203_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr204_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr205_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr206_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr207_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr208_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr209_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr210_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr211_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr212_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr213_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr214_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr215_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr216_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr217_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr218_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr219_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr220_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr221_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr222_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr223_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr224_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr225_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr226_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr227_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr228_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr229_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr230_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr231_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr232_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr233_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr234_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr235_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr236_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr237_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr238_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr239_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr240_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr241_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr242_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr243_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr244_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr245_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr246_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr247_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr248_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr249_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr250_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr251_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr252_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr253_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr254_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr255_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GCN-NEXT: $sgpr4_sgpr5 = S_OR_SAVEEXEC_B64 -1, implicit-def $exec, implicit-def dead $scc, implicit $exec ; GCN-NEXT: BUFFER_STORE_DWORD_OFFSET $vgpr40, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 68, 0, 0, implicit $exec :: (store (s32) into %stack.3, addrspace 5) + ; GCN-NEXT: frame-setup CFI_INSTRUCTION offset $vgpr40_lo16, 4352 ; GCN-NEXT: $exec = S_MOV_B64 killed $sgpr4_sgpr5 ; GCN-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr41, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 44, 0, 0, implicit $exec :: (store (s32) into %stack.4, addrspace 5) + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xa9, 0x14, 0x11, 0x90, 0xa9, 0x14, 0x16, 0xe9, 0x05, 0x80, 0x16, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GCN-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr42, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 40, 0, 0, implicit $exec :: (store (s32) into %stack.5, addrspace 5) + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xaa, 0x14, 0x11, 0x90, 0xaa, 0x14, 0x16, 0xe9, 0x05, 0x80, 0x14, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GCN-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr43, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 36, 0, 0, implicit $exec :: (store (s32) into %stack.6, addrspace 5) + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xab, 0x14, 0x11, 0x90, 0xab, 0x14, 0x16, 0xe9, 0x05, 0x80, 0x12, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GCN-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr44, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 32, 0, 0, implicit $exec :: (store (s32) into %stack.7, addrspace 5) + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xac, 0x14, 0x11, 0x90, 0xac, 0x14, 0x16, 0xe9, 0x05, 0x80, 0x10, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GCN-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr45, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 28, 0, 0, implicit $exec :: (store (s32) into %stack.8, addrspace 5) + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xad, 0x14, 0x11, 0x90, 0xad, 0x14, 0x16, 0xe9, 0x05, 0x80, 0x0e, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GCN-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr46, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 24, 0, 0, implicit $exec :: (store (s32) into %stack.9, addrspace 5) + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xae, 0x14, 0x11, 0x90, 0xae, 0x14, 0x16, 0xe9, 0x05, 0x80, 0x0c, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GCN-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr56, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 20, 0, 0, implicit $exec :: (store (s32) into %stack.10, addrspace 5) + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb8, 0x14, 0x11, 0x90, 0xb8, 0x14, 0x16, 0xe9, 0x05, 0x80, 0x0a, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GCN-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr57, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 16, 0, 0, implicit $exec :: (store (s32) into %stack.11, addrspace 5) + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xb9, 0x14, 0x11, 0x90, 0xb9, 0x14, 0x16, 0xe9, 0x05, 0x80, 0x08, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GCN-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr58, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 12, 0, 0, implicit $exec :: (store (s32) into %stack.12, addrspace 5) + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xba, 0x14, 0x11, 0x90, 0xba, 0x14, 0x16, 0xe9, 0x05, 0x80, 0x06, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GCN-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr59, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.13, addrspace 5) + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbb, 0x14, 0x11, 0x90, 0xbb, 0x14, 0x16, 0xe9, 0x05, 0x80, 0x04, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GCN-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr60, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.14, addrspace 5) + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbc, 0x14, 0x11, 0x90, 0xbc, 0x14, 0x16, 0xe9, 0x05, 0x80, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GCN-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr61, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.15, addrspace 5) + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0xbd, 0x14, 0x10, 0x90, 0xbd, 0x14, 0x16, 0xe9, 0x05, 0x00, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; GCN-NEXT: renamable $vgpr44 = COPY $vgpr13, implicit $exec ; GCN-NEXT: renamable $vgpr43 = COPY $vgpr12, implicit $exec ; GCN-NEXT: S_CBRANCH_SCC1 %bb.2, implicit undef $scc diff --git a/llvm/test/CodeGen/AMDGPU/bf16.ll b/llvm/test/CodeGen/AMDGPU/bf16.ll --- a/llvm/test/CodeGen/AMDGPU/bf16.ll +++ b/llvm/test/CodeGen/AMDGPU/bf16.ll @@ -1435,8 +1435,8 @@ ; GCN-NEXT: v_lshrrev_b32_e32 v0, 16, v0 ; GCN-NEXT: buffer_store_short v0, v1, s[0:3], 0 offen ; GCN-NEXT: s_waitcnt vmcnt(0) -; GCN-NEXT: v_readlane_b32 s31, v2, 1 ; GCN-NEXT: v_readlane_b32 s30, v2, 0 +; GCN-NEXT: v_readlane_b32 s31, v2, 1 ; GCN-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GCN-NEXT: buffer_load_dword v2, off, s[0:3], s33 ; 4-byte Folded Reload ; GCN-NEXT: s_mov_b64 exec, s[4:5] @@ -1453,20 +1453,20 @@ ; GFX7-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GFX7-NEXT: buffer_store_dword v2, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX7-NEXT: s_mov_b64 exec, s[4:5] +; GFX7-NEXT: v_writelane_b32 v2, s30, 0 ; GFX7-NEXT: s_addk_i32 s32, 0x400 +; GFX7-NEXT: v_writelane_b32 v2, s31, 1 ; GFX7-NEXT: s_getpc_b64 s[4:5] ; GFX7-NEXT: s_add_u32 s4, s4, test_arg_store@gotpcrel32@lo+4 ; GFX7-NEXT: s_addc_u32 s5, s5, test_arg_store@gotpcrel32@hi+12 ; GFX7-NEXT: s_load_dwordx2 s[4:5], s[4:5], 0x0 -; GFX7-NEXT: v_writelane_b32 v2, s30, 0 -; GFX7-NEXT: v_writelane_b32 v2, s31, 1 ; GFX7-NEXT: s_waitcnt lgkmcnt(0) ; GFX7-NEXT: s_swappc_b64 s[30:31], s[4:5] ; GFX7-NEXT: v_lshrrev_b32_e32 v0, 16, v0 +; GFX7-NEXT: v_readlane_b32 s30, v2, 0 ; GFX7-NEXT: buffer_store_short v0, v1, s[0:3], 0 offen ; GFX7-NEXT: s_waitcnt vmcnt(0) ; GFX7-NEXT: v_readlane_b32 s31, v2, 1 -; GFX7-NEXT: v_readlane_b32 s30, v2, 0 ; GFX7-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GFX7-NEXT: buffer_load_dword v2, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX7-NEXT: s_mov_b64 exec, s[4:5] @@ -1483,20 +1483,20 @@ ; GFX8-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GFX8-NEXT: buffer_store_dword v2, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX8-NEXT: s_mov_b64 exec, s[4:5] +; GFX8-NEXT: v_writelane_b32 v2, s30, 0 ; GFX8-NEXT: s_addk_i32 s32, 0x400 +; GFX8-NEXT: v_writelane_b32 v2, s31, 1 ; GFX8-NEXT: s_getpc_b64 s[4:5] ; GFX8-NEXT: s_add_u32 s4, s4, test_arg_store@gotpcrel32@lo+4 ; GFX8-NEXT: s_addc_u32 s5, s5, test_arg_store@gotpcrel32@hi+12 ; GFX8-NEXT: s_load_dwordx2 s[4:5], s[4:5], 0x0 -; GFX8-NEXT: v_writelane_b32 v2, s30, 0 -; GFX8-NEXT: v_writelane_b32 v2, s31, 1 ; GFX8-NEXT: s_waitcnt lgkmcnt(0) ; GFX8-NEXT: s_swappc_b64 s[30:31], s[4:5] ; GFX8-NEXT: v_lshrrev_b32_e32 v0, 16, v0 +; GFX8-NEXT: v_readlane_b32 s30, v2, 0 ; GFX8-NEXT: buffer_store_short v0, v1, s[0:3], 0 offen ; GFX8-NEXT: s_waitcnt vmcnt(0) ; GFX8-NEXT: v_readlane_b32 s31, v2, 1 -; GFX8-NEXT: v_readlane_b32 s30, v2, 0 ; GFX8-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GFX8-NEXT: buffer_load_dword v2, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX8-NEXT: s_mov_b64 exec, s[4:5] @@ -1513,19 +1513,19 @@ ; GFX9-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GFX9-NEXT: buffer_store_dword v2, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[4:5] +; GFX9-NEXT: v_writelane_b32 v2, s30, 0 ; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v2, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[4:5] ; GFX9-NEXT: s_add_u32 s4, s4, test_arg_store@gotpcrel32@lo+4 ; GFX9-NEXT: s_addc_u32 s5, s5, test_arg_store@gotpcrel32@hi+12 ; GFX9-NEXT: s_load_dwordx2 s[4:5], s[4:5], 0x0 -; GFX9-NEXT: v_writelane_b32 v2, s30, 0 -; GFX9-NEXT: v_writelane_b32 v2, s31, 1 ; GFX9-NEXT: s_waitcnt lgkmcnt(0) ; GFX9-NEXT: s_swappc_b64 s[30:31], s[4:5] +; GFX9-NEXT: v_readlane_b32 s30, v2, 0 ; GFX9-NEXT: buffer_store_short_d16_hi v0, v1, s[0:3], 0 offen ; GFX9-NEXT: s_waitcnt vmcnt(0) ; GFX9-NEXT: v_readlane_b32 s31, v2, 1 -; GFX9-NEXT: v_readlane_b32 s30, v2, 0 ; GFX9-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GFX9-NEXT: buffer_load_dword v2, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX9-NEXT: s_mov_b64 exec, s[4:5] @@ -1544,19 +1544,19 @@ ; GFX10-NEXT: buffer_store_dword v2, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s4 +; GFX10-NEXT: v_writelane_b32 v2, s30, 0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v2, s31, 1 ; GFX10-NEXT: s_getpc_b64 s[4:5] ; GFX10-NEXT: s_add_u32 s4, s4, test_arg_store@gotpcrel32@lo+4 ; GFX10-NEXT: s_addc_u32 s5, s5, test_arg_store@gotpcrel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v2, s30, 0 ; GFX10-NEXT: s_load_dwordx2 s[4:5], s[4:5], 0x0 -; GFX10-NEXT: v_writelane_b32 v2, s31, 1 ; GFX10-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-NEXT: s_swappc_b64 s[30:31], s[4:5] +; GFX10-NEXT: v_readlane_b32 s30, v2, 0 ; GFX10-NEXT: buffer_store_short_d16_hi v0, v1, s[0:3], 0 offen ; GFX10-NEXT: s_waitcnt_vscnt null, 0x0 ; GFX10-NEXT: v_readlane_b32 s31, v2, 1 -; GFX10-NEXT: v_readlane_b32 s30, v2, 0 ; GFX10-NEXT: s_xor_saveexec_b32 s4, -1 ; GFX10-NEXT: buffer_load_dword v2, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 @@ -1597,8 +1597,8 @@ ; GCN-NEXT: s_waitcnt vmcnt(0) ; GCN-NEXT: buffer_store_short v0, v2, s[0:3], 0 offen ; GCN-NEXT: s_waitcnt vmcnt(0) -; GCN-NEXT: v_readlane_b32 s31, v3, 1 ; GCN-NEXT: v_readlane_b32 s30, v3, 0 +; GCN-NEXT: v_readlane_b32 s31, v3, 1 ; GCN-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GCN-NEXT: buffer_load_dword v3, off, s[0:3], s33 ; 4-byte Folded Reload ; GCN-NEXT: s_mov_b64 exec, s[4:5] @@ -1615,24 +1615,24 @@ ; GFX7-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GFX7-NEXT: buffer_store_dword v3, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX7-NEXT: s_mov_b64 exec, s[4:5] +; GFX7-NEXT: v_writelane_b32 v3, s30, 0 ; GFX7-NEXT: s_addk_i32 s32, 0x400 +; GFX7-NEXT: v_writelane_b32 v3, s31, 1 ; GFX7-NEXT: s_getpc_b64 s[4:5] ; GFX7-NEXT: s_add_u32 s4, s4, test_arg_store_v2bf16@gotpcrel32@lo+4 ; GFX7-NEXT: s_addc_u32 s5, s5, test_arg_store_v2bf16@gotpcrel32@hi+12 ; GFX7-NEXT: s_load_dwordx2 s[4:5], s[4:5], 0x0 -; GFX7-NEXT: v_writelane_b32 v3, s30, 0 -; GFX7-NEXT: v_writelane_b32 v3, s31, 1 ; GFX7-NEXT: s_waitcnt lgkmcnt(0) ; GFX7-NEXT: s_swappc_b64 s[30:31], s[4:5] ; GFX7-NEXT: v_lshrrev_b32_e32 v1, 16, v1 ; GFX7-NEXT: v_add_i32_e32 v4, vcc, 2, v2 +; GFX7-NEXT: v_readlane_b32 s30, v3, 0 ; GFX7-NEXT: v_lshrrev_b32_e32 v0, 16, v0 ; GFX7-NEXT: buffer_store_short v1, v4, s[0:3], 0 offen ; GFX7-NEXT: s_waitcnt vmcnt(0) ; GFX7-NEXT: buffer_store_short v0, v2, s[0:3], 0 offen ; GFX7-NEXT: s_waitcnt vmcnt(0) ; GFX7-NEXT: v_readlane_b32 s31, v3, 1 -; GFX7-NEXT: v_readlane_b32 s30, v3, 0 ; GFX7-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GFX7-NEXT: buffer_load_dword v3, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX7-NEXT: s_mov_b64 exec, s[4:5] @@ -1649,19 +1649,19 @@ ; GFX8-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GFX8-NEXT: buffer_store_dword v2, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX8-NEXT: s_mov_b64 exec, s[4:5] +; GFX8-NEXT: v_writelane_b32 v2, s30, 0 ; GFX8-NEXT: s_addk_i32 s32, 0x400 +; GFX8-NEXT: v_writelane_b32 v2, s31, 1 ; GFX8-NEXT: s_getpc_b64 s[4:5] ; GFX8-NEXT: s_add_u32 s4, s4, test_arg_store_v2bf16@gotpcrel32@lo+4 ; GFX8-NEXT: s_addc_u32 s5, s5, test_arg_store_v2bf16@gotpcrel32@hi+12 ; GFX8-NEXT: s_load_dwordx2 s[4:5], s[4:5], 0x0 -; GFX8-NEXT: v_writelane_b32 v2, s30, 0 -; GFX8-NEXT: v_writelane_b32 v2, s31, 1 ; GFX8-NEXT: s_waitcnt lgkmcnt(0) ; GFX8-NEXT: s_swappc_b64 s[30:31], s[4:5] +; GFX8-NEXT: v_readlane_b32 s30, v2, 0 ; GFX8-NEXT: buffer_store_dword v0, v1, s[0:3], 0 offen ; GFX8-NEXT: s_waitcnt vmcnt(0) ; GFX8-NEXT: v_readlane_b32 s31, v2, 1 -; GFX8-NEXT: v_readlane_b32 s30, v2, 0 ; GFX8-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GFX8-NEXT: buffer_load_dword v2, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX8-NEXT: s_mov_b64 exec, s[4:5] @@ -1678,19 +1678,19 @@ ; GFX9-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GFX9-NEXT: buffer_store_dword v2, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[4:5] +; GFX9-NEXT: v_writelane_b32 v2, s30, 0 ; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v2, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[4:5] ; GFX9-NEXT: s_add_u32 s4, s4, test_arg_store_v2bf16@gotpcrel32@lo+4 ; GFX9-NEXT: s_addc_u32 s5, s5, test_arg_store_v2bf16@gotpcrel32@hi+12 ; GFX9-NEXT: s_load_dwordx2 s[4:5], s[4:5], 0x0 -; GFX9-NEXT: v_writelane_b32 v2, s30, 0 -; GFX9-NEXT: v_writelane_b32 v2, s31, 1 ; GFX9-NEXT: s_waitcnt lgkmcnt(0) ; GFX9-NEXT: s_swappc_b64 s[30:31], s[4:5] +; GFX9-NEXT: v_readlane_b32 s30, v2, 0 ; GFX9-NEXT: buffer_store_dword v0, v1, s[0:3], 0 offen ; GFX9-NEXT: s_waitcnt vmcnt(0) ; GFX9-NEXT: v_readlane_b32 s31, v2, 1 -; GFX9-NEXT: v_readlane_b32 s30, v2, 0 ; GFX9-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GFX9-NEXT: buffer_load_dword v2, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX9-NEXT: s_mov_b64 exec, s[4:5] @@ -1709,19 +1709,19 @@ ; GFX10-NEXT: buffer_store_dword v2, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s4 +; GFX10-NEXT: v_writelane_b32 v2, s30, 0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v2, s31, 1 ; GFX10-NEXT: s_getpc_b64 s[4:5] ; GFX10-NEXT: s_add_u32 s4, s4, test_arg_store_v2bf16@gotpcrel32@lo+4 ; GFX10-NEXT: s_addc_u32 s5, s5, test_arg_store_v2bf16@gotpcrel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v2, s30, 0 ; GFX10-NEXT: s_load_dwordx2 s[4:5], s[4:5], 0x0 -; GFX10-NEXT: v_writelane_b32 v2, s31, 1 ; GFX10-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-NEXT: s_swappc_b64 s[30:31], s[4:5] +; GFX10-NEXT: v_readlane_b32 s30, v2, 0 ; GFX10-NEXT: buffer_store_dword v0, v1, s[0:3], 0 offen ; GFX10-NEXT: s_waitcnt_vscnt null, 0x0 ; GFX10-NEXT: v_readlane_b32 s31, v2, 1 -; GFX10-NEXT: v_readlane_b32 s30, v2, 0 ; GFX10-NEXT: s_xor_saveexec_b32 s4, -1 ; GFX10-NEXT: buffer_load_dword v2, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 @@ -1763,8 +1763,8 @@ ; GCN-NEXT: s_waitcnt vmcnt(0) ; GCN-NEXT: buffer_store_dword v0, v3, s[0:3], 0 offen ; GCN-NEXT: s_waitcnt vmcnt(0) -; GCN-NEXT: v_readlane_b32 s31, v4, 1 ; GCN-NEXT: v_readlane_b32 s30, v4, 0 +; GCN-NEXT: v_readlane_b32 s31, v4, 1 ; GCN-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GCN-NEXT: buffer_load_dword v4, off, s[0:3], s33 ; 4-byte Folded Reload ; GCN-NEXT: s_mov_b64 exec, s[4:5] @@ -1781,25 +1781,25 @@ ; GFX7-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GFX7-NEXT: buffer_store_dword v4, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX7-NEXT: s_mov_b64 exec, s[4:5] +; GFX7-NEXT: v_writelane_b32 v4, s30, 0 ; GFX7-NEXT: s_addk_i32 s32, 0x400 +; GFX7-NEXT: v_writelane_b32 v4, s31, 1 ; GFX7-NEXT: s_getpc_b64 s[4:5] ; GFX7-NEXT: s_add_u32 s4, s4, test_arg_store_v2bf16@gotpcrel32@lo+4 ; GFX7-NEXT: s_addc_u32 s5, s5, test_arg_store_v2bf16@gotpcrel32@hi+12 ; GFX7-NEXT: s_load_dwordx2 s[4:5], s[4:5], 0x0 -; GFX7-NEXT: v_writelane_b32 v4, s30, 0 -; GFX7-NEXT: v_writelane_b32 v4, s31, 1 ; GFX7-NEXT: s_waitcnt lgkmcnt(0) ; GFX7-NEXT: s_swappc_b64 s[30:31], s[4:5] ; GFX7-NEXT: v_lshrrev_b32_e32 v1, 16, v1 ; GFX7-NEXT: v_alignbit_b32 v0, v1, v0, 16 ; GFX7-NEXT: v_lshrrev_b32_e32 v1, 16, v2 ; GFX7-NEXT: v_add_i32_e32 v2, vcc, 4, v3 +; GFX7-NEXT: v_readlane_b32 s30, v4, 0 ; GFX7-NEXT: buffer_store_short v1, v2, s[0:3], 0 offen ; GFX7-NEXT: s_waitcnt vmcnt(0) ; GFX7-NEXT: buffer_store_dword v0, v3, s[0:3], 0 offen ; GFX7-NEXT: s_waitcnt vmcnt(0) ; GFX7-NEXT: v_readlane_b32 s31, v4, 1 -; GFX7-NEXT: v_readlane_b32 s30, v4, 0 ; GFX7-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GFX7-NEXT: buffer_load_dword v4, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX7-NEXT: s_mov_b64 exec, s[4:5] @@ -1816,23 +1816,23 @@ ; GFX8-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GFX8-NEXT: buffer_store_dword v3, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX8-NEXT: s_mov_b64 exec, s[4:5] +; GFX8-NEXT: v_writelane_b32 v3, s30, 0 ; GFX8-NEXT: s_addk_i32 s32, 0x400 +; GFX8-NEXT: v_writelane_b32 v3, s31, 1 ; GFX8-NEXT: s_getpc_b64 s[4:5] ; GFX8-NEXT: s_add_u32 s4, s4, test_arg_store_v2bf16@gotpcrel32@lo+4 ; GFX8-NEXT: s_addc_u32 s5, s5, test_arg_store_v2bf16@gotpcrel32@hi+12 ; GFX8-NEXT: s_load_dwordx2 s[4:5], s[4:5], 0x0 -; GFX8-NEXT: v_writelane_b32 v3, s30, 0 ; GFX8-NEXT: v_and_b32_e32 v1, 0xffff, v1 -; GFX8-NEXT: v_writelane_b32 v3, s31, 1 ; GFX8-NEXT: s_waitcnt lgkmcnt(0) ; GFX8-NEXT: s_swappc_b64 s[30:31], s[4:5] ; GFX8-NEXT: v_add_u32_e32 v4, vcc, 4, v2 +; GFX8-NEXT: v_readlane_b32 s30, v3, 0 ; GFX8-NEXT: buffer_store_short v1, v4, s[0:3], 0 offen ; GFX8-NEXT: s_waitcnt vmcnt(0) ; GFX8-NEXT: buffer_store_dword v0, v2, s[0:3], 0 offen ; GFX8-NEXT: s_waitcnt vmcnt(0) ; GFX8-NEXT: v_readlane_b32 s31, v3, 1 -; GFX8-NEXT: v_readlane_b32 s30, v3, 0 ; GFX8-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GFX8-NEXT: buffer_load_dword v3, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX8-NEXT: s_mov_b64 exec, s[4:5] @@ -1849,7 +1849,9 @@ ; GFX9-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GFX9-NEXT: buffer_store_dword v3, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[4:5] +; GFX9-NEXT: v_writelane_b32 v3, s30, 0 ; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v3, s31, 1 ; GFX9-NEXT: v_and_b32_e32 v4, 0xffff0000, v0 ; GFX9-NEXT: s_mov_b32 s4, 0xffff ; GFX9-NEXT: v_and_or_b32 v0, v0, s4, v4 @@ -1857,17 +1859,15 @@ ; GFX9-NEXT: s_add_u32 s4, s4, test_arg_store_v2bf16@gotpcrel32@lo+4 ; GFX9-NEXT: s_addc_u32 s5, s5, test_arg_store_v2bf16@gotpcrel32@hi+12 ; GFX9-NEXT: s_load_dwordx2 s[4:5], s[4:5], 0x0 -; GFX9-NEXT: v_writelane_b32 v3, s30, 0 ; GFX9-NEXT: v_and_b32_e32 v1, 0xffff, v1 -; GFX9-NEXT: v_writelane_b32 v3, s31, 1 ; GFX9-NEXT: s_waitcnt lgkmcnt(0) ; GFX9-NEXT: s_swappc_b64 s[30:31], s[4:5] +; GFX9-NEXT: v_readlane_b32 s30, v3, 0 ; GFX9-NEXT: buffer_store_short v1, v2, s[0:3], 0 offen offset:4 ; GFX9-NEXT: s_waitcnt vmcnt(0) ; GFX9-NEXT: buffer_store_dword v0, v2, s[0:3], 0 offen ; GFX9-NEXT: s_waitcnt vmcnt(0) ; GFX9-NEXT: v_readlane_b32 s31, v3, 1 -; GFX9-NEXT: v_readlane_b32 s30, v3, 0 ; GFX9-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GFX9-NEXT: buffer_load_dword v3, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX9-NEXT: s_mov_b64 exec, s[4:5] @@ -1886,24 +1886,24 @@ ; GFX10-NEXT: buffer_store_dword v3, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s4 +; GFX10-NEXT: v_writelane_b32 v3, s30, 0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v3, s31, 1 ; GFX10-NEXT: s_getpc_b64 s[4:5] ; GFX10-NEXT: s_add_u32 s4, s4, test_arg_store_v2bf16@gotpcrel32@lo+4 ; GFX10-NEXT: s_addc_u32 s5, s5, test_arg_store_v2bf16@gotpcrel32@hi+12 ; GFX10-NEXT: v_and_b32_e32 v4, 0xffff0000, v0 ; GFX10-NEXT: s_load_dwordx2 s[4:5], s[4:5], 0x0 -; GFX10-NEXT: v_writelane_b32 v3, s30, 0 ; GFX10-NEXT: v_and_b32_e32 v1, 0xffff, v1 ; GFX10-NEXT: v_and_or_b32 v0, 0xffff, v0, v4 -; GFX10-NEXT: v_writelane_b32 v3, s31, 1 ; GFX10-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-NEXT: s_swappc_b64 s[30:31], s[4:5] +; GFX10-NEXT: v_readlane_b32 s30, v3, 0 ; GFX10-NEXT: buffer_store_short v1, v2, s[0:3], 0 offen offset:4 ; GFX10-NEXT: s_waitcnt_vscnt null, 0x0 ; GFX10-NEXT: buffer_store_dword v0, v2, s[0:3], 0 offen ; GFX10-NEXT: s_waitcnt_vscnt null, 0x0 ; GFX10-NEXT: v_readlane_b32 s31, v3, 1 -; GFX10-NEXT: v_readlane_b32 s30, v3, 0 ; GFX10-NEXT: s_xor_saveexec_b32 s4, -1 ; GFX10-NEXT: buffer_load_dword v3, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 @@ -1952,8 +1952,8 @@ ; GCN-NEXT: s_waitcnt vmcnt(0) ; GCN-NEXT: buffer_store_short v0, v4, s[0:3], 0 offen ; GCN-NEXT: s_waitcnt vmcnt(0) -; GCN-NEXT: v_readlane_b32 s31, v5, 1 ; GCN-NEXT: v_readlane_b32 s30, v5, 0 +; GCN-NEXT: v_readlane_b32 s31, v5, 1 ; GCN-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GCN-NEXT: buffer_load_dword v5, off, s[0:3], s33 ; 4-byte Folded Reload ; GCN-NEXT: s_mov_b64 exec, s[4:5] @@ -1970,13 +1970,13 @@ ; GFX7-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GFX7-NEXT: buffer_store_dword v5, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX7-NEXT: s_mov_b64 exec, s[4:5] +; GFX7-NEXT: v_writelane_b32 v5, s30, 0 ; GFX7-NEXT: s_addk_i32 s32, 0x400 +; GFX7-NEXT: v_writelane_b32 v5, s31, 1 ; GFX7-NEXT: s_getpc_b64 s[4:5] ; GFX7-NEXT: s_add_u32 s4, s4, test_arg_store_v2bf16@gotpcrel32@lo+4 ; GFX7-NEXT: s_addc_u32 s5, s5, test_arg_store_v2bf16@gotpcrel32@hi+12 ; GFX7-NEXT: s_load_dwordx2 s[4:5], s[4:5], 0x0 -; GFX7-NEXT: v_writelane_b32 v5, s30, 0 -; GFX7-NEXT: v_writelane_b32 v5, s31, 1 ; GFX7-NEXT: s_waitcnt lgkmcnt(0) ; GFX7-NEXT: s_swappc_b64 s[30:31], s[4:5] ; GFX7-NEXT: v_lshrrev_b32_e32 v3, 16, v3 @@ -1989,13 +1989,13 @@ ; GFX7-NEXT: buffer_store_short v2, v3, s[0:3], 0 offen ; GFX7-NEXT: s_waitcnt vmcnt(0) ; GFX7-NEXT: v_add_i32_e32 v2, vcc, 2, v4 +; GFX7-NEXT: v_readlane_b32 s30, v5, 0 ; GFX7-NEXT: v_lshrrev_b32_e32 v0, 16, v0 ; GFX7-NEXT: buffer_store_short v1, v2, s[0:3], 0 offen ; GFX7-NEXT: s_waitcnt vmcnt(0) ; GFX7-NEXT: buffer_store_short v0, v4, s[0:3], 0 offen ; GFX7-NEXT: s_waitcnt vmcnt(0) ; GFX7-NEXT: v_readlane_b32 s31, v5, 1 -; GFX7-NEXT: v_readlane_b32 s30, v5, 0 ; GFX7-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GFX7-NEXT: buffer_load_dword v5, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX7-NEXT: s_mov_b64 exec, s[4:5] @@ -2012,13 +2012,13 @@ ; GFX8-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GFX8-NEXT: buffer_store_dword v3, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX8-NEXT: s_mov_b64 exec, s[4:5] +; GFX8-NEXT: v_writelane_b32 v3, s30, 0 ; GFX8-NEXT: s_addk_i32 s32, 0x400 +; GFX8-NEXT: v_writelane_b32 v3, s31, 1 ; GFX8-NEXT: s_getpc_b64 s[4:5] ; GFX8-NEXT: s_add_u32 s4, s4, test_arg_store_v2bf16@gotpcrel32@lo+4 ; GFX8-NEXT: s_addc_u32 s5, s5, test_arg_store_v2bf16@gotpcrel32@hi+12 ; GFX8-NEXT: s_load_dwordx2 s[4:5], s[4:5], 0x0 -; GFX8-NEXT: v_writelane_b32 v3, s30, 0 -; GFX8-NEXT: v_writelane_b32 v3, s31, 1 ; GFX8-NEXT: s_waitcnt lgkmcnt(0) ; GFX8-NEXT: s_swappc_b64 s[30:31], s[4:5] ; GFX8-NEXT: v_add_u32_e32 v6, vcc, 4, v2 @@ -2032,10 +2032,10 @@ ; GFX8-NEXT: buffer_store_short v5, v0, s[0:3], 0 offen ; GFX8-NEXT: s_waitcnt vmcnt(0) ; GFX8-NEXT: v_add_u32_e32 v0, vcc, 2, v2 +; GFX8-NEXT: v_readlane_b32 s30, v3, 0 ; GFX8-NEXT: buffer_store_short v4, v0, s[0:3], 0 offen ; GFX8-NEXT: s_waitcnt vmcnt(0) ; GFX8-NEXT: v_readlane_b32 s31, v3, 1 -; GFX8-NEXT: v_readlane_b32 s30, v3, 0 ; GFX8-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GFX8-NEXT: buffer_load_dword v3, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX8-NEXT: s_mov_b64 exec, s[4:5] @@ -2052,15 +2052,16 @@ ; GFX9-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GFX9-NEXT: buffer_store_dword v3, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[4:5] +; GFX9-NEXT: v_writelane_b32 v3, s30, 0 ; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v3, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[4:5] ; GFX9-NEXT: s_add_u32 s4, s4, test_arg_store_v2bf16@gotpcrel32@lo+4 ; GFX9-NEXT: s_addc_u32 s5, s5, test_arg_store_v2bf16@gotpcrel32@hi+12 ; GFX9-NEXT: s_load_dwordx2 s[4:5], s[4:5], 0x0 -; GFX9-NEXT: v_writelane_b32 v3, s30, 0 -; GFX9-NEXT: v_writelane_b32 v3, s31, 1 ; GFX9-NEXT: s_waitcnt lgkmcnt(0) ; GFX9-NEXT: s_swappc_b64 s[30:31], s[4:5] +; GFX9-NEXT: v_readlane_b32 s30, v3, 0 ; GFX9-NEXT: buffer_store_short_d16_hi v1, v2, s[0:3], 0 offen offset:6 ; GFX9-NEXT: s_waitcnt vmcnt(0) ; GFX9-NEXT: buffer_store_short v1, v2, s[0:3], 0 offen offset:4 @@ -2070,7 +2071,6 @@ ; GFX9-NEXT: buffer_store_short v0, v2, s[0:3], 0 offen ; GFX9-NEXT: s_waitcnt vmcnt(0) ; GFX9-NEXT: v_readlane_b32 s31, v3, 1 -; GFX9-NEXT: v_readlane_b32 s30, v3, 0 ; GFX9-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GFX9-NEXT: buffer_load_dword v3, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX9-NEXT: s_mov_b64 exec, s[4:5] @@ -2089,15 +2089,16 @@ ; GFX10-NEXT: buffer_store_dword v3, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s4 +; GFX10-NEXT: v_writelane_b32 v3, s30, 0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v3, s31, 1 ; GFX10-NEXT: s_getpc_b64 s[4:5] ; GFX10-NEXT: s_add_u32 s4, s4, test_arg_store_v2bf16@gotpcrel32@lo+4 ; GFX10-NEXT: s_addc_u32 s5, s5, test_arg_store_v2bf16@gotpcrel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v3, s30, 0 ; GFX10-NEXT: s_load_dwordx2 s[4:5], s[4:5], 0x0 -; GFX10-NEXT: v_writelane_b32 v3, s31, 1 ; GFX10-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-NEXT: s_swappc_b64 s[30:31], s[4:5] +; GFX10-NEXT: v_readlane_b32 s30, v3, 0 ; GFX10-NEXT: buffer_store_short_d16_hi v1, v2, s[0:3], 0 offen offset:6 ; GFX10-NEXT: s_waitcnt_vscnt null, 0x0 ; GFX10-NEXT: buffer_store_short v1, v2, s[0:3], 0 offen offset:4 @@ -2107,7 +2108,6 @@ ; GFX10-NEXT: buffer_store_short v0, v2, s[0:3], 0 offen ; GFX10-NEXT: s_waitcnt_vscnt null, 0x0 ; GFX10-NEXT: v_readlane_b32 s31, v3, 1 -; GFX10-NEXT: v_readlane_b32 s30, v3, 0 ; GFX10-NEXT: s_xor_saveexec_b32 s4, -1 ; GFX10-NEXT: buffer_load_dword v3, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 @@ -2172,8 +2172,8 @@ ; GCN-NEXT: s_waitcnt vmcnt(0) ; GCN-NEXT: buffer_store_short v0, v8, s[0:3], 0 offen ; GCN-NEXT: s_waitcnt vmcnt(0) -; GCN-NEXT: v_readlane_b32 s31, v9, 1 ; GCN-NEXT: v_readlane_b32 s30, v9, 0 +; GCN-NEXT: v_readlane_b32 s31, v9, 1 ; GCN-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GCN-NEXT: buffer_load_dword v9, off, s[0:3], s33 ; 4-byte Folded Reload ; GCN-NEXT: s_mov_b64 exec, s[4:5] @@ -2190,13 +2190,13 @@ ; GFX7-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GFX7-NEXT: buffer_store_dword v9, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX7-NEXT: s_mov_b64 exec, s[4:5] +; GFX7-NEXT: v_writelane_b32 v9, s30, 0 ; GFX7-NEXT: s_addk_i32 s32, 0x400 +; GFX7-NEXT: v_writelane_b32 v9, s31, 1 ; GFX7-NEXT: s_getpc_b64 s[4:5] ; GFX7-NEXT: s_add_u32 s4, s4, test_arg_store_v2bf16@gotpcrel32@lo+4 ; GFX7-NEXT: s_addc_u32 s5, s5, test_arg_store_v2bf16@gotpcrel32@hi+12 ; GFX7-NEXT: s_load_dwordx2 s[4:5], s[4:5], 0x0 -; GFX7-NEXT: v_writelane_b32 v9, s30, 0 -; GFX7-NEXT: v_writelane_b32 v9, s31, 1 ; GFX7-NEXT: s_waitcnt lgkmcnt(0) ; GFX7-NEXT: s_swappc_b64 s[30:31], s[4:5] ; GFX7-NEXT: v_lshrrev_b32_e32 v7, 16, v7 @@ -2225,13 +2225,13 @@ ; GFX7-NEXT: buffer_store_short v2, v3, s[0:3], 0 offen ; GFX7-NEXT: s_waitcnt vmcnt(0) ; GFX7-NEXT: v_add_i32_e32 v2, vcc, 2, v8 +; GFX7-NEXT: v_readlane_b32 s30, v9, 0 ; GFX7-NEXT: v_lshrrev_b32_e32 v0, 16, v0 ; GFX7-NEXT: buffer_store_short v1, v2, s[0:3], 0 offen ; GFX7-NEXT: s_waitcnt vmcnt(0) ; GFX7-NEXT: buffer_store_short v0, v8, s[0:3], 0 offen ; GFX7-NEXT: s_waitcnt vmcnt(0) ; GFX7-NEXT: v_readlane_b32 s31, v9, 1 -; GFX7-NEXT: v_readlane_b32 s30, v9, 0 ; GFX7-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GFX7-NEXT: buffer_load_dword v9, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX7-NEXT: s_mov_b64 exec, s[4:5] @@ -2248,13 +2248,13 @@ ; GFX8-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GFX8-NEXT: buffer_store_dword v5, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX8-NEXT: s_mov_b64 exec, s[4:5] +; GFX8-NEXT: v_writelane_b32 v5, s30, 0 ; GFX8-NEXT: s_addk_i32 s32, 0x400 +; GFX8-NEXT: v_writelane_b32 v5, s31, 1 ; GFX8-NEXT: s_getpc_b64 s[4:5] ; GFX8-NEXT: s_add_u32 s4, s4, test_arg_store_v2bf16@gotpcrel32@lo+4 ; GFX8-NEXT: s_addc_u32 s5, s5, test_arg_store_v2bf16@gotpcrel32@hi+12 ; GFX8-NEXT: s_load_dwordx2 s[4:5], s[4:5], 0x0 -; GFX8-NEXT: v_writelane_b32 v5, s30, 0 -; GFX8-NEXT: v_writelane_b32 v5, s31, 1 ; GFX8-NEXT: s_waitcnt lgkmcnt(0) ; GFX8-NEXT: s_swappc_b64 s[30:31], s[4:5] ; GFX8-NEXT: v_add_u32_e32 v10, vcc, 12, v4 @@ -2282,10 +2282,10 @@ ; GFX8-NEXT: buffer_store_short v7, v0, s[0:3], 0 offen ; GFX8-NEXT: s_waitcnt vmcnt(0) ; GFX8-NEXT: v_add_u32_e32 v0, vcc, 2, v4 +; GFX8-NEXT: v_readlane_b32 s30, v5, 0 ; GFX8-NEXT: buffer_store_short v6, v0, s[0:3], 0 offen ; GFX8-NEXT: s_waitcnt vmcnt(0) ; GFX8-NEXT: v_readlane_b32 s31, v5, 1 -; GFX8-NEXT: v_readlane_b32 s30, v5, 0 ; GFX8-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GFX8-NEXT: buffer_load_dword v5, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX8-NEXT: s_mov_b64 exec, s[4:5] @@ -2302,15 +2302,16 @@ ; GFX9-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GFX9-NEXT: buffer_store_dword v5, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[4:5] +; GFX9-NEXT: v_writelane_b32 v5, s30, 0 ; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v5, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[4:5] ; GFX9-NEXT: s_add_u32 s4, s4, test_arg_store_v2bf16@gotpcrel32@lo+4 ; GFX9-NEXT: s_addc_u32 s5, s5, test_arg_store_v2bf16@gotpcrel32@hi+12 ; GFX9-NEXT: s_load_dwordx2 s[4:5], s[4:5], 0x0 -; GFX9-NEXT: v_writelane_b32 v5, s30, 0 -; GFX9-NEXT: v_writelane_b32 v5, s31, 1 ; GFX9-NEXT: s_waitcnt lgkmcnt(0) ; GFX9-NEXT: s_swappc_b64 s[30:31], s[4:5] +; GFX9-NEXT: v_readlane_b32 s30, v5, 0 ; GFX9-NEXT: buffer_store_short_d16_hi v3, v4, s[0:3], 0 offen offset:14 ; GFX9-NEXT: s_waitcnt vmcnt(0) ; GFX9-NEXT: buffer_store_short v3, v4, s[0:3], 0 offen offset:12 @@ -2328,7 +2329,6 @@ ; GFX9-NEXT: buffer_store_short v0, v4, s[0:3], 0 offen ; GFX9-NEXT: s_waitcnt vmcnt(0) ; GFX9-NEXT: v_readlane_b32 s31, v5, 1 -; GFX9-NEXT: v_readlane_b32 s30, v5, 0 ; GFX9-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GFX9-NEXT: buffer_load_dword v5, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX9-NEXT: s_mov_b64 exec, s[4:5] @@ -2347,15 +2347,16 @@ ; GFX10-NEXT: buffer_store_dword v5, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s4 +; GFX10-NEXT: v_writelane_b32 v5, s30, 0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v5, s31, 1 ; GFX10-NEXT: s_getpc_b64 s[4:5] ; GFX10-NEXT: s_add_u32 s4, s4, test_arg_store_v2bf16@gotpcrel32@lo+4 ; GFX10-NEXT: s_addc_u32 s5, s5, test_arg_store_v2bf16@gotpcrel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v5, s30, 0 ; GFX10-NEXT: s_load_dwordx2 s[4:5], s[4:5], 0x0 -; GFX10-NEXT: v_writelane_b32 v5, s31, 1 ; GFX10-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-NEXT: s_swappc_b64 s[30:31], s[4:5] +; GFX10-NEXT: v_readlane_b32 s30, v5, 0 ; GFX10-NEXT: buffer_store_short_d16_hi v3, v4, s[0:3], 0 offen offset:14 ; GFX10-NEXT: s_waitcnt_vscnt null, 0x0 ; GFX10-NEXT: buffer_store_short v3, v4, s[0:3], 0 offen offset:12 @@ -2373,7 +2374,6 @@ ; GFX10-NEXT: buffer_store_short v0, v4, s[0:3], 0 offen ; GFX10-NEXT: s_waitcnt_vscnt null, 0x0 ; GFX10-NEXT: v_readlane_b32 s31, v5, 1 -; GFX10-NEXT: v_readlane_b32 s30, v5, 0 ; GFX10-NEXT: s_xor_saveexec_b32 s4, -1 ; GFX10-NEXT: buffer_load_dword v5, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 @@ -2470,8 +2470,8 @@ ; GCN-NEXT: s_waitcnt vmcnt(0) ; GCN-NEXT: buffer_store_short v0, v16, s[0:3], 0 offen ; GCN-NEXT: s_waitcnt vmcnt(0) -; GCN-NEXT: v_readlane_b32 s31, v17, 1 ; GCN-NEXT: v_readlane_b32 s30, v17, 0 +; GCN-NEXT: v_readlane_b32 s31, v17, 1 ; GCN-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GCN-NEXT: buffer_load_dword v17, off, s[0:3], s33 ; 4-byte Folded Reload ; GCN-NEXT: s_mov_b64 exec, s[4:5] @@ -2488,13 +2488,13 @@ ; GFX7-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GFX7-NEXT: buffer_store_dword v17, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX7-NEXT: s_mov_b64 exec, s[4:5] +; GFX7-NEXT: v_writelane_b32 v17, s30, 0 ; GFX7-NEXT: s_addk_i32 s32, 0x400 +; GFX7-NEXT: v_writelane_b32 v17, s31, 1 ; GFX7-NEXT: s_getpc_b64 s[4:5] ; GFX7-NEXT: s_add_u32 s4, s4, test_arg_store_v2bf16@gotpcrel32@lo+4 ; GFX7-NEXT: s_addc_u32 s5, s5, test_arg_store_v2bf16@gotpcrel32@hi+12 ; GFX7-NEXT: s_load_dwordx2 s[4:5], s[4:5], 0x0 -; GFX7-NEXT: v_writelane_b32 v17, s30, 0 -; GFX7-NEXT: v_writelane_b32 v17, s31, 1 ; GFX7-NEXT: s_waitcnt lgkmcnt(0) ; GFX7-NEXT: s_swappc_b64 s[30:31], s[4:5] ; GFX7-NEXT: v_lshrrev_b32_e32 v15, 16, v15 @@ -2555,13 +2555,13 @@ ; GFX7-NEXT: buffer_store_short v2, v3, s[0:3], 0 offen ; GFX7-NEXT: s_waitcnt vmcnt(0) ; GFX7-NEXT: v_add_i32_e32 v2, vcc, 2, v16 +; GFX7-NEXT: v_readlane_b32 s30, v17, 0 ; GFX7-NEXT: v_lshrrev_b32_e32 v0, 16, v0 ; GFX7-NEXT: buffer_store_short v1, v2, s[0:3], 0 offen ; GFX7-NEXT: s_waitcnt vmcnt(0) ; GFX7-NEXT: buffer_store_short v0, v16, s[0:3], 0 offen ; GFX7-NEXT: s_waitcnt vmcnt(0) ; GFX7-NEXT: v_readlane_b32 s31, v17, 1 -; GFX7-NEXT: v_readlane_b32 s30, v17, 0 ; GFX7-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GFX7-NEXT: buffer_load_dword v17, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX7-NEXT: s_mov_b64 exec, s[4:5] @@ -2578,13 +2578,13 @@ ; GFX8-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GFX8-NEXT: buffer_store_dword v9, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX8-NEXT: s_mov_b64 exec, s[4:5] +; GFX8-NEXT: v_writelane_b32 v9, s30, 0 ; GFX8-NEXT: s_addk_i32 s32, 0x400 +; GFX8-NEXT: v_writelane_b32 v9, s31, 1 ; GFX8-NEXT: s_getpc_b64 s[4:5] ; GFX8-NEXT: s_add_u32 s4, s4, test_arg_store_v2bf16@gotpcrel32@lo+4 ; GFX8-NEXT: s_addc_u32 s5, s5, test_arg_store_v2bf16@gotpcrel32@hi+12 ; GFX8-NEXT: s_load_dwordx2 s[4:5], s[4:5], 0x0 -; GFX8-NEXT: v_writelane_b32 v9, s30, 0 -; GFX8-NEXT: v_writelane_b32 v9, s31, 1 ; GFX8-NEXT: s_waitcnt lgkmcnt(0) ; GFX8-NEXT: s_swappc_b64 s[30:31], s[4:5] ; GFX8-NEXT: v_add_u32_e32 v18, vcc, 28, v8 @@ -2640,10 +2640,10 @@ ; GFX8-NEXT: buffer_store_short v11, v0, s[0:3], 0 offen ; GFX8-NEXT: s_waitcnt vmcnt(0) ; GFX8-NEXT: v_add_u32_e32 v0, vcc, 2, v8 +; GFX8-NEXT: v_readlane_b32 s30, v9, 0 ; GFX8-NEXT: buffer_store_short v10, v0, s[0:3], 0 offen ; GFX8-NEXT: s_waitcnt vmcnt(0) ; GFX8-NEXT: v_readlane_b32 s31, v9, 1 -; GFX8-NEXT: v_readlane_b32 s30, v9, 0 ; GFX8-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GFX8-NEXT: buffer_load_dword v9, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX8-NEXT: s_mov_b64 exec, s[4:5] @@ -2660,15 +2660,16 @@ ; GFX9-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GFX9-NEXT: buffer_store_dword v9, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[4:5] +; GFX9-NEXT: v_writelane_b32 v9, s30, 0 ; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v9, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[4:5] ; GFX9-NEXT: s_add_u32 s4, s4, test_arg_store_v2bf16@gotpcrel32@lo+4 ; GFX9-NEXT: s_addc_u32 s5, s5, test_arg_store_v2bf16@gotpcrel32@hi+12 ; GFX9-NEXT: s_load_dwordx2 s[4:5], s[4:5], 0x0 -; GFX9-NEXT: v_writelane_b32 v9, s30, 0 -; GFX9-NEXT: v_writelane_b32 v9, s31, 1 ; GFX9-NEXT: s_waitcnt lgkmcnt(0) ; GFX9-NEXT: s_swappc_b64 s[30:31], s[4:5] +; GFX9-NEXT: v_readlane_b32 s30, v9, 0 ; GFX9-NEXT: buffer_store_short_d16_hi v7, v8, s[0:3], 0 offen offset:30 ; GFX9-NEXT: s_waitcnt vmcnt(0) ; GFX9-NEXT: buffer_store_short v7, v8, s[0:3], 0 offen offset:28 @@ -2702,7 +2703,6 @@ ; GFX9-NEXT: buffer_store_short v0, v8, s[0:3], 0 offen ; GFX9-NEXT: s_waitcnt vmcnt(0) ; GFX9-NEXT: v_readlane_b32 s31, v9, 1 -; GFX9-NEXT: v_readlane_b32 s30, v9, 0 ; GFX9-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; GFX9-NEXT: buffer_load_dword v9, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX9-NEXT: s_mov_b64 exec, s[4:5] @@ -2721,15 +2721,16 @@ ; GFX10-NEXT: buffer_store_dword v9, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s4 +; GFX10-NEXT: v_writelane_b32 v9, s30, 0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v9, s31, 1 ; GFX10-NEXT: s_getpc_b64 s[4:5] ; GFX10-NEXT: s_add_u32 s4, s4, test_arg_store_v2bf16@gotpcrel32@lo+4 ; GFX10-NEXT: s_addc_u32 s5, s5, test_arg_store_v2bf16@gotpcrel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v9, s30, 0 ; GFX10-NEXT: s_load_dwordx2 s[4:5], s[4:5], 0x0 -; GFX10-NEXT: v_writelane_b32 v9, s31, 1 ; GFX10-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-NEXT: s_swappc_b64 s[30:31], s[4:5] +; GFX10-NEXT: v_readlane_b32 s30, v9, 0 ; GFX10-NEXT: buffer_store_short_d16_hi v7, v8, s[0:3], 0 offen offset:30 ; GFX10-NEXT: s_waitcnt_vscnt null, 0x0 ; GFX10-NEXT: buffer_store_short v7, v8, s[0:3], 0 offen offset:28 @@ -2763,7 +2764,6 @@ ; GFX10-NEXT: buffer_store_short v0, v8, s[0:3], 0 offen ; GFX10-NEXT: s_waitcnt_vscnt null, 0x0 ; GFX10-NEXT: v_readlane_b32 s31, v9, 1 -; GFX10-NEXT: v_readlane_b32 s30, v9, 0 ; GFX10-NEXT: s_xor_saveexec_b32 s4, -1 ; GFX10-NEXT: buffer_load_dword v9, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 diff --git a/llvm/test/CodeGen/AMDGPU/branch-relax-spill.ll b/llvm/test/CodeGen/AMDGPU/branch-relax-spill.ll --- a/llvm/test/CodeGen/AMDGPU/branch-relax-spill.ll +++ b/llvm/test/CodeGen/AMDGPU/branch-relax-spill.ll @@ -903,79 +903,79 @@ ; CHECK-NEXT: buffer_store_dword v1, off, s[0:3], s32 offset:4 ; 4-byte Folded Spill ; CHECK-NEXT: s_mov_b64 exec, s[4:5] ; CHECK-NEXT: s_waitcnt expcnt(1) -; CHECK-NEXT: v_writelane_b32 v0, s30, 0 -; CHECK-NEXT: v_writelane_b32 v0, s31, 1 -; CHECK-NEXT: v_writelane_b32 v0, s33, 2 -; CHECK-NEXT: v_writelane_b32 v0, s34, 3 -; CHECK-NEXT: v_writelane_b32 v0, s35, 4 -; CHECK-NEXT: v_writelane_b32 v0, s36, 5 -; CHECK-NEXT: v_writelane_b32 v0, s37, 6 -; CHECK-NEXT: v_writelane_b32 v0, s38, 7 -; CHECK-NEXT: v_writelane_b32 v0, s39, 8 -; CHECK-NEXT: v_writelane_b32 v0, s40, 9 -; CHECK-NEXT: v_writelane_b32 v0, s41, 10 -; CHECK-NEXT: v_writelane_b32 v0, s42, 11 -; CHECK-NEXT: v_writelane_b32 v0, s43, 12 -; CHECK-NEXT: v_writelane_b32 v0, s44, 13 -; CHECK-NEXT: v_writelane_b32 v0, s45, 14 -; CHECK-NEXT: v_writelane_b32 v0, s46, 15 -; CHECK-NEXT: v_writelane_b32 v0, s47, 16 -; CHECK-NEXT: v_writelane_b32 v0, s48, 17 -; CHECK-NEXT: v_writelane_b32 v0, s49, 18 -; CHECK-NEXT: v_writelane_b32 v0, s50, 19 -; CHECK-NEXT: v_writelane_b32 v0, s51, 20 -; CHECK-NEXT: v_writelane_b32 v0, s52, 21 -; CHECK-NEXT: v_writelane_b32 v0, s53, 22 -; CHECK-NEXT: v_writelane_b32 v0, s54, 23 -; CHECK-NEXT: v_writelane_b32 v0, s55, 24 -; CHECK-NEXT: v_writelane_b32 v0, s56, 25 -; CHECK-NEXT: v_writelane_b32 v0, s57, 26 -; CHECK-NEXT: v_writelane_b32 v0, s58, 27 -; CHECK-NEXT: v_writelane_b32 v0, s59, 28 -; CHECK-NEXT: v_writelane_b32 v0, s60, 29 -; CHECK-NEXT: v_writelane_b32 v0, s61, 30 -; CHECK-NEXT: v_writelane_b32 v0, s62, 31 -; CHECK-NEXT: v_writelane_b32 v0, s63, 32 -; CHECK-NEXT: v_writelane_b32 v0, s64, 33 -; CHECK-NEXT: v_writelane_b32 v0, s65, 34 -; CHECK-NEXT: v_writelane_b32 v0, s66, 35 -; CHECK-NEXT: v_writelane_b32 v0, s67, 36 -; CHECK-NEXT: v_writelane_b32 v0, s68, 37 -; CHECK-NEXT: v_writelane_b32 v0, s69, 38 -; CHECK-NEXT: v_writelane_b32 v0, s70, 39 -; CHECK-NEXT: v_writelane_b32 v0, s71, 40 -; CHECK-NEXT: v_writelane_b32 v0, s72, 41 -; CHECK-NEXT: v_writelane_b32 v0, s73, 42 -; CHECK-NEXT: v_writelane_b32 v0, s74, 43 -; CHECK-NEXT: v_writelane_b32 v0, s75, 44 -; CHECK-NEXT: v_writelane_b32 v0, s76, 45 -; CHECK-NEXT: v_writelane_b32 v0, s77, 46 -; CHECK-NEXT: v_writelane_b32 v0, s78, 47 -; CHECK-NEXT: v_writelane_b32 v0, s79, 48 -; CHECK-NEXT: v_writelane_b32 v0, s80, 49 -; CHECK-NEXT: v_writelane_b32 v0, s81, 50 -; CHECK-NEXT: v_writelane_b32 v0, s82, 51 -; CHECK-NEXT: v_writelane_b32 v0, s83, 52 -; CHECK-NEXT: v_writelane_b32 v0, s84, 53 -; CHECK-NEXT: v_writelane_b32 v0, s85, 54 -; CHECK-NEXT: v_writelane_b32 v0, s86, 55 -; CHECK-NEXT: v_writelane_b32 v0, s87, 56 -; CHECK-NEXT: v_writelane_b32 v0, s88, 57 +; CHECK-NEXT: v_writelane_b32 v0, s33, 0 +; CHECK-NEXT: v_writelane_b32 v0, s34, 1 +; CHECK-NEXT: v_writelane_b32 v0, s35, 2 +; CHECK-NEXT: v_writelane_b32 v0, s36, 3 +; CHECK-NEXT: v_writelane_b32 v0, s37, 4 +; CHECK-NEXT: v_writelane_b32 v0, s38, 5 +; CHECK-NEXT: v_writelane_b32 v0, s39, 6 +; CHECK-NEXT: v_writelane_b32 v0, s40, 7 +; CHECK-NEXT: v_writelane_b32 v0, s41, 8 +; CHECK-NEXT: v_writelane_b32 v0, s42, 9 +; CHECK-NEXT: v_writelane_b32 v0, s43, 10 +; CHECK-NEXT: v_writelane_b32 v0, s44, 11 +; CHECK-NEXT: v_writelane_b32 v0, s45, 12 +; CHECK-NEXT: v_writelane_b32 v0, s46, 13 +; CHECK-NEXT: v_writelane_b32 v0, s47, 14 +; CHECK-NEXT: v_writelane_b32 v0, s48, 15 +; CHECK-NEXT: v_writelane_b32 v0, s49, 16 +; CHECK-NEXT: v_writelane_b32 v0, s50, 17 +; CHECK-NEXT: v_writelane_b32 v0, s51, 18 +; CHECK-NEXT: v_writelane_b32 v0, s52, 19 +; CHECK-NEXT: v_writelane_b32 v0, s53, 20 +; CHECK-NEXT: v_writelane_b32 v0, s54, 21 +; CHECK-NEXT: v_writelane_b32 v0, s55, 22 +; CHECK-NEXT: v_writelane_b32 v0, s56, 23 +; CHECK-NEXT: v_writelane_b32 v0, s57, 24 +; CHECK-NEXT: v_writelane_b32 v0, s58, 25 +; CHECK-NEXT: v_writelane_b32 v0, s59, 26 +; CHECK-NEXT: v_writelane_b32 v0, s60, 27 +; CHECK-NEXT: v_writelane_b32 v0, s61, 28 +; CHECK-NEXT: v_writelane_b32 v0, s62, 29 +; CHECK-NEXT: v_writelane_b32 v0, s63, 30 +; CHECK-NEXT: v_writelane_b32 v0, s64, 31 +; CHECK-NEXT: v_writelane_b32 v0, s65, 32 +; CHECK-NEXT: v_writelane_b32 v0, s66, 33 +; CHECK-NEXT: v_writelane_b32 v0, s67, 34 +; CHECK-NEXT: v_writelane_b32 v0, s68, 35 +; CHECK-NEXT: v_writelane_b32 v0, s69, 36 +; CHECK-NEXT: v_writelane_b32 v0, s70, 37 +; CHECK-NEXT: v_writelane_b32 v0, s71, 38 +; CHECK-NEXT: v_writelane_b32 v0, s72, 39 +; CHECK-NEXT: v_writelane_b32 v0, s73, 40 +; CHECK-NEXT: v_writelane_b32 v0, s74, 41 +; CHECK-NEXT: v_writelane_b32 v0, s75, 42 +; CHECK-NEXT: v_writelane_b32 v0, s76, 43 +; CHECK-NEXT: v_writelane_b32 v0, s77, 44 +; CHECK-NEXT: v_writelane_b32 v0, s78, 45 +; CHECK-NEXT: v_writelane_b32 v0, s79, 46 +; CHECK-NEXT: v_writelane_b32 v0, s80, 47 +; CHECK-NEXT: v_writelane_b32 v0, s81, 48 +; CHECK-NEXT: v_writelane_b32 v0, s82, 49 +; CHECK-NEXT: v_writelane_b32 v0, s83, 50 +; CHECK-NEXT: v_writelane_b32 v0, s84, 51 +; CHECK-NEXT: v_writelane_b32 v0, s85, 52 +; CHECK-NEXT: v_writelane_b32 v0, s86, 53 +; CHECK-NEXT: v_writelane_b32 v0, s87, 54 +; CHECK-NEXT: v_writelane_b32 v0, s88, 55 +; CHECK-NEXT: v_writelane_b32 v0, s89, 56 +; CHECK-NEXT: v_writelane_b32 v0, s90, 57 +; CHECK-NEXT: v_writelane_b32 v0, s91, 58 +; CHECK-NEXT: v_writelane_b32 v0, s92, 59 +; CHECK-NEXT: v_writelane_b32 v0, s93, 60 +; CHECK-NEXT: v_writelane_b32 v0, s94, 61 +; CHECK-NEXT: v_writelane_b32 v0, s95, 62 +; CHECK-NEXT: v_writelane_b32 v0, s96, 63 ; CHECK-NEXT: s_waitcnt expcnt(0) -; CHECK-NEXT: v_writelane_b32 v1, s95, 0 -; CHECK-NEXT: v_writelane_b32 v0, s89, 58 -; CHECK-NEXT: v_writelane_b32 v1, s96, 1 -; CHECK-NEXT: v_writelane_b32 v0, s90, 59 -; CHECK-NEXT: v_writelane_b32 v1, s97, 2 -; CHECK-NEXT: v_writelane_b32 v0, s91, 60 -; CHECK-NEXT: v_writelane_b32 v1, s98, 3 -; CHECK-NEXT: v_writelane_b32 v0, s92, 61 -; CHECK-NEXT: v_writelane_b32 v1, s99, 4 -; CHECK-NEXT: v_writelane_b32 v0, s93, 62 -; CHECK-NEXT: v_writelane_b32 v1, s100, 5 +; CHECK-NEXT: v_writelane_b32 v1, s97, 0 +; CHECK-NEXT: v_writelane_b32 v1, s98, 1 +; CHECK-NEXT: v_writelane_b32 v1, s99, 2 +; CHECK-NEXT: v_writelane_b32 v1, s100, 3 +; CHECK-NEXT: v_writelane_b32 v1, s101, 4 +; CHECK-NEXT: v_writelane_b32 v1, s30, 5 +; CHECK-NEXT: v_writelane_b32 v1, s31, 6 ; CHECK-NEXT: s_mov_b32 s49, s12 -; CHECK-NEXT: v_writelane_b32 v0, s94, 63 -; CHECK-NEXT: v_writelane_b32 v1, s101, 6 ; CHECK-NEXT: s_cmp_eq_u32 s49, 0 ; CHECK-NEXT: ;;#ASMSTART ; CHECK-NEXT: s_mov_b32 s0, 0 @@ -1414,6 +1414,7 @@ ; CHECK-NEXT: ;;#ASMSTART ; CHECK-NEXT: ; reg use s31 ; CHECK-NEXT: ;;#ASMEND +; CHECK-NEXT: v_readlane_b32 s30, v1, 5 ; CHECK-NEXT: ;;#ASMSTART ; CHECK-NEXT: ; reg use s32 ; CHECK-NEXT: ;;#ASMEND @@ -1630,77 +1631,76 @@ ; CHECK-NEXT: ;;#ASMSTART ; CHECK-NEXT: ; reg use vcc_hi ; CHECK-NEXT: ;;#ASMEND -; CHECK-NEXT: v_readlane_b32 s101, v1, 6 -; CHECK-NEXT: v_readlane_b32 s100, v1, 5 -; CHECK-NEXT: v_readlane_b32 s99, v1, 4 -; CHECK-NEXT: v_readlane_b32 s98, v1, 3 -; CHECK-NEXT: v_readlane_b32 s97, v1, 2 -; CHECK-NEXT: v_readlane_b32 s96, v1, 1 -; CHECK-NEXT: v_readlane_b32 s95, v1, 0 -; CHECK-NEXT: v_readlane_b32 s94, v0, 63 -; CHECK-NEXT: v_readlane_b32 s93, v0, 62 -; CHECK-NEXT: v_readlane_b32 s92, v0, 61 -; CHECK-NEXT: v_readlane_b32 s91, v0, 60 -; CHECK-NEXT: v_readlane_b32 s90, v0, 59 -; CHECK-NEXT: v_readlane_b32 s89, v0, 58 -; CHECK-NEXT: v_readlane_b32 s88, v0, 57 -; CHECK-NEXT: v_readlane_b32 s87, v0, 56 -; CHECK-NEXT: v_readlane_b32 s86, v0, 55 -; CHECK-NEXT: v_readlane_b32 s85, v0, 54 -; CHECK-NEXT: v_readlane_b32 s84, v0, 53 -; CHECK-NEXT: v_readlane_b32 s83, v0, 52 -; CHECK-NEXT: v_readlane_b32 s82, v0, 51 -; CHECK-NEXT: v_readlane_b32 s81, v0, 50 -; CHECK-NEXT: v_readlane_b32 s80, v0, 49 -; CHECK-NEXT: v_readlane_b32 s79, v0, 48 -; CHECK-NEXT: v_readlane_b32 s78, v0, 47 -; CHECK-NEXT: v_readlane_b32 s77, v0, 46 -; CHECK-NEXT: v_readlane_b32 s76, v0, 45 -; CHECK-NEXT: v_readlane_b32 s75, v0, 44 -; CHECK-NEXT: v_readlane_b32 s74, v0, 43 -; CHECK-NEXT: v_readlane_b32 s73, v0, 42 -; CHECK-NEXT: v_readlane_b32 s72, v0, 41 -; CHECK-NEXT: v_readlane_b32 s71, v0, 40 -; CHECK-NEXT: v_readlane_b32 s70, v0, 39 -; CHECK-NEXT: v_readlane_b32 s69, v0, 38 -; CHECK-NEXT: v_readlane_b32 s68, v0, 37 -; CHECK-NEXT: v_readlane_b32 s67, v0, 36 -; CHECK-NEXT: v_readlane_b32 s66, v0, 35 -; CHECK-NEXT: v_readlane_b32 s65, v0, 34 -; CHECK-NEXT: v_readlane_b32 s64, v0, 33 -; CHECK-NEXT: v_readlane_b32 s63, v0, 32 -; CHECK-NEXT: v_readlane_b32 s62, v0, 31 -; CHECK-NEXT: v_readlane_b32 s61, v0, 30 -; CHECK-NEXT: v_readlane_b32 s60, v0, 29 -; CHECK-NEXT: v_readlane_b32 s59, v0, 28 -; CHECK-NEXT: v_readlane_b32 s58, v0, 27 -; CHECK-NEXT: v_readlane_b32 s57, v0, 26 -; CHECK-NEXT: v_readlane_b32 s56, v0, 25 -; CHECK-NEXT: v_readlane_b32 s55, v0, 24 -; CHECK-NEXT: v_readlane_b32 s54, v0, 23 -; CHECK-NEXT: v_readlane_b32 s53, v0, 22 -; CHECK-NEXT: v_readlane_b32 s52, v0, 21 -; CHECK-NEXT: v_readlane_b32 s51, v0, 20 -; CHECK-NEXT: v_readlane_b32 s50, v0, 19 -; CHECK-NEXT: v_readlane_b32 s49, v0, 18 -; CHECK-NEXT: v_readlane_b32 s48, v0, 17 -; CHECK-NEXT: v_readlane_b32 s47, v0, 16 -; CHECK-NEXT: v_readlane_b32 s46, v0, 15 -; CHECK-NEXT: v_readlane_b32 s45, v0, 14 -; CHECK-NEXT: v_readlane_b32 s44, v0, 13 -; CHECK-NEXT: v_readlane_b32 s43, v0, 12 -; CHECK-NEXT: v_readlane_b32 s42, v0, 11 -; CHECK-NEXT: v_readlane_b32 s41, v0, 10 -; CHECK-NEXT: v_readlane_b32 s40, v0, 9 -; CHECK-NEXT: v_readlane_b32 s39, v0, 8 -; CHECK-NEXT: v_readlane_b32 s38, v0, 7 -; CHECK-NEXT: v_readlane_b32 s37, v0, 6 -; CHECK-NEXT: v_readlane_b32 s36, v0, 5 -; CHECK-NEXT: v_readlane_b32 s35, v0, 4 -; CHECK-NEXT: v_readlane_b32 s34, v0, 3 -; CHECK-NEXT: v_readlane_b32 s33, v0, 2 -; CHECK-NEXT: v_readlane_b32 s31, v0, 1 -; CHECK-NEXT: v_readlane_b32 s30, v0, 0 +; CHECK-NEXT: v_readlane_b32 s31, v1, 6 +; CHECK-NEXT: v_readlane_b32 s101, v1, 4 +; CHECK-NEXT: v_readlane_b32 s100, v1, 3 +; CHECK-NEXT: v_readlane_b32 s99, v1, 2 +; CHECK-NEXT: v_readlane_b32 s98, v1, 1 +; CHECK-NEXT: v_readlane_b32 s97, v1, 0 +; CHECK-NEXT: v_readlane_b32 s96, v0, 63 +; CHECK-NEXT: v_readlane_b32 s95, v0, 62 +; CHECK-NEXT: v_readlane_b32 s94, v0, 61 +; CHECK-NEXT: v_readlane_b32 s93, v0, 60 +; CHECK-NEXT: v_readlane_b32 s92, v0, 59 +; CHECK-NEXT: v_readlane_b32 s91, v0, 58 +; CHECK-NEXT: v_readlane_b32 s90, v0, 57 +; CHECK-NEXT: v_readlane_b32 s89, v0, 56 +; CHECK-NEXT: v_readlane_b32 s88, v0, 55 +; CHECK-NEXT: v_readlane_b32 s87, v0, 54 +; CHECK-NEXT: v_readlane_b32 s86, v0, 53 +; CHECK-NEXT: v_readlane_b32 s85, v0, 52 +; CHECK-NEXT: v_readlane_b32 s84, v0, 51 +; CHECK-NEXT: v_readlane_b32 s83, v0, 50 +; CHECK-NEXT: v_readlane_b32 s82, v0, 49 +; CHECK-NEXT: v_readlane_b32 s81, v0, 48 +; CHECK-NEXT: v_readlane_b32 s80, v0, 47 +; CHECK-NEXT: v_readlane_b32 s79, v0, 46 +; CHECK-NEXT: v_readlane_b32 s78, v0, 45 +; CHECK-NEXT: v_readlane_b32 s77, v0, 44 +; CHECK-NEXT: v_readlane_b32 s76, v0, 43 +; CHECK-NEXT: v_readlane_b32 s75, v0, 42 +; CHECK-NEXT: v_readlane_b32 s74, v0, 41 +; CHECK-NEXT: v_readlane_b32 s73, v0, 40 +; CHECK-NEXT: v_readlane_b32 s72, v0, 39 +; CHECK-NEXT: v_readlane_b32 s71, v0, 38 +; CHECK-NEXT: v_readlane_b32 s70, v0, 37 +; CHECK-NEXT: v_readlane_b32 s69, v0, 36 +; CHECK-NEXT: v_readlane_b32 s68, v0, 35 +; CHECK-NEXT: v_readlane_b32 s67, v0, 34 +; CHECK-NEXT: v_readlane_b32 s66, v0, 33 +; CHECK-NEXT: v_readlane_b32 s65, v0, 32 +; CHECK-NEXT: v_readlane_b32 s64, v0, 31 +; CHECK-NEXT: v_readlane_b32 s63, v0, 30 +; CHECK-NEXT: v_readlane_b32 s62, v0, 29 +; CHECK-NEXT: v_readlane_b32 s61, v0, 28 +; CHECK-NEXT: v_readlane_b32 s60, v0, 27 +; CHECK-NEXT: v_readlane_b32 s59, v0, 26 +; CHECK-NEXT: v_readlane_b32 s58, v0, 25 +; CHECK-NEXT: v_readlane_b32 s57, v0, 24 +; CHECK-NEXT: v_readlane_b32 s56, v0, 23 +; CHECK-NEXT: v_readlane_b32 s55, v0, 22 +; CHECK-NEXT: v_readlane_b32 s54, v0, 21 +; CHECK-NEXT: v_readlane_b32 s53, v0, 20 +; CHECK-NEXT: v_readlane_b32 s52, v0, 19 +; CHECK-NEXT: v_readlane_b32 s51, v0, 18 +; CHECK-NEXT: v_readlane_b32 s50, v0, 17 +; CHECK-NEXT: v_readlane_b32 s49, v0, 16 +; CHECK-NEXT: v_readlane_b32 s48, v0, 15 +; CHECK-NEXT: v_readlane_b32 s47, v0, 14 +; CHECK-NEXT: v_readlane_b32 s46, v0, 13 +; CHECK-NEXT: v_readlane_b32 s45, v0, 12 +; CHECK-NEXT: v_readlane_b32 s44, v0, 11 +; CHECK-NEXT: v_readlane_b32 s43, v0, 10 +; CHECK-NEXT: v_readlane_b32 s42, v0, 9 +; CHECK-NEXT: v_readlane_b32 s41, v0, 8 +; CHECK-NEXT: v_readlane_b32 s40, v0, 7 +; CHECK-NEXT: v_readlane_b32 s39, v0, 6 +; CHECK-NEXT: v_readlane_b32 s38, v0, 5 +; CHECK-NEXT: v_readlane_b32 s37, v0, 4 +; CHECK-NEXT: v_readlane_b32 s36, v0, 3 +; CHECK-NEXT: v_readlane_b32 s35, v0, 2 +; CHECK-NEXT: v_readlane_b32 s34, v0, 1 +; CHECK-NEXT: v_readlane_b32 s33, v0, 0 ; CHECK-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; CHECK-NEXT: buffer_load_dword v0, off, s[0:3], s32 ; 4-byte Folded Reload ; CHECK-NEXT: buffer_load_dword v1, off, s[0:3], s32 offset:4 ; 4-byte Folded Reload diff --git a/llvm/test/CodeGen/AMDGPU/call-graph-register-usage.ll b/llvm/test/CodeGen/AMDGPU/call-graph-register-usage.ll --- a/llvm/test/CodeGen/AMDGPU/call-graph-register-usage.ll +++ b/llvm/test/CodeGen/AMDGPU/call-graph-register-usage.ll @@ -19,8 +19,8 @@ ; GCN: v_writelane_b32 v40, s30, 0 ; GCN: v_writelane_b32 v40, s31, 1 ; GCN: s_swappc_b64 -; GCN: v_readlane_b32 s31, v40, 1 ; GCN: v_readlane_b32 s30, v40, 0 +; GCN: v_readlane_b32 s31, v40, 1 ; GCN: v_readlane_b32 s4, v41, 0 ; GCN: s_mov_b32 s33, s4 ; GCN: s_setpc_b64 s[30:31] diff --git a/llvm/test/CodeGen/AMDGPU/call-preserved-registers.ll b/llvm/test/CodeGen/AMDGPU/call-preserved-registers.ll --- a/llvm/test/CodeGen/AMDGPU/call-preserved-registers.ll +++ b/llvm/test/CodeGen/AMDGPU/call-preserved-registers.ll @@ -24,30 +24,24 @@ ; GCN-LABEL: {{^}}test_func_call_external_void_func_void_clobber_s30_s31_call_external_void_func_void: ; GCN: s_mov_b32 [[FP_SCRATCH_COPY:s[0-9]+]], s33 ; MUBUF: buffer_store_dword -; MUBUF: buffer_store_dword -; FLATSCR: scratch_store_dword ; FLATSCR: scratch_store_dword -; GCN: v_writelane_b32 v40, s30, 0 -; GCN: v_writelane_b32 v40, s31, 1 -; GCN: v_writelane_b32 v40, s34, 2 ; GCN: v_writelane_b32 v41, [[FP_SCRATCH_COPY]], 0 -; GCN: v_writelane_b32 v40, s35, 3 +; GCN: v_writelane_b32 v40, s34, 0 +; GCN: v_writelane_b32 v40, s35, 1 +; GCN: v_writelane_b32 v40, s30, 2 +; GCN: v_writelane_b32 v40, s31, 3 ; GCN: s_swappc_b64 ; GCN-NEXT: ;;#ASMSTART ; GCN-NEXT: ;;#ASMEND ; GCN-NEXT: s_swappc_b64 -; GCN: v_readlane_b32 s35, v40, 3 -; GCN: v_readlane_b32 s34, v40, 2 -; MUBUF-DAG: v_readlane_b32 s31, v40, 1 -; MUBUF-DAG: v_readlane_b32 s30, v40, 0 -; FLATSCR-DAG: v_readlane_b32 s31, v40, 1 -; FLATSCR-DAG: v_readlane_b32 s30, v40, 0 +; GCN-DAG: v_readlane_b32 s30, v40, 2 +; GCN-DAG: v_readlane_b32 s31, v40, 3 +; GCN: v_readlane_b32 s35, v40, 1 +; GCN: v_readlane_b32 s34, v40, 0 ; GCN: v_readlane_b32 [[FP_SCRATCH_COPY:s[0-9]+]], v41, 0 ; MUBUF: buffer_load_dword -; MUBUF: buffer_load_dword -; FLATSCR: scratch_load_dword ; FLATSCR: scratch_load_dword ; GCN: s_mov_b32 s33, [[FP_SCRATCH_COPY]] ; GCN: s_setpc_b64 s[30:31] @@ -65,10 +59,10 @@ ; MUBUF: buffer_store_dword v41 ; FLATSCR: scratch_store_dword off, v40 ; FLATSCR: scratch_store_dword off, v41 -; MUBUF: s_addk_i32 s32, 0x400 -; FLATSCR: s_add_i32 s32, s32, 16 ; GCN: v_writelane_b32 v41, [[FP_SCRATCH_COPY]], 0 +; MUBUF: s_addk_i32 s32, 0x400 +; FLATSCR: s_add_i32 s32, s32, 16 ; GCN: s_swappc_b64 ; GCN-NEXT: s_swappc_b64 @@ -91,8 +85,8 @@ ; GCN-NEXT: #ASMSTART ; GCN: ; clobber ; GCN-NEXT: #ASMEND -; GCN: v_readlane_b32 s31, v0, 1 ; GCN: v_readlane_b32 s30, v0, 0 +; GCN: v_readlane_b32 s31, v0, 1 ; GCN: s_setpc_b64 s[30:31] define void @void_func_void_clobber_s30_s31() #2 { call void asm sideeffect "; clobber", "~{s[30:31]}"() #0 diff --git a/llvm/test/CodeGen/AMDGPU/callee-frame-setup.ll b/llvm/test/CodeGen/AMDGPU/callee-frame-setup.ll --- a/llvm/test/CodeGen/AMDGPU/callee-frame-setup.ll +++ b/llvm/test/CodeGen/AMDGPU/callee-frame-setup.ll @@ -93,11 +93,11 @@ ; FLATSCR-NEXT: scratch_store_dword off, [[CSR_VGPR:v[0-9]+]], s33 offset:4 ; 4-byte Folded Spill ; FLATSCR-NEXT: scratch_store_dword off, [[CSR_VGPR_1:v[0-9]+]], s33 offset:8 ; 4-byte Folded Spill ; GCN-NEXT: s_mov_b64 exec, [[COPY_EXEC0]] +; GCN: v_writelane_b32 [[CSR_VGPR_1]], [[FP_SCRATCH_COPY]], 0 ; MUBUF-DAG: s_addk_i32 s32, 0x400{{$}} ; FLATSCR-DAG: s_add_i32 s32, s32, 16{{$}} -; GCN-DAG: v_writelane_b32 [[CSR_VGPR]], s30, ; GCN-DAG: v_mov_b32_e32 [[ZERO:v[0-9]+]], 0{{$}} -; GCN: v_writelane_b32 [[CSR_VGPR_1]], [[FP_SCRATCH_COPY]], 0 +; GCN-DAG: v_writelane_b32 [[CSR_VGPR]], s30, ; GCN-DAG: v_writelane_b32 [[CSR_VGPR]], s31, ; MUBUF-DAG: buffer_store_dword [[ZERO]], off, s[0:3], s33{{$}} @@ -238,7 +238,7 @@ ; GCN-NEXT: s_mov_b64 exec, ; GCN-NEXT: s_waitcnt vmcnt(0) ; GCN-NEXT: s_setpc_b64 -define void @spill_only_csr_sgpr() { +define void @spill_only_csr_sgpr() #0 { call void asm sideeffect "; clobber s42", "~{s42}"() ret void } @@ -248,8 +248,8 @@ ; GCN: s_waitcnt ; GCN-NEXT:s_mov_b32 [[FP_COPY:s[0-9]+]], s33 ; GCN-NEXT: s_mov_b32 s33, s32 -; GCN: v_mov_b32_e32 [[ZERO:v[0-9]+]], 0 -; MUBUF-DAG: buffer_store_dword v41, off, s[0:3], s33 ; 4-byte Folded Spill +; MUBUF: buffer_store_dword v41, off, s[0:3], s33 ; 4-byte Folded Spill +; GCN-DAG: v_mov_b32_e32 [[ZERO:v[0-9]+]], 0 ; FLATSCR-DAG: scratch_store_dword off, v41, s33 ; 4-byte Folded Spill ; MUBUF-DAG: buffer_store_dword [[ZERO]], off, s[0:3], s33 offset:4 ; FLATSCR-DAG: scratch_store_dword off, [[ZERO]], s33 offset:4 @@ -260,10 +260,8 @@ ; MUBUF: buffer_load_dword v41, off, s[0:3], s33 ; 4-byte Folded Reload ; FLATSCR: scratch_load_dword v41, off, s33 ; 4-byte Folded Reload -; MUBUF: s_addk_i32 s32, 0x300 ; MUBUF-NEXT: s_addk_i32 s32, 0xfd00 ; MUBUF-NEXT: s_mov_b32 s33, s4 -; FLATSCR: s_add_i32 s32, s32, 12 ; FLATSCR-NEXT: s_add_i32 s32, s32, -12 ; FLATSCR-NEXT: s_mov_b32 s33, s0 ; GCN-NEXT: s_waitcnt vmcnt(0) @@ -279,21 +277,18 @@ ; GCN-LABEL: {{^}}last_lane_vgpr_for_fp_csr: ; GCN: s_waitcnt ; GCN-NEXT: s_mov_b32 [[TMP_SGPR:s[0-9]+]], s33 -; GCN: s_mov_b32 s33, s32 +; GCN-NEXT: s_mov_b32 s33, s32 ; GCN-NEXT: s_xor_saveexec_b64 [[COPY_EXEC0:s\[[0-9]+:[0-9]+\]]], -1{{$}} ; MUBUF-NEXT: buffer_store_dword [[CSR_VGPR:v[0-9]+]], off, s[0:3], s33 offset:8 ; 4-byte Folded Spill ; FLATSCR-NEXT: scratch_store_dword off, [[CSR_VGPR:v[0-9]+]], s33 offset:8 ; 4-byte Folded Spill ; GCN-NEXT: s_mov_b64 exec, [[COPY_EXEC0]] -; MUBUF: buffer_store_dword v41, off, s[0:3], s33 ; 4-byte Folded Spill +; MUBUF: buffer_store_dword v41, off, s[0:3], s33 ; 4-byte Folded Spill ; FLATSCR: scratch_store_dword off, v41, s33 ; 4-byte Folded Spill -; GCN: v_writelane_b32 v0 -; MUBUF: buffer_store_dword v{{[0-9]+}}, off, s[0:3], s33 offset:4 +; GCN-COUNT-63: v_writelane_b32 [[CSR_VGPR]] +; MUBUF: buffer_store_dword v{{[0-9]+}}, off, s[0:3], s33 offset:4 ; FLATSCR: scratch_store_dword off, v{{[0-9]+}}, s33 offset:4 ; GCN: ;;#ASMSTART -; GCN: v_writelane_b32 v0 -; MUBUF: s_addk_i32 s32, 0x400 -; FLATSCR: s_add_i32 s32, s32, 16 ; GCN: s_xor_saveexec_b64 [[COPY_EXEC1:s\[[0-9]+:[0-9]+\]]], -1{{$}} ; MUBUF-NEXT: buffer_load_dword [[CSR_VGPR]], off, s[0:3], s33 offset:8 ; 4-byte Folded Reload ; FLATSCR-NEXT: scratch_load_dword [[CSR_VGPR]], off, s33 offset:8 ; 4-byte Folded Reload @@ -328,18 +323,16 @@ ; MUBUF-NEXT: buffer_store_dword [[CSR_VGPR:v[0-9]+]], off, s[0:3], s33 offset:8 ; 4-byte Folded Spill ; FLATSCR-NEXT: scratch_store_dword off, [[CSR_VGPR:v[0-9]+]], s33 offset:8 ; 4-byte Folded Spill ; GCN-NEXT: s_mov_b64 exec, [[COPY_EXEC0]] -; GCN-COUNT-61: v_writelane_b32 v0, ; MUBUF: buffer_store_dword v41, off, s[0:3], s33 ; 4-byte Folded Spill +; FLATSCR: s_add_i32 s32, s32, 16 ; FLATSCR: scratch_store_dword off, v41, s33 ; 4-byte Folded Spill +; GCN-COUNT-62: v_writelane_b32 v0, ; GCN: v_writelane_b32 v0, ; MUBUF: buffer_store_dword ; FLATSCR: scratch_store_dword ; GCN: ;;#ASMSTART -; GCN: v_writelane_b32 v0, ; MUBUF: buffer_load_dword v41, off, s[0:3], s33 ; 4-byte Folded Reload ; FLATSCR: scratch_load_dword v41, off, s33 ; 4-byte Folded Reload -; MUBUF: s_addk_i32 s32, 0x400 -; FLATSCR: s_add_i32 s32, s32, 16 ; GCN-COUNT-64: v_readlane_b32 s{{[0-9]+}}, v0 ; GCN-NEXT: s_xor_saveexec_b64 [[COPY_EXEC1:s\[[0-9]+:[0-9]+\]]], -1{{$}} ; MUBUF-NEXT: buffer_load_dword [[CSR_VGPR]], off, s[0:3], s33 offset:8 ; 4-byte Folded Reload @@ -382,9 +375,9 @@ ; FLATSCR-NEXT: s_add_i32 vcc_hi, s33, 0x2000 ; FLATSCR-NEXT: scratch_store_dword off, [[ZERO]], vcc_hi ; GCN-NEXT: s_waitcnt vmcnt(0) -; MUBUF-NEXT: s_add_i32 s32, s32, 0xffe80000 -; FLATSCR-NEXT: s_addk_i32 s32, 0xa000 -; GCN-NEXT: s_mov_b32 s33, [[FP_COPY]] +; MUBUF-NEXT: s_add_i32 s32, s32, 0xffe80000 +; FLATSCR-NEXT: s_addk_i32 s32, 0xa000 +; GCN-NEXT: s_mov_b32 ; GCN-NEXT: s_setpc_b64 define void @realign_stack_no_fp_elim() #1 { %alloca = alloca i32, align 8192, addrspace(5) @@ -401,16 +394,16 @@ ; FLATSCR-NEXT: scratch_store_dword off, [[CSR_VGPR:v[0-9]+]], s33 offset:4 ; 4-byte Folded Spill ; GCN-NEXT: s_mov_b64 exec, [[COPY_EXEC0]] ; GCN: v_writelane_b32 [[CSR_VGPR]], s30, 0 -; GCN: v_mov_b32_e32 [[ZERO:v[0-9]+]], 0 +; MUBUF: s_addk_i32 s32, 0x300 +; FLATSCR: s_add_i32 s32, s32, 12 ; GCN: v_writelane_b32 [[CSR_VGPR]], s31, 1 +; GCN: v_mov_b32_e32 [[ZERO:v[0-9]+]], 0 ; MUBUF: buffer_store_dword [[ZERO]], off, s[0:3], s33{{$}} ; FLATSCR: scratch_store_dword off, [[ZERO]], s33{{$}} ; GCN-NEXT: s_waitcnt vmcnt(0) ; GCN: ;;#ASMSTART -; MUBUF: s_addk_i32 s32, 0x300 -; FLATSCR: s_add_i32 s32, s32, 12 -; GCN: v_readlane_b32 s31, [[CSR_VGPR]], 1 ; GCN: v_readlane_b32 s30, [[CSR_VGPR]], 0 +; GCN: v_readlane_b32 s31, [[CSR_VGPR]], 1 ; GCN-NEXT: s_xor_saveexec_b64 [[COPY_EXEC1:s\[[0-9]+:[0-9]+\]]], -1{{$}} ; MUBUF-NEXT: buffer_load_dword [[CSR_VGPR]], off, s[0:3], s33 offset:4 ; 4-byte Folded Reload ; FLATSCR-NEXT: scratch_load_dword [[CSR_VGPR]], off, s33 offset:4 ; 4-byte Folded Reload @@ -437,12 +430,13 @@ ; Need a new CSR VGPR to satisfy the FP spill. ; GCN-LABEL: {{^}}no_unused_non_csr_sgpr_for_fp_no_scratch_vgpr: ; GCN: s_waitcnt -; GCN-NEXT: s_mov_b32 vcc_lo, s33 +; GCN-NEXT: s_mov_b32 [[FP_SCRATCH_COPY:s[0-9]+]], s33 ; GCN-NEXT: s_mov_b32 s33, s32 ; GCN-NEXT: s_or_saveexec_b64 [[COPY_EXEC0:s\[[0-9]+:[0-9]+\]]], -1{{$}} ; MUBUF-NEXT: buffer_store_dword [[CSR_VGPR:v[0-9]+]], off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; FLATSCR-NEXT: scratch_store_dword off, [[CSR_VGPR:v[0-9]+]], s33 offset:4 ; 4-byte Folded Spill ; GCN-NEXT: s_mov_b64 exec, [[COPY_EXEC0]] +; GCN-NEXT: v_writelane_b32 [[CSR_VGPR]], [[FP_SCRATCH_COPY]], 0 ; MUBUF-DAG: buffer_store_dword ; FLATSCR-DAG: scratch_store_dword @@ -450,13 +444,14 @@ ; FLATSCR: s_add_i32 s32, s32, 12{{$}} ; GCN: ;;#ASMSTART -; GCN: s_or_saveexec_b64 [[COPY_EXEC1:s\[[0-9]+:[0-9]+\]]], -1{{$}} +; GCN: v_readlane_b32 [[FP_SCRATCH_COPY:s[0-9]+]], [[CSR_VGPR]], 0 +; GCN-NEXT: s_or_saveexec_b64 [[COPY_EXEC1:s\[[0-9]+:[0-9]+\]]], -1{{$}} ; MUBUF-NEXT: buffer_load_dword [[CSR_VGPR]], off, s[0:3], s33 offset:4 ; 4-byte Folded Reload ; FLATSCR-NEXT: scratch_load_dword [[CSR_VGPR]], off, s33 offset:4 ; 4-byte Folded Reload ; GCN-NEXT: s_mov_b64 exec, [[COPY_EXEC1]] ; MUBUF: s_addk_i32 s32, 0xfd00{{$}} ; FLATSCR: s_add_i32 s32, s32, -12{{$}} -; GCN-NEXT: s_mov_b32 s33, vcc_lo +; GCN-NEXT: s_mov_b32 s33, [[FP_SCRATCH_COPY]] ; GCN-NEXT: s_waitcnt vmcnt(0) ; GCN-NEXT: s_setpc_b64 s[30:31] define void @no_unused_non_csr_sgpr_for_fp_no_scratch_vgpr() #1 { @@ -468,7 +463,7 @@ "~{s0},~{s1},~{s2},~{s3},~{s4},~{s5},~{s6},~{s7},~{s8},~{s9} ,~{s10},~{s11},~{s12},~{s13},~{s14},~{s15},~{s16},~{s17},~{s18},~{s19} ,~{s20},~{s21},~{s22},~{s23},~{s24},~{s25},~{s26},~{s27},~{s28},~{s29} - ,~{s30},~{s31}"() #0 + ,~{vcc}"() #0 call void asm sideeffect "; clobber nonpreserved initial VGPRs", "~{v0},~{v1},~{v2},~{v3},~{v4},~{v5},~{v6},~{v7},~{v8},~{v9} @@ -546,7 +541,7 @@ ; MUBUF: buffer_store_dword v{{[0-9]+}}, off, s[0:3], s33{{$}} ; FLATSCR: scratch_store_dword off, v{{[0-9]+}}, s33{{$}} ; GCN: s_swappc_b64 -; MUBUF: s_addk_i32 s32, 0xfc00 +; MUBUF: s_addk_i32 ; FLATSCR: s_add_i32 s32, s32, -16 ; GCN: s_mov_b32 s33, [[TMP_SGPR]] define void @ipra_call_with_stack() #0 { @@ -599,7 +594,6 @@ ; MUBUF: buffer_store_dword [[TMP_VGPR1]], off, s[0:3], s33 offset:[[OFF:[0-9]+]] ; GCN-NOT: v_writelane_b32 v40, s33 ; GCN-NOT: v_readlane_b32 s33, v40 -; GCN-NOT: v_readlane_b32 s33, v40 ; MUBUF: buffer_load_dword [[TMP_VGPR2:v[0-9]+]], off, s[0:3], s33 offset:[[OFF]] ; MUBUF: v_readfirstlane_b32 [[FP_SCRATCH_COPY:s[0-9]+]], [[TMP_VGPR2]] ; MUBUF: s_xor_saveexec_b64 [[COPY_EXEC2:s\[[0-9]+:[0-9]+\]]], -1{{$}} diff --git a/llvm/test/CodeGen/AMDGPU/cross-block-use-is-not-abi-copy.ll b/llvm/test/CodeGen/AMDGPU/cross-block-use-is-not-abi-copy.ll --- a/llvm/test/CodeGen/AMDGPU/cross-block-use-is-not-abi-copy.ll +++ b/llvm/test/CodeGen/AMDGPU/cross-block-use-is-not-abi-copy.ll @@ -33,16 +33,16 @@ ; GCN-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GCN-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GCN-NEXT: s_mov_b64 exec, s[18:19] -; GCN-NEXT: s_addk_i32 s32, 0x400 -; GCN-NEXT: v_writelane_b32 v40, s30, 0 ; GCN-NEXT: v_writelane_b32 v41, s16, 0 +; GCN-NEXT: v_writelane_b32 v40, s30, 0 +; GCN-NEXT: s_addk_i32 s32, 0x400 ; GCN-NEXT: v_writelane_b32 v40, s31, 1 ; GCN-NEXT: s_getpc_b64 s[16:17] ; GCN-NEXT: s_add_u32 s16, s16, func_v2f32@rel32@lo+4 ; GCN-NEXT: s_addc_u32 s17, s17, func_v2f32@rel32@hi+12 ; GCN-NEXT: s_swappc_b64 s[30:31], s[16:17] -; GCN-NEXT: v_readlane_b32 s31, v40, 1 ; GCN-NEXT: v_readlane_b32 s30, v40, 0 +; GCN-NEXT: v_readlane_b32 s31, v40, 1 ; GCN-NEXT: v_readlane_b32 s4, v41, 0 ; GCN-NEXT: s_or_saveexec_b64 s[6:7], -1 ; GCN-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -71,16 +71,16 @@ ; GCN-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GCN-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GCN-NEXT: s_mov_b64 exec, s[18:19] -; GCN-NEXT: s_addk_i32 s32, 0x400 -; GCN-NEXT: v_writelane_b32 v40, s30, 0 ; GCN-NEXT: v_writelane_b32 v41, s16, 0 +; GCN-NEXT: v_writelane_b32 v40, s30, 0 +; GCN-NEXT: s_addk_i32 s32, 0x400 ; GCN-NEXT: v_writelane_b32 v40, s31, 1 ; GCN-NEXT: s_getpc_b64 s[16:17] ; GCN-NEXT: s_add_u32 s16, s16, func_v3f32@rel32@lo+4 ; GCN-NEXT: s_addc_u32 s17, s17, func_v3f32@rel32@hi+12 ; GCN-NEXT: s_swappc_b64 s[30:31], s[16:17] -; GCN-NEXT: v_readlane_b32 s31, v40, 1 ; GCN-NEXT: v_readlane_b32 s30, v40, 0 +; GCN-NEXT: v_readlane_b32 s31, v40, 1 ; GCN-NEXT: v_readlane_b32 s4, v41, 0 ; GCN-NEXT: s_or_saveexec_b64 s[6:7], -1 ; GCN-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -109,16 +109,16 @@ ; GCN-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GCN-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GCN-NEXT: s_mov_b64 exec, s[18:19] -; GCN-NEXT: s_addk_i32 s32, 0x400 -; GCN-NEXT: v_writelane_b32 v40, s30, 0 ; GCN-NEXT: v_writelane_b32 v41, s16, 0 +; GCN-NEXT: v_writelane_b32 v40, s30, 0 +; GCN-NEXT: s_addk_i32 s32, 0x400 ; GCN-NEXT: v_writelane_b32 v40, s31, 1 ; GCN-NEXT: s_getpc_b64 s[16:17] ; GCN-NEXT: s_add_u32 s16, s16, func_v4f16@rel32@lo+4 ; GCN-NEXT: s_addc_u32 s17, s17, func_v4f16@rel32@hi+12 ; GCN-NEXT: s_swappc_b64 s[30:31], s[16:17] -; GCN-NEXT: v_readlane_b32 s31, v40, 1 ; GCN-NEXT: v_readlane_b32 s30, v40, 0 +; GCN-NEXT: v_readlane_b32 s31, v40, 1 ; GCN-NEXT: v_readlane_b32 s4, v41, 0 ; GCN-NEXT: s_or_saveexec_b64 s[6:7], -1 ; GCN-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -147,17 +147,17 @@ ; GCN-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GCN-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GCN-NEXT: s_mov_b64 exec, s[18:19] -; GCN-NEXT: s_addk_i32 s32, 0x400 -; GCN-NEXT: v_writelane_b32 v40, s30, 0 ; GCN-NEXT: v_writelane_b32 v41, s16, 0 +; GCN-NEXT: v_writelane_b32 v40, s30, 0 +; GCN-NEXT: s_addk_i32 s32, 0x400 ; GCN-NEXT: v_writelane_b32 v40, s31, 1 ; GCN-NEXT: s_getpc_b64 s[16:17] ; GCN-NEXT: s_add_u32 s16, s16, func_struct@rel32@lo+4 ; GCN-NEXT: s_addc_u32 s17, s17, func_struct@rel32@hi+12 ; GCN-NEXT: s_swappc_b64 s[30:31], s[16:17] +; GCN-NEXT: v_readlane_b32 s30, v40, 0 ; GCN-NEXT: v_mov_b32_e32 v1, v4 ; GCN-NEXT: v_readlane_b32 s31, v40, 1 -; GCN-NEXT: v_readlane_b32 s30, v40, 0 ; GCN-NEXT: v_readlane_b32 s4, v41, 0 ; GCN-NEXT: s_or_saveexec_b64 s[6:7], -1 ; GCN-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload diff --git a/llvm/test/CodeGen/AMDGPU/csr-sgpr-spill-live-ins.mir b/llvm/test/CodeGen/AMDGPU/csr-sgpr-spill-live-ins.mir --- a/llvm/test/CodeGen/AMDGPU/csr-sgpr-spill-live-ins.mir +++ b/llvm/test/CodeGen/AMDGPU/csr-sgpr-spill-live-ins.mir @@ -16,13 +16,21 @@ ; CHECK-NEXT: successors: %bb.1(0x80000000) ; CHECK-NEXT: liveins: $sgpr42, $sgpr43, $sgpr46, $sgpr47, $vgpr0 ; CHECK-NEXT: {{ $}} + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 ; CHECK-NEXT: $sgpr4_sgpr5 = S_XOR_SAVEEXEC_B64 -1, implicit-def $exec, implicit-def dead $scc, implicit $exec ; CHECK-NEXT: BUFFER_STORE_DWORD_OFFSET $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.4, addrspace 5) + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION offset $vgpr0_lo16, 0 ; CHECK-NEXT: $exec = S_MOV_B64 killed $sgpr4_sgpr5 ; CHECK-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr42, 0, $vgpr0 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x4a, 0x06, 0x90, 0x80, 0x14, 0xe9, 0x05, 0x00 ; CHECK-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr43, 1, $vgpr0 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x4b, 0x06, 0x90, 0x80, 0x14, 0xe9, 0x05, 0x04 ; CHECK-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr46, 2, $vgpr0 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x4e, 0x06, 0x90, 0x80, 0x14, 0xe9, 0x05, 0x08 ; CHECK-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr47, 3, $vgpr0 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x4f, 0x06, 0x90, 0x80, 0x14, 0xe9, 0x05, 0x0c ; CHECK-NEXT: S_NOP 0 ; CHECK-NEXT: {{ $}} ; CHECK-NEXT: bb.1: diff --git a/llvm/test/CodeGen/AMDGPU/debug-frame.ll b/llvm/test/CodeGen/AMDGPU/debug-frame.ll new file mode 100644 --- /dev/null +++ b/llvm/test/CodeGen/AMDGPU/debug-frame.ll @@ -0,0 +1,813 @@ +; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx900 -filetype=asm -o - %s | FileCheck --check-prefixes=CHECK,WAVE64,GFX900 %s +; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx90a -amdgpu-spill-vgpr-to-agpr=0 -filetype=asm -o - %s | FileCheck --check-prefixes=CHECK,WAVE64,GFX90A-V2A-DIS %s +; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx90a -amdgpu-spill-vgpr-to-agpr=1 -filetype=asm -o - %s | FileCheck --check-prefixes=CHECK,WAVE64,GFX90A-V2A-EN %s +; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx1010 -mattr=+wavefrontsize32,-wavefrontsize64 -filetype=asm -o - %s | FileCheck --check-prefixes=CHECK,WAVE32 %s + +; CHECK-LABEL: kern1: +; CHECK: .cfi_startproc + +; CHECK-NOT: .cfi_{{.*}} + +; CHECK: %bb.0: +; DW_CFA_def_cfa_expression [0x0f] +; BLOCK_LENGTH ULEB128(3)=[0x04] +; DW_OP_lit0 [0x30] +; DW_OP_lit6 [0x36] +; DW_OP_LLVM_form_aspace_address [0xe9, 0x02] +; CHECK-NEXT: .cfi_escape 0x0f, 0x04, 0x30, 0x36, 0xe9, 0x02 +; PC_64 = 16 +; CHECK-NEXT: .cfi_undefined 16 + +; CHECK-NOT: .cfi_{{.*}} + +; CHECK: .cfi_endproc +define protected amdgpu_kernel void @kern1() #0 { +entry: + ret void +} + +; CHECK-LABEL: func_no_clobber: +; CHECK: .cfi_startproc + +; CHECK-NOT: .cfi_{{.*}} + +; CHECK: %bb.0: +; SGPR32 = 64 +; CHECK-NEXT: .cfi_llvm_def_aspace_cfa 64, 0, 6 +; DW_CFA_expression [0x10] +; PC_64 ULEB128(17)=[0x10] +; BLOCK_LENGTH ULEB128(8)=[0x08] +; DW_OP_regx [0x90] +; SGPR30 ULEB128(62)=[0x3e] +; DW_OP_piece [0x93] +; PIECE_SIZE [0x04] +; DW_OP_regx [0x90] +; SGPR31 ULEB128(63)=[0x3f] +; DW_OP_piece [0x93] +; PIECE_SIZE [0x04] +; CHECK-NEXT: .cfi_escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + +; CHECK-NOT: .cfi_{{.*}} + +; CHECK: .cfi_endproc +define hidden void @func_no_clobber() #0 { +entry: + ret void +} + +; CHECK-LABEL: {{^}}callee_need_to_spill_fp_to_memory: +; CHECK: .cfi_startproc + +; SGPR33 = 65 +; CHECK: s_mov_b32 [[FP_SCRATCH_COPY:s[0-9]+]], s33 +; CHECK: s_mov_b32 s33, s32 +; CHECK: v_mov_b32_e32 [[TMP_VGPR:v[0-9]+]], [[FP_SCRATCH_COPY]] +; GFX900: buffer_store_dword [[TMP_VGPR]], off, s[0:3], s33 offset:448 ; 4-byte Folded Spill +; GFX90A-V2A-DIS: buffer_store_dword [[TMP_VGPR]], off, s[0:3], s33 offset:448 ; 4-byte Folded Spill +; GFX90A-V2A-EN: buffer_store_dword [[TMP_VGPR]], off, s[0:3], s33 offset:320 ; 4-byte Folded Spill + +; GFX900: .cfi_offset 65, 28672 +; GFX90A-V2A-DIS: .cfi_offset 65, 28672 +; GFX90A-V2A-EN: .cfi_offset 65, 20480 +; WAVE32: .cfi_offset 65, 14336 + +; CHECK: .cfi_endproc +define void @callee_need_to_spill_fp_to_memory() #1 { + call void asm sideeffect "; clobber nonpreserved SGPRs", + "~{s4},~{s5},~{s6},~{s7},~{s8},~{s9} + ,~{s10},~{s11},~{s12},~{s13},~{s14},~{s15},~{s16},~{s17},~{s18},~{s19} + ,~{s20},~{s21},~{s22},~{s23},~{s24},~{s25},~{s26},~{s27},~{s28},~{s29} + ,~{vcc}"() + + call void asm sideeffect "; clobber all VGPRs", + "~{v0},~{v1},~{v2},~{v3},~{v4},~{v5},~{v6},~{v7},~{v8},~{v9} + ,~{v10},~{v11},~{v12},~{v13},~{v14},~{v15},~{v16},~{v17},~{v18},~{v19} + ,~{v20},~{v21},~{v22},~{v23},~{v24},~{v25},~{v26},~{v27},~{v28},~{v29} + ,~{v30},~{v31},~{v32},~{v33},~{v34},~{v35},~{v36},~{v37},~{v38},~{v39} + ,~{v40},~{v41},~{v42},~{v43},~{v44},~{v45},~{v46},~{v47},~{v48},~{v49} + ,~{v50},~{v51},~{v52},~{v53},~{v54},~{v55},~{v56},~{v57},~{v58},~{v59} + ,~{v60},~{v61},~{v62},~{v63},~{v64},~{v65},~{v66},~{v67},~{v68},~{v69} + ,~{v70},~{v71},~{v72},~{v73},~{v74},~{v75},~{v76},~{v77},~{v78},~{v79} + ,~{v80},~{v81},~{v82},~{v83},~{v84},~{v85},~{v86},~{v87},~{v88},~{v89} + ,~{v90},~{v91},~{v92},~{v93},~{v94},~{v95},~{v96},~{v97},~{v98},~{v99} + ,~{v100},~{v101},~{v102},~{v103},~{v104},~{v105},~{v106},~{v107},~{v108},~{v109} + ,~{v110},~{v111},~{v112},~{v113},~{v114},~{v115},~{v116},~{v117},~{v118},~{v119} + ,~{v120},~{v121},~{v122},~{v123},~{v124},~{v125},~{v126},~{v127},~{v128},~{v129} + ,~{v130},~{v131},~{v132},~{v133},~{v134},~{v135},~{v136},~{v137},~{v138},~{v139} + ,~{v140},~{v141},~{v142},~{v143},~{v144},~{v145},~{v146},~{v147},~{v148},~{v149} + ,~{v150},~{v151},~{v152},~{v153},~{v154},~{v155},~{v156},~{v157},~{v158},~{v159} + ,~{v160},~{v161},~{v162},~{v163},~{v164},~{v165},~{v166},~{v167},~{v168},~{v169} + ,~{v170},~{v171},~{v172},~{v173},~{v174},~{v175},~{v176},~{v177},~{v178},~{v179} + ,~{v180},~{v181},~{v182},~{v183},~{v184},~{v185},~{v186},~{v187},~{v188},~{v189} + ,~{v190},~{v191},~{v192},~{v193},~{v194},~{v195},~{v196},~{v197},~{v198},~{v199} + ,~{v200},~{v201},~{v202},~{v203},~{v204},~{v205},~{v206},~{v207},~{v208},~{v209} + ,~{v210},~{v211},~{v212},~{v213},~{v214},~{v215},~{v216},~{v217},~{v218},~{v219} + ,~{v220},~{v221},~{v222},~{v223},~{v224},~{v225},~{v226},~{v227},~{v228},~{v229} + ,~{v230},~{v231},~{v232},~{v233},~{v234},~{v235},~{v236},~{v237},~{v238},~{v239} + ,~{v240},~{v241},~{v242},~{v243},~{v244},~{v245},~{v246},~{v247},~{v248},~{v249} + ,~{v250},~{v251},~{v252},~{v253},~{v254},~{v255}"() + ret void +} + +declare hidden void @ex() #0 + +; CHECK-LABEL: func_call_clobber: +; CHECK: .cfi_startproc + +; CHECK-NOT: .cfi_{{.*}} + +; CHECK: %bb.0: +; CHECK-NEXT: .cfi_llvm_def_aspace_cfa 64, 0, 6 +; CHECK-NEXT: .cfi_escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + +; VGPR0_wave64 = 2560 +; WAVE64-NEXT: .cfi_undefined 2560 +; WAVE64-NEXT: .cfi_undefined 2561 +; WAVE64-NEXT: .cfi_undefined 2562 +; WAVE64-NEXT: .cfi_undefined 2563 +; WAVE64-NEXT: .cfi_undefined 2564 +; WAVE64-NEXT: .cfi_undefined 2565 +; WAVE64-NEXT: .cfi_undefined 2566 +; WAVE64-NEXT: .cfi_undefined 2567 +; WAVE64-NEXT: .cfi_undefined 2568 +; WAVE64-NEXT: .cfi_undefined 2569 +; WAVE64-NEXT: .cfi_undefined 2570 +; WAVE64-NEXT: .cfi_undefined 2571 +; WAVE64-NEXT: .cfi_undefined 2572 +; WAVE64-NEXT: .cfi_undefined 2573 +; WAVE64-NEXT: .cfi_undefined 2574 +; WAVE64-NEXT: .cfi_undefined 2575 +; WAVE64-NEXT: .cfi_undefined 2576 +; WAVE64-NEXT: .cfi_undefined 2577 +; WAVE64-NEXT: .cfi_undefined 2578 +; WAVE64-NEXT: .cfi_undefined 2579 +; WAVE64-NEXT: .cfi_undefined 2580 +; WAVE64-NEXT: .cfi_undefined 2581 +; WAVE64-NEXT: .cfi_undefined 2582 +; WAVE64-NEXT: .cfi_undefined 2583 +; WAVE64-NEXT: .cfi_undefined 2584 +; WAVE64-NEXT: .cfi_undefined 2585 +; WAVE64-NEXT: .cfi_undefined 2586 +; WAVE64-NEXT: .cfi_undefined 2587 +; WAVE64-NEXT: .cfi_undefined 2588 +; WAVE64-NEXT: .cfi_undefined 2589 +; WAVE64-NEXT: .cfi_undefined 2590 +; WAVE64-NEXT: .cfi_undefined 2591 +; WAVE64-NEXT: .cfi_undefined 2592 +; WAVE64-NEXT: .cfi_undefined 2593 +; WAVE64-NEXT: .cfi_undefined 2594 +; WAVE64-NEXT: .cfi_undefined 2595 +; WAVE64-NEXT: .cfi_undefined 2596 +; WAVE64-NEXT: .cfi_undefined 2597 +; WAVE64-NEXT: .cfi_undefined 2598 +; WAVE64-NEXT: .cfi_undefined 2599 + +; VPGR48_wave64 = 2608 +; WAVE64-NEXT: .cfi_undefined 2608 +; WAVE64-NEXT: .cfi_undefined 2609 +; WAVE64-NEXT: .cfi_undefined 2610 +; WAVE64-NEXT: .cfi_undefined 2611 +; WAVE64-NEXT: .cfi_undefined 2612 +; WAVE64-NEXT: .cfi_undefined 2613 +; WAVE64-NEXT: .cfi_undefined 2614 +; WAVE64-NEXT: .cfi_undefined 2615 + +; WAVE64-NEXT: .cfi_undefined 2624 +; WAVE64-NEXT: .cfi_undefined 2625 +; WAVE64-NEXT: .cfi_undefined 2626 +; WAVE64-NEXT: .cfi_undefined 2627 +; WAVE64-NEXT: .cfi_undefined 2628 +; WAVE64-NEXT: .cfi_undefined 2629 +; WAVE64-NEXT: .cfi_undefined 2630 +; WAVE64-NEXT: .cfi_undefined 2631 + +; WAVE64-NEXT: .cfi_undefined 2640 +; WAVE64-NEXT: .cfi_undefined 2641 +; WAVE64-NEXT: .cfi_undefined 2642 +; WAVE64-NEXT: .cfi_undefined 2643 +; WAVE64-NEXT: .cfi_undefined 2644 +; WAVE64-NEXT: .cfi_undefined 2645 +; WAVE64-NEXT: .cfi_undefined 2646 +; WAVE64-NEXT: .cfi_undefined 2647 + +; WAVE64-NEXT: .cfi_undefined 2656 +; WAVE64-NEXT: .cfi_undefined 2657 +; WAVE64-NEXT: .cfi_undefined 2658 +; WAVE64-NEXT: .cfi_undefined 2659 +; WAVE64-NEXT: .cfi_undefined 2660 +; WAVE64-NEXT: .cfi_undefined 2661 +; WAVE64-NEXT: .cfi_undefined 2662 +; WAVE64-NEXT: .cfi_undefined 2663 + +; WAVE64-NEXT: .cfi_undefined 2672 +; WAVE64-NEXT: .cfi_undefined 2673 +; WAVE64-NEXT: .cfi_undefined 2674 +; WAVE64-NEXT: .cfi_undefined 2675 +; WAVE64-NEXT: .cfi_undefined 2676 +; WAVE64-NEXT: .cfi_undefined 2677 +; WAVE64-NEXT: .cfi_undefined 2678 +; WAVE64-NEXT: .cfi_undefined 2679 + +; WAVE64-NEXT: .cfi_undefined 2688 +; WAVE64-NEXT: .cfi_undefined 2689 +; WAVE64-NEXT: .cfi_undefined 2690 +; WAVE64-NEXT: .cfi_undefined 2691 +; WAVE64-NEXT: .cfi_undefined 2692 +; WAVE64-NEXT: .cfi_undefined 2693 +; WAVE64-NEXT: .cfi_undefined 2694 +; WAVE64-NEXT: .cfi_undefined 2695 + +; WAVE64-NEXT: .cfi_undefined 2704 +; WAVE64-NEXT: .cfi_undefined 2705 +; WAVE64-NEXT: .cfi_undefined 2706 +; WAVE64-NEXT: .cfi_undefined 2707 +; WAVE64-NEXT: .cfi_undefined 2708 +; WAVE64-NEXT: .cfi_undefined 2709 +; WAVE64-NEXT: .cfi_undefined 2710 +; WAVE64-NEXT: .cfi_undefined 2711 + +; WAVE64-NEXT: .cfi_undefined 2720 +; WAVE64-NEXT: .cfi_undefined 2721 +; WAVE64-NEXT: .cfi_undefined 2722 +; WAVE64-NEXT: .cfi_undefined 2723 +; WAVE64-NEXT: .cfi_undefined 2724 +; WAVE64-NEXT: .cfi_undefined 2725 +; WAVE64-NEXT: .cfi_undefined 2726 +; WAVE64-NEXT: .cfi_undefined 2727 + +; WAVE64-NEXT: .cfi_undefined 2736 +; WAVE64-NEXT: .cfi_undefined 2737 +; WAVE64-NEXT: .cfi_undefined 2738 +; WAVE64-NEXT: .cfi_undefined 2739 +; WAVE64-NEXT: .cfi_undefined 2740 +; WAVE64-NEXT: .cfi_undefined 2741 +; WAVE64-NEXT: .cfi_undefined 2742 +; WAVE64-NEXT: .cfi_undefined 2743 + +; WAVE64-NEXT: .cfi_undefined 2752 +; WAVE64-NEXT: .cfi_undefined 2753 +; WAVE64-NEXT: .cfi_undefined 2754 +; WAVE64-NEXT: .cfi_undefined 2755 +; WAVE64-NEXT: .cfi_undefined 2756 +; WAVE64-NEXT: .cfi_undefined 2757 +; WAVE64-NEXT: .cfi_undefined 2758 +; WAVE64-NEXT: .cfi_undefined 2759 + +; WAVE64-NEXT: .cfi_undefined 2768 +; WAVE64-NEXT: .cfi_undefined 2769 +; WAVE64-NEXT: .cfi_undefined 2770 +; WAVE64-NEXT: .cfi_undefined 2771 +; WAVE64-NEXT: .cfi_undefined 2772 +; WAVE64-NEXT: .cfi_undefined 2773 +; WAVE64-NEXT: .cfi_undefined 2774 +; WAVE64-NEXT: .cfi_undefined 2775 + +; WAVE64-NEXT: .cfi_undefined 2784 +; WAVE64-NEXT: .cfi_undefined 2785 +; WAVE64-NEXT: .cfi_undefined 2786 +; WAVE64-NEXT: .cfi_undefined 2787 +; WAVE64-NEXT: .cfi_undefined 2788 +; WAVE64-NEXT: .cfi_undefined 2789 +; WAVE64-NEXT: .cfi_undefined 2790 +; WAVE64-NEXT: .cfi_undefined 2791 + +; WAVE64-NEXT: .cfi_undefined 2800 +; WAVE64-NEXT: .cfi_undefined 2801 +; WAVE64-NEXT: .cfi_undefined 2802 +; WAVE64-NEXT: .cfi_undefined 2803 +; WAVE64-NEXT: .cfi_undefined 2804 +; WAVE64-NEXT: .cfi_undefined 2805 +; WAVE64-NEXT: .cfi_undefined 2806 +; WAVE64-NEXT: .cfi_undefined 2807 + +; AGPR0_wave64 = 3072 +; GFX90A-V2A-DIS-NEXT: .cfi_undefined 3072 +; GFX90A-V2A-DIS-NEXT: .cfi_undefined 3073 +; GFX90A-V2A-DIS-NEXT: .cfi_undefined 3074 +; GFX90A-V2A-DIS-NEXT: .cfi_undefined 3075 +; GFX90A-V2A-DIS-NEXT: .cfi_undefined 3076 +; GFX90A-V2A-DIS-NEXT: .cfi_undefined 3077 +; GFX90A-V2A-DIS-NEXT: .cfi_undefined 3078 +; GFX90A-V2A-DIS-NEXT: .cfi_undefined 3079 +; GFX90A-V2A-DIS-NEXT: .cfi_undefined 3080 +; GFX90A-V2A-DIS-NEXT: .cfi_undefined 3081 +; GFX90A-V2A-DIS-NEXT: .cfi_undefined 3082 +; GFX90A-V2A-DIS-NEXT: .cfi_undefined 3083 +; GFX90A-V2A-DIS-NEXT: .cfi_undefined 3084 +; GFX90A-V2A-DIS-NEXT: .cfi_undefined 3085 +; GFX90A-V2A-DIS-NEXT: .cfi_undefined 3086 +; GFX90A-V2A-DIS-NEXT: .cfi_undefined 3087 +; GFX90A-V2A-DIS-NEXT: .cfi_undefined 3088 +; GFX90A-V2A-DIS-NEXT: .cfi_undefined 3089 +; GFX90A-V2A-DIS-NEXT: .cfi_undefined 3090 +; GFX90A-V2A-DIS-NEXT: .cfi_undefined 3091 +; GFX90A-V2A-DIS-NEXT: .cfi_undefined 3092 +; GFX90A-V2A-DIS-NEXT: .cfi_undefined 3093 +; GFX90A-V2A-DIS-NEXT: .cfi_undefined 3094 +; GFX90A-V2A-DIS-NEXT: .cfi_undefined 3095 +; GFX90A-V2A-DIS-NEXT: .cfi_undefined 3096 +; GFX90A-V2A-DIS-NEXT: .cfi_undefined 3097 +; GFX90A-V2A-DIS-NEXT: .cfi_undefined 3098 +; GFX90A-V2A-DIS-NEXT: .cfi_undefined 3099 +; GFX90A-V2A-DIS-NEXT: .cfi_undefined 3100 +; GFX90A-V2A-DIS-NEXT: .cfi_undefined 3101 +; GFX90A-V2A-DIS-NEXT: .cfi_undefined 3102 +; GFX90A-V2A-DIS-NEXT: .cfi_undefined 3103 + +; GFX90A-V2A-EN-NEXT: .cfi_undefined 3072 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 3073 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 3074 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 3075 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 3076 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 3077 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 3078 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 3079 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 3080 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 3081 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 3082 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 3083 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 3084 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 3085 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 3086 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 3087 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 3088 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 3089 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 3090 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 3091 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 3092 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 3093 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 3094 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 3095 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 3096 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 3097 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 3098 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 3099 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 3100 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 3101 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 3102 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 3103 + +; VGPR0_wave32 = 1536 +; WAVE32-NEXT: .cfi_undefined 1536 +; WAVE32-NEXT: .cfi_undefined 1537 +; WAVE32-NEXT: .cfi_undefined 1538 +; WAVE32-NEXT: .cfi_undefined 1539 +; WAVE32-NEXT: .cfi_undefined 1540 +; WAVE32-NEXT: .cfi_undefined 1541 +; WAVE32-NEXT: .cfi_undefined 1542 +; WAVE32-NEXT: .cfi_undefined 1543 +; WAVE32-NEXT: .cfi_undefined 1544 +; WAVE32-NEXT: .cfi_undefined 1545 +; WAVE32-NEXT: .cfi_undefined 1546 +; WAVE32-NEXT: .cfi_undefined 1547 +; WAVE32-NEXT: .cfi_undefined 1548 +; WAVE32-NEXT: .cfi_undefined 1549 +; WAVE32-NEXT: .cfi_undefined 1550 +; WAVE32-NEXT: .cfi_undefined 1551 +; WAVE32-NEXT: .cfi_undefined 1552 +; WAVE32-NEXT: .cfi_undefined 1553 +; WAVE32-NEXT: .cfi_undefined 1554 +; WAVE32-NEXT: .cfi_undefined 1555 +; WAVE32-NEXT: .cfi_undefined 1556 +; WAVE32-NEXT: .cfi_undefined 1557 +; WAVE32-NEXT: .cfi_undefined 1558 +; WAVE32-NEXT: .cfi_undefined 1559 +; WAVE32-NEXT: .cfi_undefined 1560 +; WAVE32-NEXT: .cfi_undefined 1561 +; WAVE32-NEXT: .cfi_undefined 1562 +; WAVE32-NEXT: .cfi_undefined 1563 +; WAVE32-NEXT: .cfi_undefined 1564 +; WAVE32-NEXT: .cfi_undefined 1565 +; WAVE32-NEXT: .cfi_undefined 1566 +; WAVE32-NEXT: .cfi_undefined 1567 +; WAVE32-NEXT: .cfi_undefined 1568 +; WAVE32-NEXT: .cfi_undefined 1569 +; WAVE32-NEXT: .cfi_undefined 1570 +; WAVE32-NEXT: .cfi_undefined 1571 +; WAVE32-NEXT: .cfi_undefined 1572 +; WAVE32-NEXT: .cfi_undefined 1573 +; WAVE32-NEXT: .cfi_undefined 1574 +; WAVE32-NEXT: .cfi_undefined 1575 + +; VPGR48_wave64 = 1584 +; WAVE32-NEXT: .cfi_undefined 1584 +; WAVE32-NEXT: .cfi_undefined 1585 +; WAVE32-NEXT: .cfi_undefined 1586 +; WAVE32-NEXT: .cfi_undefined 1587 +; WAVE32-NEXT: .cfi_undefined 1588 +; WAVE32-NEXT: .cfi_undefined 1589 +; WAVE32-NEXT: .cfi_undefined 1590 +; WAVE32-NEXT: .cfi_undefined 1591 + +; WAVE32-NEXT: .cfi_undefined 1600 +; WAVE32-NEXT: .cfi_undefined 1601 +; WAVE32-NEXT: .cfi_undefined 1602 +; WAVE32-NEXT: .cfi_undefined 1603 +; WAVE32-NEXT: .cfi_undefined 1604 +; WAVE32-NEXT: .cfi_undefined 1605 +; WAVE32-NEXT: .cfi_undefined 1606 +; WAVE32-NEXT: .cfi_undefined 1607 + +; WAVE32-NEXT: .cfi_undefined 1616 +; WAVE32-NEXT: .cfi_undefined 1617 +; WAVE32-NEXT: .cfi_undefined 1618 +; WAVE32-NEXT: .cfi_undefined 1619 +; WAVE32-NEXT: .cfi_undefined 1620 +; WAVE32-NEXT: .cfi_undefined 1621 +; WAVE32-NEXT: .cfi_undefined 1622 +; WAVE32-NEXT: .cfi_undefined 1623 + +; WAVE32-NEXT: .cfi_undefined 1632 +; WAVE32-NEXT: .cfi_undefined 1633 +; WAVE32-NEXT: .cfi_undefined 1634 +; WAVE32-NEXT: .cfi_undefined 1635 +; WAVE32-NEXT: .cfi_undefined 1636 +; WAVE32-NEXT: .cfi_undefined 1637 +; WAVE32-NEXT: .cfi_undefined 1638 +; WAVE32-NEXT: .cfi_undefined 1639 + +; WAVE32-NEXT: .cfi_undefined 1648 +; WAVE32-NEXT: .cfi_undefined 1649 +; WAVE32-NEXT: .cfi_undefined 1650 +; WAVE32-NEXT: .cfi_undefined 1651 +; WAVE32-NEXT: .cfi_undefined 1652 +; WAVE32-NEXT: .cfi_undefined 1653 +; WAVE32-NEXT: .cfi_undefined 1654 +; WAVE32-NEXT: .cfi_undefined 1655 + +; WAVE32-NEXT: .cfi_undefined 1664 +; WAVE32-NEXT: .cfi_undefined 1665 +; WAVE32-NEXT: .cfi_undefined 1666 +; WAVE32-NEXT: .cfi_undefined 1667 +; WAVE32-NEXT: .cfi_undefined 1668 +; WAVE32-NEXT: .cfi_undefined 1669 +; WAVE32-NEXT: .cfi_undefined 1670 +; WAVE32-NEXT: .cfi_undefined 1671 + +; WAVE32-NEXT: .cfi_undefined 1680 +; WAVE32-NEXT: .cfi_undefined 1681 +; WAVE32-NEXT: .cfi_undefined 1682 +; WAVE32-NEXT: .cfi_undefined 1683 +; WAVE32-NEXT: .cfi_undefined 1684 +; WAVE32-NEXT: .cfi_undefined 1685 +; WAVE32-NEXT: .cfi_undefined 1686 +; WAVE32-NEXT: .cfi_undefined 1687 + +; WAVE32-NEXT: .cfi_undefined 1696 +; WAVE32-NEXT: .cfi_undefined 1697 +; WAVE32-NEXT: .cfi_undefined 1698 +; WAVE32-NEXT: .cfi_undefined 1699 +; WAVE32-NEXT: .cfi_undefined 1700 +; WAVE32-NEXT: .cfi_undefined 1701 +; WAVE32-NEXT: .cfi_undefined 1702 +; WAVE32-NEXT: .cfi_undefined 1703 + +; WAVE32-NEXT: .cfi_undefined 1712 +; WAVE32-NEXT: .cfi_undefined 1713 +; WAVE32-NEXT: .cfi_undefined 1714 +; WAVE32-NEXT: .cfi_undefined 1715 +; WAVE32-NEXT: .cfi_undefined 1716 +; WAVE32-NEXT: .cfi_undefined 1717 +; WAVE32-NEXT: .cfi_undefined 1718 +; WAVE32-NEXT: .cfi_undefined 1719 + +; WAVE32-NEXT: .cfi_undefined 1728 +; WAVE32-NEXT: .cfi_undefined 1729 +; WAVE32-NEXT: .cfi_undefined 1730 +; WAVE32-NEXT: .cfi_undefined 1731 +; WAVE32-NEXT: .cfi_undefined 1732 +; WAVE32-NEXT: .cfi_undefined 1733 +; WAVE32-NEXT: .cfi_undefined 1734 +; WAVE32-NEXT: .cfi_undefined 1735 + +; WAVE32-NEXT: .cfi_undefined 1744 +; WAVE32-NEXT: .cfi_undefined 1745 +; WAVE32-NEXT: .cfi_undefined 1746 +; WAVE32-NEXT: .cfi_undefined 1747 +; WAVE32-NEXT: .cfi_undefined 1748 +; WAVE32-NEXT: .cfi_undefined 1749 +; WAVE32-NEXT: .cfi_undefined 1750 +; WAVE32-NEXT: .cfi_undefined 1751 + +; WAVE32-NEXT: .cfi_undefined 1760 +; WAVE32-NEXT: .cfi_undefined 1761 +; WAVE32-NEXT: .cfi_undefined 1762 +; WAVE32-NEXT: .cfi_undefined 1763 +; WAVE32-NEXT: .cfi_undefined 1764 +; WAVE32-NEXT: .cfi_undefined 1765 +; WAVE32-NEXT: .cfi_undefined 1766 +; WAVE32-NEXT: .cfi_undefined 1767 + +; WAVE32-NEXT: .cfi_undefined 1776 +; WAVE32-NEXT: .cfi_undefined 1777 +; WAVE32-NEXT: .cfi_undefined 1778 +; WAVE32-NEXT: .cfi_undefined 1779 +; WAVE32-NEXT: .cfi_undefined 1780 +; WAVE32-NEXT: .cfi_undefined 1781 +; WAVE32-NEXT: .cfi_undefined 1782 +; WAVE32-NEXT: .cfi_undefined 1783 + + +; SGPR0 = 32 +; CHECK-NEXT: .cfi_undefined 32 +; CHECK-NEXT: .cfi_undefined 33 +; CHECK-NEXT: .cfi_undefined 34 +; CHECK-NEXT: .cfi_undefined 35 +; CHECK-NEXT: .cfi_undefined 36 +; CHECK-NEXT: .cfi_undefined 37 +; CHECK-NEXT: .cfi_undefined 38 +; CHECK-NEXT: .cfi_undefined 39 +; CHECK-NEXT: .cfi_undefined 40 +; CHECK-NEXT: .cfi_undefined 41 +; CHECK-NEXT: .cfi_undefined 42 +; CHECK-NEXT: .cfi_undefined 43 +; CHECK-NEXT: .cfi_undefined 44 +; CHECK-NEXT: .cfi_undefined 45 +; CHECK-NEXT: .cfi_undefined 46 +; CHECK-NEXT: .cfi_undefined 47 +; CHECK-NEXT: .cfi_undefined 48 +; CHECK-NEXT: .cfi_undefined 49 +; CHECK-NEXT: .cfi_undefined 50 +; CHECK-NEXT: .cfi_undefined 51 +; CHECK-NEXT: .cfi_undefined 52 +; CHECK-NEXT: .cfi_undefined 53 +; CHECK-NEXT: .cfi_undefined 54 +; CHECK-NEXT: .cfi_undefined 55 +; CHECK-NEXT: .cfi_undefined 56 +; CHECK-NEXT: .cfi_undefined 57 +; CHECK-NEXT: .cfi_undefined 58 +; CHECK-NEXT: .cfi_undefined 59 +; CHECK-NEXT: .cfi_undefined 60 +; CHECK-NEXT: .cfi_undefined 61 + +; CHECK-NOT: .cfi_{{.*}} + +; CHECK: s_mov_b32 [[FP_SCRATCH_COPY:s[0-9]+]], s33 +; CHECK: s_mov_b32 s33, s32 +; WAVE64: s_or_saveexec_b64 [[EXEC_MASK:s\[[0-9]+:[0-9]+\]]], -1 +; WAVE32: s_or_saveexec_b32 [[EXEC_MASK:s[0-9]+]], -1 +; CHECK-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill +; VGPR40_wave64 = 2600 +; WAVE64-NEXT: .cfi_offset 2600, 0 +; VGPR40_wave32 = 1576 +; WAVE32-NEXT: .cfi_offset 1576, 0 +; CHECK-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill +; WAVE64: s_mov_b64 exec, [[EXEC_MASK]] +; WAVE32: s_mov_b32 exec_lo, [[EXEC_MASK]] + +; CHECK-NOT: .cfi_{{.*}} + +; CHECK: v_writelane_b32 v41, [[FP_SCRATCH_COPY]], 0 + +; DW_CFA_expression [0x10] SGPR33 ULEB128(65)=[0x41] +; BLOCK_LENGTH ULEB128(5)=[0x06] +; DW_OP_regx [0x90] +; VGPR41_wave64 ULEB128(2600)=[0xa9, 0x14] +; DW_OP_LLVM_offset_uconst [0xe9, 0x05] +; OFFSET ULEB128(0x00) [0x00] +; WAVE64-NEXT: .cfi_escape 0x10, 0x41, 0x06, 0x90, 0xa9, 0x14, 0xe9, 0x05, 0x00 + +; DW_CFA_expression [0x10] SGPR33 ULEB128(65)=[0x41] +; BLOCK_LENGTH ULEB128(5)=[0x06] +; DW_OP_regx [0x90] +; VGPR41_wave32 ULEB128(1576)=[0xa9, 0x0c] +; DW_OP_LLVM_offset_uconst [0xe9, 0x05] +; OFFSET ULEB128(0x00) [0x00] +; WAVE32-NEXT: .cfi_escape 0x10, 0x41, 0x06, 0x90, 0xa9, 0x0c, 0xe9, 0x05, 0x00 + +; CHECK-NOT: .cfi_{{.*}} + +; SGPR33 = 65 +; CHECK-NEXT: .cfi_def_cfa_register 65 + +; CHECK-NOT: .cfi_{{.*}} + +; CHECK: s_addk_i32 s32, +; CHECK: v_readlane_b32 [[FP_SCRATCH_COPY:s[0-9]+]], v41, 0 +; SGPR32 = 64 +; CHECK: .cfi_def_cfa_register 64 +; CHECK-NEXT: s_mov_b32 s33, [[FP_SCRATCH_COPY]] + +; CHECK-NOT: .cfi_{{.*}} + +; CHECK: .cfi_endproc +define hidden void @func_call_clobber() #0 { +entry: + call void @ex() #0 + ret void +} + +; CHECK-LABEL: func_spill_vgpr_to_vmem: +; CHECK: .cfi_startproc + +; CHECK-NOT: .cfi_{{.*}} + +; CHECK: %bb.0: +; SGPR32 = 64 +; CHECK-NEXT: .cfi_llvm_def_aspace_cfa 64, 0, 6 +; CHECK-NEXT: .cfi_escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 2560 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 2561 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 3072 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 3073 + +; CHECK-NOT: .cfi_{{.*}} + +; WAVE32: buffer_store_dword v40, off, s[0:3], s32 offset:4 ; 4-byte Folded Spill +; GFX900: buffer_store_dword v40, off, s[0:3], s32 offset:4 ; 4-byte Folded Spill +; GFX90A-V2A-DIS: buffer_store_dword v40, off, s[0:3], s32 offset:12 ; 4-byte Folded Spill +; GFX90A-V2A-EN: v_accvgpr_write_b32 a[[#TMP_AGPR1:]], v[[#VGPR1:]] + +; DW_CFA_expression [0x10] +; VGPR40_wave64 ULEB128(1576)=[0xa8, 0x14] +; BLOCK_LENGTH ULEB128(14)=[0x11] +; DW_OP_regx [0x90] +; VGPR40_wave64 ULEB128(1576)=[0xa8, 0x14] +; DW_OP_swap [0x16] +; DW_OP_LLVM_offset_uconst [0xe9, 0x05] +; OFFSET ULEB128(256)=[0x80, 0x02] / OFFSET ULEB128(256)=[0x80, 0x06] +; DW_OP_LLVM_call_frame_entry_reg [0xe9, 0x07] +; EXEC_MASK_wave64 ULEB128(17)=[0x11] +; DW_OP_deref_size [0x94] +; SIZE [0x08] +; DW_OP_LLVM_select_bit_piece [0xe9, 0x0d] +; ELEMENT_SIZE [0x20] +; ELEMENT_COUNT [0x40] +; GFX900-NEXT: .cfi_escape 0x10, 0xa8, 0x14, 0x11, 0x90, 0xa8, 0x14, 0x16, 0xe9, 0x05, 0x80, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 +; GFX90A-V2A-DIS-NEXT: .cfi_escape 0x10, 0xa8, 0x14, 0x11, 0x90, 0xa8, 0x14, 0x16, 0xe9, 0x05, 0x80, 0x06, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 +; GFX90A-V2A-EN-NEXT: .cfi_register [[#VGPR1+2560]], [[#TMP_AGPR1+3072]] + +; DW_CFA_expression [0x10] +; VGPR40_wave32 ULEB128(1576)=[0xa8, 0x0c] +; BLOCK_LENGTH ULEB128(14)=[0x11] +; DW_OP_regx [0x90] +; VGPR40_wave32 ULEB128(1576)=[0xa8, 0x0c] +; DW_OP_swap [0x16] +; DW_OP_LLVM_offset_uconst [0xe9, 0x05] +; OFFSET ULEB128(128)=[0x80, 0x01] +; DW_OP_LLVM_call_frame_entry_reg [0xe9, 0x07] +; EXEC_MASK_wave32 ULEB128(1)=[0x01] +; DW_OP_deref_size [0x94] +; SIZE [0x04] +; DW_OP_LLVM_select_bit_piece [0xe9, 0x0d] +; ELEMENT_SIZE [0x20] +; ELEMENT_COUNT [0x20] +; WAVE32-NEXT: .cfi_escape 0x10, 0xa8, 0x0c, 0x11, 0x90, 0xa8, 0x0c, 0x16, 0xe9, 0x05, 0x80, 0x01, 0xe9, 0x07, 0x01, 0x94, 0x04, 0xe9, 0x0d, 0x20, 0x20 + +; CHECK-NOT: .cfi_{{.*}} + +; WAVE32: buffer_store_dword v41, off, s[0:3], s32 ; 4-byte Folded Spill +; GFX900: buffer_store_dword v41, off, s[0:3], s32 ; 4-byte Folded Spill +; GFX90A-V2A-DIS: buffer_store_dword v41, off, s[0:3], s32 offset:8 ; 4-byte Folded Spill +; GFX90A-V2A-EN: v_accvgpr_write_b32 a[[#TMP_AGPR2:]], v[[#VGPR2:]] + +; DW_CFA_expression [0x10] +; VGPR41_wave64 ULEB128(2601)=[0xa9, 0x14] +; BLOCK_LENGTH ULEB128(13)=[0x10] +; DW_OP_regx [0x90] +; VGPR41_wave64 ULEB128(2601)=[0xa9, 0x14] +; DW_OP_swap [0x16] +; DW_OP_LLVM_offset_uconst [0xe9, 0x05] +; OFFSET ULEB128(0)=[0x00] / OFFSET ULEB128(128)=[0x80, 0x04] +; DW_OP_LLVM_call_frame_entry_reg [0xe9, 0x07] +; EXEC_MASK_wave64 ULEB128(17)=[0x11] +; DW_OP_deref_size [0x94] +; SIZE [0x08] +; DW_OP_LLVM_select_bit_piece [0xe9, 0x0d] +; ELEMENT_SIZE [0x20] +; ELEMENT_COUNT [0x40] +; GFX900-NEXT: .cfi_escape 0x10, 0xa9, 0x14, 0x10, 0x90, 0xa9, 0x14, 0x16, 0xe9, 0x05, 0x00, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 +; GFX90A-V2A-DIS-NEXT: .cfi_escape 0x10, 0xa9, 0x14, 0x11, 0x90, 0xa9, 0x14, 0x16, 0xe9, 0x05, 0x80, 0x04, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 +; GFX90A-V2A-EN-NEXT: .cfi_register [[#VGPR2+2560]], [[#TMP_AGPR2+3072]] + +; DW_CFA_expression [0x10] +; VGPR41_wave32 ULEB128(1577)=[0xa9, 0x0c] +; BLOCK_LENGTH ULEB128(13)=[0x10] +; DW_OP_regx [0x90] +; VGPR41_wave32 ULEB128(1577)=[0xa9, 0x0c] +; DW_OP_swap [0x16] +; DW_OP_LLVM_offset_uconst [0xe9, 0x05] +; OFFSET ULEB128(0)=[0x00] +; DW_OP_LLVM_call_frame_entry_reg [0xe9, 0x07] +; EXEC_MASK_wave32 ULEB128(1)=[0x01] +; DW_OP_deref_size [0x94] +; SIZE [0x04] +; DW_OP_LLVM_select_bit_piece [0xe9, 0x0d] +; ELEMENT_SIZE [0x20] +; ELEMENT_COUNT [0x20] +; WAVE32: .cfi_escape 0x10, 0xa9, 0x0c, 0x10, 0x90, 0xa9, 0x0c, 0x16, 0xe9, 0x05, 0x00, 0xe9, 0x07, 0x01, 0x94, 0x04, 0xe9, 0x0d, 0x20, 0x20 + +; GFX90A-V2A-DIS: buffer_store_dword a32, off, s[0:3], s32 offset:4 ; 4-byte Folded Spill +; GFX90A-V2A-EN: v_accvgpr_read_b32 v[[#TMP_VGPR1:]], a[[#AGPR1:]] + +; DW_CFA_expression [0x10] +; AGPR32_wave64 ULEB128(3104)=[0xa0, 0x18] +; BLOCK_LENGTH ULEB128(14)=[0x11] +; DW_OP_regx [0x90] +; AGPR32_wave64 ULEB128(3104)=[0xa0, 0x18] +; DW_OP_swap [0x16] +; DW_OP_LLVM_offset_uconst [0xe9, 0x05] +; OFFSET ULEB128(256)=[0x80, 0x02] +; DW_OP_LLVM_call_frame_entry_reg [0xe9, 0x07] +; EXEC_MASK_wave64 ULEB128(17)=[0x11] +; DW_OP_deref_size [0x94] +; SIZE [0x08] +; DW_OP_LLVM_select_bit_piece [0xe9, 0x0d] +; ELEMENT_SIZE [0x20] +; ELEMENT_COUNT [0x40] +; GFX90A-V2A-DIS-NEXT: .cfi_escape 0x10, 0xa0, 0x18, 0x11, 0x90, 0xa0, 0x18, 0x16, 0xe9, 0x05, 0x80, 0x02, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 +; GFX90A-V2A-EN-NEXT: .cfi_register [[#AGPR1+3072]], [[#TMP_VGPR1+2560]] + +; CHECK-NOT: .cfi_{{.*}} + +; GFX90A-V2A-DIS: buffer_store_dword a33, off, s[0:3], s32 ; 4-byte Folded Spill +; GFX90A-V2A-EN: v_accvgpr_read_b32 v[[#TMP_VGPR2:]], a[[#AGPR2:]] + +; DW_CFA_expression [0x10] +; AGPR32_wave64 ULEB128(3105)=[0xa1, 0x18] +; BLOCK_LENGTH ULEB128(14)=[0x13] +; DW_OP_regx [0x90] +; AGPR32_wave64 ULEB128(3105)=[0xa1, 0x18] +; DW_OP_swap [0x16] +; DW_OP_LLVM_offset_uconst [0xe9, 0x05] +; OFFSET ULEB128(0)=[0x00] +; DW_OP_LLVM_call_frame_entry_reg [0xe9, 0x07] +; EXEC_MASK_wave64 ULEB128(17)=[0x11] +; DW_OP_deref_size [0x94] +; SIZE [0x08] +; DW_OP_LLVM_select_bit_piece [0xe9, 0x0d] +; ELEMENT_SIZE [0x20] +; ELEMENT_COUNT [0x40] +; GFX90A-V2A-DIS-NEXT: .cfi_escape 0x10, 0xa1, 0x18, 0x10, 0x90, 0xa1, 0x18, 0x16, 0xe9, 0x05, 0x00, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 +; GFX90A-V2A-EN-NEXT: .cfi_register [[#AGPR2+3072]], [[#TMP_VGPR2+2560]] + +; CHECK-NOT: .cfi_{{.*}} + +; CHECK: .cfi_endproc +define hidden void @func_spill_vgpr_to_vmem() #0 { +entry: + call void asm sideeffect "; clobber", "~{v40}"() #0 + call void asm sideeffect "; clobber", "~{v41}"() #0 + call void asm sideeffect "; clobber", "~{a32}"() #0 + call void asm sideeffect "; clobber", "~{a33}"() #0 + ret void +} + +; CHECK-LABEL: func_spill_vgpr_to_agpr: +; CHECK: .cfi_startproc + +; CHECK-NOT: .cfi_{{.*}} + +; CHECK: %bb.0: +; CHECK-NEXT: .cfi_llvm_def_aspace_cfa 64, 0, 6 +; CHECK-NEXT: .cfi_escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 2560 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 2561 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 3072 +; GFX90A-V2A-EN-NEXT: .cfi_undefined 3073 + +; CHECK-NOT: .cfi_{{.*}} + +; CHECK-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) +; GFX90A-V2A-EN-NEXT: v_accvgpr_write_b32 a[[#TMP_AGPR1:]], v[[#VGPR1:]] +; GFX90A-V2A-EN-NEXT: .cfi_register [[#VGPR1+2560]], [[#TMP_AGPR1+3072]] +; GFX90A-V2A-EN-NEXT: v_accvgpr_write_b32 a[[#TMP_AGPR2]], v[[#VGPR2]] +; GFX90A-V2A-EN-NEXT: .cfi_register [[#VGPR2+2560]], [[#TMP_AGPR2+3072]] +; GFX90A-V2A-EN-NEXT: v_accvgpr_read_b32 v[[#TMP_VGPR1:]], a[[#AGPR1:]] +; GFX90A-V2A-EN-NEXT: .cfi_register [[#AGPR1+3072]], [[#TMP_VGPR1+2560]] +; GFX90A-V2A-EN-NEXT: v_accvgpr_read_b32 v[[#TMP_VGPR2:]], a[[#AGPR2:]] +; GFX90A-V2A-EN-NEXT: .cfi_register [[#AGPR2+3072]], [[#TMP_VGPR2+2560]] +; GFX90A-V2A-EN: v_accvgpr_write_b32 a33, v1 +; GFX90A-V2A-EN-NEXT: v_accvgpr_write_b32 a32, v0 +; GFX90A-V2A-EN-NEXT: v_accvgpr_read_b32 v41, a1 +; GFX90A-V2A-EN-NEXT: v_accvgpr_read_b32 v40, a0 + +; CHECK: s_setpc_b64 s[30:31] + +; CHECK-NOT: .cfi_{{.*}} +; CHECK: .cfi_endproc + +define hidden void @func_spill_vgpr_to_agpr() #2 { + call void asm sideeffect "; clobber", "~{v40}"() + call void asm sideeffect "; clobber", "~{v41}"() + call void asm sideeffect "; clobber", "~{a32}"() + call void asm sideeffect "; clobber", "~{a33}"() + ret void +} + + +; NOTE: Number of VGPRs available to kernel, and in turn number of corresponding CFIs generated, +; is dependent on waves/WG size. Since the intent here is to check whether we generate the correct +; CFIs, doing it for any one set of details is sufficient which also makes the test insensitive to +; changes in those details. +attributes #0 = { nounwind "amdgpu-waves-per-eu"="1,1" "amdgpu-flat-work-group-size"="128,128" } +attributes #1 = { nounwind "amdgpu-waves-per-eu"="1,1" "amdgpu-flat-work-group-size"="128,128" "frame-pointer"="all" } +attributes #2 = { nounwind } + +!llvm.dbg.cu = !{!0} +!llvm.module.flags = !{!2, !3} + +!0 = distinct !DICompileUnit(language: DW_LANG_C99, file: !1, emissionKind: FullDebug) +!1 = !DIFile(filename: "filename", directory: "directory") +!2 = !{i32 7, !"Dwarf Version", i32 4} +!3 = !{i32 2, !"Debug Info Version", i32 3} diff --git a/llvm/test/CodeGen/AMDGPU/dwarf-multi-register-use-crash.ll b/llvm/test/CodeGen/AMDGPU/dwarf-multi-register-use-crash.ll --- a/llvm/test/CodeGen/AMDGPU/dwarf-multi-register-use-crash.ll +++ b/llvm/test/CodeGen/AMDGPU/dwarf-multi-register-use-crash.ll @@ -15,29 +15,484 @@ ; CHECK-NEXT: .cfi_sections .debug_frame ; CHECK-NEXT: .cfi_startproc ; CHECK-NEXT: ; %bb.0: +; CHECK-NEXT: .cfi_llvm_def_aspace_cfa 64, 0, 6 +; CHECK-NEXT: .cfi_escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 ; +; CHECK-NEXT: .cfi_undefined 2560 +; CHECK-NEXT: .cfi_undefined 2561 +; CHECK-NEXT: .cfi_undefined 2562 +; CHECK-NEXT: .cfi_undefined 2563 +; CHECK-NEXT: .cfi_undefined 2564 +; CHECK-NEXT: .cfi_undefined 2565 +; CHECK-NEXT: .cfi_undefined 2566 +; CHECK-NEXT: .cfi_undefined 2567 +; CHECK-NEXT: .cfi_undefined 2568 +; CHECK-NEXT: .cfi_undefined 2569 +; CHECK-NEXT: .cfi_undefined 2570 +; CHECK-NEXT: .cfi_undefined 2571 +; CHECK-NEXT: .cfi_undefined 2572 +; CHECK-NEXT: .cfi_undefined 2573 +; CHECK-NEXT: .cfi_undefined 2574 +; CHECK-NEXT: .cfi_undefined 2575 +; CHECK-NEXT: .cfi_undefined 2576 +; CHECK-NEXT: .cfi_undefined 2577 +; CHECK-NEXT: .cfi_undefined 2578 +; CHECK-NEXT: .cfi_undefined 2579 +; CHECK-NEXT: .cfi_undefined 2580 +; CHECK-NEXT: .cfi_undefined 2581 +; CHECK-NEXT: .cfi_undefined 2582 +; CHECK-NEXT: .cfi_undefined 2583 +; CHECK-NEXT: .cfi_undefined 2584 +; CHECK-NEXT: .cfi_undefined 2585 +; CHECK-NEXT: .cfi_undefined 2586 +; CHECK-NEXT: .cfi_undefined 2587 +; CHECK-NEXT: .cfi_undefined 2588 +; CHECK-NEXT: .cfi_undefined 2589 +; CHECK-NEXT: .cfi_undefined 2590 +; CHECK-NEXT: .cfi_undefined 2591 +; CHECK-NEXT: .cfi_undefined 2592 +; CHECK-NEXT: .cfi_undefined 2593 +; CHECK-NEXT: .cfi_undefined 2594 +; CHECK-NEXT: .cfi_undefined 2595 +; CHECK-NEXT: .cfi_undefined 2596 +; CHECK-NEXT: .cfi_undefined 2597 +; CHECK-NEXT: .cfi_undefined 2598 +; CHECK-NEXT: .cfi_undefined 2599 +; CHECK-NEXT: .cfi_undefined 2608 +; CHECK-NEXT: .cfi_undefined 2609 +; CHECK-NEXT: .cfi_undefined 2610 +; CHECK-NEXT: .cfi_undefined 2611 +; CHECK-NEXT: .cfi_undefined 2612 +; CHECK-NEXT: .cfi_undefined 2613 +; CHECK-NEXT: .cfi_undefined 2614 +; CHECK-NEXT: .cfi_undefined 2615 +; CHECK-NEXT: .cfi_undefined 2624 +; CHECK-NEXT: .cfi_undefined 2625 +; CHECK-NEXT: .cfi_undefined 2626 +; CHECK-NEXT: .cfi_undefined 2627 +; CHECK-NEXT: .cfi_undefined 2628 +; CHECK-NEXT: .cfi_undefined 2629 +; CHECK-NEXT: .cfi_undefined 2630 +; CHECK-NEXT: .cfi_undefined 2631 +; CHECK-NEXT: .cfi_undefined 2640 +; CHECK-NEXT: .cfi_undefined 2641 +; CHECK-NEXT: .cfi_undefined 2642 +; CHECK-NEXT: .cfi_undefined 2643 +; CHECK-NEXT: .cfi_undefined 2644 +; CHECK-NEXT: .cfi_undefined 2645 +; CHECK-NEXT: .cfi_undefined 2646 +; CHECK-NEXT: .cfi_undefined 2647 +; CHECK-NEXT: .cfi_undefined 2656 +; CHECK-NEXT: .cfi_undefined 2657 +; CHECK-NEXT: .cfi_undefined 2658 +; CHECK-NEXT: .cfi_undefined 2659 +; CHECK-NEXT: .cfi_undefined 2660 +; CHECK-NEXT: .cfi_undefined 2661 +; CHECK-NEXT: .cfi_undefined 2662 +; CHECK-NEXT: .cfi_undefined 2663 +; CHECK-NEXT: .cfi_undefined 2672 +; CHECK-NEXT: .cfi_undefined 2673 +; CHECK-NEXT: .cfi_undefined 2674 +; CHECK-NEXT: .cfi_undefined 2675 +; CHECK-NEXT: .cfi_undefined 2676 +; CHECK-NEXT: .cfi_undefined 2677 +; CHECK-NEXT: .cfi_undefined 2678 +; CHECK-NEXT: .cfi_undefined 2679 +; CHECK-NEXT: .cfi_undefined 2688 +; CHECK-NEXT: .cfi_undefined 2689 +; CHECK-NEXT: .cfi_undefined 2690 +; CHECK-NEXT: .cfi_undefined 2691 +; CHECK-NEXT: .cfi_undefined 2692 +; CHECK-NEXT: .cfi_undefined 2693 +; CHECK-NEXT: .cfi_undefined 2694 +; CHECK-NEXT: .cfi_undefined 2695 +; CHECK-NEXT: .cfi_undefined 2704 +; CHECK-NEXT: .cfi_undefined 2705 +; CHECK-NEXT: .cfi_undefined 2706 +; CHECK-NEXT: .cfi_undefined 2707 +; CHECK-NEXT: .cfi_undefined 2708 +; CHECK-NEXT: .cfi_undefined 2709 +; CHECK-NEXT: .cfi_undefined 2710 +; CHECK-NEXT: .cfi_undefined 2711 +; CHECK-NEXT: .cfi_undefined 2720 +; CHECK-NEXT: .cfi_undefined 2721 +; CHECK-NEXT: .cfi_undefined 2722 +; CHECK-NEXT: .cfi_undefined 2723 +; CHECK-NEXT: .cfi_undefined 2724 +; CHECK-NEXT: .cfi_undefined 2725 +; CHECK-NEXT: .cfi_undefined 2726 +; CHECK-NEXT: .cfi_undefined 2727 +; CHECK-NEXT: .cfi_undefined 2736 +; CHECK-NEXT: .cfi_undefined 2737 +; CHECK-NEXT: .cfi_undefined 2738 +; CHECK-NEXT: .cfi_undefined 2739 +; CHECK-NEXT: .cfi_undefined 2740 +; CHECK-NEXT: .cfi_undefined 2741 +; CHECK-NEXT: .cfi_undefined 2742 +; CHECK-NEXT: .cfi_undefined 2743 +; CHECK-NEXT: .cfi_undefined 2752 +; CHECK-NEXT: .cfi_undefined 2753 +; CHECK-NEXT: .cfi_undefined 2754 +; CHECK-NEXT: .cfi_undefined 2755 +; CHECK-NEXT: .cfi_undefined 2756 +; CHECK-NEXT: .cfi_undefined 2757 +; CHECK-NEXT: .cfi_undefined 2758 +; CHECK-NEXT: .cfi_undefined 2759 +; CHECK-NEXT: .cfi_undefined 2768 +; CHECK-NEXT: .cfi_undefined 2769 +; CHECK-NEXT: .cfi_undefined 2770 +; CHECK-NEXT: .cfi_undefined 2771 +; CHECK-NEXT: .cfi_undefined 2772 +; CHECK-NEXT: .cfi_undefined 2773 +; CHECK-NEXT: .cfi_undefined 2774 +; CHECK-NEXT: .cfi_undefined 2775 +; CHECK-NEXT: .cfi_undefined 2784 +; CHECK-NEXT: .cfi_undefined 2785 +; CHECK-NEXT: .cfi_undefined 2786 +; CHECK-NEXT: .cfi_undefined 2787 +; CHECK-NEXT: .cfi_undefined 2788 +; CHECK-NEXT: .cfi_undefined 2789 +; CHECK-NEXT: .cfi_undefined 2790 +; CHECK-NEXT: .cfi_undefined 2791 +; CHECK-NEXT: .cfi_undefined 2800 +; CHECK-NEXT: .cfi_undefined 2801 +; CHECK-NEXT: .cfi_undefined 2802 +; CHECK-NEXT: .cfi_undefined 2803 +; CHECK-NEXT: .cfi_undefined 2804 +; CHECK-NEXT: .cfi_undefined 2805 +; CHECK-NEXT: .cfi_undefined 2806 +; CHECK-NEXT: .cfi_undefined 2807 +; CHECK-NEXT: .cfi_undefined 3072 +; CHECK-NEXT: .cfi_undefined 3073 +; CHECK-NEXT: .cfi_undefined 3074 +; CHECK-NEXT: .cfi_undefined 3075 +; CHECK-NEXT: .cfi_undefined 3076 +; CHECK-NEXT: .cfi_undefined 3077 +; CHECK-NEXT: .cfi_undefined 3078 +; CHECK-NEXT: .cfi_undefined 3079 +; CHECK-NEXT: .cfi_undefined 3080 +; CHECK-NEXT: .cfi_undefined 3081 +; CHECK-NEXT: .cfi_undefined 3082 +; CHECK-NEXT: .cfi_undefined 3083 +; CHECK-NEXT: .cfi_undefined 3084 +; CHECK-NEXT: .cfi_undefined 3085 +; CHECK-NEXT: .cfi_undefined 3086 +; CHECK-NEXT: .cfi_undefined 3087 +; CHECK-NEXT: .cfi_undefined 3088 +; CHECK-NEXT: .cfi_undefined 3089 +; CHECK-NEXT: .cfi_undefined 3090 +; CHECK-NEXT: .cfi_undefined 3091 +; CHECK-NEXT: .cfi_undefined 3092 +; CHECK-NEXT: .cfi_undefined 3093 +; CHECK-NEXT: .cfi_undefined 3094 +; CHECK-NEXT: .cfi_undefined 3095 +; CHECK-NEXT: .cfi_undefined 3096 +; CHECK-NEXT: .cfi_undefined 3097 +; CHECK-NEXT: .cfi_undefined 3098 +; CHECK-NEXT: .cfi_undefined 3099 +; CHECK-NEXT: .cfi_undefined 3100 +; CHECK-NEXT: .cfi_undefined 3101 +; CHECK-NEXT: .cfi_undefined 3102 +; CHECK-NEXT: .cfi_undefined 3103 +; CHECK-NEXT: .cfi_undefined 3104 +; CHECK-NEXT: .cfi_undefined 3105 +; CHECK-NEXT: .cfi_undefined 3106 +; CHECK-NEXT: .cfi_undefined 3107 +; CHECK-NEXT: .cfi_undefined 3108 +; CHECK-NEXT: .cfi_undefined 3109 +; CHECK-NEXT: .cfi_undefined 3110 +; CHECK-NEXT: .cfi_undefined 3111 +; CHECK-NEXT: .cfi_undefined 3112 +; CHECK-NEXT: .cfi_undefined 3113 +; CHECK-NEXT: .cfi_undefined 3114 +; CHECK-NEXT: .cfi_undefined 3115 +; CHECK-NEXT: .cfi_undefined 3116 +; CHECK-NEXT: .cfi_undefined 3117 +; CHECK-NEXT: .cfi_undefined 3118 +; CHECK-NEXT: .cfi_undefined 3119 +; CHECK-NEXT: .cfi_undefined 3120 +; CHECK-NEXT: .cfi_undefined 3121 +; CHECK-NEXT: .cfi_undefined 3122 +; CHECK-NEXT: .cfi_undefined 3123 +; CHECK-NEXT: .cfi_undefined 3124 +; CHECK-NEXT: .cfi_undefined 3125 +; CHECK-NEXT: .cfi_undefined 3126 +; CHECK-NEXT: .cfi_undefined 3127 +; CHECK-NEXT: .cfi_undefined 3128 +; CHECK-NEXT: .cfi_undefined 3129 +; CHECK-NEXT: .cfi_undefined 3130 +; CHECK-NEXT: .cfi_undefined 3131 +; CHECK-NEXT: .cfi_undefined 3132 +; CHECK-NEXT: .cfi_undefined 3133 +; CHECK-NEXT: .cfi_undefined 3134 +; CHECK-NEXT: .cfi_undefined 3135 +; CHECK-NEXT: .cfi_undefined 3136 +; CHECK-NEXT: .cfi_undefined 3137 +; CHECK-NEXT: .cfi_undefined 3138 +; CHECK-NEXT: .cfi_undefined 3139 +; CHECK-NEXT: .cfi_undefined 3140 +; CHECK-NEXT: .cfi_undefined 3141 +; CHECK-NEXT: .cfi_undefined 3142 +; CHECK-NEXT: .cfi_undefined 3143 +; CHECK-NEXT: .cfi_undefined 3144 +; CHECK-NEXT: .cfi_undefined 3145 +; CHECK-NEXT: .cfi_undefined 3146 +; CHECK-NEXT: .cfi_undefined 3147 +; CHECK-NEXT: .cfi_undefined 3148 +; CHECK-NEXT: .cfi_undefined 3149 +; CHECK-NEXT: .cfi_undefined 3150 +; CHECK-NEXT: .cfi_undefined 3151 +; CHECK-NEXT: .cfi_undefined 3152 +; CHECK-NEXT: .cfi_undefined 3153 +; CHECK-NEXT: .cfi_undefined 3154 +; CHECK-NEXT: .cfi_undefined 3155 +; CHECK-NEXT: .cfi_undefined 3156 +; CHECK-NEXT: .cfi_undefined 3157 +; CHECK-NEXT: .cfi_undefined 3158 +; CHECK-NEXT: .cfi_undefined 3159 +; CHECK-NEXT: .cfi_undefined 3160 +; CHECK-NEXT: .cfi_undefined 3161 +; CHECK-NEXT: .cfi_undefined 3162 +; CHECK-NEXT: .cfi_undefined 3163 +; CHECK-NEXT: .cfi_undefined 3164 +; CHECK-NEXT: .cfi_undefined 3165 +; CHECK-NEXT: .cfi_undefined 3166 +; CHECK-NEXT: .cfi_undefined 3167 +; CHECK-NEXT: .cfi_undefined 3168 +; CHECK-NEXT: .cfi_undefined 3169 +; CHECK-NEXT: .cfi_undefined 3170 +; CHECK-NEXT: .cfi_undefined 3171 +; CHECK-NEXT: .cfi_undefined 3172 +; CHECK-NEXT: .cfi_undefined 3173 +; CHECK-NEXT: .cfi_undefined 3174 +; CHECK-NEXT: .cfi_undefined 3175 +; CHECK-NEXT: .cfi_undefined 3176 +; CHECK-NEXT: .cfi_undefined 3177 +; CHECK-NEXT: .cfi_undefined 3178 +; CHECK-NEXT: .cfi_undefined 3179 +; CHECK-NEXT: .cfi_undefined 3180 +; CHECK-NEXT: .cfi_undefined 3181 +; CHECK-NEXT: .cfi_undefined 3182 +; CHECK-NEXT: .cfi_undefined 3183 +; CHECK-NEXT: .cfi_undefined 3184 +; CHECK-NEXT: .cfi_undefined 3185 +; CHECK-NEXT: .cfi_undefined 3186 +; CHECK-NEXT: .cfi_undefined 3187 +; CHECK-NEXT: .cfi_undefined 3188 +; CHECK-NEXT: .cfi_undefined 3189 +; CHECK-NEXT: .cfi_undefined 3190 +; CHECK-NEXT: .cfi_undefined 3191 +; CHECK-NEXT: .cfi_undefined 3192 +; CHECK-NEXT: .cfi_undefined 3193 +; CHECK-NEXT: .cfi_undefined 3194 +; CHECK-NEXT: .cfi_undefined 3195 +; CHECK-NEXT: .cfi_undefined 3196 +; CHECK-NEXT: .cfi_undefined 3197 +; CHECK-NEXT: .cfi_undefined 3198 +; CHECK-NEXT: .cfi_undefined 3199 +; CHECK-NEXT: .cfi_undefined 3200 +; CHECK-NEXT: .cfi_undefined 3201 +; CHECK-NEXT: .cfi_undefined 3202 +; CHECK-NEXT: .cfi_undefined 3203 +; CHECK-NEXT: .cfi_undefined 3204 +; CHECK-NEXT: .cfi_undefined 3205 +; CHECK-NEXT: .cfi_undefined 3206 +; CHECK-NEXT: .cfi_undefined 3207 +; CHECK-NEXT: .cfi_undefined 3208 +; CHECK-NEXT: .cfi_undefined 3209 +; CHECK-NEXT: .cfi_undefined 3210 +; CHECK-NEXT: .cfi_undefined 3211 +; CHECK-NEXT: .cfi_undefined 3212 +; CHECK-NEXT: .cfi_undefined 3213 +; CHECK-NEXT: .cfi_undefined 3214 +; CHECK-NEXT: .cfi_undefined 3215 +; CHECK-NEXT: .cfi_undefined 3216 +; CHECK-NEXT: .cfi_undefined 3217 +; CHECK-NEXT: .cfi_undefined 3218 +; CHECK-NEXT: .cfi_undefined 3219 +; CHECK-NEXT: .cfi_undefined 3220 +; CHECK-NEXT: .cfi_undefined 3221 +; CHECK-NEXT: .cfi_undefined 3222 +; CHECK-NEXT: .cfi_undefined 3223 +; CHECK-NEXT: .cfi_undefined 3224 +; CHECK-NEXT: .cfi_undefined 3225 +; CHECK-NEXT: .cfi_undefined 3226 +; CHECK-NEXT: .cfi_undefined 3227 +; CHECK-NEXT: .cfi_undefined 3228 +; CHECK-NEXT: .cfi_undefined 3229 +; CHECK-NEXT: .cfi_undefined 3230 +; CHECK-NEXT: .cfi_undefined 3231 +; CHECK-NEXT: .cfi_undefined 3232 +; CHECK-NEXT: .cfi_undefined 3233 +; CHECK-NEXT: .cfi_undefined 3234 +; CHECK-NEXT: .cfi_undefined 3235 +; CHECK-NEXT: .cfi_undefined 3236 +; CHECK-NEXT: .cfi_undefined 3237 +; CHECK-NEXT: .cfi_undefined 3238 +; CHECK-NEXT: .cfi_undefined 3239 +; CHECK-NEXT: .cfi_undefined 3240 +; CHECK-NEXT: .cfi_undefined 3241 +; CHECK-NEXT: .cfi_undefined 3242 +; CHECK-NEXT: .cfi_undefined 3243 +; CHECK-NEXT: .cfi_undefined 3244 +; CHECK-NEXT: .cfi_undefined 3245 +; CHECK-NEXT: .cfi_undefined 3246 +; CHECK-NEXT: .cfi_undefined 3247 +; CHECK-NEXT: .cfi_undefined 3248 +; CHECK-NEXT: .cfi_undefined 3249 +; CHECK-NEXT: .cfi_undefined 3250 +; CHECK-NEXT: .cfi_undefined 3251 +; CHECK-NEXT: .cfi_undefined 3252 +; CHECK-NEXT: .cfi_undefined 3253 +; CHECK-NEXT: .cfi_undefined 3254 +; CHECK-NEXT: .cfi_undefined 3255 +; CHECK-NEXT: .cfi_undefined 3256 +; CHECK-NEXT: .cfi_undefined 3257 +; CHECK-NEXT: .cfi_undefined 3258 +; CHECK-NEXT: .cfi_undefined 3259 +; CHECK-NEXT: .cfi_undefined 3260 +; CHECK-NEXT: .cfi_undefined 3261 +; CHECK-NEXT: .cfi_undefined 3262 +; CHECK-NEXT: .cfi_undefined 3263 +; CHECK-NEXT: .cfi_undefined 3264 +; CHECK-NEXT: .cfi_undefined 3265 +; CHECK-NEXT: .cfi_undefined 3266 +; CHECK-NEXT: .cfi_undefined 3267 +; CHECK-NEXT: .cfi_undefined 3268 +; CHECK-NEXT: .cfi_undefined 3269 +; CHECK-NEXT: .cfi_undefined 3270 +; CHECK-NEXT: .cfi_undefined 3271 +; CHECK-NEXT: .cfi_undefined 3272 +; CHECK-NEXT: .cfi_undefined 3273 +; CHECK-NEXT: .cfi_undefined 3274 +; CHECK-NEXT: .cfi_undefined 3275 +; CHECK-NEXT: .cfi_undefined 3276 +; CHECK-NEXT: .cfi_undefined 3277 +; CHECK-NEXT: .cfi_undefined 3278 +; CHECK-NEXT: .cfi_undefined 3279 +; CHECK-NEXT: .cfi_undefined 3280 +; CHECK-NEXT: .cfi_undefined 3281 +; CHECK-NEXT: .cfi_undefined 3282 +; CHECK-NEXT: .cfi_undefined 3283 +; CHECK-NEXT: .cfi_undefined 3284 +; CHECK-NEXT: .cfi_undefined 3285 +; CHECK-NEXT: .cfi_undefined 3286 +; CHECK-NEXT: .cfi_undefined 3287 +; CHECK-NEXT: .cfi_undefined 3288 +; CHECK-NEXT: .cfi_undefined 3289 +; CHECK-NEXT: .cfi_undefined 3290 +; CHECK-NEXT: .cfi_undefined 3291 +; CHECK-NEXT: .cfi_undefined 3292 +; CHECK-NEXT: .cfi_undefined 3293 +; CHECK-NEXT: .cfi_undefined 3294 +; CHECK-NEXT: .cfi_undefined 3295 +; CHECK-NEXT: .cfi_undefined 3296 +; CHECK-NEXT: .cfi_undefined 3297 +; CHECK-NEXT: .cfi_undefined 3298 +; CHECK-NEXT: .cfi_undefined 3299 +; CHECK-NEXT: .cfi_undefined 3300 +; CHECK-NEXT: .cfi_undefined 3301 +; CHECK-NEXT: .cfi_undefined 3302 +; CHECK-NEXT: .cfi_undefined 3303 +; CHECK-NEXT: .cfi_undefined 3304 +; CHECK-NEXT: .cfi_undefined 3305 +; CHECK-NEXT: .cfi_undefined 3306 +; CHECK-NEXT: .cfi_undefined 3307 +; CHECK-NEXT: .cfi_undefined 3308 +; CHECK-NEXT: .cfi_undefined 3309 +; CHECK-NEXT: .cfi_undefined 3310 +; CHECK-NEXT: .cfi_undefined 3311 +; CHECK-NEXT: .cfi_undefined 3312 +; CHECK-NEXT: .cfi_undefined 3313 +; CHECK-NEXT: .cfi_undefined 3314 +; CHECK-NEXT: .cfi_undefined 3315 +; CHECK-NEXT: .cfi_undefined 3316 +; CHECK-NEXT: .cfi_undefined 3317 +; CHECK-NEXT: .cfi_undefined 3318 +; CHECK-NEXT: .cfi_undefined 3319 +; CHECK-NEXT: .cfi_undefined 3320 +; CHECK-NEXT: .cfi_undefined 3321 +; CHECK-NEXT: .cfi_undefined 3322 +; CHECK-NEXT: .cfi_undefined 3323 +; CHECK-NEXT: .cfi_undefined 3324 +; CHECK-NEXT: .cfi_undefined 3325 +; CHECK-NEXT: .cfi_undefined 3326 +; CHECK-NEXT: .cfi_undefined 3327 +; CHECK-NEXT: .cfi_undefined 32 +; CHECK-NEXT: .cfi_undefined 33 +; CHECK-NEXT: .cfi_undefined 34 +; CHECK-NEXT: .cfi_undefined 35 +; CHECK-NEXT: .cfi_undefined 36 +; CHECK-NEXT: .cfi_undefined 37 +; CHECK-NEXT: .cfi_undefined 38 +; CHECK-NEXT: .cfi_undefined 39 +; CHECK-NEXT: .cfi_undefined 40 +; CHECK-NEXT: .cfi_undefined 41 +; CHECK-NEXT: .cfi_undefined 42 +; CHECK-NEXT: .cfi_undefined 43 +; CHECK-NEXT: .cfi_undefined 44 +; CHECK-NEXT: .cfi_undefined 45 +; CHECK-NEXT: .cfi_undefined 46 +; CHECK-NEXT: .cfi_undefined 47 +; CHECK-NEXT: .cfi_undefined 48 +; CHECK-NEXT: .cfi_undefined 49 +; CHECK-NEXT: .cfi_undefined 50 +; CHECK-NEXT: .cfi_undefined 51 +; CHECK-NEXT: .cfi_undefined 52 +; CHECK-NEXT: .cfi_undefined 53 +; CHECK-NEXT: .cfi_undefined 54 +; CHECK-NEXT: .cfi_undefined 55 +; CHECK-NEXT: .cfi_undefined 56 +; CHECK-NEXT: .cfi_undefined 57 +; CHECK-NEXT: .cfi_undefined 58 +; CHECK-NEXT: .cfi_undefined 59 +; CHECK-NEXT: .cfi_undefined 60 +; CHECK-NEXT: .cfi_undefined 61 ; CHECK-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) ; CHECK-NEXT: s_mov_b32 s16, s33 ; CHECK-NEXT: s_mov_b32 s33, s32 ; CHECK-NEXT: s_or_saveexec_b64 s[18:19], -1 ; CHECK-NEXT: buffer_store_dword v40, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill +; CHECK-NEXT: .cfi_offset 2600, 256 ; CHECK-NEXT: buffer_store_dword v42, off, s[0:3], s33 offset:8 ; 4-byte Folded Spill +; CHECK-NEXT: .cfi_offset 2602, 512 ; CHECK-NEXT: s_mov_b64 exec, s[18:19] -; CHECK-NEXT: v_writelane_b32 v40, s30, 0 -; CHECK-NEXT: v_writelane_b32 v40, s31, 1 -; CHECK-NEXT: v_writelane_b32 v40, s34, 2 -; CHECK-NEXT: v_writelane_b32 v40, s35, 3 -; CHECK-NEXT: v_writelane_b32 v40, s36, 4 -; CHECK-NEXT: v_writelane_b32 v40, s37, 5 -; CHECK-NEXT: v_writelane_b32 v40, s38, 6 -; CHECK-NEXT: v_writelane_b32 v40, s39, 7 -; CHECK-NEXT: v_writelane_b32 v40, s40, 8 -; CHECK-NEXT: v_writelane_b32 v40, s41, 9 -; CHECK-NEXT: v_writelane_b32 v40, s42, 10 -; CHECK-NEXT: v_writelane_b32 v40, s43, 11 -; CHECK-NEXT: v_writelane_b32 v40, s44, 12 +; CHECK-NEXT: v_writelane_b32 v42, s16, 0 +; CHECK-NEXT: .cfi_escape 0x10, 0x41, 0x06, 0x90, 0xaa, 0x14, 0xe9, 0x05, 0x00 ; +; CHECK-NEXT: .cfi_def_cfa_register 65 ; CHECK-NEXT: s_addk_i32 s32, 0x400 -; CHECK-NEXT: v_writelane_b32 v40, s45, 13 -; CHECK-NEXT: v_writelane_b32 v40, s46, 14 +; CHECK-NEXT: buffer_store_dword v41, off, s[0:3], s33 ; 4-byte Folded Spill +; CHECK-NEXT: .cfi_escape 0x10, 0xa9, 0x14, 0x10, 0x90, 0xa9, 0x14, 0x16, 0xe9, 0x05, 0x00, 0xe9, 0x07, 0x11, 0x94, 0x08, 0xe9, 0x0d, 0x20, 0x40 ; +; CHECK-NEXT: v_writelane_b32 v40, s34, 0 +; CHECK-NEXT: .cfi_escape 0x10, 0x42, 0x06, 0x90, 0xa8, 0x14, 0xe9, 0x05, 0x00 ; +; CHECK-NEXT: v_writelane_b32 v40, s35, 1 +; CHECK-NEXT: .cfi_escape 0x10, 0x43, 0x06, 0x90, 0xa8, 0x14, 0xe9, 0x05, 0x04 ; +; CHECK-NEXT: v_writelane_b32 v40, s36, 2 +; CHECK-NEXT: .cfi_escape 0x10, 0x44, 0x06, 0x90, 0xa8, 0x14, 0xe9, 0x05, 0x08 ; +; CHECK-NEXT: v_writelane_b32 v40, s37, 3 +; CHECK-NEXT: .cfi_escape 0x10, 0x45, 0x06, 0x90, 0xa8, 0x14, 0xe9, 0x05, 0x0c ; +; CHECK-NEXT: v_writelane_b32 v40, s38, 4 +; CHECK-NEXT: .cfi_escape 0x10, 0x46, 0x06, 0x90, 0xa8, 0x14, 0xe9, 0x05, 0x10 ; +; CHECK-NEXT: v_writelane_b32 v40, s39, 5 +; CHECK-NEXT: .cfi_escape 0x10, 0x47, 0x06, 0x90, 0xa8, 0x14, 0xe9, 0x05, 0x14 ; +; CHECK-NEXT: v_writelane_b32 v40, s40, 6 +; CHECK-NEXT: .cfi_escape 0x10, 0x48, 0x06, 0x90, 0xa8, 0x14, 0xe9, 0x05, 0x18 ; +; CHECK-NEXT: v_writelane_b32 v40, s41, 7 +; CHECK-NEXT: .cfi_escape 0x10, 0x49, 0x06, 0x90, 0xa8, 0x14, 0xe9, 0x05, 0x1c ; +; CHECK-NEXT: v_writelane_b32 v40, s42, 8 +; CHECK-NEXT: .cfi_escape 0x10, 0x4a, 0x06, 0x90, 0xa8, 0x14, 0xe9, 0x05, 0x20 ; +; CHECK-NEXT: v_writelane_b32 v40, s43, 9 +; CHECK-NEXT: .cfi_escape 0x10, 0x4b, 0x06, 0x90, 0xa8, 0x14, 0xe9, 0x05, 0x24 ; +; CHECK-NEXT: v_writelane_b32 v40, s44, 10 +; CHECK-NEXT: .cfi_escape 0x10, 0x4c, 0x06, 0x90, 0xa8, 0x14, 0xe9, 0x05, 0x28 ; +; CHECK-NEXT: v_writelane_b32 v40, s45, 11 +; CHECK-NEXT: .cfi_escape 0x10, 0x4d, 0x06, 0x90, 0xa8, 0x14, 0xe9, 0x05, 0x2c ; +; CHECK-NEXT: v_writelane_b32 v40, s46, 12 +; CHECK-NEXT: .cfi_escape 0x10, 0x4e, 0x06, 0x90, 0xa8, 0x14, 0xe9, 0x05, 0x30 ; +; CHECK-NEXT: v_writelane_b32 v40, s47, 13 +; CHECK-NEXT: .cfi_escape 0x10, 0x4f, 0x06, 0x90, 0xa8, 0x14, 0xe9, 0x05, 0x34 ; +; CHECK-NEXT: v_writelane_b32 v40, s30, 14 +; CHECK-NEXT: v_writelane_b32 v40, s31, 15 +; CHECK-NEXT: .cfi_escape 0x10, 0x10, 0x0e, 0x90, 0xa8, 0x14, 0x9d, 0x20, 0xc0, 0x03, 0x90, 0xa8, 0x14, 0x9d, 0x20, 0xe0, 0x03 ; ; CHECK-NEXT: s_mov_b64 s[40:41], s[4:5] ; CHECK-NEXT: ;DEBUG_VALUE: dummy:dummy <- undef ; CHECK-NEXT: .Ltmp0: @@ -45,11 +500,8 @@ ; CHECK-NEXT: s_getpc_b64 s[4:5] ; CHECK-NEXT: s_add_u32 s4, s4, __kmpc_alloc_shared@gotpcrel32@lo+4 ; CHECK-NEXT: s_addc_u32 s5, s5, __kmpc_alloc_shared@gotpcrel32@hi+12 -; CHECK-NEXT: v_writelane_b32 v40, s47, 15 ; CHECK-NEXT: s_load_dwordx2 s[46:47], s[4:5], 0x0 ; CHECK-NEXT: s_mov_b64 s[4:5], s[40:41] -; CHECK-NEXT: v_writelane_b32 v42, s16, 0 -; CHECK-NEXT: buffer_store_dword v41, off, s[0:3], s33 ; 4-byte Folded Spill ; CHECK-NEXT: v_mov_b32_e32 v41, v31 ; CHECK-NEXT: s_mov_b32 s42, s15 ; CHECK-NEXT: s_mov_b32 s43, s14 @@ -75,29 +527,30 @@ ; CHECK-NEXT: .loc 1 0 9 is_stmt 0 ; dummy:0:9 ; CHECK-NEXT: buffer_load_dword v41, off, s[0:3], s33 ; 4-byte Folded Reload ; CHECK-NEXT: v_mov_b32_e32 v2, 0 +; CHECK-NEXT: v_readlane_b32 s30, v40, 14 ; CHECK-NEXT: flat_store_dword v[0:1], v2 -; CHECK-NEXT: v_readlane_b32 s47, v40, 15 -; CHECK-NEXT: v_readlane_b32 s46, v40, 14 -; CHECK-NEXT: v_readlane_b32 s45, v40, 13 -; CHECK-NEXT: v_readlane_b32 s44, v40, 12 -; CHECK-NEXT: v_readlane_b32 s43, v40, 11 -; CHECK-NEXT: v_readlane_b32 s42, v40, 10 -; CHECK-NEXT: v_readlane_b32 s41, v40, 9 -; CHECK-NEXT: v_readlane_b32 s40, v40, 8 -; CHECK-NEXT: v_readlane_b32 s39, v40, 7 -; CHECK-NEXT: v_readlane_b32 s38, v40, 6 -; CHECK-NEXT: v_readlane_b32 s37, v40, 5 -; CHECK-NEXT: v_readlane_b32 s36, v40, 4 -; CHECK-NEXT: v_readlane_b32 s35, v40, 3 -; CHECK-NEXT: v_readlane_b32 s34, v40, 2 -; CHECK-NEXT: v_readlane_b32 s31, v40, 1 -; CHECK-NEXT: v_readlane_b32 s30, v40, 0 +; CHECK-NEXT: v_readlane_b32 s31, v40, 15 +; CHECK-NEXT: v_readlane_b32 s47, v40, 13 +; CHECK-NEXT: v_readlane_b32 s46, v40, 12 +; CHECK-NEXT: v_readlane_b32 s45, v40, 11 +; CHECK-NEXT: v_readlane_b32 s44, v40, 10 +; CHECK-NEXT: v_readlane_b32 s43, v40, 9 +; CHECK-NEXT: v_readlane_b32 s42, v40, 8 +; CHECK-NEXT: v_readlane_b32 s41, v40, 7 +; CHECK-NEXT: v_readlane_b32 s40, v40, 6 +; CHECK-NEXT: v_readlane_b32 s39, v40, 5 +; CHECK-NEXT: v_readlane_b32 s38, v40, 4 +; CHECK-NEXT: v_readlane_b32 s37, v40, 3 +; CHECK-NEXT: v_readlane_b32 s36, v40, 2 +; CHECK-NEXT: v_readlane_b32 s35, v40, 1 +; CHECK-NEXT: v_readlane_b32 s34, v40, 0 ; CHECK-NEXT: v_readlane_b32 s4, v42, 0 ; CHECK-NEXT: s_or_saveexec_b64 s[6:7], -1 ; CHECK-NEXT: buffer_load_dword v40, off, s[0:3], s33 offset:4 ; 4-byte Folded Reload ; CHECK-NEXT: buffer_load_dword v42, off, s[0:3], s33 offset:8 ; 4-byte Folded Reload ; CHECK-NEXT: s_mov_b64 exec, s[6:7] ; CHECK-NEXT: s_addk_i32 s32, 0xfc00 +; CHECK-NEXT: .cfi_def_cfa_register 64 ; CHECK-NEXT: s_mov_b32 s33, s4 ; CHECK-NEXT: s_waitcnt vmcnt(0) lgkmcnt(0) ; CHECK-NEXT: s_setpc_b64 s[30:31] diff --git a/llvm/test/CodeGen/AMDGPU/entry-function-cfi.mir b/llvm/test/CodeGen/AMDGPU/entry-function-cfi.mir new file mode 100644 --- /dev/null +++ b/llvm/test/CodeGen/AMDGPU/entry-function-cfi.mir @@ -0,0 +1,31 @@ +# RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx900 -run-pass=prologepilog -o - %s | FileCheck %s + +--- | + + define protected amdgpu_kernel void @kern1() { + entry: + ret void + } +... +--- +name: kern1 +alignment: 1 +tracksRegLiveness: true +frameInfo: + maxAlignment: 1 +machineFunctionInfo: + maxKernArgAlign: 1 + isEntryFunction: true + scratchRSrcReg: '$sgpr100_sgpr101_sgpr102_sgpr103' + stackPtrOffsetReg: '$sgpr32' + argumentInfo: + workGroupIDX: { reg: '$sgpr0' } + privateSegmentWaveByteOffset: { reg: '$sgpr1' } + workItemIDX: { reg: '$vgpr0' } +body: | + bb.0: + ; CHECK: frame-setup CFI_INSTRUCTION escape 0x0f, 0x04, 0x30, 0x36, 0xe9, 0x02 + ; CHECK: frame-setup CFI_INSTRUCTION undefined $pc_reg + S_ENDPGM 0 + +... diff --git a/llvm/test/CodeGen/AMDGPU/fix-frame-reg-in-custom-csr-spills.ll b/llvm/test/CodeGen/AMDGPU/fix-frame-reg-in-custom-csr-spills.ll --- a/llvm/test/CodeGen/AMDGPU/fix-frame-reg-in-custom-csr-spills.ll +++ b/llvm/test/CodeGen/AMDGPU/fix-frame-reg-in-custom-csr-spills.ll @@ -19,15 +19,16 @@ ; GCN-NEXT: buffer_store_dword v42, off, s[0:3], s33 offset:96 ; 4-byte Folded Spill ; GCN-NEXT: buffer_store_dword v43, off, s[0:3], s33 offset:100 ; 4-byte Folded Spill ; GCN-NEXT: s_mov_b64 exec, s[18:19] -; GCN-NEXT: s_addk_i32 s32, 0x3000 ; GCN-NEXT: v_writelane_b32 v43, s16, 0 +; GCN-NEXT: s_addk_i32 s32, 0x3000 +; GCN-NEXT: buffer_store_dword v40, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill +; GCN-NEXT: buffer_store_dword v41, off, s[0:3], s33 ; 4-byte Folded Spill +; GCN-NEXT: v_writelane_b32 v42, s30, 0 +; GCN-NEXT: v_writelane_b32 v42, s31, 1 ; GCN-NEXT: s_getpc_b64 s[16:17] ; GCN-NEXT: s_add_u32 s16, s16, extern_func@gotpcrel32@lo+4 ; GCN-NEXT: s_addc_u32 s17, s17, extern_func@gotpcrel32@hi+12 ; GCN-NEXT: s_load_dwordx2 s[16:17], s[16:17], 0x0 -; GCN-NEXT: buffer_store_dword v40, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill -; GCN-NEXT: buffer_store_dword v41, off, s[0:3], s33 ; 4-byte Folded Spill -; GCN-NEXT: v_writelane_b32 v42, s30, 0 ; GCN-NEXT: buffer_store_dword v7, off, s[0:3], s33 offset:92 ; GCN-NEXT: s_waitcnt vmcnt(0) ; GCN-NEXT: buffer_store_dword v6, off, s[0:3], s33 offset:88 @@ -45,7 +46,6 @@ ; GCN-NEXT: buffer_store_dword v0, off, s[0:3], s33 offset:64 ; GCN-NEXT: s_waitcnt vmcnt(0) ; GCN-NEXT: v_mov_b32_e32 v0, v8 -; GCN-NEXT: v_writelane_b32 v42, s31, 1 ; GCN-NEXT: ;;#ASMSTART ; GCN-NEXT: ;;#ASMEND ; GCN-NEXT: ;;#ASMSTART @@ -54,8 +54,8 @@ ; GCN-NEXT: s_swappc_b64 s[30:31], s[16:17] ; GCN-NEXT: buffer_load_dword v41, off, s[0:3], s33 ; 4-byte Folded Reload ; GCN-NEXT: buffer_load_dword v40, off, s[0:3], s33 offset:4 ; 4-byte Folded Reload -; GCN-NEXT: v_readlane_b32 s31, v42, 1 ; GCN-NEXT: v_readlane_b32 s30, v42, 0 +; GCN-NEXT: v_readlane_b32 s31, v42, 1 ; GCN-NEXT: v_readlane_b32 s4, v43, 0 ; GCN-NEXT: s_or_saveexec_b64 s[6:7], -1 ; GCN-NEXT: buffer_load_dword v42, off, s[0:3], s33 offset:96 ; 4-byte Folded Reload diff --git a/llvm/test/CodeGen/AMDGPU/fold-reload-into-exec.mir b/llvm/test/CodeGen/AMDGPU/fold-reload-into-exec.mir --- a/llvm/test/CodeGen/AMDGPU/fold-reload-into-exec.mir +++ b/llvm/test/CodeGen/AMDGPU/fold-reload-into-exec.mir @@ -14,6 +14,8 @@ ; CHECK-LABEL: name: merge_sgpr_spill_into_copy_from_exec_lo ; CHECK: liveins: $vgpr0 ; CHECK-NEXT: {{ $}} + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x0f, 0x04, 0x30, 0x36, 0xe9, 0x02 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $pc_reg ; CHECK-NEXT: S_NOP 0, implicit-def $exec_lo ; CHECK-NEXT: $sgpr0 = S_MOV_B32 $exec_lo ; CHECK-NEXT: $vgpr0 = V_WRITELANE_B32 killed $sgpr0, 0, $vgpr0 @@ -40,6 +42,8 @@ ; CHECK-LABEL: name: merge_sgpr_spill_into_copy_from_exec_hi ; CHECK: liveins: $vgpr0 ; CHECK-NEXT: {{ $}} + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x0f, 0x04, 0x30, 0x36, 0xe9, 0x02 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $pc_reg ; CHECK-NEXT: S_NOP 0, implicit-def $exec_hi ; CHECK-NEXT: $sgpr0 = S_MOV_B32 $exec_hi ; CHECK-NEXT: $vgpr0 = V_WRITELANE_B32 killed $sgpr0, 0, $vgpr0 @@ -66,6 +70,8 @@ ; CHECK-LABEL: name: merge_sgpr_spill_into_copy_from_exec ; CHECK: liveins: $vgpr0 ; CHECK-NEXT: {{ $}} + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x0f, 0x04, 0x30, 0x36, 0xe9, 0x02 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $pc_reg ; CHECK-NEXT: S_NOP 0, implicit-def $exec ; CHECK-NEXT: $sgpr0_sgpr1 = S_MOV_B64 $exec ; CHECK-NEXT: $vgpr0 = V_WRITELANE_B32 killed $sgpr0, 0, $vgpr0, implicit-def $sgpr0_sgpr1, implicit $sgpr0_sgpr1 @@ -98,6 +104,8 @@ ; CHECK-LABEL: name: reload_sgpr_spill_into_copy_to_exec_lo ; CHECK: liveins: $vgpr0 ; CHECK-NEXT: {{ $}} + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x0f, 0x04, 0x30, 0x36, 0xe9, 0x02 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $pc_reg ; CHECK-NEXT: S_NOP 0, implicit-def renamable $sgpr0, implicit-def dead renamable $sgpr1, implicit-def $exec_lo ; CHECK-NEXT: $vgpr0 = V_WRITELANE_B32 killed $sgpr0, 0, $vgpr0 ; CHECK-NEXT: $sgpr0 = V_READLANE_B32 $vgpr0, 0 @@ -122,6 +130,8 @@ ; CHECK-LABEL: name: reload_sgpr_spill_into_copy_to_exec_hi ; CHECK: liveins: $vgpr0 ; CHECK-NEXT: {{ $}} + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x0f, 0x04, 0x30, 0x36, 0xe9, 0x02 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $pc_reg ; CHECK-NEXT: S_NOP 0, implicit-def renamable $sgpr0, implicit-def dead renamable $sgpr1, implicit-def $exec_hi ; CHECK-NEXT: $vgpr0 = V_WRITELANE_B32 killed $sgpr0, 0, $vgpr0 ; CHECK-NEXT: $sgpr0 = V_READLANE_B32 $vgpr0, 0 @@ -146,6 +156,8 @@ ; CHECK-LABEL: name: reload_sgpr_spill_into_copy_to_exec ; CHECK: liveins: $vgpr0 ; CHECK-NEXT: {{ $}} + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x0f, 0x04, 0x30, 0x36, 0xe9, 0x02 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $pc_reg ; CHECK-NEXT: S_NOP 0, implicit-def renamable $sgpr0_sgpr1, implicit-def dead renamable $sgpr2_sgpr3, implicit-def $exec ; CHECK-NEXT: $vgpr0 = V_WRITELANE_B32 killed $sgpr0, 0, $vgpr0, implicit-def $sgpr0_sgpr1, implicit $sgpr0_sgpr1 ; CHECK-NEXT: $vgpr0 = V_WRITELANE_B32 killed $sgpr1, 1, $vgpr0, implicit $sgpr0_sgpr1 diff --git a/llvm/test/CodeGen/AMDGPU/fold-reload-into-m0.mir b/llvm/test/CodeGen/AMDGPU/fold-reload-into-m0.mir --- a/llvm/test/CodeGen/AMDGPU/fold-reload-into-m0.mir +++ b/llvm/test/CodeGen/AMDGPU/fold-reload-into-m0.mir @@ -15,6 +15,8 @@ ; CHECK-LABEL: name: merge_sgpr_spill_into_copy_from_m0 ; CHECK: liveins: $vgpr0 ; CHECK-NEXT: {{ $}} + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x0f, 0x04, 0x30, 0x36, 0xe9, 0x02 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $pc_reg ; CHECK-NEXT: S_NOP 0, implicit-def $m0 ; CHECK-NEXT: $sgpr0 = S_MOV_B32 $m0 ; CHECK-NEXT: $vgpr0 = V_WRITELANE_B32 killed $sgpr0, 0, $vgpr0 @@ -46,6 +48,8 @@ ; CHECK-LABEL: name: reload_sgpr_spill_into_copy_to_m0 ; CHECK: liveins: $vgpr0 ; CHECK-NEXT: {{ $}} + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x0f, 0x04, 0x30, 0x36, 0xe9, 0x02 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $pc_reg ; CHECK-NEXT: S_NOP 0, implicit-def renamable $sgpr0, implicit-def dead renamable $sgpr1, implicit-def $m0 ; CHECK-NEXT: $vgpr0 = V_WRITELANE_B32 killed $sgpr0, 0, $vgpr0 ; CHECK-NEXT: $sgpr0 = V_READLANE_B32 $vgpr0, 0 diff --git a/llvm/test/CodeGen/AMDGPU/frame-index-elimination-tied-operand.mir b/llvm/test/CodeGen/AMDGPU/frame-index-elimination-tied-operand.mir --- a/llvm/test/CodeGen/AMDGPU/frame-index-elimination-tied-operand.mir +++ b/llvm/test/CodeGen/AMDGPU/frame-index-elimination-tied-operand.mir @@ -21,6 +21,8 @@ ; GFX11-LABEL: name: tied_operand_test ; GFX11: liveins: $sgpr0_sgpr1 ; GFX11-NEXT: {{ $}} + ; GFX11-NEXT: frame-setup CFI_INSTRUCTION escape 0x0f, 0x04, 0x30, 0x36, 0xe9, 0x02 + ; GFX11-NEXT: frame-setup CFI_INSTRUCTION undefined $pc_reg ; GFX11-NEXT: renamable $vgpr0 = V_MOV_B32_e32 123, implicit $exec ; GFX11-NEXT: renamable $vgpr0 = SCRATCH_LOAD_SHORT_D16_HI_ST 4, 0, killed renamable $vgpr0, implicit $exec, implicit $flat_scr ; GFX11-NEXT: renamable $sgpr0 = S_LOAD_DWORD_IMM killed renamable $sgpr0_sgpr1, 4, 0 diff --git a/llvm/test/CodeGen/AMDGPU/frame-index.mir b/llvm/test/CodeGen/AMDGPU/frame-index.mir --- a/llvm/test/CodeGen/AMDGPU/frame-index.mir +++ b/llvm/test/CodeGen/AMDGPU/frame-index.mir @@ -19,6 +19,9 @@ ; GCN-LABEL: name: func_add_constant_to_fi_divergent_i32 ; GCN: liveins: $vgpr31, $sgpr30_sgpr31 ; GCN-NEXT: {{ $}} + ; GCN-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 ; GCN-NEXT: renamable $vgpr0 = V_AND_B32_e32 1023, killed $vgpr31, implicit $exec ; GCN-NEXT: renamable $vgpr0 = V_LSHLREV_B32_e32 2, killed $vgpr0, implicit $exec ; GCN-NEXT: $vgpr1 = V_LSHRREV_B32_e64 6, $sgpr32, implicit $exec @@ -53,6 +56,10 @@ ; GCN-LABEL: name: func_add_constant_to_fi_uniform_i32 ; GCN: liveins: $sgpr30_sgpr31 ; GCN-NEXT: {{ $}} + ; GCN-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 ; GCN-NEXT: $vcc_hi = S_LSHR_B32 6, $sgpr32, implicit-def dead $scc ; GCN-NEXT: renamable $sgpr4 = nuw S_ADD_I32 killed $vcc_hi, 4, implicit-def dead $scc ; GCN-NEXT: renamable $vgpr0 = COPY killed renamable $sgpr4, implicit $exec @@ -89,6 +96,12 @@ ; GCN-LABEL: name: func_add_constant_to_fi_uniform_SCC_clobber_i32 ; GCN: liveins: $sgpr30_sgpr31 ; GCN-NEXT: {{ $}} + ; GCN-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 ; GCN-NEXT: $vcc_lo = S_LSHR_B32 6, $sgpr32, implicit-def dead $scc ; GCN-NEXT: renamable $sgpr4 = nuw S_ADD_U32 killed $vcc_lo, 4, implicit-def $scc ; GCN-NEXT: renamable $sgpr5 = S_ADDC_U32 $sgpr4, 1234567, implicit-def $scc, implicit $scc @@ -130,6 +143,10 @@ ; GCN-LABEL: name: func_other_fi_user_non_inline_imm_offset_i32 ; GCN: liveins: $sgpr30_sgpr31 ; GCN-NEXT: {{ $}} + ; GCN-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 ; GCN-NEXT: renamable $vgpr0 = V_MOV_B32_e32 7, implicit $exec ; GCN-NEXT: BUFFER_STORE_DWORD_OFFSET killed renamable $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 260, 0, 0, implicit $exec ; GCN-NEXT: $vcc_hi = S_LSHR_B32 $sgpr32, 6, implicit-def $scc @@ -166,6 +183,12 @@ ; GCN-LABEL: name: func_add_constant_to_fi_uniform_live_SCC_i32 ; GCN: liveins: $sgpr10, $sgpr30_sgpr31 ; GCN-NEXT: {{ $}} + ; GCN-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 ; GCN-NEXT: renamable $sgpr4 = nuw S_ADD_U32 $sgpr10, 4, implicit-def $scc ; GCN-NEXT: $vgpr1 = V_LSHRREV_B32_e64 6, $sgpr32, implicit $exec ; GCN-NEXT: $vcc_hi = V_READFIRSTLANE_B32 $vgpr1, implicit $exec @@ -202,6 +225,9 @@ ; GCN-LABEL: name: func_frame_idx_at_the_end_of_bb ; GCN: liveins: $vgpr31 ; GCN-NEXT: {{ $}} + ; GCN-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 ; GCN-NEXT: renamable $vgpr0 = V_AND_B32_e32 1023, killed $vgpr31, implicit $exec ; GCN-NEXT: renamable $vgpr0 = V_LSHLREV_B32_e32 2, killed $vgpr0, implicit $exec ; GCN-NEXT: $vgpr1 = V_LSHRREV_B32_e64 6, $sgpr32, implicit $exec diff --git a/llvm/test/CodeGen/AMDGPU/frame-setup-without-sgpr-to-vgpr-spills.ll b/llvm/test/CodeGen/AMDGPU/frame-setup-without-sgpr-to-vgpr-spills.ll --- a/llvm/test/CodeGen/AMDGPU/frame-setup-without-sgpr-to-vgpr-spills.ll +++ b/llvm/test/CodeGen/AMDGPU/frame-setup-without-sgpr-to-vgpr-spills.ll @@ -16,19 +16,19 @@ ; SPILL-TO-VGPR-NEXT: buffer_store_dword v40, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; SPILL-TO-VGPR-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:8 ; 4-byte Folded Spill ; SPILL-TO-VGPR-NEXT: s_mov_b64 exec, s[8:9] -; SPILL-TO-VGPR-NEXT: s_addk_i32 s32, 0x400 -; SPILL-TO-VGPR-NEXT: v_writelane_b32 v40, s30, 0 -; SPILL-TO-VGPR-NEXT: v_mov_b32_e32 v0, 0 ; SPILL-TO-VGPR-NEXT: v_writelane_b32 v41, s4, 0 +; SPILL-TO-VGPR-NEXT: v_writelane_b32 v40, s30, 0 +; SPILL-TO-VGPR-NEXT: s_addk_i32 s32, 0x400 ; SPILL-TO-VGPR-NEXT: v_writelane_b32 v40, s31, 1 +; SPILL-TO-VGPR-NEXT: v_mov_b32_e32 v0, 0 ; SPILL-TO-VGPR-NEXT: buffer_store_dword v0, off, s[0:3], s33 ; SPILL-TO-VGPR-NEXT: s_waitcnt vmcnt(0) ; SPILL-TO-VGPR-NEXT: s_getpc_b64 s[4:5] ; SPILL-TO-VGPR-NEXT: s_add_u32 s4, s4, external_void_func_void@rel32@lo+4 ; SPILL-TO-VGPR-NEXT: s_addc_u32 s5, s5, external_void_func_void@rel32@hi+12 ; SPILL-TO-VGPR-NEXT: s_swappc_b64 s[30:31], s[4:5] -; SPILL-TO-VGPR-NEXT: v_readlane_b32 s31, v40, 1 ; SPILL-TO-VGPR-NEXT: v_readlane_b32 s30, v40, 0 +; SPILL-TO-VGPR-NEXT: v_readlane_b32 s31, v40, 1 ; SPILL-TO-VGPR-NEXT: v_readlane_b32 s4, v41, 0 ; SPILL-TO-VGPR-NEXT: s_or_saveexec_b64 s[6:7], -1 ; SPILL-TO-VGPR-NEXT: buffer_load_dword v40, off, s[0:3], s33 offset:4 ; 4-byte Folded Reload @@ -47,19 +47,12 @@ ; NO-SPILL-TO-VGPR-NEXT: v_mov_b32_e32 v0, s4 ; NO-SPILL-TO-VGPR-NEXT: buffer_store_dword v0, off, s[0:3], s33 offset:12 ; 4-byte Folded Spill ; NO-SPILL-TO-VGPR-NEXT: s_addk_i32 s32, 0x800 -; NO-SPILL-TO-VGPR-NEXT: s_mov_b64 s[10:11], exec -; NO-SPILL-TO-VGPR-NEXT: s_mov_b64 exec, 1 -; NO-SPILL-TO-VGPR-NEXT: buffer_store_dword v2, off, s[0:3], s33 offset:16 -; NO-SPILL-TO-VGPR-NEXT: v_writelane_b32 v2, s30, 0 -; NO-SPILL-TO-VGPR-NEXT: buffer_store_dword v2, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill -; NO-SPILL-TO-VGPR-NEXT: buffer_load_dword v2, off, s[0:3], s33 offset:16 -; NO-SPILL-TO-VGPR-NEXT: s_waitcnt vmcnt(0) -; NO-SPILL-TO-VGPR-NEXT: s_mov_b64 exec, s[10:11] ; NO-SPILL-TO-VGPR-NEXT: s_mov_b64 s[8:9], exec -; NO-SPILL-TO-VGPR-NEXT: s_mov_b64 exec, 1 +; NO-SPILL-TO-VGPR-NEXT: s_mov_b64 exec, 3 ; NO-SPILL-TO-VGPR-NEXT: buffer_store_dword v1, off, s[0:3], s33 offset:16 -; NO-SPILL-TO-VGPR-NEXT: v_writelane_b32 v1, s31, 0 -; NO-SPILL-TO-VGPR-NEXT: buffer_store_dword v1, off, s[0:3], s33 offset:8 ; 4-byte Folded Spill +; NO-SPILL-TO-VGPR-NEXT: v_writelane_b32 v1, s30, 0 +; NO-SPILL-TO-VGPR-NEXT: v_writelane_b32 v1, s31, 1 +; NO-SPILL-TO-VGPR-NEXT: buffer_store_dword v1, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; NO-SPILL-TO-VGPR-NEXT: buffer_load_dword v1, off, s[0:3], s33 offset:16 ; NO-SPILL-TO-VGPR-NEXT: s_waitcnt vmcnt(0) ; NO-SPILL-TO-VGPR-NEXT: s_mov_b64 exec, s[8:9] @@ -70,21 +63,13 @@ ; NO-SPILL-TO-VGPR-NEXT: s_add_u32 s4, s4, external_void_func_void@rel32@lo+4 ; NO-SPILL-TO-VGPR-NEXT: s_addc_u32 s5, s5, external_void_func_void@rel32@hi+12 ; NO-SPILL-TO-VGPR-NEXT: s_swappc_b64 s[30:31], s[4:5] -; NO-SPILL-TO-VGPR-NEXT: s_mov_b64 s[8:9], exec -; NO-SPILL-TO-VGPR-NEXT: s_mov_b64 exec, 1 -; NO-SPILL-TO-VGPR-NEXT: buffer_store_dword v2, off, s[0:3], s33 offset:16 -; NO-SPILL-TO-VGPR-NEXT: buffer_load_dword v2, off, s[0:3], s33 offset:8 ; 4-byte Folded Reload -; NO-SPILL-TO-VGPR-NEXT: s_waitcnt vmcnt(0) -; NO-SPILL-TO-VGPR-NEXT: v_readlane_b32 s31, v2, 0 -; NO-SPILL-TO-VGPR-NEXT: buffer_load_dword v2, off, s[0:3], s33 offset:16 -; NO-SPILL-TO-VGPR-NEXT: s_waitcnt vmcnt(0) -; NO-SPILL-TO-VGPR-NEXT: s_mov_b64 exec, s[8:9] ; NO-SPILL-TO-VGPR-NEXT: s_mov_b64 s[6:7], exec -; NO-SPILL-TO-VGPR-NEXT: s_mov_b64 exec, 1 +; NO-SPILL-TO-VGPR-NEXT: s_mov_b64 exec, 3 ; NO-SPILL-TO-VGPR-NEXT: buffer_store_dword v1, off, s[0:3], s33 offset:16 ; NO-SPILL-TO-VGPR-NEXT: buffer_load_dword v1, off, s[0:3], s33 offset:4 ; 4-byte Folded Reload ; NO-SPILL-TO-VGPR-NEXT: s_waitcnt vmcnt(0) ; NO-SPILL-TO-VGPR-NEXT: v_readlane_b32 s30, v1, 0 +; NO-SPILL-TO-VGPR-NEXT: v_readlane_b32 s31, v1, 1 ; NO-SPILL-TO-VGPR-NEXT: buffer_load_dword v1, off, s[0:3], s33 offset:16 ; NO-SPILL-TO-VGPR-NEXT: s_waitcnt vmcnt(0) ; NO-SPILL-TO-VGPR-NEXT: s_mov_b64 exec, s[6:7] diff --git a/llvm/test/CodeGen/AMDGPU/gfx-call-non-gfx-func.ll b/llvm/test/CodeGen/AMDGPU/gfx-call-non-gfx-func.ll --- a/llvm/test/CodeGen/AMDGPU/gfx-call-non-gfx-func.ll +++ b/llvm/test/CodeGen/AMDGPU/gfx-call-non-gfx-func.ll @@ -13,6 +13,7 @@ ; SDAG-NEXT: s_or_saveexec_b64 s[34:35], -1 ; SDAG-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; SDAG-NEXT: s_mov_b64 exec, s[34:35] +; SDAG-NEXT: s_addk_i32 s32, 0x400 ; SDAG-NEXT: v_writelane_b32 v40, s4, 0 ; SDAG-NEXT: v_writelane_b32 v40, s5, 1 ; SDAG-NEXT: v_writelane_b32 v40, s6, 2 @@ -33,24 +34,23 @@ ; SDAG-NEXT: v_writelane_b32 v40, s21, 17 ; SDAG-NEXT: v_writelane_b32 v40, s22, 18 ; SDAG-NEXT: v_writelane_b32 v40, s23, 19 -; SDAG-NEXT: s_addk_i32 s32, 0x400 ; SDAG-NEXT: v_writelane_b32 v40, s24, 20 ; SDAG-NEXT: v_writelane_b32 v40, s25, 21 -; SDAG-NEXT: s_getpc_b64 s[34:35] -; SDAG-NEXT: s_add_u32 s34, s34, extern_c_func@gotpcrel32@lo+4 -; SDAG-NEXT: s_addc_u32 s35, s35, extern_c_func@gotpcrel32@hi+12 ; SDAG-NEXT: v_writelane_b32 v40, s26, 22 -; SDAG-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 ; SDAG-NEXT: v_writelane_b32 v40, s27, 23 ; SDAG-NEXT: v_writelane_b32 v40, s28, 24 ; SDAG-NEXT: v_writelane_b32 v40, s29, 25 ; SDAG-NEXT: v_writelane_b32 v40, s30, 26 -; SDAG-NEXT: s_mov_b64 s[8:9], 0 ; SDAG-NEXT: v_writelane_b32 v40, s31, 27 +; SDAG-NEXT: s_getpc_b64 s[34:35] +; SDAG-NEXT: s_add_u32 s34, s34, extern_c_func@gotpcrel32@lo+4 +; SDAG-NEXT: s_addc_u32 s35, s35, extern_c_func@gotpcrel32@hi+12 +; SDAG-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 +; SDAG-NEXT: s_mov_b64 s[8:9], 0 ; SDAG-NEXT: s_waitcnt lgkmcnt(0) ; SDAG-NEXT: s_swappc_b64 s[30:31], s[34:35] -; SDAG-NEXT: v_readlane_b32 s31, v40, 27 ; SDAG-NEXT: v_readlane_b32 s30, v40, 26 +; SDAG-NEXT: v_readlane_b32 s31, v40, 27 ; SDAG-NEXT: v_readlane_b32 s29, v40, 25 ; SDAG-NEXT: v_readlane_b32 s28, v40, 24 ; SDAG-NEXT: v_readlane_b32 s27, v40, 23 @@ -93,6 +93,7 @@ ; GISEL-NEXT: s_or_saveexec_b64 s[34:35], -1 ; GISEL-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GISEL-NEXT: s_mov_b64 exec, s[34:35] +; GISEL-NEXT: s_addk_i32 s32, 0x400 ; GISEL-NEXT: v_writelane_b32 v40, s4, 0 ; GISEL-NEXT: v_writelane_b32 v40, s5, 1 ; GISEL-NEXT: v_writelane_b32 v40, s6, 2 @@ -113,24 +114,23 @@ ; GISEL-NEXT: v_writelane_b32 v40, s21, 17 ; GISEL-NEXT: v_writelane_b32 v40, s22, 18 ; GISEL-NEXT: v_writelane_b32 v40, s23, 19 -; GISEL-NEXT: s_addk_i32 s32, 0x400 ; GISEL-NEXT: v_writelane_b32 v40, s24, 20 ; GISEL-NEXT: v_writelane_b32 v40, s25, 21 -; GISEL-NEXT: s_getpc_b64 s[34:35] -; GISEL-NEXT: s_add_u32 s34, s34, extern_c_func@gotpcrel32@lo+4 -; GISEL-NEXT: s_addc_u32 s35, s35, extern_c_func@gotpcrel32@hi+12 ; GISEL-NEXT: v_writelane_b32 v40, s26, 22 -; GISEL-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 ; GISEL-NEXT: v_writelane_b32 v40, s27, 23 ; GISEL-NEXT: v_writelane_b32 v40, s28, 24 ; GISEL-NEXT: v_writelane_b32 v40, s29, 25 ; GISEL-NEXT: v_writelane_b32 v40, s30, 26 -; GISEL-NEXT: s_mov_b64 s[8:9], s[4:5] ; GISEL-NEXT: v_writelane_b32 v40, s31, 27 +; GISEL-NEXT: s_getpc_b64 s[34:35] +; GISEL-NEXT: s_add_u32 s34, s34, extern_c_func@gotpcrel32@lo+4 +; GISEL-NEXT: s_addc_u32 s35, s35, extern_c_func@gotpcrel32@hi+12 +; GISEL-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 +; GISEL-NEXT: s_mov_b64 s[8:9], s[4:5] ; GISEL-NEXT: s_waitcnt lgkmcnt(0) ; GISEL-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GISEL-NEXT: v_readlane_b32 s31, v40, 27 ; GISEL-NEXT: v_readlane_b32 s30, v40, 26 +; GISEL-NEXT: v_readlane_b32 s31, v40, 27 ; GISEL-NEXT: v_readlane_b32 s29, v40, 25 ; GISEL-NEXT: v_readlane_b32 s28, v40, 24 ; GISEL-NEXT: v_readlane_b32 s27, v40, 23 diff --git a/llvm/test/CodeGen/AMDGPU/gfx-callable-argument-types.ll b/llvm/test/CodeGen/AMDGPU/gfx-callable-argument-types.ll --- a/llvm/test/CodeGen/AMDGPU/gfx-callable-argument-types.ll +++ b/llvm/test/CodeGen/AMDGPU/gfx-callable-argument-types.ll @@ -103,18 +103,18 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: s_addk_i32 s32, 0x400 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 -; GFX9-NEXT: v_mov_b32_e32 v0, 1 ; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s31, 1 +; GFX9-NEXT: v_mov_b32_e32 v0, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_i1@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_i1@rel32@hi+12 ; GFX9-NEXT: buffer_store_byte v0, off, s[0:3], s32 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -136,18 +136,18 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 -; GFX10-NEXT: v_mov_b32_e32 v0, 1 ; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: v_mov_b32_e32 v0, 1 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_i1@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_i1@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: buffer_store_byte v0, off, s[0:3], s32 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -169,20 +169,21 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 -; GFX11-NEXT: v_mov_b32_e32 v0, 1 ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: v_mov_b32_e32 v0, 1 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_i1@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_i1@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 ; GFX11-NEXT: scratch_store_b8 off, v0, s32 ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -205,18 +206,18 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 -; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 1 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 1 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_i1@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_i1@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: scratch_store_byte off, v0, s32 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -242,20 +243,20 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: global_load_ubyte v0, v[0:1], off glc -; GFX9-NEXT: s_waitcnt vmcnt(0) -; GFX9-NEXT: s_addk_i32 s32, 0x400 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 ; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s31, 1 +; GFX9-NEXT: global_load_ubyte v0, v[0:1], off glc +; GFX9-NEXT: s_waitcnt vmcnt(0) ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_i1_signext@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_i1_signext@rel32@hi+12 ; GFX9-NEXT: v_and_b32_e32 v0, 1, v0 ; GFX9-NEXT: buffer_store_byte v0, off, s[0:3], s32 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -277,20 +278,20 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: global_load_ubyte v0, v[0:1], off glc dlc -; GFX10-NEXT: s_waitcnt vmcnt(0) +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: global_load_ubyte v0, v[0:1], off glc dlc +; GFX10-NEXT: s_waitcnt vmcnt(0) ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_i1_signext@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_i1_signext@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: v_and_b32_e32 v0, 1, v0 ; GFX10-NEXT: buffer_store_byte v0, off, s[0:3], s32 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -312,22 +313,23 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: global_load_u8 v0, v[0:1], off glc dlc -; GFX11-NEXT: s_waitcnt vmcnt(0) +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: global_load_u8 v0, v[0:1], off glc dlc +; GFX11-NEXT: s_waitcnt vmcnt(0) ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_i1_signext@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_i1_signext@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 ; GFX11-NEXT: v_and_b32_e32 v0, 1, v0 ; GFX11-NEXT: scratch_store_b8 off, v0, s32 ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -350,20 +352,20 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: global_load_ubyte v0, v[0:1], off glc dlc -; GFX10-SCRATCH-NEXT: s_waitcnt vmcnt(0) +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: global_load_ubyte v0, v[0:1], off glc dlc +; GFX10-SCRATCH-NEXT: s_waitcnt vmcnt(0) ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_i1_signext@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_i1_signext@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: v_and_b32_e32 v0, 1, v0 ; GFX10-SCRATCH-NEXT: scratch_store_byte off, v0, s32 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -390,20 +392,20 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: global_load_ubyte v0, v[0:1], off glc -; GFX9-NEXT: s_waitcnt vmcnt(0) -; GFX9-NEXT: s_addk_i32 s32, 0x400 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 ; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s31, 1 +; GFX9-NEXT: global_load_ubyte v0, v[0:1], off glc +; GFX9-NEXT: s_waitcnt vmcnt(0) ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_i1_zeroext@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_i1_zeroext@rel32@hi+12 ; GFX9-NEXT: v_and_b32_e32 v0, 1, v0 ; GFX9-NEXT: buffer_store_byte v0, off, s[0:3], s32 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -425,20 +427,20 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: global_load_ubyte v0, v[0:1], off glc dlc -; GFX10-NEXT: s_waitcnt vmcnt(0) +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: global_load_ubyte v0, v[0:1], off glc dlc +; GFX10-NEXT: s_waitcnt vmcnt(0) ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_i1_zeroext@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_i1_zeroext@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: v_and_b32_e32 v0, 1, v0 ; GFX10-NEXT: buffer_store_byte v0, off, s[0:3], s32 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -460,22 +462,23 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: global_load_u8 v0, v[0:1], off glc dlc -; GFX11-NEXT: s_waitcnt vmcnt(0) +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: global_load_u8 v0, v[0:1], off glc dlc +; GFX11-NEXT: s_waitcnt vmcnt(0) ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_i1_zeroext@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_i1_zeroext@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 ; GFX11-NEXT: v_and_b32_e32 v0, 1, v0 ; GFX11-NEXT: scratch_store_b8 off, v0, s32 ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -498,20 +501,20 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: global_load_ubyte v0, v[0:1], off glc dlc -; GFX10-SCRATCH-NEXT: s_waitcnt vmcnt(0) +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: global_load_ubyte v0, v[0:1], off glc dlc +; GFX10-SCRATCH-NEXT: s_waitcnt vmcnt(0) ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_i1_zeroext@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_i1_zeroext@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: v_and_b32_e32 v0, 1, v0 ; GFX10-SCRATCH-NEXT: scratch_store_byte off, v0, s32 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -538,17 +541,17 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: s_addk_i32 s32, 0x400 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 -; GFX9-NEXT: v_mov_b32_e32 v0, 0x7b ; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s31, 1 +; GFX9-NEXT: v_mov_b32_e32 v0, 0x7b ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_i8@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_i8@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -570,17 +573,17 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 -; GFX10-NEXT: v_mov_b32_e32 v0, 0x7b ; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: v_mov_b32_e32 v0, 0x7b ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_i8@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_i8@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -602,20 +605,21 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 -; GFX11-NEXT: v_mov_b32_e32 v0, 0x7b ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: v_mov_b32_e32 v0, 0x7b ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_i8@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_i8@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -638,17 +642,17 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 -; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 0x7b ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 0x7b ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_i8@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_i8@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -674,18 +678,18 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: global_load_sbyte v0, v[0:1], off glc -; GFX9-NEXT: s_waitcnt vmcnt(0) -; GFX9-NEXT: s_addk_i32 s32, 0x400 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 ; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s31, 1 +; GFX9-NEXT: global_load_sbyte v0, v[0:1], off glc +; GFX9-NEXT: s_waitcnt vmcnt(0) ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_i8_signext@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_i8_signext@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -707,18 +711,18 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: global_load_sbyte v0, v[0:1], off glc dlc -; GFX10-NEXT: s_waitcnt vmcnt(0) +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: global_load_sbyte v0, v[0:1], off glc dlc +; GFX10-NEXT: s_waitcnt vmcnt(0) ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_i8_signext@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_i8_signext@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -740,21 +744,22 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: global_load_i8 v0, v[0:1], off glc dlc -; GFX11-NEXT: s_waitcnt vmcnt(0) +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: global_load_i8 v0, v[0:1], off glc dlc +; GFX11-NEXT: s_waitcnt vmcnt(0) ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_i8_signext@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_i8_signext@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -777,18 +782,18 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: global_load_sbyte v0, v[0:1], off glc dlc -; GFX10-SCRATCH-NEXT: s_waitcnt vmcnt(0) +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: global_load_sbyte v0, v[0:1], off glc dlc +; GFX10-SCRATCH-NEXT: s_waitcnt vmcnt(0) ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_i8_signext@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_i8_signext@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -815,18 +820,18 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: global_load_ubyte v0, v[0:1], off glc -; GFX9-NEXT: s_waitcnt vmcnt(0) -; GFX9-NEXT: s_addk_i32 s32, 0x400 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 ; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s31, 1 +; GFX9-NEXT: global_load_ubyte v0, v[0:1], off glc +; GFX9-NEXT: s_waitcnt vmcnt(0) ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_i8_zeroext@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_i8_zeroext@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -848,18 +853,18 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: global_load_ubyte v0, v[0:1], off glc dlc -; GFX10-NEXT: s_waitcnt vmcnt(0) +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: global_load_ubyte v0, v[0:1], off glc dlc +; GFX10-NEXT: s_waitcnt vmcnt(0) ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_i8_zeroext@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_i8_zeroext@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -881,21 +886,22 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: global_load_u8 v0, v[0:1], off glc dlc -; GFX11-NEXT: s_waitcnt vmcnt(0) +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: global_load_u8 v0, v[0:1], off glc dlc +; GFX11-NEXT: s_waitcnt vmcnt(0) ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_i8_zeroext@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_i8_zeroext@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -918,18 +924,18 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: global_load_ubyte v0, v[0:1], off glc dlc -; GFX10-SCRATCH-NEXT: s_waitcnt vmcnt(0) +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: global_load_ubyte v0, v[0:1], off glc dlc +; GFX10-SCRATCH-NEXT: s_waitcnt vmcnt(0) ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_i8_zeroext@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_i8_zeroext@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -956,17 +962,17 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: s_addk_i32 s32, 0x400 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 -; GFX9-NEXT: v_mov_b32_e32 v0, 0x7b ; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s31, 1 +; GFX9-NEXT: v_mov_b32_e32 v0, 0x7b ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_i16@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_i16@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -988,17 +994,17 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 -; GFX10-NEXT: v_mov_b32_e32 v0, 0x7b ; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: v_mov_b32_e32 v0, 0x7b ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_i16@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_i16@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -1020,20 +1026,21 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 -; GFX11-NEXT: v_mov_b32_e32 v0, 0x7b ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: v_mov_b32_e32 v0, 0x7b ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_i16@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_i16@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -1056,17 +1063,17 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 -; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 0x7b ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 0x7b +; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_i16@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_i16@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -1092,18 +1099,18 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: global_load_ushort v0, v[0:1], off glc -; GFX9-NEXT: s_waitcnt vmcnt(0) -; GFX9-NEXT: s_addk_i32 s32, 0x400 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 ; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s31, 1 +; GFX9-NEXT: global_load_ushort v0, v[0:1], off glc +; GFX9-NEXT: s_waitcnt vmcnt(0) ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_i16_signext@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_i16_signext@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -1125,18 +1132,18 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: global_load_ushort v0, v[0:1], off glc dlc -; GFX10-NEXT: s_waitcnt vmcnt(0) +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: global_load_ushort v0, v[0:1], off glc dlc +; GFX10-NEXT: s_waitcnt vmcnt(0) ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_i16_signext@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_i16_signext@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -1158,21 +1165,22 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: global_load_u16 v0, v[0:1], off glc dlc -; GFX11-NEXT: s_waitcnt vmcnt(0) +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: global_load_u16 v0, v[0:1], off glc dlc +; GFX11-NEXT: s_waitcnt vmcnt(0) ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_i16_signext@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_i16_signext@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -1195,18 +1203,18 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: global_load_ushort v0, v[0:1], off glc dlc -; GFX10-SCRATCH-NEXT: s_waitcnt vmcnt(0) +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: global_load_ushort v0, v[0:1], off glc dlc +; GFX10-SCRATCH-NEXT: s_waitcnt vmcnt(0) ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_i16_signext@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_i16_signext@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -1233,18 +1241,18 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: global_load_ushort v0, v[0:1], off glc -; GFX9-NEXT: s_waitcnt vmcnt(0) -; GFX9-NEXT: s_addk_i32 s32, 0x400 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 ; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s31, 1 +; GFX9-NEXT: global_load_ushort v0, v[0:1], off glc +; GFX9-NEXT: s_waitcnt vmcnt(0) ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_i16_zeroext@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_i16_zeroext@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -1266,18 +1274,18 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: global_load_ushort v0, v[0:1], off glc dlc -; GFX10-NEXT: s_waitcnt vmcnt(0) +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: global_load_ushort v0, v[0:1], off glc dlc +; GFX10-NEXT: s_waitcnt vmcnt(0) ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_i16_zeroext@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_i16_zeroext@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -1299,21 +1307,22 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: global_load_u16 v0, v[0:1], off glc dlc -; GFX11-NEXT: s_waitcnt vmcnt(0) +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: global_load_u16 v0, v[0:1], off glc dlc +; GFX11-NEXT: s_waitcnt vmcnt(0) ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_i16_zeroext@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_i16_zeroext@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -1336,18 +1345,18 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: global_load_ushort v0, v[0:1], off glc dlc -; GFX10-SCRATCH-NEXT: s_waitcnt vmcnt(0) +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: global_load_ushort v0, v[0:1], off glc dlc +; GFX10-SCRATCH-NEXT: s_waitcnt vmcnt(0) ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_i16_zeroext@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_i16_zeroext@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -1374,17 +1383,17 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: s_addk_i32 s32, 0x400 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 -; GFX9-NEXT: v_mov_b32_e32 v0, 42 ; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s31, 1 +; GFX9-NEXT: v_mov_b32_e32 v0, 42 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_i32@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_i32@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -1406,17 +1415,17 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 -; GFX10-NEXT: v_mov_b32_e32 v0, 42 ; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: v_mov_b32_e32 v0, 42 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_i32@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_i32@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -1438,20 +1447,21 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 -; GFX11-NEXT: v_mov_b32_e32 v0, 42 ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: v_mov_b32_e32 v0, 42 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_i32@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_i32@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -1474,17 +1484,17 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 -; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 42 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 42 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_i32@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_i32@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -1510,18 +1520,18 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: v_mov_b32_e32 v0, 0x7b ; GFX9-NEXT: v_mov_b32_e32 v1, 0 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_i64@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_i64@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -1543,18 +1553,18 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 -; GFX10-NEXT: v_mov_b32_e32 v0, 0x7b -; GFX10-NEXT: v_mov_b32_e32 v1, 0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: v_mov_b32_e32 v0, 0x7b +; GFX10-NEXT: v_mov_b32_e32 v1, 0 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_i64@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_i64@rel32@hi+12 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -1576,20 +1586,21 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 -; GFX11-NEXT: v_dual_mov_b32 v0, 0x7b :: v_dual_mov_b32 v1, 0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: v_dual_mov_b32 v0, 0x7b :: v_dual_mov_b32 v1, 0 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_i64@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_i64@rel32@hi+12 ; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -1612,18 +1623,18 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 -; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 0x7b -; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, 0 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 0x7b +; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, 0 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_i64@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_i64@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -1649,19 +1660,19 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: v_mov_b32_e32 v0, 0 ; GFX9-NEXT: v_mov_b32_e32 v1, 0 ; GFX9-NEXT: global_load_dwordx4 v[0:3], v[0:1], off -; GFX9-NEXT: s_addk_i32 s32, 0x400 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v2i64@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v2i64@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -1683,19 +1694,19 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: v_mov_b32_e32 v0, 0 -; GFX10-NEXT: v_mov_b32_e32 v1, 0 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: v_mov_b32_e32 v0, 0 +; GFX10-NEXT: v_mov_b32_e32 v1, 0 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v2i64@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v2i64@rel32@hi+12 ; GFX10-NEXT: global_load_dwordx4 v[0:3], v[0:1], off -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -1717,22 +1728,22 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: v_mov_b32_e32 v0, 0 -; GFX11-NEXT: v_mov_b32_e32 v1, 0 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: v_mov_b32_e32 v0, 0 +; GFX11-NEXT: v_mov_b32_e32 v1, 0 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v2i64@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v2i64@rel32@hi+12 ; GFX11-NEXT: global_load_b128 v[0:3], v[0:1], off -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -1755,19 +1766,19 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 0 -; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 0 +; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, 0 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v2i64@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v2i64@rel32@hi+12 ; GFX10-SCRATCH-NEXT: global_load_dwordx4 v[0:3], v[0:1], off -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -1794,20 +1805,20 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: v_mov_b32_e32 v0, 1 ; GFX9-NEXT: v_mov_b32_e32 v1, 2 ; GFX9-NEXT: v_mov_b32_e32 v2, 3 ; GFX9-NEXT: v_mov_b32_e32 v3, 4 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v2i64@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v2i64@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -1829,20 +1840,20 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: v_mov_b32_e32 v0, 1 ; GFX10-NEXT: v_mov_b32_e32 v1, 2 ; GFX10-NEXT: v_mov_b32_e32 v2, 3 ; GFX10-NEXT: v_mov_b32_e32 v3, 4 -; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v2i64@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v2i64@rel32@hi+12 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -1864,21 +1875,22 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 -; GFX11-NEXT: v_dual_mov_b32 v0, 1 :: v_dual_mov_b32 v1, 2 -; GFX11-NEXT: v_dual_mov_b32 v2, 3 :: v_dual_mov_b32 v3, 4 ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: v_dual_mov_b32 v0, 1 :: v_dual_mov_b32 v1, 2 +; GFX11-NEXT: v_dual_mov_b32 v2, 3 :: v_dual_mov_b32 v3, 4 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v2i64@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v2i64@rel32@hi+12 ; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -1901,20 +1913,20 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 1 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, 2 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v2, 3 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v3, 4 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v2i64@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v2i64@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -1940,21 +1952,21 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: v_mov_b32_e32 v0, 0 ; GFX9-NEXT: v_mov_b32_e32 v1, 0 ; GFX9-NEXT: global_load_dwordx4 v[0:3], v[0:1], off -; GFX9-NEXT: s_addk_i32 s32, 0x400 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 ; GFX9-NEXT: v_mov_b32_e32 v4, 1 ; GFX9-NEXT: v_mov_b32_e32 v5, 2 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v3i64@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v3i64@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -1976,21 +1988,21 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: v_mov_b32_e32 v0, 0 ; GFX10-NEXT: v_mov_b32_e32 v1, 0 -; GFX10-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-NEXT: v_mov_b32_e32 v4, 1 ; GFX10-NEXT: v_mov_b32_e32 v5, 2 -; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: global_load_dwordx4 v[0:3], v[0:1], off -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v3i64@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v3i64@rel32@hi+12 +; GFX10-NEXT: global_load_dwordx4 v[0:3], v[0:1], off ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -2012,22 +2024,22 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: v_dual_mov_b32 v0, 0 :: v_dual_mov_b32 v5, 2 -; GFX11-NEXT: v_dual_mov_b32 v1, 0 :: v_dual_mov_b32 v4, 1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 -; GFX11-NEXT: global_load_b128 v[0:3], v[0:1], off +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: v_dual_mov_b32 v0, 0 :: v_dual_mov_b32 v5, 2 +; GFX11-NEXT: v_dual_mov_b32 v1, 0 :: v_dual_mov_b32 v4, 1 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v3i64@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v3i64@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: global_load_b128 v[0:3], v[0:1], off ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -2050,21 +2062,21 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 0 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, 0 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v4, 1 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v5, 2 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: global_load_dwordx4 v[0:3], v[0:1], off -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v3i64@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v3i64@rel32@hi+12 +; GFX10-SCRATCH-NEXT: global_load_dwordx4 v[0:3], v[0:1], off ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -2093,23 +2105,23 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: v_mov_b32_e32 v0, 0 ; GFX9-NEXT: v_mov_b32_e32 v1, 0 ; GFX9-NEXT: global_load_dwordx4 v[0:3], v[0:1], off -; GFX9-NEXT: s_addk_i32 s32, 0x400 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 ; GFX9-NEXT: v_mov_b32_e32 v4, 1 ; GFX9-NEXT: v_mov_b32_e32 v5, 2 ; GFX9-NEXT: v_mov_b32_e32 v6, 3 ; GFX9-NEXT: v_mov_b32_e32 v7, 4 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v4i64@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v4i64@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -2131,23 +2143,23 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: v_mov_b32_e32 v0, 0 ; GFX10-NEXT: v_mov_b32_e32 v1, 0 -; GFX10-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-NEXT: v_mov_b32_e32 v4, 1 ; GFX10-NEXT: v_mov_b32_e32 v5, 2 ; GFX10-NEXT: v_mov_b32_e32 v6, 3 -; GFX10-NEXT: global_load_dwordx4 v[0:3], v[0:1], off ; GFX10-NEXT: v_mov_b32_e32 v7, 4 -; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: global_load_dwordx4 v[0:3], v[0:1], off ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v4i64@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v4i64@rel32@hi+12 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -2169,23 +2181,23 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: v_dual_mov_b32 v0, 0 :: v_dual_mov_b32 v5, 2 -; GFX11-NEXT: v_dual_mov_b32 v1, 0 :: v_dual_mov_b32 v4, 1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 -; GFX11-NEXT: v_dual_mov_b32 v6, 3 :: v_dual_mov_b32 v7, 4 -; GFX11-NEXT: global_load_b128 v[0:3], v[0:1], off ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: v_dual_mov_b32 v0, 0 :: v_dual_mov_b32 v5, 2 +; GFX11-NEXT: v_dual_mov_b32 v1, 0 :: v_dual_mov_b32 v4, 1 +; GFX11-NEXT: v_dual_mov_b32 v6, 3 :: v_dual_mov_b32 v7, 4 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v4i64@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v4i64@rel32@hi+12 -; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) +; GFX11-NEXT: global_load_b128 v[0:3], v[0:1], off ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -2208,23 +2220,23 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 0 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, 0 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v4, 1 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v5, 2 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v6, 3 -; GFX10-SCRATCH-NEXT: global_load_dwordx4 v[0:3], v[0:1], off ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v7, 4 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: global_load_dwordx4 v[0:3], v[0:1], off ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v4i64@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v4i64@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -2252,17 +2264,17 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: s_addk_i32 s32, 0x400 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 -; GFX9-NEXT: v_mov_b32_e32 v0, 0x4400 ; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s31, 1 +; GFX9-NEXT: v_mov_b32_e32 v0, 0x4400 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_f16@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_f16@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -2284,17 +2296,17 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 -; GFX10-NEXT: v_mov_b32_e32 v0, 0x4400 ; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: v_mov_b32_e32 v0, 0x4400 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_f16@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_f16@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -2316,20 +2328,21 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 -; GFX11-NEXT: v_mov_b32_e32 v0, 0x4400 ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: v_mov_b32_e32 v0, 0x4400 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_f16@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_f16@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -2352,17 +2365,17 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 -; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 0x4400 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 0x4400 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_f16@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_f16@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -2388,17 +2401,17 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: s_addk_i32 s32, 0x400 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 -; GFX9-NEXT: v_mov_b32_e32 v0, 4.0 ; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s31, 1 +; GFX9-NEXT: v_mov_b32_e32 v0, 4.0 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_f32@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_f32@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -2420,17 +2433,17 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 -; GFX10-NEXT: v_mov_b32_e32 v0, 4.0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: v_mov_b32_e32 v0, 4.0 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_f32@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_f32@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -2452,20 +2465,21 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 -; GFX11-NEXT: v_mov_b32_e32 v0, 4.0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: v_mov_b32_e32 v0, 4.0 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_f32@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_f32@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -2488,17 +2502,17 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 -; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 4.0 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 4.0 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_f32@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_f32@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -2524,18 +2538,18 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: v_mov_b32_e32 v0, 1.0 ; GFX9-NEXT: v_mov_b32_e32 v1, 2.0 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v2f32@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v2f32@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -2557,18 +2571,18 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 -; GFX10-NEXT: v_mov_b32_e32 v0, 1.0 -; GFX10-NEXT: v_mov_b32_e32 v1, 2.0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: v_mov_b32_e32 v0, 1.0 +; GFX10-NEXT: v_mov_b32_e32 v1, 2.0 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v2f32@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v2f32@rel32@hi+12 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -2590,20 +2604,21 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 -; GFX11-NEXT: v_dual_mov_b32 v0, 1.0 :: v_dual_mov_b32 v1, 2.0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: v_dual_mov_b32 v0, 1.0 :: v_dual_mov_b32 v1, 2.0 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v2f32@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v2f32@rel32@hi+12 ; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -2626,18 +2641,18 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 -; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 1.0 -; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, 2.0 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 1.0 +; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, 2.0 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v2f32@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v2f32@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -2663,19 +2678,19 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: v_mov_b32_e32 v0, 1.0 ; GFX9-NEXT: v_mov_b32_e32 v1, 2.0 ; GFX9-NEXT: v_mov_b32_e32 v2, 4.0 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v3f32@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v3f32@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -2697,19 +2712,19 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: v_mov_b32_e32 v0, 1.0 ; GFX10-NEXT: v_mov_b32_e32 v1, 2.0 ; GFX10-NEXT: v_mov_b32_e32 v2, 4.0 -; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v3f32@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v3f32@rel32@hi+12 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -2731,21 +2746,22 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 -; GFX11-NEXT: v_dual_mov_b32 v0, 1.0 :: v_dual_mov_b32 v1, 2.0 -; GFX11-NEXT: v_mov_b32_e32 v2, 4.0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: v_dual_mov_b32 v0, 1.0 :: v_dual_mov_b32 v1, 2.0 +; GFX11-NEXT: v_mov_b32_e32 v2, 4.0 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v3f32@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v3f32@rel32@hi+12 ; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -2768,19 +2784,19 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 1.0 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, 2.0 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v2, 4.0 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v3f32@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v3f32@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -2806,21 +2822,21 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: v_mov_b32_e32 v0, 1.0 ; GFX9-NEXT: v_mov_b32_e32 v1, 2.0 ; GFX9-NEXT: v_mov_b32_e32 v2, 4.0 ; GFX9-NEXT: v_mov_b32_e32 v3, -1.0 ; GFX9-NEXT: v_mov_b32_e32 v4, 0.5 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v5f32@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v5f32@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -2842,21 +2858,21 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: v_mov_b32_e32 v0, 1.0 ; GFX10-NEXT: v_mov_b32_e32 v1, 2.0 ; GFX10-NEXT: v_mov_b32_e32 v2, 4.0 ; GFX10-NEXT: v_mov_b32_e32 v3, -1.0 ; GFX10-NEXT: v_mov_b32_e32 v4, 0.5 -; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v5f32@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v5f32@rel32@hi+12 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -2878,22 +2894,23 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 ; GFX11-NEXT: v_dual_mov_b32 v0, 1.0 :: v_dual_mov_b32 v1, 2.0 ; GFX11-NEXT: v_dual_mov_b32 v2, 4.0 :: v_dual_mov_b32 v3, -1.0 ; GFX11-NEXT: v_mov_b32_e32 v4, 0.5 -; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v5f32@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v5f32@rel32@hi+12 ; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -2916,21 +2933,21 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 1.0 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, 2.0 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v2, 4.0 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v3, -1.0 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v4, 0.5 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v5f32@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v5f32@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -2956,18 +2973,18 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: v_mov_b32_e32 v0, 0 ; GFX9-NEXT: v_mov_b32_e32 v1, 0x40100000 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_f64@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_f64@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -2989,18 +3006,18 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 -; GFX10-NEXT: v_mov_b32_e32 v0, 0 -; GFX10-NEXT: v_mov_b32_e32 v1, 0x40100000 ; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: v_mov_b32_e32 v0, 0 +; GFX10-NEXT: v_mov_b32_e32 v1, 0x40100000 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_f64@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_f64@rel32@hi+12 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -3022,20 +3039,21 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 -; GFX11-NEXT: v_dual_mov_b32 v0, 0 :: v_dual_mov_b32 v1, 0x40100000 ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: v_dual_mov_b32 v0, 0 :: v_dual_mov_b32 v1, 0x40100000 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_f64@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_f64@rel32@hi+12 ; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -3058,18 +3076,18 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 -; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 0 -; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, 0x40100000 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 0 +; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, 0x40100000 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_f64@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_f64@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -3095,20 +3113,20 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: v_mov_b32_e32 v0, 0 ; GFX9-NEXT: v_mov_b32_e32 v1, 2.0 ; GFX9-NEXT: v_mov_b32_e32 v2, 0 ; GFX9-NEXT: v_mov_b32_e32 v3, 0x40100000 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v2f64@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v2f64@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -3130,20 +3148,20 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: v_mov_b32_e32 v0, 0 ; GFX10-NEXT: v_mov_b32_e32 v1, 2.0 ; GFX10-NEXT: v_mov_b32_e32 v2, 0 ; GFX10-NEXT: v_mov_b32_e32 v3, 0x40100000 -; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v2f64@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v2f64@rel32@hi+12 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -3165,21 +3183,22 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 -; GFX11-NEXT: v_dual_mov_b32 v0, 0 :: v_dual_mov_b32 v1, 2.0 -; GFX11-NEXT: v_dual_mov_b32 v2, 0 :: v_dual_mov_b32 v3, 0x40100000 ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: v_dual_mov_b32 v0, 0 :: v_dual_mov_b32 v1, 2.0 +; GFX11-NEXT: v_dual_mov_b32 v2, 0 :: v_dual_mov_b32 v3, 0x40100000 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v2f64@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v2f64@rel32@hi+12 ; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -3202,20 +3221,20 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 0 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, 2.0 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v2, 0 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v3, 0x40100000 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v2f64@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v2f64@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -3241,22 +3260,22 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: v_mov_b32_e32 v0, 0 ; GFX9-NEXT: v_mov_b32_e32 v1, 2.0 ; GFX9-NEXT: v_mov_b32_e32 v2, 0 ; GFX9-NEXT: v_mov_b32_e32 v3, 0x40100000 ; GFX9-NEXT: v_mov_b32_e32 v4, 0 ; GFX9-NEXT: v_mov_b32_e32 v5, 0x40200000 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v3f64@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v3f64@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -3278,22 +3297,22 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: v_mov_b32_e32 v0, 0 ; GFX10-NEXT: v_mov_b32_e32 v1, 2.0 ; GFX10-NEXT: v_mov_b32_e32 v2, 0 ; GFX10-NEXT: v_mov_b32_e32 v3, 0x40100000 ; GFX10-NEXT: v_mov_b32_e32 v4, 0 ; GFX10-NEXT: v_mov_b32_e32 v5, 0x40200000 -; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v3f64@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v3f64@rel32@hi+12 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -3315,22 +3334,23 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 ; GFX11-NEXT: v_dual_mov_b32 v0, 0 :: v_dual_mov_b32 v1, 2.0 ; GFX11-NEXT: v_dual_mov_b32 v2, 0 :: v_dual_mov_b32 v3, 0x40100000 ; GFX11-NEXT: v_dual_mov_b32 v4, 0 :: v_dual_mov_b32 v5, 0x40200000 -; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v3f64@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v3f64@rel32@hi+12 ; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -3353,22 +3373,22 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 0 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, 2.0 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v2, 0 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v3, 0x40100000 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v4, 0 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v5, 0x40200000 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v3f64@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v3f64@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -3394,17 +3414,17 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: global_load_dword v0, v[0:1], off -; GFX9-NEXT: s_addk_i32 s32, 0x400 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 ; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s31, 1 +; GFX9-NEXT: global_load_dword v0, v[0:1], off ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v2i16@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v2i16@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -3426,17 +3446,17 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: global_load_dword v0, v[0:1], off +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: global_load_dword v0, v[0:1], off ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v2i16@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v2i16@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -3458,20 +3478,21 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: global_load_b32 v0, v[0:1], off +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: global_load_b32 v0, v[0:1], off ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v2i16@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v2i16@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -3494,17 +3515,17 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: global_load_dword v0, v[0:1], off +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: global_load_dword v0, v[0:1], off ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v2i16@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v2i16@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -3531,17 +3552,17 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: global_load_dwordx2 v[0:1], v[0:1], off -; GFX9-NEXT: s_addk_i32 s32, 0x400 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 ; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s31, 1 +; GFX9-NEXT: global_load_dwordx2 v[0:1], v[0:1], off ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v3i16@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v3i16@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -3563,17 +3584,17 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: global_load_dwordx2 v[0:1], v[0:1], off +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: global_load_dwordx2 v[0:1], v[0:1], off ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v3i16@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v3i16@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -3595,20 +3616,21 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: global_load_b64 v[0:1], v[0:1], off +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: global_load_b64 v[0:1], v[0:1], off ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v3i16@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v3i16@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -3631,17 +3653,17 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: global_load_dwordx2 v[0:1], v[0:1], off +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: global_load_dwordx2 v[0:1], v[0:1], off ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v3i16@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v3i16@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -3668,17 +3690,17 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: global_load_dwordx2 v[0:1], v[0:1], off -; GFX9-NEXT: s_addk_i32 s32, 0x400 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 ; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s31, 1 +; GFX9-NEXT: global_load_dwordx2 v[0:1], v[0:1], off ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v3f16@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v3f16@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -3700,17 +3722,17 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: global_load_dwordx2 v[0:1], v[0:1], off +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: global_load_dwordx2 v[0:1], v[0:1], off ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v3f16@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v3f16@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -3732,20 +3754,21 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: global_load_b64 v[0:1], v[0:1], off +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: global_load_b64 v[0:1], v[0:1], off ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v3f16@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v3f16@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -3768,17 +3791,17 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: global_load_dwordx2 v[0:1], v[0:1], off +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: global_load_dwordx2 v[0:1], v[0:1], off ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v3f16@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v3f16@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -3805,18 +3828,18 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: v_mov_b32_e32 v0, 0x20001 ; GFX9-NEXT: v_mov_b32_e32 v1, 3 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v3i16@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v3i16@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -3838,18 +3861,18 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 -; GFX10-NEXT: v_mov_b32_e32 v0, 0x20001 -; GFX10-NEXT: v_mov_b32_e32 v1, 3 ; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: v_mov_b32_e32 v0, 0x20001 +; GFX10-NEXT: v_mov_b32_e32 v1, 3 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v3i16@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v3i16@rel32@hi+12 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -3871,20 +3894,21 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 -; GFX11-NEXT: v_dual_mov_b32 v0, 0x20001 :: v_dual_mov_b32 v1, 3 ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: v_dual_mov_b32 v0, 0x20001 :: v_dual_mov_b32 v1, 3 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v3i16@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v3i16@rel32@hi+12 ; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -3907,18 +3931,18 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 -; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 0x20001 -; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, 3 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 0x20001 +; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, 3 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v3i16@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v3i16@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -3944,18 +3968,18 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: v_mov_b32_e32 v0, 0x40003c00 ; GFX9-NEXT: v_mov_b32_e32 v1, 0x4400 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v3f16@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v3f16@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -3977,18 +4001,18 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 -; GFX10-NEXT: v_mov_b32_e32 v0, 0x40003c00 -; GFX10-NEXT: v_mov_b32_e32 v1, 0x4400 ; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: v_mov_b32_e32 v0, 0x40003c00 +; GFX10-NEXT: v_mov_b32_e32 v1, 0x4400 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v3f16@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v3f16@rel32@hi+12 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -4010,21 +4034,22 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 -; GFX11-NEXT: v_mov_b32_e32 v0, 0x40003c00 -; GFX11-NEXT: v_mov_b32_e32 v1, 0x4400 ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: v_mov_b32_e32 v0, 0x40003c00 +; GFX11-NEXT: v_mov_b32_e32 v1, 0x4400 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v3f16@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v3f16@rel32@hi+12 ; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -4047,18 +4072,18 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 -; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 0x40003c00 -; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, 0x4400 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 0x40003c00 +; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, 0x4400 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v3f16@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v3f16@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -4084,17 +4109,17 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: global_load_dwordx2 v[0:1], v[0:1], off -; GFX9-NEXT: s_addk_i32 s32, 0x400 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 ; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s31, 1 +; GFX9-NEXT: global_load_dwordx2 v[0:1], v[0:1], off ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v4i16@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v4i16@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -4116,17 +4141,17 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: global_load_dwordx2 v[0:1], v[0:1], off +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: global_load_dwordx2 v[0:1], v[0:1], off ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v4i16@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v4i16@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -4148,20 +4173,21 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: global_load_b64 v[0:1], v[0:1], off +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: global_load_b64 v[0:1], v[0:1], off ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v4i16@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v4i16@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -4184,17 +4210,17 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: global_load_dwordx2 v[0:1], v[0:1], off +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: global_load_dwordx2 v[0:1], v[0:1], off ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v4i16@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v4i16@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -4221,18 +4247,18 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: v_mov_b32_e32 v0, 0x20001 ; GFX9-NEXT: v_mov_b32_e32 v1, 0x40003 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v4i16@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v4i16@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -4254,18 +4280,18 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 -; GFX10-NEXT: v_mov_b32_e32 v0, 0x20001 -; GFX10-NEXT: v_mov_b32_e32 v1, 0x40003 ; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: v_mov_b32_e32 v0, 0x20001 +; GFX10-NEXT: v_mov_b32_e32 v1, 0x40003 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v4i16@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v4i16@rel32@hi+12 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -4287,21 +4313,22 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 -; GFX11-NEXT: v_mov_b32_e32 v0, 0x20001 -; GFX11-NEXT: v_mov_b32_e32 v1, 0x40003 ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: v_mov_b32_e32 v0, 0x20001 +; GFX11-NEXT: v_mov_b32_e32 v1, 0x40003 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v4i16@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v4i16@rel32@hi+12 ; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -4324,18 +4351,18 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 -; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 0x20001 -; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, 0x40003 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 0x20001 +; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, 0x40003 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v4i16@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v4i16@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -4361,17 +4388,17 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: global_load_dword v0, v[0:1], off -; GFX9-NEXT: s_addk_i32 s32, 0x400 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 ; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s31, 1 +; GFX9-NEXT: global_load_dword v0, v[0:1], off ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v2f16@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v2f16@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -4393,17 +4420,17 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: global_load_dword v0, v[0:1], off +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: global_load_dword v0, v[0:1], off ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v2f16@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v2f16@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -4425,20 +4452,21 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: global_load_b32 v0, v[0:1], off +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: global_load_b32 v0, v[0:1], off ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v2f16@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v2f16@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -4461,17 +4489,17 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: global_load_dword v0, v[0:1], off +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: global_load_dword v0, v[0:1], off ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v2f16@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v2f16@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -4498,17 +4526,17 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: global_load_dwordx2 v[0:1], v[0:1], off -; GFX9-NEXT: s_addk_i32 s32, 0x400 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 ; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s31, 1 +; GFX9-NEXT: global_load_dwordx2 v[0:1], v[0:1], off ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v2i32@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v2i32@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -4530,17 +4558,17 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: global_load_dwordx2 v[0:1], v[0:1], off +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: global_load_dwordx2 v[0:1], v[0:1], off ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v2i32@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v2i32@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -4562,20 +4590,21 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: global_load_b64 v[0:1], v[0:1], off +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: global_load_b64 v[0:1], v[0:1], off ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v2i32@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v2i32@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -4598,17 +4627,17 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: global_load_dwordx2 v[0:1], v[0:1], off +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: global_load_dwordx2 v[0:1], v[0:1], off ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v2i32@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v2i32@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -4635,18 +4664,18 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: v_mov_b32_e32 v0, 1 ; GFX9-NEXT: v_mov_b32_e32 v1, 2 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v2i32@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v2i32@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -4668,18 +4697,18 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 -; GFX10-NEXT: v_mov_b32_e32 v0, 1 -; GFX10-NEXT: v_mov_b32_e32 v1, 2 ; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: v_mov_b32_e32 v0, 1 +; GFX10-NEXT: v_mov_b32_e32 v1, 2 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v2i32@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v2i32@rel32@hi+12 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -4701,20 +4730,21 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 -; GFX11-NEXT: v_dual_mov_b32 v0, 1 :: v_dual_mov_b32 v1, 2 ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: v_dual_mov_b32 v0, 1 :: v_dual_mov_b32 v1, 2 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v2i32@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v2i32@rel32@hi+12 ; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -4737,18 +4767,18 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 -; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 1 -; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, 2 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 1 +; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, 2 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v2i32@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v2i32@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -4774,19 +4804,19 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: v_mov_b32_e32 v0, 3 ; GFX9-NEXT: v_mov_b32_e32 v1, 4 ; GFX9-NEXT: v_mov_b32_e32 v2, 5 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v3i32@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v3i32@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -4808,19 +4838,19 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: v_mov_b32_e32 v0, 3 ; GFX10-NEXT: v_mov_b32_e32 v1, 4 ; GFX10-NEXT: v_mov_b32_e32 v2, 5 -; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v3i32@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v3i32@rel32@hi+12 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -4842,21 +4872,22 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 -; GFX11-NEXT: v_dual_mov_b32 v0, 3 :: v_dual_mov_b32 v1, 4 -; GFX11-NEXT: v_mov_b32_e32 v2, 5 ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: v_dual_mov_b32 v0, 3 :: v_dual_mov_b32 v1, 4 +; GFX11-NEXT: v_mov_b32_e32 v2, 5 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v3i32@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v3i32@rel32@hi+12 ; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -4879,19 +4910,19 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 3 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, 4 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v2, 5 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v3i32@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v3i32@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -4917,20 +4948,20 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: v_mov_b32_e32 v0, 3 ; GFX9-NEXT: v_mov_b32_e32 v1, 4 ; GFX9-NEXT: v_mov_b32_e32 v2, 5 ; GFX9-NEXT: v_mov_b32_e32 v3, 6 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v3i32_i32@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v3i32_i32@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -4952,20 +4983,20 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: v_mov_b32_e32 v0, 3 ; GFX10-NEXT: v_mov_b32_e32 v1, 4 ; GFX10-NEXT: v_mov_b32_e32 v2, 5 ; GFX10-NEXT: v_mov_b32_e32 v3, 6 -; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v3i32_i32@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v3i32_i32@rel32@hi+12 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -4987,21 +5018,22 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 -; GFX11-NEXT: v_dual_mov_b32 v0, 3 :: v_dual_mov_b32 v1, 4 -; GFX11-NEXT: v_dual_mov_b32 v2, 5 :: v_dual_mov_b32 v3, 6 ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: v_dual_mov_b32 v0, 3 :: v_dual_mov_b32 v1, 4 +; GFX11-NEXT: v_dual_mov_b32 v2, 5 :: v_dual_mov_b32 v3, 6 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v3i32_i32@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v3i32_i32@rel32@hi+12 ; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -5024,20 +5056,20 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 3 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, 4 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v2, 5 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v3, 6 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v3i32_i32@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v3i32_i32@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -5063,17 +5095,17 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: global_load_dwordx4 v[0:3], v[0:1], off -; GFX9-NEXT: s_addk_i32 s32, 0x400 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 ; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s31, 1 +; GFX9-NEXT: global_load_dwordx4 v[0:3], v[0:1], off ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v4i32@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v4i32@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -5095,17 +5127,17 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: global_load_dwordx4 v[0:3], v[0:1], off +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: global_load_dwordx4 v[0:3], v[0:1], off ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v4i32@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v4i32@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -5127,20 +5159,21 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: global_load_b128 v[0:3], v[0:1], off +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: global_load_b128 v[0:3], v[0:1], off ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v4i32@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v4i32@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -5163,17 +5196,17 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: global_load_dwordx4 v[0:3], v[0:1], off +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: global_load_dwordx4 v[0:3], v[0:1], off ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v4i32@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v4i32@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -5200,20 +5233,20 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: v_mov_b32_e32 v0, 1 ; GFX9-NEXT: v_mov_b32_e32 v1, 2 ; GFX9-NEXT: v_mov_b32_e32 v2, 3 ; GFX9-NEXT: v_mov_b32_e32 v3, 4 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v4i32@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v4i32@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -5235,20 +5268,20 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: v_mov_b32_e32 v0, 1 ; GFX10-NEXT: v_mov_b32_e32 v1, 2 ; GFX10-NEXT: v_mov_b32_e32 v2, 3 ; GFX10-NEXT: v_mov_b32_e32 v3, 4 -; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v4i32@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v4i32@rel32@hi+12 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -5270,21 +5303,22 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 -; GFX11-NEXT: v_dual_mov_b32 v0, 1 :: v_dual_mov_b32 v1, 2 -; GFX11-NEXT: v_dual_mov_b32 v2, 3 :: v_dual_mov_b32 v3, 4 ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: v_dual_mov_b32 v0, 1 :: v_dual_mov_b32 v1, 2 +; GFX11-NEXT: v_dual_mov_b32 v2, 3 :: v_dual_mov_b32 v3, 4 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v4i32@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v4i32@rel32@hi+12 ; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -5307,20 +5341,20 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 1 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, 2 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v2, 3 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v3, 4 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v4i32@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v4i32@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -5346,21 +5380,21 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s30, 0 -; GFX9-NEXT: v_mov_b32_e32 v0, 1 +; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s31, 1 +; GFX9-NEXT: v_mov_b32_e32 v0, 1 ; GFX9-NEXT: v_mov_b32_e32 v1, 2 ; GFX9-NEXT: v_mov_b32_e32 v2, 3 ; GFX9-NEXT: v_mov_b32_e32 v3, 4 ; GFX9-NEXT: v_mov_b32_e32 v4, 5 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v5i32@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v5i32@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -5382,21 +5416,21 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: v_mov_b32_e32 v0, 1 ; GFX10-NEXT: v_mov_b32_e32 v1, 2 ; GFX10-NEXT: v_mov_b32_e32 v2, 3 ; GFX10-NEXT: v_mov_b32_e32 v3, 4 ; GFX10-NEXT: v_mov_b32_e32 v4, 5 -; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v5i32@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v5i32@rel32@hi+12 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -5418,22 +5452,23 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 ; GFX11-NEXT: v_dual_mov_b32 v0, 1 :: v_dual_mov_b32 v1, 2 ; GFX11-NEXT: v_dual_mov_b32 v2, 3 :: v_dual_mov_b32 v3, 4 ; GFX11-NEXT: v_mov_b32_e32 v4, 5 -; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v5i32@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v5i32@rel32@hi+12 ; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -5456,21 +5491,21 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 1 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, 2 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v2, 3 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v3, 4 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v4, 5 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v5i32@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v5i32@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -5497,20 +5532,20 @@ ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] ; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 ; GFX9-NEXT: v_mov_b32_e32 v8, 0 -; GFX9-NEXT: s_addk_i32 s32, 0x400 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 ; GFX9-NEXT: s_waitcnt lgkmcnt(0) ; GFX9-NEXT: global_load_dwordx4 v[0:3], v8, s[34:35] ; GFX9-NEXT: global_load_dwordx4 v[4:7], v8, s[34:35] offset:16 -; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v8i32@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v8i32@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -5533,21 +5568,22 @@ ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 ; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 -; GFX10-NEXT: v_mov_b32_e32 v8, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 +; GFX10-NEXT: v_mov_b32_e32 v8, 0 ; GFX10-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-NEXT: s_clause 0x1 ; GFX10-NEXT: global_load_dwordx4 v[0:3], v8, s[34:35] ; GFX10-NEXT: global_load_dwordx4 v[4:7], v8, s[34:35] offset:16 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v8i32@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v8i32@rel32@hi+12 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -5569,25 +5605,26 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 ; GFX11-NEXT: v_writelane_b32 v41, s0, 0 -; GFX11-NEXT: s_load_b64 s[0:1], s[0:1], 0x0 -; GFX11-NEXT: v_mov_b32_e32 v4, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: s_load_b64 s[0:1], s[0:1], 0x0 +; GFX11-NEXT: v_mov_b32_e32 v4, 0 ; GFX11-NEXT: s_waitcnt lgkmcnt(0) ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: global_load_b128 v[0:3], v4, s[0:1] ; GFX11-NEXT: global_load_b128 v[4:7], v4, s[0:1] offset:16 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v8i32@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v8i32@rel32@hi+12 ; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -5611,21 +5648,22 @@ ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x0 -; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v8, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x0 +; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v8, 0 ; GFX10-SCRATCH-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-SCRATCH-NEXT: s_clause 0x1 ; GFX10-SCRATCH-NEXT: global_load_dwordx4 v[0:3], v8, s[0:1] ; GFX10-SCRATCH-NEXT: global_load_dwordx4 v[4:7], v8, s[0:1] offset:16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v8i32@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v8i32@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -5653,8 +5691,10 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: v_mov_b32_e32 v0, 1 ; GFX9-NEXT: v_mov_b32_e32 v1, 2 ; GFX9-NEXT: v_mov_b32_e32 v2, 3 @@ -5663,14 +5703,12 @@ ; GFX9-NEXT: v_mov_b32_e32 v5, 6 ; GFX9-NEXT: v_mov_b32_e32 v6, 7 ; GFX9-NEXT: v_mov_b32_e32 v7, 8 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v8i32@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v8i32@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -5692,7 +5730,10 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: v_mov_b32_e32 v0, 1 ; GFX10-NEXT: v_mov_b32_e32 v1, 2 ; GFX10-NEXT: v_mov_b32_e32 v2, 3 @@ -5701,15 +5742,12 @@ ; GFX10-NEXT: v_mov_b32_e32 v5, 6 ; GFX10-NEXT: v_mov_b32_e32 v6, 7 ; GFX10-NEXT: v_mov_b32_e32 v7, 8 -; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v8i32@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v8i32@rel32@hi+12 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -5731,23 +5769,24 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 ; GFX11-NEXT: v_dual_mov_b32 v0, 1 :: v_dual_mov_b32 v1, 2 ; GFX11-NEXT: v_dual_mov_b32 v2, 3 :: v_dual_mov_b32 v3, 4 ; GFX11-NEXT: v_dual_mov_b32 v4, 5 :: v_dual_mov_b32 v5, 6 ; GFX11-NEXT: v_dual_mov_b32 v6, 7 :: v_dual_mov_b32 v7, 8 -; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v8i32@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v8i32@rel32@hi+12 ; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -5770,7 +5809,10 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 1 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, 2 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v2, 3 @@ -5779,15 +5821,12 @@ ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v5, 6 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v6, 7 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v7, 8 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v8i32@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v8i32@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -5814,22 +5853,22 @@ ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] ; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 ; GFX9-NEXT: v_mov_b32_e32 v16, 0 -; GFX9-NEXT: s_addk_i32 s32, 0x400 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 ; GFX9-NEXT: s_waitcnt lgkmcnt(0) ; GFX9-NEXT: global_load_dwordx4 v[0:3], v16, s[34:35] ; GFX9-NEXT: global_load_dwordx4 v[4:7], v16, s[34:35] offset:16 ; GFX9-NEXT: global_load_dwordx4 v[8:11], v16, s[34:35] offset:32 ; GFX9-NEXT: global_load_dwordx4 v[12:15], v16, s[34:35] offset:48 -; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v16i32@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v16i32@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -5852,23 +5891,24 @@ ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 ; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 -; GFX10-NEXT: v_mov_b32_e32 v16, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 +; GFX10-NEXT: v_mov_b32_e32 v16, 0 ; GFX10-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-NEXT: s_clause 0x3 ; GFX10-NEXT: global_load_dwordx4 v[0:3], v16, s[34:35] ; GFX10-NEXT: global_load_dwordx4 v[4:7], v16, s[34:35] offset:16 ; GFX10-NEXT: global_load_dwordx4 v[8:11], v16, s[34:35] offset:32 ; GFX10-NEXT: global_load_dwordx4 v[12:15], v16, s[34:35] offset:48 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v16i32@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v16i32@rel32@hi+12 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -5890,27 +5930,28 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 ; GFX11-NEXT: v_writelane_b32 v41, s0, 0 -; GFX11-NEXT: s_load_b64 s[0:1], s[0:1], 0x0 -; GFX11-NEXT: v_mov_b32_e32 v12, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: s_load_b64 s[0:1], s[0:1], 0x0 +; GFX11-NEXT: v_mov_b32_e32 v12, 0 ; GFX11-NEXT: s_waitcnt lgkmcnt(0) ; GFX11-NEXT: s_clause 0x3 ; GFX11-NEXT: global_load_b128 v[0:3], v12, s[0:1] ; GFX11-NEXT: global_load_b128 v[4:7], v12, s[0:1] offset:16 ; GFX11-NEXT: global_load_b128 v[8:11], v12, s[0:1] offset:32 ; GFX11-NEXT: global_load_b128 v[12:15], v12, s[0:1] offset:48 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v16i32@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v16i32@rel32@hi+12 ; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -5934,23 +5975,24 @@ ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x0 -; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v16, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x0 +; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v16, 0 ; GFX10-SCRATCH-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-SCRATCH-NEXT: s_clause 0x3 ; GFX10-SCRATCH-NEXT: global_load_dwordx4 v[0:3], v16, s[0:1] ; GFX10-SCRATCH-NEXT: global_load_dwordx4 v[4:7], v16, s[0:1] offset:16 ; GFX10-SCRATCH-NEXT: global_load_dwordx4 v[8:11], v16, s[0:1] offset:32 ; GFX10-SCRATCH-NEXT: global_load_dwordx4 v[12:15], v16, s[0:1] offset:48 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v16i32@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v16i32@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -5979,10 +6021,11 @@ ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] ; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 ; GFX9-NEXT: v_mov_b32_e32 v28, 0 -; GFX9-NEXT: s_addk_i32 s32, 0x400 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 ; GFX9-NEXT: s_waitcnt lgkmcnt(0) ; GFX9-NEXT: global_load_dwordx4 v[0:3], v28, s[34:35] ; GFX9-NEXT: global_load_dwordx4 v[4:7], v28, s[34:35] offset:16 @@ -5993,13 +6036,12 @@ ; GFX9-NEXT: global_load_dwordx4 v[24:27], v28, s[34:35] offset:96 ; GFX9-NEXT: s_nop 0 ; GFX9-NEXT: global_load_dwordx4 v[28:31], v28, s[34:35] offset:112 -; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v32i32@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v32i32@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -6022,10 +6064,11 @@ ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 ; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 -; GFX10-NEXT: v_mov_b32_e32 v32, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 +; GFX10-NEXT: v_mov_b32_e32 v32, 0 ; GFX10-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-NEXT: s_clause 0x7 ; GFX10-NEXT: global_load_dwordx4 v[0:3], v32, s[34:35] @@ -6036,13 +6079,13 @@ ; GFX10-NEXT: global_load_dwordx4 v[20:23], v32, s[34:35] offset:80 ; GFX10-NEXT: global_load_dwordx4 v[24:27], v32, s[34:35] offset:96 ; GFX10-NEXT: global_load_dwordx4 v[28:31], v32, s[34:35] offset:112 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v32i32@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v32i32@rel32@hi+12 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -6064,13 +6107,15 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 ; GFX11-NEXT: v_writelane_b32 v41, s0, 0 -; GFX11-NEXT: s_load_b64 s[0:1], s[0:1], 0x0 -; GFX11-NEXT: v_mov_b32_e32 v28, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: s_load_b64 s[0:1], s[0:1], 0x0 +; GFX11-NEXT: v_mov_b32_e32 v28, 0 ; GFX11-NEXT: s_waitcnt lgkmcnt(0) ; GFX11-NEXT: s_clause 0x7 ; GFX11-NEXT: global_load_b128 v[0:3], v28, s[0:1] @@ -6081,14 +6126,13 @@ ; GFX11-NEXT: global_load_b128 v[20:23], v28, s[0:1] offset:80 ; GFX11-NEXT: global_load_b128 v[24:27], v28, s[0:1] offset:96 ; GFX11-NEXT: global_load_b128 v[28:31], v28, s[0:1] offset:112 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v32i32@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v32i32@rel32@hi+12 ; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -6112,10 +6156,11 @@ ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x0 -; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v32, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x0 +; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v32, 0 ; GFX10-SCRATCH-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-SCRATCH-NEXT: s_clause 0x7 ; GFX10-SCRATCH-NEXT: global_load_dwordx4 v[0:3], v32, s[0:1] @@ -6126,13 +6171,13 @@ ; GFX10-SCRATCH-NEXT: global_load_dwordx4 v[20:23], v32, s[0:1] offset:80 ; GFX10-SCRATCH-NEXT: global_load_dwordx4 v[24:27], v32, s[0:1] offset:96 ; GFX10-SCRATCH-NEXT: global_load_dwordx4 v[28:31], v32, s[0:1] offset:112 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v32i32@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v32i32@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -6161,10 +6206,12 @@ ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] ; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 ; GFX9-NEXT: v_mov_b32_e32 v28, 0 ; GFX9-NEXT: global_load_dword v32, v[0:1], off -; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: s_waitcnt lgkmcnt(0) ; GFX9-NEXT: global_load_dwordx4 v[0:3], v28, s[34:35] ; GFX9-NEXT: global_load_dwordx4 v[4:7], v28, s[34:35] offset:16 @@ -6175,16 +6222,14 @@ ; GFX9-NEXT: global_load_dwordx4 v[24:27], v28, s[34:35] offset:96 ; GFX9-NEXT: s_nop 0 ; GFX9-NEXT: global_load_dwordx4 v[28:31], v28, s[34:35] offset:112 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v32i32_i32@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v32i32_i32@rel32@hi+12 ; GFX9-NEXT: s_waitcnt vmcnt(8) ; GFX9-NEXT: buffer_store_dword v32, off, s[0:3], s32 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -6207,10 +6252,11 @@ ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 ; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 -; GFX10-NEXT: v_mov_b32_e32 v32, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 +; GFX10-NEXT: v_mov_b32_e32 v32, 0 ; GFX10-NEXT: global_load_dword v33, v[0:1], off ; GFX10-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-NEXT: s_clause 0x7 @@ -6222,15 +6268,15 @@ ; GFX10-NEXT: global_load_dwordx4 v[20:23], v32, s[34:35] offset:80 ; GFX10-NEXT: global_load_dwordx4 v[24:27], v32, s[34:35] offset:96 ; GFX10-NEXT: global_load_dwordx4 v[28:31], v32, s[34:35] offset:112 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v32i32_i32@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v32i32_i32@rel32@hi+12 ; GFX10-NEXT: s_waitcnt vmcnt(8) ; GFX10-NEXT: buffer_store_dword v33, off, s[0:3], s32 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -6252,13 +6298,15 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 ; GFX11-NEXT: v_writelane_b32 v41, s0, 0 -; GFX11-NEXT: s_load_b64 s[0:1], s[0:1], 0x0 -; GFX11-NEXT: v_mov_b32_e32 v28, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: s_load_b64 s[0:1], s[0:1], 0x0 +; GFX11-NEXT: v_mov_b32_e32 v28, 0 ; GFX11-NEXT: global_load_b32 v32, v[0:1], off ; GFX11-NEXT: s_waitcnt lgkmcnt(0) ; GFX11-NEXT: s_clause 0x7 @@ -6270,15 +6318,14 @@ ; GFX11-NEXT: global_load_b128 v[20:23], v28, s[0:1] offset:80 ; GFX11-NEXT: global_load_b128 v[24:27], v28, s[0:1] offset:96 ; GFX11-NEXT: global_load_b128 v[28:31], v28, s[0:1] offset:112 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v32i32_i32@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v32i32_i32@rel32@hi+12 ; GFX11-NEXT: s_waitcnt vmcnt(8) ; GFX11-NEXT: scratch_store_b32 off, v32, s32 ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -6302,10 +6349,11 @@ ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x0 -; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v32, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x0 +; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v32, 0 ; GFX10-SCRATCH-NEXT: global_load_dword v33, v[0:1], off ; GFX10-SCRATCH-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-SCRATCH-NEXT: s_clause 0x7 @@ -6317,15 +6365,15 @@ ; GFX10-SCRATCH-NEXT: global_load_dwordx4 v[20:23], v32, s[0:1] offset:80 ; GFX10-SCRATCH-NEXT: global_load_dwordx4 v[24:27], v32, s[0:1] offset:96 ; GFX10-SCRATCH-NEXT: global_load_dwordx4 v[28:31], v32, s[0:1] offset:112 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v32i32_i32@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v32i32_i32@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_waitcnt vmcnt(8) ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v33, s32 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -6354,14 +6402,14 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 offset:8 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v43, off, s[0:3], s33 offset:12 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v43, s34, 0 ; GFX9-NEXT: s_addk_i32 s32, 0x800 ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v42, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: v_mov_b32_e32 v41, v0 ; GFX9-NEXT: v_mov_b32_e32 v0, 42 -; GFX9-NEXT: v_writelane_b32 v43, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: v_mov_b32_e32 v42, v1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_i32_func_i32@rel32@lo+4 @@ -6371,8 +6419,8 @@ ; GFX9-NEXT: s_waitcnt vmcnt(0) ; GFX9-NEXT: buffer_load_dword v42, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX9-NEXT: buffer_load_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Reload -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v43, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 offset:8 ; 4-byte Folded Reload @@ -6394,14 +6442,14 @@ ; GFX10-NEXT: buffer_store_dword v43, off, s[0:3], s33 offset:12 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v43, s34, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x400 ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: buffer_store_dword v42, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: v_mov_b32_e32 v41, v0 ; GFX10-NEXT: v_mov_b32_e32 v0, 42 -; GFX10-NEXT: s_addk_i32 s32, 0x400 -; GFX10-NEXT: v_writelane_b32 v43, s34, 0 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: v_mov_b32_e32 v42, v1 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_i32_func_i32@rel32@lo+4 @@ -6412,8 +6460,8 @@ ; GFX10-NEXT: s_clause 0x1 ; GFX10-NEXT: buffer_load_dword v42, off, s[0:3], s33 ; GFX10-NEXT: buffer_load_dword v41, off, s[0:3], s33 offset:4 -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v43, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -6435,17 +6483,19 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 offset:8 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v43, s33 offset:12 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v43, s0, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 32 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v42, s33 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 ; GFX11-NEXT: v_dual_mov_b32 v42, v1 :: v_dual_mov_b32 v41, v0 ; GFX11-NEXT: v_mov_b32_e32 v0, 42 -; GFX11-NEXT: s_add_i32 s32, s32, 32 -; GFX11-NEXT: v_writelane_b32 v43, s0, 0 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_i32_func_i32@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_i32_func_i32@rel32@hi+12 @@ -6456,8 +6506,8 @@ ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_load_b32 v42, off, s33 ; GFX11-NEXT: scratch_load_b32 v41, off, s33 offset:4 -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v43, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -6480,14 +6530,14 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v43, s33 offset:12 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v43, s0, 0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 32 ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v42, s33 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v41, v0 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 42 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 32 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v43, s0, 0 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v42, v1 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_i32_func_i32@rel32@lo+4 @@ -6498,8 +6548,8 @@ ; GFX10-SCRATCH-NEXT: s_clause 0x1 ; GFX10-SCRATCH-NEXT: scratch_load_dword v42, off, s33 ; GFX10-SCRATCH-NEXT: scratch_load_dword v41, off, s33 offset:4 -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v43, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -6527,20 +6577,20 @@ ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] ; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 ; GFX9-NEXT: v_mov_b32_e32 v2, 0 -; GFX9-NEXT: s_addk_i32 s32, 0x400 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 ; GFX9-NEXT: s_waitcnt lgkmcnt(0) ; GFX9-NEXT: global_load_ubyte v0, v2, s[34:35] ; GFX9-NEXT: global_load_dword v1, v2, s[34:35] offset:4 -; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_struct_i8_i32@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_struct_i8_i32@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -6563,21 +6613,22 @@ ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 ; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 -; GFX10-NEXT: v_mov_b32_e32 v2, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 +; GFX10-NEXT: v_mov_b32_e32 v2, 0 ; GFX10-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-NEXT: s_clause 0x1 ; GFX10-NEXT: global_load_ubyte v0, v2, s[34:35] ; GFX10-NEXT: global_load_dword v1, v2, s[34:35] offset:4 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_struct_i8_i32@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_struct_i8_i32@rel32@hi+12 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -6599,25 +6650,26 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 ; GFX11-NEXT: v_writelane_b32 v41, s0, 0 -; GFX11-NEXT: s_load_b64 s[0:1], s[0:1], 0x0 -; GFX11-NEXT: v_mov_b32_e32 v1, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: s_load_b64 s[0:1], s[0:1], 0x0 +; GFX11-NEXT: v_mov_b32_e32 v1, 0 ; GFX11-NEXT: s_waitcnt lgkmcnt(0) ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: global_load_u8 v0, v1, s[0:1] ; GFX11-NEXT: global_load_b32 v1, v1, s[0:1] offset:4 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_struct_i8_i32@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_struct_i8_i32@rel32@hi+12 ; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -6641,21 +6693,22 @@ ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x0 -; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v2, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x0 +; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v2, 0 ; GFX10-SCRATCH-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-SCRATCH-NEXT: s_clause 0x1 ; GFX10-SCRATCH-NEXT: global_load_ubyte v0, v2, s[0:1] ; GFX10-SCRATCH-NEXT: global_load_dword v1, v2, s[0:1] offset:4 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_struct_i8_i32@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_struct_i8_i32@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -6683,21 +6736,21 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 offset:8 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:12 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x800 +; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: v_mov_b32_e32 v0, 3 ; GFX9-NEXT: buffer_store_byte v0, off, s[0:3], s33 ; GFX9-NEXT: v_mov_b32_e32 v0, 8 -; GFX9-NEXT: s_addk_i32 s32, 0x800 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 ; GFX9-NEXT: buffer_store_dword v0, off, s[0:3], s33 offset:4 ; GFX9-NEXT: v_lshrrev_b32_e64 v0, 6, s33 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_byval_struct_i8_i32@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_byval_struct_i8_i32@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 offset:8 ; 4-byte Folded Reload @@ -6719,21 +6772,21 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:12 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: v_mov_b32_e32 v0, 3 -; GFX10-NEXT: v_mov_b32_e32 v1, 8 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-NEXT: s_addk_i32 s32, 0x400 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: buffer_store_byte v0, off, s[0:3], s33 -; GFX10-NEXT: buffer_store_dword v1, off, s[0:3], s33 offset:4 -; GFX10-NEXT: v_lshrrev_b32_e64 v0, 5, s33 ; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: v_mov_b32_e32 v0, 3 +; GFX10-NEXT: v_mov_b32_e32 v1, 8 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_byval_struct_i8_i32@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_byval_struct_i8_i32@rel32@hi+12 +; GFX10-NEXT: buffer_store_byte v0, off, s[0:3], s33 +; GFX10-NEXT: buffer_store_dword v1, off, s[0:3], s33 offset:4 +; GFX10-NEXT: v_lshrrev_b32_e64 v0, 5, s33 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -6755,24 +6808,24 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 offset:8 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:12 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: v_dual_mov_b32 v0, 3 :: v_dual_mov_b32 v1, 8 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 ; GFX11-NEXT: s_add_i32 s32, s32, 32 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 -; GFX11-NEXT: s_clause 0x1 -; GFX11-NEXT: scratch_store_b8 off, v0, s33 -; GFX11-NEXT: scratch_store_b32 off, v1, s33 offset:4 -; GFX11-NEXT: v_mov_b32_e32 v0, s33 ; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: v_dual_mov_b32 v0, 3 :: v_dual_mov_b32 v1, 8 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_byval_struct_i8_i32@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_byval_struct_i8_i32@rel32@hi+12 -; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) +; GFX11-NEXT: s_clause 0x1 +; GFX11-NEXT: scratch_store_b8 off, v0, s33 +; GFX11-NEXT: scratch_store_b32 off, v1, s33 offset:4 +; GFX11-NEXT: v_mov_b32_e32 v0, s33 ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -6795,21 +6848,21 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:12 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 3 -; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, 8 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 32 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: scratch_store_byte off, v0, s33 -; GFX10-SCRATCH-NEXT: scratch_store_dword off, v1, s33 offset:4 -; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, s33 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 3 +; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, 8 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_byval_struct_i8_i32@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_byval_struct_i8_i32@rel32@hi+12 +; GFX10-SCRATCH-NEXT: scratch_store_byte off, v0, s33 +; GFX10-SCRATCH-NEXT: scratch_store_dword off, v1, s33 offset:4 +; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, s33 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -6840,25 +6893,25 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 offset:16 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:20 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x800 +; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: v_mov_b32_e32 v0, 3 ; GFX9-NEXT: buffer_store_byte v0, off, s[0:3], s33 ; GFX9-NEXT: v_mov_b32_e32 v0, 8 ; GFX9-NEXT: buffer_store_dword v0, off, s[0:3], s33 offset:4 ; GFX9-NEXT: v_lshrrev_b32_e64 v0, 6, s33 -; GFX9-NEXT: s_addk_i32 s32, 0x800 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 ; GFX9-NEXT: v_add_u32_e32 v0, 8, v0 ; GFX9-NEXT: v_lshrrev_b32_e64 v1, 6, s33 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_sret_struct_i8_i32_byval_struct_i8_i32@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_sret_struct_i8_i32_byval_struct_i8_i32@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] ; GFX9-NEXT: buffer_load_ubyte v0, off, s[0:3], s33 offset:8 ; GFX9-NEXT: buffer_load_dword v1, off, s[0:3], s33 offset:12 -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_waitcnt vmcnt(0) ; GFX9-NEXT: global_store_byte v[0:1], v0, off @@ -6885,26 +6938,26 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:20 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: v_mov_b32_e32 v0, 3 -; GFX10-NEXT: v_mov_b32_e32 v1, 8 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-NEXT: s_addk_i32 s32, 0x400 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: buffer_store_byte v0, off, s[0:3], s33 -; GFX10-NEXT: buffer_store_dword v1, off, s[0:3], s33 offset:4 -; GFX10-NEXT: v_lshrrev_b32_e64 v0, 5, s33 -; GFX10-NEXT: v_lshrrev_b32_e64 v1, 5, s33 ; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: v_mov_b32_e32 v0, 3 +; GFX10-NEXT: v_mov_b32_e32 v1, 8 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_sret_struct_i8_i32_byval_struct_i8_i32@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_sret_struct_i8_i32_byval_struct_i8_i32@rel32@hi+12 +; GFX10-NEXT: buffer_store_byte v0, off, s[0:3], s33 +; GFX10-NEXT: buffer_store_dword v1, off, s[0:3], s33 offset:4 +; GFX10-NEXT: v_lshrrev_b32_e64 v0, 5, s33 +; GFX10-NEXT: v_lshrrev_b32_e64 v1, 5, s33 ; GFX10-NEXT: v_add_nc_u32_e32 v0, 8, v0 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] ; GFX10-NEXT: s_clause 0x1 ; GFX10-NEXT: buffer_load_ubyte v0, off, s[0:3], s33 offset:8 ; GFX10-NEXT: buffer_load_dword v1, off, s[0:3], s33 offset:12 -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_waitcnt vmcnt(0) ; GFX10-NEXT: global_store_byte v[0:1], v0, off @@ -6931,27 +6984,28 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 offset:16 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:20 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: v_dual_mov_b32 v0, 3 :: v_dual_mov_b32 v1, 8 -; GFX11-NEXT: s_add_i32 s32, s32, 32 ; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: v_writelane_b32 v40, s30, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 32 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: v_dual_mov_b32 v0, 3 :: v_dual_mov_b32 v1, 8 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_sret_struct_i8_i32_byval_struct_i8_i32@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_sret_struct_i8_i32_byval_struct_i8_i32@rel32@hi+12 ; GFX11-NEXT: s_add_i32 vcc_lo, s33, 8 -; GFX11-NEXT: v_writelane_b32 v40, s30, 0 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b8 off, v0, s33 ; GFX11-NEXT: scratch_store_b32 off, v1, s33 offset:4 ; GFX11-NEXT: v_dual_mov_b32 v0, vcc_lo :: v_dual_mov_b32 v1, s33 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_load_u8 v0, off, s33 offset:8 ; GFX11-NEXT: scratch_load_b32 v1, off, s33 offset:12 -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_waitcnt vmcnt(0) ; GFX11-NEXT: global_store_b8 v[0:1], v0, off dlc @@ -6979,26 +7033,26 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:20 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 3 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 32 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 3 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, 8 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_sret_struct_i8_i32_byval_struct_i8_i32@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_sret_struct_i8_i32_byval_struct_i8_i32@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_add_i32 vcc_lo, s33, 8 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-SCRATCH-NEXT: scratch_store_byte off, v0, s33 ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v1, s33 offset:4 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, vcc_lo ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, s33 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] ; GFX10-SCRATCH-NEXT: s_clause 0x1 ; GFX10-SCRATCH-NEXT: scratch_load_ubyte v0, off, s33 offset:8 ; GFX10-SCRATCH-NEXT: scratch_load_dword v1, off, s33 offset:12 -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_waitcnt vmcnt(0) ; GFX10-SCRATCH-NEXT: global_store_byte v[0:1], v0, off @@ -7043,11 +7097,11 @@ ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] ; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 -; GFX9-NEXT: v_mov_b32_e32 v0, 0 -; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s31, 1 +; GFX9-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 +; GFX9-NEXT: v_mov_b32_e32 v0, 0 ; GFX9-NEXT: s_waitcnt lgkmcnt(0) ; GFX9-NEXT: global_load_dwordx4 v[0:3], v0, s[34:35] ; GFX9-NEXT: s_getpc_b64 s[34:35] @@ -7073,8 +7127,8 @@ ; GFX9-NEXT: v_mov_b32_e32 v2, v17 ; GFX9-NEXT: v_mov_b32_e32 v3, v18 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -7097,11 +7151,11 @@ ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 ; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 -; GFX10-NEXT: v_mov_b32_e32 v0, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 +; GFX10-NEXT: v_mov_b32_e32 v0, 0 ; GFX10-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-NEXT: global_load_dwordx4 v[0:3], v0, s[34:35] ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 @@ -7128,8 +7182,8 @@ ; GFX10-NEXT: v_mov_b32_e32 v2, v17 ; GFX10-NEXT: v_mov_b32_e32 v3, v18 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -7151,14 +7205,15 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 ; GFX11-NEXT: v_writelane_b32 v41, s0, 0 -; GFX11-NEXT: s_load_b64 s[0:1], s[0:1], 0x0 -; GFX11-NEXT: v_mov_b32_e32 v0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: s_load_b64 s[0:1], s[0:1], 0x0 +; GFX11-NEXT: v_mov_b32_e32 v0, 0 ; GFX11-NEXT: s_waitcnt lgkmcnt(0) ; GFX11-NEXT: global_load_b128 v[0:3], v0, s[0:1] ; GFX11-NEXT: s_getpc_b64 s[0:1] @@ -7182,8 +7237,8 @@ ; GFX11-NEXT: v_dual_mov_b32 v12, v3 :: v_dual_mov_b32 v3, v18 ; GFX11-NEXT: v_dual_mov_b32 v1, v16 :: v_dual_mov_b32 v2, v17 ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -7207,11 +7262,11 @@ ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x0 -; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x0 +; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 0 ; GFX10-SCRATCH-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-SCRATCH-NEXT: global_load_dwordx4 v[0:3], v0, s[0:1] ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 @@ -7238,8 +7293,8 @@ ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v2, v17 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v3, v18 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -7266,42 +7321,42 @@ ; GFX9-NEXT: s_or_saveexec_b64 s[4:5], -1 ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 offset:24 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[4:5] +; GFX9-NEXT: s_addk_i32 s32, 0x800 +; GFX9-NEXT: v_writelane_b32 v40, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s35, 1 +; GFX9-NEXT: v_writelane_b32 v40, s36, 2 +; GFX9-NEXT: v_writelane_b32 v40, s37, 3 +; GFX9-NEXT: v_writelane_b32 v40, s38, 4 +; GFX9-NEXT: v_writelane_b32 v40, s39, 5 +; GFX9-NEXT: v_writelane_b32 v40, s40, 6 +; GFX9-NEXT: v_writelane_b32 v40, s41, 7 +; GFX9-NEXT: v_writelane_b32 v40, s42, 8 +; GFX9-NEXT: v_writelane_b32 v40, s43, 9 +; GFX9-NEXT: v_writelane_b32 v40, s44, 10 +; GFX9-NEXT: v_writelane_b32 v40, s45, 11 +; GFX9-NEXT: v_writelane_b32 v40, s46, 12 +; GFX9-NEXT: v_writelane_b32 v40, s47, 13 +; GFX9-NEXT: v_writelane_b32 v40, s48, 14 +; GFX9-NEXT: v_writelane_b32 v40, s49, 15 +; GFX9-NEXT: v_writelane_b32 v40, s50, 16 +; GFX9-NEXT: v_writelane_b32 v40, s51, 17 +; GFX9-NEXT: v_writelane_b32 v40, s52, 18 +; GFX9-NEXT: v_writelane_b32 v40, s53, 19 +; GFX9-NEXT: v_writelane_b32 v40, s54, 20 +; GFX9-NEXT: v_writelane_b32 v40, s55, 21 +; GFX9-NEXT: v_writelane_b32 v40, s56, 22 +; GFX9-NEXT: v_writelane_b32 v40, s57, 23 +; GFX9-NEXT: v_writelane_b32 v40, s58, 24 +; GFX9-NEXT: v_writelane_b32 v40, s59, 25 +; GFX9-NEXT: v_writelane_b32 v40, s60, 26 +; GFX9-NEXT: v_writelane_b32 v40, s61, 27 +; GFX9-NEXT: v_writelane_b32 v40, s62, 28 +; GFX9-NEXT: v_writelane_b32 v40, s63, 29 +; GFX9-NEXT: v_writelane_b32 v40, s30, 30 +; GFX9-NEXT: v_writelane_b32 v40, s31, 31 ; GFX9-NEXT: buffer_load_dword v32, off, s[0:3], s33 offset:20 ; GFX9-NEXT: buffer_load_dword v33, off, s[0:3], s33 offset:16 ; GFX9-NEXT: buffer_load_dword v31, off, s[0:3], s33 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 1 -; GFX9-NEXT: v_writelane_b32 v40, s34, 2 -; GFX9-NEXT: v_writelane_b32 v40, s35, 3 -; GFX9-NEXT: v_writelane_b32 v40, s36, 4 -; GFX9-NEXT: v_writelane_b32 v40, s37, 5 -; GFX9-NEXT: v_writelane_b32 v40, s38, 6 -; GFX9-NEXT: v_writelane_b32 v40, s39, 7 -; GFX9-NEXT: v_writelane_b32 v40, s40, 8 -; GFX9-NEXT: v_writelane_b32 v40, s41, 9 -; GFX9-NEXT: v_writelane_b32 v40, s42, 10 -; GFX9-NEXT: v_writelane_b32 v40, s43, 11 -; GFX9-NEXT: v_writelane_b32 v40, s44, 12 -; GFX9-NEXT: v_writelane_b32 v40, s45, 13 -; GFX9-NEXT: v_writelane_b32 v40, s46, 14 -; GFX9-NEXT: v_writelane_b32 v40, s47, 15 -; GFX9-NEXT: v_writelane_b32 v40, s48, 16 -; GFX9-NEXT: v_writelane_b32 v40, s49, 17 -; GFX9-NEXT: v_writelane_b32 v40, s50, 18 -; GFX9-NEXT: v_writelane_b32 v40, s51, 19 -; GFX9-NEXT: v_writelane_b32 v40, s52, 20 -; GFX9-NEXT: v_writelane_b32 v40, s53, 21 -; GFX9-NEXT: v_writelane_b32 v40, s54, 22 -; GFX9-NEXT: v_writelane_b32 v40, s55, 23 -; GFX9-NEXT: v_writelane_b32 v40, s56, 24 -; GFX9-NEXT: v_writelane_b32 v40, s57, 25 -; GFX9-NEXT: v_writelane_b32 v40, s58, 26 -; GFX9-NEXT: v_writelane_b32 v40, s59, 27 -; GFX9-NEXT: v_writelane_b32 v40, s60, 28 -; GFX9-NEXT: v_writelane_b32 v40, s61, 29 -; GFX9-NEXT: s_addk_i32 s32, 0x800 -; GFX9-NEXT: v_writelane_b32 v40, s62, 30 -; GFX9-NEXT: v_writelane_b32 v40, s63, 31 ; GFX9-NEXT: s_getpc_b64 s[4:5] ; GFX9-NEXT: s_add_u32 s4, s4, byval_align16_f64_arg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s5, s5, byval_align16_f64_arg@rel32@hi+12 @@ -7310,38 +7365,38 @@ ; GFX9-NEXT: s_waitcnt vmcnt(2) ; GFX9-NEXT: buffer_store_dword v33, off, s[0:3], s32 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[4:5] -; GFX9-NEXT: v_readlane_b32 s63, v40, 31 -; GFX9-NEXT: v_readlane_b32 s62, v40, 30 -; GFX9-NEXT: v_readlane_b32 s61, v40, 29 -; GFX9-NEXT: v_readlane_b32 s60, v40, 28 -; GFX9-NEXT: v_readlane_b32 s59, v40, 27 -; GFX9-NEXT: v_readlane_b32 s58, v40, 26 -; GFX9-NEXT: v_readlane_b32 s57, v40, 25 -; GFX9-NEXT: v_readlane_b32 s56, v40, 24 -; GFX9-NEXT: v_readlane_b32 s55, v40, 23 -; GFX9-NEXT: v_readlane_b32 s54, v40, 22 -; GFX9-NEXT: v_readlane_b32 s53, v40, 21 -; GFX9-NEXT: v_readlane_b32 s52, v40, 20 -; GFX9-NEXT: v_readlane_b32 s51, v40, 19 -; GFX9-NEXT: v_readlane_b32 s50, v40, 18 -; GFX9-NEXT: v_readlane_b32 s49, v40, 17 -; GFX9-NEXT: v_readlane_b32 s48, v40, 16 -; GFX9-NEXT: v_readlane_b32 s47, v40, 15 -; GFX9-NEXT: v_readlane_b32 s46, v40, 14 -; GFX9-NEXT: v_readlane_b32 s45, v40, 13 -; GFX9-NEXT: v_readlane_b32 s44, v40, 12 -; GFX9-NEXT: v_readlane_b32 s43, v40, 11 -; GFX9-NEXT: v_readlane_b32 s42, v40, 10 -; GFX9-NEXT: v_readlane_b32 s41, v40, 9 -; GFX9-NEXT: v_readlane_b32 s40, v40, 8 -; GFX9-NEXT: v_readlane_b32 s39, v40, 7 -; GFX9-NEXT: v_readlane_b32 s38, v40, 6 -; GFX9-NEXT: v_readlane_b32 s37, v40, 5 -; GFX9-NEXT: v_readlane_b32 s36, v40, 4 -; GFX9-NEXT: v_readlane_b32 s35, v40, 3 -; GFX9-NEXT: v_readlane_b32 s34, v40, 2 -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 -; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s30, v40, 30 +; GFX9-NEXT: v_readlane_b32 s31, v40, 31 +; GFX9-NEXT: v_readlane_b32 s63, v40, 29 +; GFX9-NEXT: v_readlane_b32 s62, v40, 28 +; GFX9-NEXT: v_readlane_b32 s61, v40, 27 +; GFX9-NEXT: v_readlane_b32 s60, v40, 26 +; GFX9-NEXT: v_readlane_b32 s59, v40, 25 +; GFX9-NEXT: v_readlane_b32 s58, v40, 24 +; GFX9-NEXT: v_readlane_b32 s57, v40, 23 +; GFX9-NEXT: v_readlane_b32 s56, v40, 22 +; GFX9-NEXT: v_readlane_b32 s55, v40, 21 +; GFX9-NEXT: v_readlane_b32 s54, v40, 20 +; GFX9-NEXT: v_readlane_b32 s53, v40, 19 +; GFX9-NEXT: v_readlane_b32 s52, v40, 18 +; GFX9-NEXT: v_readlane_b32 s51, v40, 17 +; GFX9-NEXT: v_readlane_b32 s50, v40, 16 +; GFX9-NEXT: v_readlane_b32 s49, v40, 15 +; GFX9-NEXT: v_readlane_b32 s48, v40, 14 +; GFX9-NEXT: v_readlane_b32 s47, v40, 13 +; GFX9-NEXT: v_readlane_b32 s46, v40, 12 +; GFX9-NEXT: v_readlane_b32 s45, v40, 11 +; GFX9-NEXT: v_readlane_b32 s44, v40, 10 +; GFX9-NEXT: v_readlane_b32 s43, v40, 9 +; GFX9-NEXT: v_readlane_b32 s42, v40, 8 +; GFX9-NEXT: v_readlane_b32 s41, v40, 7 +; GFX9-NEXT: v_readlane_b32 s40, v40, 6 +; GFX9-NEXT: v_readlane_b32 s39, v40, 5 +; GFX9-NEXT: v_readlane_b32 s38, v40, 4 +; GFX9-NEXT: v_readlane_b32 s37, v40, 3 +; GFX9-NEXT: v_readlane_b32 s36, v40, 2 +; GFX9-NEXT: v_readlane_b32 s35, v40, 1 +; GFX9-NEXT: v_readlane_b32 s34, v40, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[4:5], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 offset:24 ; 4-byte Folded Reload ; GFX9-NEXT: s_mov_b64 exec, s[4:5] @@ -7360,12 +7415,43 @@ ; GFX10-NEXT: buffer_store_dword v40, off, s[0:3], s33 offset:24 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s4 +; GFX10-NEXT: s_addk_i32 s32, 0x400 +; GFX10-NEXT: v_writelane_b32 v40, s34, 0 +; GFX10-NEXT: v_writelane_b32 v40, s35, 1 +; GFX10-NEXT: v_writelane_b32 v40, s36, 2 +; GFX10-NEXT: v_writelane_b32 v40, s37, 3 +; GFX10-NEXT: v_writelane_b32 v40, s38, 4 +; GFX10-NEXT: v_writelane_b32 v40, s39, 5 +; GFX10-NEXT: v_writelane_b32 v40, s40, 6 +; GFX10-NEXT: v_writelane_b32 v40, s41, 7 +; GFX10-NEXT: v_writelane_b32 v40, s42, 8 +; GFX10-NEXT: v_writelane_b32 v40, s43, 9 +; GFX10-NEXT: v_writelane_b32 v40, s44, 10 +; GFX10-NEXT: v_writelane_b32 v40, s45, 11 +; GFX10-NEXT: v_writelane_b32 v40, s46, 12 +; GFX10-NEXT: v_writelane_b32 v40, s47, 13 +; GFX10-NEXT: v_writelane_b32 v40, s48, 14 +; GFX10-NEXT: v_writelane_b32 v40, s49, 15 +; GFX10-NEXT: v_writelane_b32 v40, s50, 16 +; GFX10-NEXT: v_writelane_b32 v40, s51, 17 +; GFX10-NEXT: v_writelane_b32 v40, s52, 18 +; GFX10-NEXT: v_writelane_b32 v40, s53, 19 +; GFX10-NEXT: v_writelane_b32 v40, s54, 20 +; GFX10-NEXT: v_writelane_b32 v40, s55, 21 +; GFX10-NEXT: v_writelane_b32 v40, s56, 22 +; GFX10-NEXT: v_writelane_b32 v40, s57, 23 +; GFX10-NEXT: v_writelane_b32 v40, s58, 24 +; GFX10-NEXT: v_writelane_b32 v40, s59, 25 +; GFX10-NEXT: v_writelane_b32 v40, s60, 26 +; GFX10-NEXT: v_writelane_b32 v40, s61, 27 +; GFX10-NEXT: v_writelane_b32 v40, s62, 28 +; GFX10-NEXT: v_writelane_b32 v40, s63, 29 +; GFX10-NEXT: v_writelane_b32 v40, s30, 30 +; GFX10-NEXT: v_writelane_b32 v40, s31, 31 ; GFX10-NEXT: s_clause 0x2 ; GFX10-NEXT: buffer_load_dword v32, off, s[0:3], s33 offset:20 ; GFX10-NEXT: buffer_load_dword v33, off, s[0:3], s33 offset:16 ; GFX10-NEXT: buffer_load_dword v31, off, s[0:3], s33 -; GFX10-NEXT: v_writelane_b32 v40, s30, 0 -; GFX10-NEXT: s_addk_i32 s32, 0x400 ; GFX10-NEXT: s_getpc_b64 s[4:5] ; GFX10-NEXT: s_add_u32 s4, s4, byval_align16_f64_arg@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s5, s5, byval_align16_f64_arg@rel32@hi+12 @@ -7373,70 +7459,39 @@ ; GFX10-NEXT: buffer_store_dword v32, off, s[0:3], s32 offset:4 ; GFX10-NEXT: s_waitcnt vmcnt(1) ; GFX10-NEXT: buffer_store_dword v33, off, s[0:3], s32 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 -; GFX10-NEXT: v_writelane_b32 v40, s34, 2 -; GFX10-NEXT: v_writelane_b32 v40, s35, 3 -; GFX10-NEXT: v_writelane_b32 v40, s36, 4 -; GFX10-NEXT: v_writelane_b32 v40, s37, 5 -; GFX10-NEXT: v_writelane_b32 v40, s38, 6 -; GFX10-NEXT: v_writelane_b32 v40, s39, 7 -; GFX10-NEXT: v_writelane_b32 v40, s40, 8 -; GFX10-NEXT: v_writelane_b32 v40, s41, 9 -; GFX10-NEXT: v_writelane_b32 v40, s42, 10 -; GFX10-NEXT: v_writelane_b32 v40, s43, 11 -; GFX10-NEXT: v_writelane_b32 v40, s44, 12 -; GFX10-NEXT: v_writelane_b32 v40, s45, 13 -; GFX10-NEXT: v_writelane_b32 v40, s46, 14 -; GFX10-NEXT: v_writelane_b32 v40, s47, 15 -; GFX10-NEXT: v_writelane_b32 v40, s48, 16 -; GFX10-NEXT: v_writelane_b32 v40, s49, 17 -; GFX10-NEXT: v_writelane_b32 v40, s50, 18 -; GFX10-NEXT: v_writelane_b32 v40, s51, 19 -; GFX10-NEXT: v_writelane_b32 v40, s52, 20 -; GFX10-NEXT: v_writelane_b32 v40, s53, 21 -; GFX10-NEXT: v_writelane_b32 v40, s54, 22 -; GFX10-NEXT: v_writelane_b32 v40, s55, 23 -; GFX10-NEXT: v_writelane_b32 v40, s56, 24 -; GFX10-NEXT: v_writelane_b32 v40, s57, 25 -; GFX10-NEXT: v_writelane_b32 v40, s58, 26 -; GFX10-NEXT: v_writelane_b32 v40, s59, 27 -; GFX10-NEXT: v_writelane_b32 v40, s60, 28 -; GFX10-NEXT: v_writelane_b32 v40, s61, 29 -; GFX10-NEXT: v_writelane_b32 v40, s62, 30 -; GFX10-NEXT: v_writelane_b32 v40, s63, 31 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[4:5] -; GFX10-NEXT: v_readlane_b32 s63, v40, 31 -; GFX10-NEXT: v_readlane_b32 s62, v40, 30 -; GFX10-NEXT: v_readlane_b32 s61, v40, 29 -; GFX10-NEXT: v_readlane_b32 s60, v40, 28 -; GFX10-NEXT: v_readlane_b32 s59, v40, 27 -; GFX10-NEXT: v_readlane_b32 s58, v40, 26 -; GFX10-NEXT: v_readlane_b32 s57, v40, 25 -; GFX10-NEXT: v_readlane_b32 s56, v40, 24 -; GFX10-NEXT: v_readlane_b32 s55, v40, 23 -; GFX10-NEXT: v_readlane_b32 s54, v40, 22 -; GFX10-NEXT: v_readlane_b32 s53, v40, 21 -; GFX10-NEXT: v_readlane_b32 s52, v40, 20 -; GFX10-NEXT: v_readlane_b32 s51, v40, 19 -; GFX10-NEXT: v_readlane_b32 s50, v40, 18 -; GFX10-NEXT: v_readlane_b32 s49, v40, 17 -; GFX10-NEXT: v_readlane_b32 s48, v40, 16 -; GFX10-NEXT: v_readlane_b32 s47, v40, 15 -; GFX10-NEXT: v_readlane_b32 s46, v40, 14 -; GFX10-NEXT: v_readlane_b32 s45, v40, 13 -; GFX10-NEXT: v_readlane_b32 s44, v40, 12 -; GFX10-NEXT: v_readlane_b32 s43, v40, 11 -; GFX10-NEXT: v_readlane_b32 s42, v40, 10 -; GFX10-NEXT: v_readlane_b32 s41, v40, 9 -; GFX10-NEXT: v_readlane_b32 s40, v40, 8 -; GFX10-NEXT: v_readlane_b32 s39, v40, 7 -; GFX10-NEXT: v_readlane_b32 s38, v40, 6 -; GFX10-NEXT: v_readlane_b32 s37, v40, 5 -; GFX10-NEXT: v_readlane_b32 s36, v40, 4 -; GFX10-NEXT: v_readlane_b32 s35, v40, 3 -; GFX10-NEXT: v_readlane_b32 s34, v40, 2 -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 -; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s30, v40, 30 +; GFX10-NEXT: v_readlane_b32 s31, v40, 31 +; GFX10-NEXT: v_readlane_b32 s63, v40, 29 +; GFX10-NEXT: v_readlane_b32 s62, v40, 28 +; GFX10-NEXT: v_readlane_b32 s61, v40, 27 +; GFX10-NEXT: v_readlane_b32 s60, v40, 26 +; GFX10-NEXT: v_readlane_b32 s59, v40, 25 +; GFX10-NEXT: v_readlane_b32 s58, v40, 24 +; GFX10-NEXT: v_readlane_b32 s57, v40, 23 +; GFX10-NEXT: v_readlane_b32 s56, v40, 22 +; GFX10-NEXT: v_readlane_b32 s55, v40, 21 +; GFX10-NEXT: v_readlane_b32 s54, v40, 20 +; GFX10-NEXT: v_readlane_b32 s53, v40, 19 +; GFX10-NEXT: v_readlane_b32 s52, v40, 18 +; GFX10-NEXT: v_readlane_b32 s51, v40, 17 +; GFX10-NEXT: v_readlane_b32 s50, v40, 16 +; GFX10-NEXT: v_readlane_b32 s49, v40, 15 +; GFX10-NEXT: v_readlane_b32 s48, v40, 14 +; GFX10-NEXT: v_readlane_b32 s47, v40, 13 +; GFX10-NEXT: v_readlane_b32 s46, v40, 12 +; GFX10-NEXT: v_readlane_b32 s45, v40, 11 +; GFX10-NEXT: v_readlane_b32 s44, v40, 10 +; GFX10-NEXT: v_readlane_b32 s43, v40, 9 +; GFX10-NEXT: v_readlane_b32 s42, v40, 8 +; GFX10-NEXT: v_readlane_b32 s41, v40, 7 +; GFX10-NEXT: v_readlane_b32 s40, v40, 6 +; GFX10-NEXT: v_readlane_b32 s39, v40, 5 +; GFX10-NEXT: v_readlane_b32 s38, v40, 4 +; GFX10-NEXT: v_readlane_b32 s37, v40, 3 +; GFX10-NEXT: v_readlane_b32 s36, v40, 2 +; GFX10-NEXT: v_readlane_b32 s35, v40, 1 +; GFX10-NEXT: v_readlane_b32 s34, v40, 0 ; GFX10-NEXT: s_or_saveexec_b32 s4, -1 ; GFX10-NEXT: buffer_load_dword v40, off, s[0:3], s33 offset:24 ; 4-byte Folded Reload ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 @@ -7455,80 +7510,80 @@ ; GFX11-NEXT: s_or_saveexec_b32 s0, -1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 offset:24 ; 4-byte Folded Spill ; GFX11-NEXT: s_mov_b32 exec_lo, s0 +; GFX11-NEXT: s_add_i32 s32, s32, 32 +; GFX11-NEXT: v_writelane_b32 v40, s34, 0 +; GFX11-NEXT: v_writelane_b32 v40, s35, 1 +; GFX11-NEXT: v_writelane_b32 v40, s36, 2 +; GFX11-NEXT: v_writelane_b32 v40, s37, 3 +; GFX11-NEXT: v_writelane_b32 v40, s38, 4 +; GFX11-NEXT: v_writelane_b32 v40, s39, 5 +; GFX11-NEXT: v_writelane_b32 v40, s40, 6 +; GFX11-NEXT: v_writelane_b32 v40, s41, 7 +; GFX11-NEXT: v_writelane_b32 v40, s42, 8 +; GFX11-NEXT: v_writelane_b32 v40, s43, 9 +; GFX11-NEXT: v_writelane_b32 v40, s44, 10 +; GFX11-NEXT: v_writelane_b32 v40, s45, 11 +; GFX11-NEXT: v_writelane_b32 v40, s46, 12 +; GFX11-NEXT: v_writelane_b32 v40, s47, 13 +; GFX11-NEXT: v_writelane_b32 v40, s48, 14 +; GFX11-NEXT: v_writelane_b32 v40, s49, 15 +; GFX11-NEXT: v_writelane_b32 v40, s50, 16 +; GFX11-NEXT: v_writelane_b32 v40, s51, 17 +; GFX11-NEXT: v_writelane_b32 v40, s52, 18 +; GFX11-NEXT: v_writelane_b32 v40, s53, 19 +; GFX11-NEXT: v_writelane_b32 v40, s54, 20 +; GFX11-NEXT: v_writelane_b32 v40, s55, 21 +; GFX11-NEXT: v_writelane_b32 v40, s56, 22 +; GFX11-NEXT: v_writelane_b32 v40, s57, 23 +; GFX11-NEXT: v_writelane_b32 v40, s58, 24 +; GFX11-NEXT: v_writelane_b32 v40, s59, 25 +; GFX11-NEXT: v_writelane_b32 v40, s60, 26 +; GFX11-NEXT: v_writelane_b32 v40, s61, 27 +; GFX11-NEXT: v_writelane_b32 v40, s62, 28 +; GFX11-NEXT: v_writelane_b32 v40, s63, 29 +; GFX11-NEXT: v_writelane_b32 v40, s30, 30 +; GFX11-NEXT: v_writelane_b32 v40, s31, 31 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_load_b64 v[32:33], off, s33 offset:16 ; GFX11-NEXT: scratch_load_b32 v31, off, s33 -; GFX11-NEXT: v_writelane_b32 v40, s30, 0 -; GFX11-NEXT: s_add_i32 s32, s32, 32 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, byval_align16_f64_arg@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, byval_align16_f64_arg@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 -; GFX11-NEXT: v_writelane_b32 v40, s34, 2 -; GFX11-NEXT: v_writelane_b32 v40, s35, 3 -; GFX11-NEXT: v_writelane_b32 v40, s36, 4 -; GFX11-NEXT: v_writelane_b32 v40, s37, 5 -; GFX11-NEXT: v_writelane_b32 v40, s38, 6 -; GFX11-NEXT: v_writelane_b32 v40, s39, 7 -; GFX11-NEXT: v_writelane_b32 v40, s40, 8 -; GFX11-NEXT: v_writelane_b32 v40, s41, 9 -; GFX11-NEXT: v_writelane_b32 v40, s42, 10 -; GFX11-NEXT: v_writelane_b32 v40, s43, 11 -; GFX11-NEXT: v_writelane_b32 v40, s44, 12 -; GFX11-NEXT: v_writelane_b32 v40, s45, 13 -; GFX11-NEXT: v_writelane_b32 v40, s46, 14 -; GFX11-NEXT: v_writelane_b32 v40, s47, 15 -; GFX11-NEXT: v_writelane_b32 v40, s48, 16 -; GFX11-NEXT: v_writelane_b32 v40, s49, 17 -; GFX11-NEXT: v_writelane_b32 v40, s50, 18 -; GFX11-NEXT: v_writelane_b32 v40, s51, 19 -; GFX11-NEXT: v_writelane_b32 v40, s52, 20 -; GFX11-NEXT: v_writelane_b32 v40, s53, 21 -; GFX11-NEXT: v_writelane_b32 v40, s54, 22 -; GFX11-NEXT: v_writelane_b32 v40, s55, 23 -; GFX11-NEXT: v_writelane_b32 v40, s56, 24 -; GFX11-NEXT: v_writelane_b32 v40, s57, 25 -; GFX11-NEXT: v_writelane_b32 v40, s58, 26 -; GFX11-NEXT: v_writelane_b32 v40, s59, 27 -; GFX11-NEXT: v_writelane_b32 v40, s60, 28 -; GFX11-NEXT: v_writelane_b32 v40, s61, 29 -; GFX11-NEXT: v_writelane_b32 v40, s62, 30 -; GFX11-NEXT: v_writelane_b32 v40, s63, 31 ; GFX11-NEXT: s_waitcnt vmcnt(1) ; GFX11-NEXT: scratch_store_b64 off, v[32:33], s32 ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: v_readlane_b32 s63, v40, 31 -; GFX11-NEXT: v_readlane_b32 s62, v40, 30 -; GFX11-NEXT: v_readlane_b32 s61, v40, 29 -; GFX11-NEXT: v_readlane_b32 s60, v40, 28 -; GFX11-NEXT: v_readlane_b32 s59, v40, 27 -; GFX11-NEXT: v_readlane_b32 s58, v40, 26 -; GFX11-NEXT: v_readlane_b32 s57, v40, 25 -; GFX11-NEXT: v_readlane_b32 s56, v40, 24 -; GFX11-NEXT: v_readlane_b32 s55, v40, 23 -; GFX11-NEXT: v_readlane_b32 s54, v40, 22 -; GFX11-NEXT: v_readlane_b32 s53, v40, 21 -; GFX11-NEXT: v_readlane_b32 s52, v40, 20 -; GFX11-NEXT: v_readlane_b32 s51, v40, 19 -; GFX11-NEXT: v_readlane_b32 s50, v40, 18 -; GFX11-NEXT: v_readlane_b32 s49, v40, 17 -; GFX11-NEXT: v_readlane_b32 s48, v40, 16 -; GFX11-NEXT: v_readlane_b32 s47, v40, 15 -; GFX11-NEXT: v_readlane_b32 s46, v40, 14 -; GFX11-NEXT: v_readlane_b32 s45, v40, 13 -; GFX11-NEXT: v_readlane_b32 s44, v40, 12 -; GFX11-NEXT: v_readlane_b32 s43, v40, 11 -; GFX11-NEXT: v_readlane_b32 s42, v40, 10 -; GFX11-NEXT: v_readlane_b32 s41, v40, 9 -; GFX11-NEXT: v_readlane_b32 s40, v40, 8 -; GFX11-NEXT: v_readlane_b32 s39, v40, 7 -; GFX11-NEXT: v_readlane_b32 s38, v40, 6 -; GFX11-NEXT: v_readlane_b32 s37, v40, 5 -; GFX11-NEXT: v_readlane_b32 s36, v40, 4 -; GFX11-NEXT: v_readlane_b32 s35, v40, 3 -; GFX11-NEXT: v_readlane_b32 s34, v40, 2 -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 -; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s30, v40, 30 +; GFX11-NEXT: v_readlane_b32 s31, v40, 31 +; GFX11-NEXT: v_readlane_b32 s63, v40, 29 +; GFX11-NEXT: v_readlane_b32 s62, v40, 28 +; GFX11-NEXT: v_readlane_b32 s61, v40, 27 +; GFX11-NEXT: v_readlane_b32 s60, v40, 26 +; GFX11-NEXT: v_readlane_b32 s59, v40, 25 +; GFX11-NEXT: v_readlane_b32 s58, v40, 24 +; GFX11-NEXT: v_readlane_b32 s57, v40, 23 +; GFX11-NEXT: v_readlane_b32 s56, v40, 22 +; GFX11-NEXT: v_readlane_b32 s55, v40, 21 +; GFX11-NEXT: v_readlane_b32 s54, v40, 20 +; GFX11-NEXT: v_readlane_b32 s53, v40, 19 +; GFX11-NEXT: v_readlane_b32 s52, v40, 18 +; GFX11-NEXT: v_readlane_b32 s51, v40, 17 +; GFX11-NEXT: v_readlane_b32 s50, v40, 16 +; GFX11-NEXT: v_readlane_b32 s49, v40, 15 +; GFX11-NEXT: v_readlane_b32 s48, v40, 14 +; GFX11-NEXT: v_readlane_b32 s47, v40, 13 +; GFX11-NEXT: v_readlane_b32 s46, v40, 12 +; GFX11-NEXT: v_readlane_b32 s45, v40, 11 +; GFX11-NEXT: v_readlane_b32 s44, v40, 10 +; GFX11-NEXT: v_readlane_b32 s43, v40, 9 +; GFX11-NEXT: v_readlane_b32 s42, v40, 8 +; GFX11-NEXT: v_readlane_b32 s41, v40, 7 +; GFX11-NEXT: v_readlane_b32 s40, v40, 6 +; GFX11-NEXT: v_readlane_b32 s39, v40, 5 +; GFX11-NEXT: v_readlane_b32 s38, v40, 4 +; GFX11-NEXT: v_readlane_b32 s37, v40, 3 +; GFX11-NEXT: v_readlane_b32 s36, v40, 2 +; GFX11-NEXT: v_readlane_b32 s35, v40, 1 +; GFX11-NEXT: v_readlane_b32 s34, v40, 0 ; GFX11-NEXT: s_or_saveexec_b32 s0, -1 ; GFX11-NEXT: scratch_load_b32 v40, off, s33 offset:24 ; 4-byte Folded Reload ; GFX11-NEXT: s_mov_b32 exec_lo, s0 @@ -7547,80 +7602,80 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v40, s33 offset:24 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 32 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s34, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s35, 1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s36, 2 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s37, 3 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s38, 4 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s39, 5 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s40, 6 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s41, 7 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s42, 8 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s43, 9 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s44, 10 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s45, 11 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s46, 12 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s47, 13 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s48, 14 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s49, 15 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s50, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s51, 17 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s52, 18 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s53, 19 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s54, 20 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s55, 21 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s56, 22 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s57, 23 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s58, 24 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s59, 25 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s60, 26 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s61, 27 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s62, 28 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s63, 29 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 30 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 31 ; GFX10-SCRATCH-NEXT: s_clause 0x1 ; GFX10-SCRATCH-NEXT: scratch_load_dwordx2 v[32:33], off, s33 offset:16 ; GFX10-SCRATCH-NEXT: scratch_load_dword v31, off, s33 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 32 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, byval_align16_f64_arg@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, byval_align16_f64_arg@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s34, 2 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s35, 3 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s36, 4 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s37, 5 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s38, 6 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s39, 7 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s40, 8 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s41, 9 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s42, 10 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s43, 11 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s44, 12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s45, 13 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s46, 14 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s47, 15 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s48, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s49, 17 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s50, 18 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s51, 19 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s52, 20 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s53, 21 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s54, 22 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s55, 23 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s56, 24 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s57, 25 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s58, 26 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s59, 27 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s60, 28 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s61, 29 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s62, 30 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s63, 31 ; GFX10-SCRATCH-NEXT: s_waitcnt vmcnt(1) ; GFX10-SCRATCH-NEXT: scratch_store_dwordx2 off, v[32:33], s32 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s63, v40, 31 -; GFX10-SCRATCH-NEXT: v_readlane_b32 s62, v40, 30 -; GFX10-SCRATCH-NEXT: v_readlane_b32 s61, v40, 29 -; GFX10-SCRATCH-NEXT: v_readlane_b32 s60, v40, 28 -; GFX10-SCRATCH-NEXT: v_readlane_b32 s59, v40, 27 -; GFX10-SCRATCH-NEXT: v_readlane_b32 s58, v40, 26 -; GFX10-SCRATCH-NEXT: v_readlane_b32 s57, v40, 25 -; GFX10-SCRATCH-NEXT: v_readlane_b32 s56, v40, 24 -; GFX10-SCRATCH-NEXT: v_readlane_b32 s55, v40, 23 -; GFX10-SCRATCH-NEXT: v_readlane_b32 s54, v40, 22 -; GFX10-SCRATCH-NEXT: v_readlane_b32 s53, v40, 21 -; GFX10-SCRATCH-NEXT: v_readlane_b32 s52, v40, 20 -; GFX10-SCRATCH-NEXT: v_readlane_b32 s51, v40, 19 -; GFX10-SCRATCH-NEXT: v_readlane_b32 s50, v40, 18 -; GFX10-SCRATCH-NEXT: v_readlane_b32 s49, v40, 17 -; GFX10-SCRATCH-NEXT: v_readlane_b32 s48, v40, 16 -; GFX10-SCRATCH-NEXT: v_readlane_b32 s47, v40, 15 -; GFX10-SCRATCH-NEXT: v_readlane_b32 s46, v40, 14 -; GFX10-SCRATCH-NEXT: v_readlane_b32 s45, v40, 13 -; GFX10-SCRATCH-NEXT: v_readlane_b32 s44, v40, 12 -; GFX10-SCRATCH-NEXT: v_readlane_b32 s43, v40, 11 -; GFX10-SCRATCH-NEXT: v_readlane_b32 s42, v40, 10 -; GFX10-SCRATCH-NEXT: v_readlane_b32 s41, v40, 9 -; GFX10-SCRATCH-NEXT: v_readlane_b32 s40, v40, 8 -; GFX10-SCRATCH-NEXT: v_readlane_b32 s39, v40, 7 -; GFX10-SCRATCH-NEXT: v_readlane_b32 s38, v40, 6 -; GFX10-SCRATCH-NEXT: v_readlane_b32 s37, v40, 5 -; GFX10-SCRATCH-NEXT: v_readlane_b32 s36, v40, 4 -; GFX10-SCRATCH-NEXT: v_readlane_b32 s35, v40, 3 -; GFX10-SCRATCH-NEXT: v_readlane_b32 s34, v40, 2 -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 -; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 30 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 31 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s63, v40, 29 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s62, v40, 28 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s61, v40, 27 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s60, v40, 26 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s59, v40, 25 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s58, v40, 24 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s57, v40, 23 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s56, v40, 22 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s55, v40, 21 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s54, v40, 20 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s53, v40, 19 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s52, v40, 18 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s51, v40, 17 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s50, v40, 16 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s49, v40, 15 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s48, v40, 14 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s47, v40, 13 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s46, v40, 12 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s45, v40, 11 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s44, v40, 10 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s43, v40, 9 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s42, v40, 8 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s41, v40, 7 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s40, v40, 6 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s39, v40, 5 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s38, v40, 4 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s37, v40, 3 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s36, v40, 2 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s35, v40, 1 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s34, v40, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s0, -1 ; GFX10-SCRATCH-NEXT: scratch_load_dword v40, off, s33 offset:24 ; 4-byte Folded Reload ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 @@ -7646,18 +7701,18 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: s_addk_i32 s32, 0x400 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 -; GFX9-NEXT: v_mov_b32_e32 v0, 1 ; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s31, 1 +; GFX9-NEXT: v_mov_b32_e32 v0, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_i1_inreg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_i1_inreg@rel32@hi+12 ; GFX9-NEXT: buffer_store_byte v0, off, s[0:3], s32 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -7679,18 +7734,18 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 -; GFX10-NEXT: v_mov_b32_e32 v0, 1 ; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-NEXT: v_mov_b32_e32 v0, 1 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_i1_inreg@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_i1_inreg@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: buffer_store_byte v0, off, s[0:3], s32 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -7712,20 +7767,21 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 -; GFX11-NEXT: v_mov_b32_e32 v0, 1 ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: v_mov_b32_e32 v0, 1 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_i1_inreg@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_i1_inreg@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 ; GFX11-NEXT: scratch_store_b8 off, v0, s32 ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -7748,18 +7804,18 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 -; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 1 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 1 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_i1_inreg@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_i1_inreg@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: scratch_store_byte off, v0, s32 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -7785,18 +7841,18 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: v_writelane_b32 v40, s4, 0 +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s30, 1 -; GFX9-NEXT: s_movk_i32 s4, 0x7b -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s31, 2 +; GFX9-NEXT: s_movk_i32 s4, 0x7b ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_i8_inreg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_i8_inreg@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 2 ; GFX9-NEXT: v_readlane_b32 s30, v40, 1 +; GFX9-NEXT: v_readlane_b32 s31, v40, 2 ; GFX9-NEXT: v_readlane_b32 s4, v40, 0 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 @@ -7819,18 +7875,18 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v40, s4, 0 +; GFX10-NEXT: v_writelane_b32 v40, s30, 1 +; GFX10-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-NEXT: s_movk_i32 s4, 0x7b -; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_i8_inreg@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_i8_inreg@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s30, 1 -; GFX10-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 2 ; GFX10-NEXT: v_readlane_b32 s30, v40, 1 +; GFX10-NEXT: v_readlane_b32 s31, v40, 2 ; GFX10-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 @@ -7853,21 +7909,22 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v40, s4, 0 +; GFX11-NEXT: v_writelane_b32 v40, s30, 1 +; GFX11-NEXT: v_writelane_b32 v40, s31, 2 ; GFX11-NEXT: s_movk_i32 s4, 0x7b -; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_i8_inreg@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_i8_inreg@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s30, 1 -; GFX11-NEXT: v_writelane_b32 v40, s31, 2 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 2 ; GFX11-NEXT: v_readlane_b32 s30, v40, 1 +; GFX11-NEXT: v_readlane_b32 s31, v40, 2 ; GFX11-NEXT: v_readlane_b32 s4, v40, 0 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 @@ -7891,18 +7948,18 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-SCRATCH-NEXT: s_movk_i32 s4, 0x7b -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_i8_inreg@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_i8_inreg@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 1 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 2 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 1 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 2 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 @@ -7929,18 +7986,18 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: v_writelane_b32 v40, s4, 0 +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s30, 1 -; GFX9-NEXT: s_movk_i32 s4, 0x7b -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s31, 2 +; GFX9-NEXT: s_movk_i32 s4, 0x7b ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_i16_inreg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_i16_inreg@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 2 ; GFX9-NEXT: v_readlane_b32 s30, v40, 1 +; GFX9-NEXT: v_readlane_b32 s31, v40, 2 ; GFX9-NEXT: v_readlane_b32 s4, v40, 0 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 @@ -7963,18 +8020,18 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v40, s4, 0 +; GFX10-NEXT: v_writelane_b32 v40, s30, 1 +; GFX10-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-NEXT: s_movk_i32 s4, 0x7b -; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_i16_inreg@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_i16_inreg@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s30, 1 -; GFX10-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 2 ; GFX10-NEXT: v_readlane_b32 s30, v40, 1 +; GFX10-NEXT: v_readlane_b32 s31, v40, 2 ; GFX10-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 @@ -7997,21 +8054,22 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v40, s4, 0 +; GFX11-NEXT: v_writelane_b32 v40, s30, 1 +; GFX11-NEXT: v_writelane_b32 v40, s31, 2 ; GFX11-NEXT: s_movk_i32 s4, 0x7b -; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_i16_inreg@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_i16_inreg@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s30, 1 -; GFX11-NEXT: v_writelane_b32 v40, s31, 2 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 2 ; GFX11-NEXT: v_readlane_b32 s30, v40, 1 +; GFX11-NEXT: v_readlane_b32 s31, v40, 2 ; GFX11-NEXT: v_readlane_b32 s4, v40, 0 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 @@ -8035,18 +8093,18 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-SCRATCH-NEXT: s_movk_i32 s4, 0x7b -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_i16_inreg@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_i16_inreg@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 1 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 2 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 1 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 2 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 @@ -8073,18 +8131,18 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: v_writelane_b32 v40, s4, 0 +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s30, 1 -; GFX9-NEXT: s_mov_b32 s4, 42 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s31, 2 +; GFX9-NEXT: s_mov_b32 s4, 42 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_i32_inreg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_i32_inreg@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 2 ; GFX9-NEXT: v_readlane_b32 s30, v40, 1 +; GFX9-NEXT: v_readlane_b32 s31, v40, 2 ; GFX9-NEXT: v_readlane_b32 s4, v40, 0 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 @@ -8107,18 +8165,18 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v40, s4, 0 +; GFX10-NEXT: v_writelane_b32 v40, s30, 1 +; GFX10-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-NEXT: s_mov_b32 s4, 42 -; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_i32_inreg@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_i32_inreg@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s30, 1 -; GFX10-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 2 ; GFX10-NEXT: v_readlane_b32 s30, v40, 1 +; GFX10-NEXT: v_readlane_b32 s31, v40, 2 ; GFX10-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 @@ -8141,21 +8199,22 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v40, s4, 0 +; GFX11-NEXT: v_writelane_b32 v40, s30, 1 +; GFX11-NEXT: v_writelane_b32 v40, s31, 2 ; GFX11-NEXT: s_mov_b32 s4, 42 -; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_i32_inreg@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_i32_inreg@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s30, 1 -; GFX11-NEXT: v_writelane_b32 v40, s31, 2 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 2 ; GFX11-NEXT: v_readlane_b32 s30, v40, 1 +; GFX11-NEXT: v_readlane_b32 s31, v40, 2 ; GFX11-NEXT: v_readlane_b32 s4, v40, 0 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 @@ -8179,18 +8238,18 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-SCRATCH-NEXT: s_mov_b32 s4, 42 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_i32_inreg@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_i32_inreg@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 1 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 2 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 1 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 2 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 @@ -8217,20 +8276,20 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s5, 1 -; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s30, 2 +; GFX9-NEXT: v_writelane_b32 v40, s31, 3 ; GFX9-NEXT: s_movk_i32 s4, 0x7b ; GFX9-NEXT: s_mov_b32 s5, 0 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 3 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_i64_inreg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_i64_inreg@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 3 ; GFX9-NEXT: v_readlane_b32 s30, v40, 2 +; GFX9-NEXT: v_readlane_b32 s31, v40, 3 ; GFX9-NEXT: v_readlane_b32 s5, v40, 1 ; GFX9-NEXT: v_readlane_b32 s4, v40, 0 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 @@ -8254,20 +8313,20 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v40, s4, 0 +; GFX10-NEXT: v_writelane_b32 v40, s5, 1 +; GFX10-NEXT: v_writelane_b32 v40, s30, 2 +; GFX10-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-NEXT: s_movk_i32 s4, 0x7b -; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: s_mov_b32 s5, 0 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_i64_inreg@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_i64_inreg@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s5, 1 -; GFX10-NEXT: s_mov_b32 s5, 0 -; GFX10-NEXT: v_writelane_b32 v40, s30, 2 -; GFX10-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-NEXT: v_readlane_b32 s30, v40, 2 +; GFX10-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-NEXT: v_readlane_b32 s5, v40, 1 ; GFX10-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 @@ -8291,23 +8350,24 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v40, s4, 0 +; GFX11-NEXT: v_writelane_b32 v40, s5, 1 +; GFX11-NEXT: v_writelane_b32 v40, s30, 2 +; GFX11-NEXT: v_writelane_b32 v40, s31, 3 ; GFX11-NEXT: s_movk_i32 s4, 0x7b -; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: s_mov_b32 s5, 0 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_i64_inreg@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_i64_inreg@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s5, 1 -; GFX11-NEXT: s_mov_b32 s5, 0 -; GFX11-NEXT: v_writelane_b32 v40, s30, 2 -; GFX11-NEXT: v_writelane_b32 v40, s31, 3 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 3 ; GFX11-NEXT: v_readlane_b32 s30, v40, 2 +; GFX11-NEXT: v_readlane_b32 s31, v40, 3 ; GFX11-NEXT: v_readlane_b32 s5, v40, 1 ; GFX11-NEXT: v_readlane_b32 s4, v40, 0 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 @@ -8332,20 +8392,20 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s5, 1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 2 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-SCRATCH-NEXT: s_movk_i32 s4, 0x7b -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: s_mov_b32 s5, 0 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_i64_inreg@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_i64_inreg@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s5, 1 -; GFX10-SCRATCH-NEXT: s_mov_b32 s5, 0 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 2 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 2 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s5, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 @@ -8373,22 +8433,22 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s5, 1 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s6, 2 -; GFX9-NEXT: s_mov_b64 s[34:35], 0 ; GFX9-NEXT: v_writelane_b32 v40, s7, 3 -; GFX9-NEXT: s_load_dwordx4 s[4:7], s[34:35], 0x0 -; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s30, 4 ; GFX9-NEXT: v_writelane_b32 v40, s31, 5 +; GFX9-NEXT: s_mov_b64 s[34:35], 0 +; GFX9-NEXT: s_load_dwordx4 s[4:7], s[34:35], 0x0 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v2i64_inreg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v2i64_inreg@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 5 ; GFX9-NEXT: v_readlane_b32 s30, v40, 4 +; GFX9-NEXT: v_readlane_b32 s31, v40, 5 ; GFX9-NEXT: v_readlane_b32 s7, v40, 3 ; GFX9-NEXT: v_readlane_b32 s6, v40, 2 ; GFX9-NEXT: v_readlane_b32 s5, v40, 1 @@ -8414,22 +8474,22 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: s_mov_b64 s[34:35], 0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-NEXT: v_writelane_b32 v40, s5, 1 ; GFX10-NEXT: v_writelane_b32 v40, s6, 2 ; GFX10-NEXT: v_writelane_b32 v40, s7, 3 +; GFX10-NEXT: v_writelane_b32 v40, s30, 4 +; GFX10-NEXT: v_writelane_b32 v40, s31, 5 +; GFX10-NEXT: s_mov_b64 s[34:35], 0 ; GFX10-NEXT: s_load_dwordx4 s[4:7], s[34:35], 0x0 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v2i64_inreg@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v2i64_inreg@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s30, 4 -; GFX10-NEXT: v_writelane_b32 v40, s31, 5 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 5 ; GFX10-NEXT: v_readlane_b32 s30, v40, 4 +; GFX10-NEXT: v_readlane_b32 s31, v40, 5 ; GFX10-NEXT: v_readlane_b32 s7, v40, 3 ; GFX10-NEXT: v_readlane_b32 s6, v40, 2 ; GFX10-NEXT: v_readlane_b32 s5, v40, 1 @@ -8455,25 +8515,26 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: v_writelane_b32 v40, s4, 0 ; GFX11-NEXT: v_writelane_b32 v41, s0, 0 -; GFX11-NEXT: s_mov_b64 s[0:1], 0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s4, 0 ; GFX11-NEXT: v_writelane_b32 v40, s5, 1 ; GFX11-NEXT: v_writelane_b32 v40, s6, 2 ; GFX11-NEXT: v_writelane_b32 v40, s7, 3 +; GFX11-NEXT: v_writelane_b32 v40, s30, 4 +; GFX11-NEXT: v_writelane_b32 v40, s31, 5 +; GFX11-NEXT: s_mov_b64 s[0:1], 0 ; GFX11-NEXT: s_load_b128 s[4:7], s[0:1], 0x0 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v2i64_inreg@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v2i64_inreg@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s30, 4 -; GFX11-NEXT: v_writelane_b32 v40, s31, 5 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 5 ; GFX11-NEXT: v_readlane_b32 s30, v40, 4 +; GFX11-NEXT: v_readlane_b32 s31, v40, 5 ; GFX11-NEXT: v_readlane_b32 s7, v40, 3 ; GFX11-NEXT: v_readlane_b32 s6, v40, 2 ; GFX11-NEXT: v_readlane_b32 s5, v40, 1 @@ -8500,22 +8561,22 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: s_mov_b64 s[0:1], 0 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s5, 1 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s6, 2 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s7, 3 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 4 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 5 +; GFX10-SCRATCH-NEXT: s_mov_b64 s[0:1], 0 ; GFX10-SCRATCH-NEXT: s_load_dwordx4 s[4:7], s[0:1], 0x0 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v2i64_inreg@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v2i64_inreg@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 4 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 5 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 5 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 4 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 5 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s7, v40, 3 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s6, v40, 2 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s5, v40, 1 @@ -8546,24 +8607,24 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s5, 1 ; GFX9-NEXT: v_writelane_b32 v40, s6, 2 ; GFX9-NEXT: v_writelane_b32 v40, s7, 3 -; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s30, 4 +; GFX9-NEXT: v_writelane_b32 v40, s31, 5 ; GFX9-NEXT: s_mov_b32 s4, 1 ; GFX9-NEXT: s_mov_b32 s5, 2 ; GFX9-NEXT: s_mov_b32 s6, 3 ; GFX9-NEXT: s_mov_b32 s7, 4 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 5 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v2i64_inreg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v2i64_inreg@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 5 ; GFX9-NEXT: v_readlane_b32 s30, v40, 4 +; GFX9-NEXT: v_readlane_b32 s31, v40, 5 ; GFX9-NEXT: v_readlane_b32 s7, v40, 3 ; GFX9-NEXT: v_readlane_b32 s6, v40, 2 ; GFX9-NEXT: v_readlane_b32 s5, v40, 1 @@ -8589,24 +8650,24 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: v_writelane_b32 v40, s4, 0 -; GFX10-NEXT: s_mov_b32 s4, 1 -; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: s_getpc_b64 s[34:35] -; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v2i64_inreg@rel32@lo+4 -; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v2i64_inreg@rel32@hi+12 +; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-NEXT: v_writelane_b32 v40, s5, 1 -; GFX10-NEXT: s_mov_b32 s5, 2 ; GFX10-NEXT: v_writelane_b32 v40, s6, 2 -; GFX10-NEXT: s_mov_b32 s6, 3 ; GFX10-NEXT: v_writelane_b32 v40, s7, 3 -; GFX10-NEXT: s_mov_b32 s7, 4 ; GFX10-NEXT: v_writelane_b32 v40, s30, 4 ; GFX10-NEXT: v_writelane_b32 v40, s31, 5 +; GFX10-NEXT: s_mov_b32 s4, 1 +; GFX10-NEXT: s_mov_b32 s5, 2 +; GFX10-NEXT: s_mov_b32 s6, 3 +; GFX10-NEXT: s_mov_b32 s7, 4 +; GFX10-NEXT: s_getpc_b64 s[34:35] +; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v2i64_inreg@rel32@lo+4 +; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v2i64_inreg@rel32@hi+12 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 5 ; GFX10-NEXT: v_readlane_b32 s30, v40, 4 +; GFX10-NEXT: v_readlane_b32 s31, v40, 5 ; GFX10-NEXT: v_readlane_b32 s7, v40, 3 ; GFX10-NEXT: v_readlane_b32 s6, v40, 2 ; GFX10-NEXT: v_readlane_b32 s5, v40, 1 @@ -8632,27 +8693,28 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: v_writelane_b32 v40, s4, 0 -; GFX11-NEXT: s_mov_b32 s4, 1 -; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v41, s0, 0 -; GFX11-NEXT: s_getpc_b64 s[0:1] -; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v2i64_inreg@rel32@lo+4 -; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v2i64_inreg@rel32@hi+12 +; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s4, 0 ; GFX11-NEXT: v_writelane_b32 v40, s5, 1 -; GFX11-NEXT: s_mov_b32 s5, 2 ; GFX11-NEXT: v_writelane_b32 v40, s6, 2 -; GFX11-NEXT: s_mov_b32 s6, 3 ; GFX11-NEXT: v_writelane_b32 v40, s7, 3 -; GFX11-NEXT: s_mov_b32 s7, 4 ; GFX11-NEXT: v_writelane_b32 v40, s30, 4 ; GFX11-NEXT: v_writelane_b32 v40, s31, 5 +; GFX11-NEXT: s_mov_b32 s4, 1 +; GFX11-NEXT: s_mov_b32 s5, 2 +; GFX11-NEXT: s_mov_b32 s6, 3 +; GFX11-NEXT: s_mov_b32 s7, 4 +; GFX11-NEXT: s_getpc_b64 s[0:1] +; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v2i64_inreg@rel32@lo+4 +; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v2i64_inreg@rel32@hi+12 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 5 ; GFX11-NEXT: v_readlane_b32 s30, v40, 4 +; GFX11-NEXT: v_readlane_b32 s31, v40, 5 ; GFX11-NEXT: v_readlane_b32 s7, v40, 3 ; GFX11-NEXT: v_readlane_b32 s6, v40, 2 ; GFX11-NEXT: v_readlane_b32 s5, v40, 1 @@ -8679,24 +8741,24 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 -; GFX10-SCRATCH-NEXT: s_mov_b32 s4, 1 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] -; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v2i64_inreg@rel32@lo+4 -; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v2i64_inreg@rel32@hi+12 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s5, 1 -; GFX10-SCRATCH-NEXT: s_mov_b32 s5, 2 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s6, 2 -; GFX10-SCRATCH-NEXT: s_mov_b32 s6, 3 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s7, 3 -; GFX10-SCRATCH-NEXT: s_mov_b32 s7, 4 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 4 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 5 +; GFX10-SCRATCH-NEXT: s_mov_b32 s4, 1 +; GFX10-SCRATCH-NEXT: s_mov_b32 s5, 2 +; GFX10-SCRATCH-NEXT: s_mov_b32 s6, 3 +; GFX10-SCRATCH-NEXT: s_mov_b32 s7, 4 +; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] +; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v2i64_inreg@rel32@lo+4 +; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v2i64_inreg@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 5 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 4 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 5 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s7, v40, 3 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s6, v40, 2 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s5, v40, 1 @@ -8726,26 +8788,26 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s5, 1 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s6, 2 -; GFX9-NEXT: s_mov_b64 s[34:35], 0 ; GFX9-NEXT: v_writelane_b32 v40, s7, 3 -; GFX9-NEXT: s_load_dwordx4 s[4:7], s[34:35], 0x0 ; GFX9-NEXT: v_writelane_b32 v40, s8, 4 ; GFX9-NEXT: v_writelane_b32 v40, s9, 5 -; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s30, 6 +; GFX9-NEXT: v_writelane_b32 v40, s31, 7 +; GFX9-NEXT: s_mov_b64 s[34:35], 0 +; GFX9-NEXT: s_load_dwordx4 s[4:7], s[34:35], 0x0 ; GFX9-NEXT: s_mov_b32 s8, 1 ; GFX9-NEXT: s_mov_b32 s9, 2 -; GFX9-NEXT: v_writelane_b32 v40, s31, 7 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v3i64_inreg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v3i64_inreg@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 7 ; GFX9-NEXT: v_readlane_b32 s30, v40, 6 +; GFX9-NEXT: v_readlane_b32 s31, v40, 7 ; GFX9-NEXT: v_readlane_b32 s9, v40, 5 ; GFX9-NEXT: v_readlane_b32 s8, v40, 4 ; GFX9-NEXT: v_readlane_b32 s7, v40, 3 @@ -8773,26 +8835,26 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: s_mov_b64 s[34:35], 0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-NEXT: v_writelane_b32 v40, s5, 1 ; GFX10-NEXT: v_writelane_b32 v40, s6, 2 ; GFX10-NEXT: v_writelane_b32 v40, s7, 3 -; GFX10-NEXT: s_load_dwordx4 s[4:7], s[34:35], 0x0 -; GFX10-NEXT: s_getpc_b64 s[34:35] -; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v3i64_inreg@rel32@lo+4 -; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v3i64_inreg@rel32@hi+12 ; GFX10-NEXT: v_writelane_b32 v40, s8, 4 -; GFX10-NEXT: s_mov_b32 s8, 1 ; GFX10-NEXT: v_writelane_b32 v40, s9, 5 -; GFX10-NEXT: s_mov_b32 s9, 2 ; GFX10-NEXT: v_writelane_b32 v40, s30, 6 ; GFX10-NEXT: v_writelane_b32 v40, s31, 7 +; GFX10-NEXT: s_mov_b64 s[34:35], 0 +; GFX10-NEXT: s_mov_b32 s8, 1 +; GFX10-NEXT: s_load_dwordx4 s[4:7], s[34:35], 0x0 +; GFX10-NEXT: s_mov_b32 s9, 2 +; GFX10-NEXT: s_getpc_b64 s[34:35] +; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v3i64_inreg@rel32@lo+4 +; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v3i64_inreg@rel32@hi+12 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 7 ; GFX10-NEXT: v_readlane_b32 s30, v40, 6 +; GFX10-NEXT: v_readlane_b32 s31, v40, 7 ; GFX10-NEXT: v_readlane_b32 s9, v40, 5 ; GFX10-NEXT: v_readlane_b32 s8, v40, 4 ; GFX10-NEXT: v_readlane_b32 s7, v40, 3 @@ -8820,33 +8882,34 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: v_writelane_b32 v40, s4, 0 ; GFX11-NEXT: v_writelane_b32 v41, s0, 0 -; GFX11-NEXT: s_mov_b64 s[0:1], 0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s4, 0 ; GFX11-NEXT: v_writelane_b32 v40, s5, 1 ; GFX11-NEXT: v_writelane_b32 v40, s6, 2 ; GFX11-NEXT: v_writelane_b32 v40, s7, 3 -; GFX11-NEXT: s_load_b128 s[4:7], s[0:1], 0x0 -; GFX11-NEXT: s_getpc_b64 s[0:1] -; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v3i64_inreg@rel32@lo+4 -; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v3i64_inreg@rel32@hi+12 ; GFX11-NEXT: v_writelane_b32 v40, s8, 4 -; GFX11-NEXT: s_mov_b32 s8, 1 ; GFX11-NEXT: v_writelane_b32 v40, s9, 5 -; GFX11-NEXT: s_mov_b32 s9, 2 ; GFX11-NEXT: v_writelane_b32 v40, s30, 6 ; GFX11-NEXT: v_writelane_b32 v40, s31, 7 -; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 7 -; GFX11-NEXT: v_readlane_b32 s30, v40, 6 -; GFX11-NEXT: v_readlane_b32 s9, v40, 5 -; GFX11-NEXT: v_readlane_b32 s8, v40, 4 -; GFX11-NEXT: v_readlane_b32 s7, v40, 3 -; GFX11-NEXT: v_readlane_b32 s6, v40, 2 +; GFX11-NEXT: s_mov_b64 s[0:1], 0 +; GFX11-NEXT: s_mov_b32 s8, 1 +; GFX11-NEXT: s_load_b128 s[4:7], s[0:1], 0x0 +; GFX11-NEXT: s_mov_b32 s9, 2 +; GFX11-NEXT: s_getpc_b64 s[0:1] +; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v3i64_inreg@rel32@lo+4 +; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v3i64_inreg@rel32@hi+12 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) +; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] +; GFX11-NEXT: v_readlane_b32 s30, v40, 6 +; GFX11-NEXT: v_readlane_b32 s31, v40, 7 +; GFX11-NEXT: v_readlane_b32 s9, v40, 5 +; GFX11-NEXT: v_readlane_b32 s8, v40, 4 +; GFX11-NEXT: v_readlane_b32 s7, v40, 3 +; GFX11-NEXT: v_readlane_b32 s6, v40, 2 ; GFX11-NEXT: v_readlane_b32 s5, v40, 1 ; GFX11-NEXT: v_readlane_b32 s4, v40, 0 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 @@ -8871,26 +8934,26 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: s_mov_b64 s[0:1], 0 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s5, 1 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s6, 2 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s7, 3 -; GFX10-SCRATCH-NEXT: s_load_dwordx4 s[4:7], s[0:1], 0x0 -; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] -; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v3i64_inreg@rel32@lo+4 -; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v3i64_inreg@rel32@hi+12 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s8, 4 -; GFX10-SCRATCH-NEXT: s_mov_b32 s8, 1 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s9, 5 -; GFX10-SCRATCH-NEXT: s_mov_b32 s9, 2 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 6 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 7 +; GFX10-SCRATCH-NEXT: s_mov_b64 s[0:1], 0 +; GFX10-SCRATCH-NEXT: s_mov_b32 s8, 1 +; GFX10-SCRATCH-NEXT: s_load_dwordx4 s[4:7], s[0:1], 0x0 +; GFX10-SCRATCH-NEXT: s_mov_b32 s9, 2 +; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] +; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v3i64_inreg@rel32@lo+4 +; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v3i64_inreg@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 7 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 6 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 7 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s9, v40, 5 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s8, v40, 4 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s7, v40, 3 @@ -8925,30 +8988,30 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s5, 1 ; GFX9-NEXT: v_writelane_b32 v40, s6, 2 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s7, 3 -; GFX9-NEXT: s_mov_b64 s[34:35], 0 ; GFX9-NEXT: v_writelane_b32 v40, s8, 4 -; GFX9-NEXT: s_load_dwordx4 s[4:7], s[34:35], 0x0 ; GFX9-NEXT: v_writelane_b32 v40, s9, 5 ; GFX9-NEXT: v_writelane_b32 v40, s10, 6 ; GFX9-NEXT: v_writelane_b32 v40, s11, 7 -; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s30, 8 +; GFX9-NEXT: v_writelane_b32 v40, s31, 9 +; GFX9-NEXT: s_mov_b64 s[34:35], 0 +; GFX9-NEXT: s_load_dwordx4 s[4:7], s[34:35], 0x0 ; GFX9-NEXT: s_mov_b32 s8, 1 ; GFX9-NEXT: s_mov_b32 s9, 2 ; GFX9-NEXT: s_mov_b32 s10, 3 ; GFX9-NEXT: s_mov_b32 s11, 4 -; GFX9-NEXT: v_writelane_b32 v40, s31, 9 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v4i64_inreg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v4i64_inreg@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 9 ; GFX9-NEXT: v_readlane_b32 s30, v40, 8 +; GFX9-NEXT: v_readlane_b32 s31, v40, 9 ; GFX9-NEXT: v_readlane_b32 s11, v40, 7 ; GFX9-NEXT: v_readlane_b32 s10, v40, 6 ; GFX9-NEXT: v_readlane_b32 s9, v40, 5 @@ -8978,30 +9041,30 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: s_mov_b64 s[34:35], 0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-NEXT: v_writelane_b32 v40, s5, 1 ; GFX10-NEXT: v_writelane_b32 v40, s6, 2 ; GFX10-NEXT: v_writelane_b32 v40, s7, 3 -; GFX10-NEXT: s_load_dwordx4 s[4:7], s[34:35], 0x0 -; GFX10-NEXT: s_getpc_b64 s[34:35] -; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v4i64_inreg@rel32@lo+4 -; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v4i64_inreg@rel32@hi+12 ; GFX10-NEXT: v_writelane_b32 v40, s8, 4 -; GFX10-NEXT: s_mov_b32 s8, 1 ; GFX10-NEXT: v_writelane_b32 v40, s9, 5 -; GFX10-NEXT: s_mov_b32 s9, 2 ; GFX10-NEXT: v_writelane_b32 v40, s10, 6 -; GFX10-NEXT: s_mov_b32 s10, 3 ; GFX10-NEXT: v_writelane_b32 v40, s11, 7 -; GFX10-NEXT: s_mov_b32 s11, 4 ; GFX10-NEXT: v_writelane_b32 v40, s30, 8 ; GFX10-NEXT: v_writelane_b32 v40, s31, 9 +; GFX10-NEXT: s_mov_b64 s[34:35], 0 +; GFX10-NEXT: s_mov_b32 s8, 1 +; GFX10-NEXT: s_load_dwordx4 s[4:7], s[34:35], 0x0 +; GFX10-NEXT: s_mov_b32 s9, 2 +; GFX10-NEXT: s_mov_b32 s10, 3 +; GFX10-NEXT: s_mov_b32 s11, 4 +; GFX10-NEXT: s_getpc_b64 s[34:35] +; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v4i64_inreg@rel32@lo+4 +; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v4i64_inreg@rel32@hi+12 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 9 ; GFX10-NEXT: v_readlane_b32 s30, v40, 8 +; GFX10-NEXT: v_readlane_b32 s31, v40, 9 ; GFX10-NEXT: v_readlane_b32 s11, v40, 7 ; GFX10-NEXT: v_readlane_b32 s10, v40, 6 ; GFX10-NEXT: v_readlane_b32 s9, v40, 5 @@ -9031,33 +9094,34 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: v_writelane_b32 v40, s4, 0 ; GFX11-NEXT: v_writelane_b32 v41, s0, 0 -; GFX11-NEXT: s_mov_b64 s[0:1], 0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s4, 0 ; GFX11-NEXT: v_writelane_b32 v40, s5, 1 ; GFX11-NEXT: v_writelane_b32 v40, s6, 2 ; GFX11-NEXT: v_writelane_b32 v40, s7, 3 -; GFX11-NEXT: s_load_b128 s[4:7], s[0:1], 0x0 -; GFX11-NEXT: s_getpc_b64 s[0:1] -; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v4i64_inreg@rel32@lo+4 -; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v4i64_inreg@rel32@hi+12 ; GFX11-NEXT: v_writelane_b32 v40, s8, 4 -; GFX11-NEXT: s_mov_b32 s8, 1 ; GFX11-NEXT: v_writelane_b32 v40, s9, 5 -; GFX11-NEXT: s_mov_b32 s9, 2 ; GFX11-NEXT: v_writelane_b32 v40, s10, 6 -; GFX11-NEXT: s_mov_b32 s10, 3 ; GFX11-NEXT: v_writelane_b32 v40, s11, 7 -; GFX11-NEXT: s_mov_b32 s11, 4 ; GFX11-NEXT: v_writelane_b32 v40, s30, 8 ; GFX11-NEXT: v_writelane_b32 v40, s31, 9 +; GFX11-NEXT: s_mov_b64 s[0:1], 0 +; GFX11-NEXT: s_mov_b32 s8, 1 +; GFX11-NEXT: s_load_b128 s[4:7], s[0:1], 0x0 +; GFX11-NEXT: s_mov_b32 s9, 2 +; GFX11-NEXT: s_mov_b32 s10, 3 +; GFX11-NEXT: s_mov_b32 s11, 4 +; GFX11-NEXT: s_getpc_b64 s[0:1] +; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v4i64_inreg@rel32@lo+4 +; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v4i64_inreg@rel32@hi+12 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 9 ; GFX11-NEXT: v_readlane_b32 s30, v40, 8 +; GFX11-NEXT: v_readlane_b32 s31, v40, 9 ; GFX11-NEXT: v_readlane_b32 s11, v40, 7 ; GFX11-NEXT: v_readlane_b32 s10, v40, 6 ; GFX11-NEXT: v_readlane_b32 s9, v40, 5 @@ -9088,30 +9152,30 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: s_mov_b64 s[0:1], 0 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s5, 1 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s6, 2 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s7, 3 -; GFX10-SCRATCH-NEXT: s_load_dwordx4 s[4:7], s[0:1], 0x0 -; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] -; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v4i64_inreg@rel32@lo+4 -; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v4i64_inreg@rel32@hi+12 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s8, 4 -; GFX10-SCRATCH-NEXT: s_mov_b32 s8, 1 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s9, 5 -; GFX10-SCRATCH-NEXT: s_mov_b32 s9, 2 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s10, 6 -; GFX10-SCRATCH-NEXT: s_mov_b32 s10, 3 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s11, 7 -; GFX10-SCRATCH-NEXT: s_mov_b32 s11, 4 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 8 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 9 +; GFX10-SCRATCH-NEXT: s_mov_b64 s[0:1], 0 +; GFX10-SCRATCH-NEXT: s_mov_b32 s8, 1 +; GFX10-SCRATCH-NEXT: s_load_dwordx4 s[4:7], s[0:1], 0x0 +; GFX10-SCRATCH-NEXT: s_mov_b32 s9, 2 +; GFX10-SCRATCH-NEXT: s_mov_b32 s10, 3 +; GFX10-SCRATCH-NEXT: s_mov_b32 s11, 4 +; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] +; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v4i64_inreg@rel32@lo+4 +; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v4i64_inreg@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 9 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 8 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 9 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s11, v40, 7 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s10, v40, 6 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s9, v40, 5 @@ -9147,18 +9211,18 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: v_writelane_b32 v40, s4, 0 +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s30, 1 -; GFX9-NEXT: s_movk_i32 s4, 0x4400 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s31, 2 +; GFX9-NEXT: s_movk_i32 s4, 0x4400 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_f16_inreg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_f16_inreg@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 2 ; GFX9-NEXT: v_readlane_b32 s30, v40, 1 +; GFX9-NEXT: v_readlane_b32 s31, v40, 2 ; GFX9-NEXT: v_readlane_b32 s4, v40, 0 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 @@ -9181,18 +9245,18 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v40, s4, 0 +; GFX10-NEXT: v_writelane_b32 v40, s30, 1 +; GFX10-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-NEXT: s_movk_i32 s4, 0x4400 -; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_f16_inreg@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_f16_inreg@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s30, 1 -; GFX10-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 2 ; GFX10-NEXT: v_readlane_b32 s30, v40, 1 +; GFX10-NEXT: v_readlane_b32 s31, v40, 2 ; GFX10-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 @@ -9215,21 +9279,22 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v40, s4, 0 +; GFX11-NEXT: v_writelane_b32 v40, s30, 1 +; GFX11-NEXT: v_writelane_b32 v40, s31, 2 ; GFX11-NEXT: s_movk_i32 s4, 0x4400 -; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_f16_inreg@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_f16_inreg@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s30, 1 -; GFX11-NEXT: v_writelane_b32 v40, s31, 2 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 2 ; GFX11-NEXT: v_readlane_b32 s30, v40, 1 +; GFX11-NEXT: v_readlane_b32 s31, v40, 2 ; GFX11-NEXT: v_readlane_b32 s4, v40, 0 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 @@ -9253,18 +9318,18 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-SCRATCH-NEXT: s_movk_i32 s4, 0x4400 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_f16_inreg@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_f16_inreg@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 1 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 2 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 1 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 2 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 @@ -9291,18 +9356,18 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: v_writelane_b32 v40, s4, 0 +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s30, 1 -; GFX9-NEXT: s_mov_b32 s4, 4.0 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s31, 2 +; GFX9-NEXT: s_mov_b32 s4, 4.0 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_f32_inreg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_f32_inreg@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 2 ; GFX9-NEXT: v_readlane_b32 s30, v40, 1 +; GFX9-NEXT: v_readlane_b32 s31, v40, 2 ; GFX9-NEXT: v_readlane_b32 s4, v40, 0 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 @@ -9325,18 +9390,18 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v40, s4, 0 +; GFX10-NEXT: v_writelane_b32 v40, s30, 1 +; GFX10-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-NEXT: s_mov_b32 s4, 4.0 -; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_f32_inreg@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_f32_inreg@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s30, 1 -; GFX10-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 2 ; GFX10-NEXT: v_readlane_b32 s30, v40, 1 +; GFX10-NEXT: v_readlane_b32 s31, v40, 2 ; GFX10-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 @@ -9359,21 +9424,22 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v40, s4, 0 +; GFX11-NEXT: v_writelane_b32 v40, s30, 1 +; GFX11-NEXT: v_writelane_b32 v40, s31, 2 ; GFX11-NEXT: s_mov_b32 s4, 4.0 -; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_f32_inreg@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_f32_inreg@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s30, 1 -; GFX11-NEXT: v_writelane_b32 v40, s31, 2 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 2 ; GFX11-NEXT: v_readlane_b32 s30, v40, 1 +; GFX11-NEXT: v_readlane_b32 s31, v40, 2 ; GFX11-NEXT: v_readlane_b32 s4, v40, 0 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 @@ -9397,18 +9463,18 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-SCRATCH-NEXT: s_mov_b32 s4, 4.0 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_f32_inreg@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_f32_inreg@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 1 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 2 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 1 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 2 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 @@ -9435,20 +9501,20 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s5, 1 -; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s30, 2 +; GFX9-NEXT: v_writelane_b32 v40, s31, 3 ; GFX9-NEXT: s_mov_b32 s4, 1.0 ; GFX9-NEXT: s_mov_b32 s5, 2.0 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 3 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v2f32_inreg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v2f32_inreg@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 3 ; GFX9-NEXT: v_readlane_b32 s30, v40, 2 +; GFX9-NEXT: v_readlane_b32 s31, v40, 3 ; GFX9-NEXT: v_readlane_b32 s5, v40, 1 ; GFX9-NEXT: v_readlane_b32 s4, v40, 0 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 @@ -9472,20 +9538,20 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v40, s4, 0 +; GFX10-NEXT: v_writelane_b32 v40, s5, 1 +; GFX10-NEXT: v_writelane_b32 v40, s30, 2 +; GFX10-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-NEXT: s_mov_b32 s4, 1.0 -; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: s_mov_b32 s5, 2.0 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v2f32_inreg@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v2f32_inreg@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s5, 1 -; GFX10-NEXT: s_mov_b32 s5, 2.0 -; GFX10-NEXT: v_writelane_b32 v40, s30, 2 -; GFX10-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-NEXT: v_readlane_b32 s30, v40, 2 +; GFX10-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-NEXT: v_readlane_b32 s5, v40, 1 ; GFX10-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 @@ -9509,23 +9575,24 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v40, s4, 0 +; GFX11-NEXT: v_writelane_b32 v40, s5, 1 +; GFX11-NEXT: v_writelane_b32 v40, s30, 2 +; GFX11-NEXT: v_writelane_b32 v40, s31, 3 ; GFX11-NEXT: s_mov_b32 s4, 1.0 -; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: s_mov_b32 s5, 2.0 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v2f32_inreg@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v2f32_inreg@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s5, 1 -; GFX11-NEXT: s_mov_b32 s5, 2.0 -; GFX11-NEXT: v_writelane_b32 v40, s30, 2 -; GFX11-NEXT: v_writelane_b32 v40, s31, 3 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 3 ; GFX11-NEXT: v_readlane_b32 s30, v40, 2 +; GFX11-NEXT: v_readlane_b32 s31, v40, 3 ; GFX11-NEXT: v_readlane_b32 s5, v40, 1 ; GFX11-NEXT: v_readlane_b32 s4, v40, 0 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 @@ -9550,20 +9617,20 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s5, 1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 2 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-SCRATCH-NEXT: s_mov_b32 s4, 1.0 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: s_mov_b32 s5, 2.0 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v2f32_inreg@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v2f32_inreg@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s5, 1 -; GFX10-SCRATCH-NEXT: s_mov_b32 s5, 2.0 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 2 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 2 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s5, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 @@ -9591,22 +9658,22 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s5, 1 ; GFX9-NEXT: v_writelane_b32 v40, s6, 2 -; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s30, 3 +; GFX9-NEXT: v_writelane_b32 v40, s31, 4 ; GFX9-NEXT: s_mov_b32 s4, 1.0 ; GFX9-NEXT: s_mov_b32 s5, 2.0 ; GFX9-NEXT: s_mov_b32 s6, 4.0 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 4 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v3f32_inreg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v3f32_inreg@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 4 ; GFX9-NEXT: v_readlane_b32 s30, v40, 3 +; GFX9-NEXT: v_readlane_b32 s31, v40, 4 ; GFX9-NEXT: v_readlane_b32 s6, v40, 2 ; GFX9-NEXT: v_readlane_b32 s5, v40, 1 ; GFX9-NEXT: v_readlane_b32 s4, v40, 0 @@ -9631,22 +9698,22 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v40, s4, 0 +; GFX10-NEXT: v_writelane_b32 v40, s5, 1 +; GFX10-NEXT: v_writelane_b32 v40, s6, 2 +; GFX10-NEXT: v_writelane_b32 v40, s30, 3 +; GFX10-NEXT: v_writelane_b32 v40, s31, 4 ; GFX10-NEXT: s_mov_b32 s4, 1.0 -; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: s_mov_b32 s5, 2.0 +; GFX10-NEXT: s_mov_b32 s6, 4.0 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v3f32_inreg@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v3f32_inreg@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s5, 1 -; GFX10-NEXT: s_mov_b32 s5, 2.0 -; GFX10-NEXT: v_writelane_b32 v40, s6, 2 -; GFX10-NEXT: s_mov_b32 s6, 4.0 -; GFX10-NEXT: v_writelane_b32 v40, s30, 3 -; GFX10-NEXT: v_writelane_b32 v40, s31, 4 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 4 ; GFX10-NEXT: v_readlane_b32 s30, v40, 3 +; GFX10-NEXT: v_readlane_b32 s31, v40, 4 ; GFX10-NEXT: v_readlane_b32 s6, v40, 2 ; GFX10-NEXT: v_readlane_b32 s5, v40, 1 ; GFX10-NEXT: v_readlane_b32 s4, v40, 0 @@ -9671,25 +9738,26 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: v_writelane_b32 v40, s4, 0 -; GFX11-NEXT: s_mov_b32 s4, 1.0 -; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v41, s0, 0 -; GFX11-NEXT: s_getpc_b64 s[0:1] -; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v3f32_inreg@rel32@lo+4 -; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v3f32_inreg@rel32@hi+12 +; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s4, 0 ; GFX11-NEXT: v_writelane_b32 v40, s5, 1 -; GFX11-NEXT: s_mov_b32 s5, 2.0 ; GFX11-NEXT: v_writelane_b32 v40, s6, 2 -; GFX11-NEXT: s_mov_b32 s6, 4.0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 3 ; GFX11-NEXT: v_writelane_b32 v40, s31, 4 +; GFX11-NEXT: s_mov_b32 s4, 1.0 +; GFX11-NEXT: s_mov_b32 s5, 2.0 +; GFX11-NEXT: s_mov_b32 s6, 4.0 +; GFX11-NEXT: s_getpc_b64 s[0:1] +; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v3f32_inreg@rel32@lo+4 +; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v3f32_inreg@rel32@hi+12 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 4 ; GFX11-NEXT: v_readlane_b32 s30, v40, 3 +; GFX11-NEXT: v_readlane_b32 s31, v40, 4 ; GFX11-NEXT: v_readlane_b32 s6, v40, 2 ; GFX11-NEXT: v_readlane_b32 s5, v40, 1 ; GFX11-NEXT: v_readlane_b32 s4, v40, 0 @@ -9715,22 +9783,22 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 -; GFX10-SCRATCH-NEXT: s_mov_b32 s4, 1.0 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] -; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v3f32_inreg@rel32@lo+4 -; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v3f32_inreg@rel32@hi+12 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s5, 1 -; GFX10-SCRATCH-NEXT: s_mov_b32 s5, 2.0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s6, 2 -; GFX10-SCRATCH-NEXT: s_mov_b32 s6, 4.0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 3 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 4 +; GFX10-SCRATCH-NEXT: s_mov_b32 s4, 1.0 +; GFX10-SCRATCH-NEXT: s_mov_b32 s5, 2.0 +; GFX10-SCRATCH-NEXT: s_mov_b32 s6, 4.0 +; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] +; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v3f32_inreg@rel32@lo+4 +; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v3f32_inreg@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 4 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 3 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 4 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s6, v40, 2 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s5, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s4, v40, 0 @@ -9759,26 +9827,26 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s5, 1 ; GFX9-NEXT: v_writelane_b32 v40, s6, 2 ; GFX9-NEXT: v_writelane_b32 v40, s7, 3 ; GFX9-NEXT: v_writelane_b32 v40, s8, 4 -; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s30, 5 +; GFX9-NEXT: v_writelane_b32 v40, s31, 6 ; GFX9-NEXT: s_mov_b32 s4, 1.0 ; GFX9-NEXT: s_mov_b32 s5, 2.0 ; GFX9-NEXT: s_mov_b32 s6, 4.0 ; GFX9-NEXT: s_mov_b32 s7, -1.0 ; GFX9-NEXT: s_mov_b32 s8, 0.5 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 6 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v5f32_inreg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v5f32_inreg@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 6 ; GFX9-NEXT: v_readlane_b32 s30, v40, 5 +; GFX9-NEXT: v_readlane_b32 s31, v40, 6 ; GFX9-NEXT: v_readlane_b32 s8, v40, 4 ; GFX9-NEXT: v_readlane_b32 s7, v40, 3 ; GFX9-NEXT: v_readlane_b32 s6, v40, 2 @@ -9805,26 +9873,26 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: v_writelane_b32 v40, s4, 0 -; GFX10-NEXT: s_mov_b32 s4, 1.0 -; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: s_getpc_b64 s[34:35] -; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v5f32_inreg@rel32@lo+4 -; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v5f32_inreg@rel32@hi+12 +; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-NEXT: v_writelane_b32 v40, s5, 1 -; GFX10-NEXT: s_mov_b32 s5, 2.0 ; GFX10-NEXT: v_writelane_b32 v40, s6, 2 -; GFX10-NEXT: s_mov_b32 s6, 4.0 ; GFX10-NEXT: v_writelane_b32 v40, s7, 3 -; GFX10-NEXT: s_mov_b32 s7, -1.0 ; GFX10-NEXT: v_writelane_b32 v40, s8, 4 -; GFX10-NEXT: s_mov_b32 s8, 0.5 ; GFX10-NEXT: v_writelane_b32 v40, s30, 5 ; GFX10-NEXT: v_writelane_b32 v40, s31, 6 +; GFX10-NEXT: s_mov_b32 s4, 1.0 +; GFX10-NEXT: s_mov_b32 s5, 2.0 +; GFX10-NEXT: s_mov_b32 s6, 4.0 +; GFX10-NEXT: s_mov_b32 s7, -1.0 +; GFX10-NEXT: s_mov_b32 s8, 0.5 +; GFX10-NEXT: s_getpc_b64 s[34:35] +; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v5f32_inreg@rel32@lo+4 +; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v5f32_inreg@rel32@hi+12 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 6 ; GFX10-NEXT: v_readlane_b32 s30, v40, 5 +; GFX10-NEXT: v_readlane_b32 s31, v40, 6 ; GFX10-NEXT: v_readlane_b32 s8, v40, 4 ; GFX10-NEXT: v_readlane_b32 s7, v40, 3 ; GFX10-NEXT: v_readlane_b32 s6, v40, 2 @@ -9851,29 +9919,30 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: v_writelane_b32 v40, s4, 0 -; GFX11-NEXT: s_mov_b32 s4, 1.0 -; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v41, s0, 0 -; GFX11-NEXT: s_getpc_b64 s[0:1] -; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v5f32_inreg@rel32@lo+4 -; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v5f32_inreg@rel32@hi+12 +; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s4, 0 ; GFX11-NEXT: v_writelane_b32 v40, s5, 1 -; GFX11-NEXT: s_mov_b32 s5, 2.0 ; GFX11-NEXT: v_writelane_b32 v40, s6, 2 -; GFX11-NEXT: s_mov_b32 s6, 4.0 ; GFX11-NEXT: v_writelane_b32 v40, s7, 3 -; GFX11-NEXT: s_mov_b32 s7, -1.0 ; GFX11-NEXT: v_writelane_b32 v40, s8, 4 -; GFX11-NEXT: s_mov_b32 s8, 0.5 ; GFX11-NEXT: v_writelane_b32 v40, s30, 5 ; GFX11-NEXT: v_writelane_b32 v40, s31, 6 +; GFX11-NEXT: s_mov_b32 s4, 1.0 +; GFX11-NEXT: s_mov_b32 s5, 2.0 +; GFX11-NEXT: s_mov_b32 s6, 4.0 +; GFX11-NEXT: s_mov_b32 s7, -1.0 +; GFX11-NEXT: s_mov_b32 s8, 0.5 +; GFX11-NEXT: s_getpc_b64 s[0:1] +; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v5f32_inreg@rel32@lo+4 +; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v5f32_inreg@rel32@hi+12 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 6 ; GFX11-NEXT: v_readlane_b32 s30, v40, 5 +; GFX11-NEXT: v_readlane_b32 s31, v40, 6 ; GFX11-NEXT: v_readlane_b32 s8, v40, 4 ; GFX11-NEXT: v_readlane_b32 s7, v40, 3 ; GFX11-NEXT: v_readlane_b32 s6, v40, 2 @@ -9901,26 +9970,26 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 -; GFX10-SCRATCH-NEXT: s_mov_b32 s4, 1.0 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] -; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v5f32_inreg@rel32@lo+4 -; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v5f32_inreg@rel32@hi+12 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s5, 1 -; GFX10-SCRATCH-NEXT: s_mov_b32 s5, 2.0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s6, 2 -; GFX10-SCRATCH-NEXT: s_mov_b32 s6, 4.0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s7, 3 -; GFX10-SCRATCH-NEXT: s_mov_b32 s7, -1.0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s8, 4 -; GFX10-SCRATCH-NEXT: s_mov_b32 s8, 0.5 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 5 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 6 +; GFX10-SCRATCH-NEXT: s_mov_b32 s4, 1.0 +; GFX10-SCRATCH-NEXT: s_mov_b32 s5, 2.0 +; GFX10-SCRATCH-NEXT: s_mov_b32 s6, 4.0 +; GFX10-SCRATCH-NEXT: s_mov_b32 s7, -1.0 +; GFX10-SCRATCH-NEXT: s_mov_b32 s8, 0.5 +; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] +; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v5f32_inreg@rel32@lo+4 +; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v5f32_inreg@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 6 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 5 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 6 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s8, v40, 4 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s7, v40, 3 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s6, v40, 2 @@ -9951,20 +10020,20 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s5, 1 -; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s30, 2 +; GFX9-NEXT: v_writelane_b32 v40, s31, 3 ; GFX9-NEXT: s_mov_b32 s4, 0 ; GFX9-NEXT: s_mov_b32 s5, 0x40100000 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 3 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_f64_inreg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_f64_inreg@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 3 ; GFX9-NEXT: v_readlane_b32 s30, v40, 2 +; GFX9-NEXT: v_readlane_b32 s31, v40, 3 ; GFX9-NEXT: v_readlane_b32 s5, v40, 1 ; GFX9-NEXT: v_readlane_b32 s4, v40, 0 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 @@ -9988,20 +10057,20 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v40, s4, 0 +; GFX10-NEXT: v_writelane_b32 v40, s5, 1 +; GFX10-NEXT: v_writelane_b32 v40, s30, 2 +; GFX10-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-NEXT: s_mov_b32 s4, 0 -; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: s_mov_b32 s5, 0x40100000 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_f64_inreg@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_f64_inreg@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s5, 1 -; GFX10-NEXT: s_mov_b32 s5, 0x40100000 -; GFX10-NEXT: v_writelane_b32 v40, s30, 2 -; GFX10-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-NEXT: v_readlane_b32 s30, v40, 2 +; GFX10-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-NEXT: v_readlane_b32 s5, v40, 1 ; GFX10-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 @@ -10025,23 +10094,24 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v40, s4, 0 +; GFX11-NEXT: v_writelane_b32 v40, s5, 1 +; GFX11-NEXT: v_writelane_b32 v40, s30, 2 +; GFX11-NEXT: v_writelane_b32 v40, s31, 3 ; GFX11-NEXT: s_mov_b32 s4, 0 -; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: s_mov_b32 s5, 0x40100000 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_f64_inreg@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_f64_inreg@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s5, 1 -; GFX11-NEXT: s_mov_b32 s5, 0x40100000 -; GFX11-NEXT: v_writelane_b32 v40, s30, 2 -; GFX11-NEXT: v_writelane_b32 v40, s31, 3 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 3 ; GFX11-NEXT: v_readlane_b32 s30, v40, 2 +; GFX11-NEXT: v_readlane_b32 s31, v40, 3 ; GFX11-NEXT: v_readlane_b32 s5, v40, 1 ; GFX11-NEXT: v_readlane_b32 s4, v40, 0 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 @@ -10066,20 +10136,20 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s5, 1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 2 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-SCRATCH-NEXT: s_mov_b32 s4, 0 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: s_mov_b32 s5, 0x40100000 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_f64_inreg@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_f64_inreg@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s5, 1 -; GFX10-SCRATCH-NEXT: s_mov_b32 s5, 0x40100000 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 2 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 2 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s5, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 @@ -10107,24 +10177,24 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s5, 1 ; GFX9-NEXT: v_writelane_b32 v40, s6, 2 ; GFX9-NEXT: v_writelane_b32 v40, s7, 3 -; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s30, 4 +; GFX9-NEXT: v_writelane_b32 v40, s31, 5 ; GFX9-NEXT: s_mov_b32 s4, 0 ; GFX9-NEXT: s_mov_b32 s5, 2.0 ; GFX9-NEXT: s_mov_b32 s6, 0 ; GFX9-NEXT: s_mov_b32 s7, 0x40100000 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 5 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v2f64_inreg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v2f64_inreg@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 5 ; GFX9-NEXT: v_readlane_b32 s30, v40, 4 +; GFX9-NEXT: v_readlane_b32 s31, v40, 5 ; GFX9-NEXT: v_readlane_b32 s7, v40, 3 ; GFX9-NEXT: v_readlane_b32 s6, v40, 2 ; GFX9-NEXT: v_readlane_b32 s5, v40, 1 @@ -10150,24 +10220,24 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: v_writelane_b32 v40, s4, 0 -; GFX10-NEXT: s_mov_b32 s4, 0 -; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: s_getpc_b64 s[34:35] -; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v2f64_inreg@rel32@lo+4 -; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v2f64_inreg@rel32@hi+12 +; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-NEXT: v_writelane_b32 v40, s5, 1 -; GFX10-NEXT: s_mov_b32 s5, 2.0 ; GFX10-NEXT: v_writelane_b32 v40, s6, 2 -; GFX10-NEXT: s_mov_b32 s6, 0 ; GFX10-NEXT: v_writelane_b32 v40, s7, 3 -; GFX10-NEXT: s_mov_b32 s7, 0x40100000 ; GFX10-NEXT: v_writelane_b32 v40, s30, 4 ; GFX10-NEXT: v_writelane_b32 v40, s31, 5 +; GFX10-NEXT: s_mov_b32 s4, 0 +; GFX10-NEXT: s_mov_b32 s5, 2.0 +; GFX10-NEXT: s_mov_b32 s6, 0 +; GFX10-NEXT: s_mov_b32 s7, 0x40100000 +; GFX10-NEXT: s_getpc_b64 s[34:35] +; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v2f64_inreg@rel32@lo+4 +; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v2f64_inreg@rel32@hi+12 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 5 ; GFX10-NEXT: v_readlane_b32 s30, v40, 4 +; GFX10-NEXT: v_readlane_b32 s31, v40, 5 ; GFX10-NEXT: v_readlane_b32 s7, v40, 3 ; GFX10-NEXT: v_readlane_b32 s6, v40, 2 ; GFX10-NEXT: v_readlane_b32 s5, v40, 1 @@ -10193,27 +10263,28 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: v_writelane_b32 v40, s4, 0 -; GFX11-NEXT: s_mov_b32 s4, 0 -; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v41, s0, 0 -; GFX11-NEXT: s_getpc_b64 s[0:1] -; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v2f64_inreg@rel32@lo+4 -; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v2f64_inreg@rel32@hi+12 +; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s4, 0 ; GFX11-NEXT: v_writelane_b32 v40, s5, 1 -; GFX11-NEXT: s_mov_b32 s5, 2.0 ; GFX11-NEXT: v_writelane_b32 v40, s6, 2 -; GFX11-NEXT: s_mov_b32 s6, 0 ; GFX11-NEXT: v_writelane_b32 v40, s7, 3 -; GFX11-NEXT: s_mov_b32 s7, 0x40100000 ; GFX11-NEXT: v_writelane_b32 v40, s30, 4 ; GFX11-NEXT: v_writelane_b32 v40, s31, 5 +; GFX11-NEXT: s_mov_b32 s4, 0 +; GFX11-NEXT: s_mov_b32 s5, 2.0 +; GFX11-NEXT: s_mov_b32 s6, 0 +; GFX11-NEXT: s_mov_b32 s7, 0x40100000 +; GFX11-NEXT: s_getpc_b64 s[0:1] +; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v2f64_inreg@rel32@lo+4 +; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v2f64_inreg@rel32@hi+12 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 5 ; GFX11-NEXT: v_readlane_b32 s30, v40, 4 +; GFX11-NEXT: v_readlane_b32 s31, v40, 5 ; GFX11-NEXT: v_readlane_b32 s7, v40, 3 ; GFX11-NEXT: v_readlane_b32 s6, v40, 2 ; GFX11-NEXT: v_readlane_b32 s5, v40, 1 @@ -10240,24 +10311,24 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 -; GFX10-SCRATCH-NEXT: s_mov_b32 s4, 0 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] -; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v2f64_inreg@rel32@lo+4 -; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v2f64_inreg@rel32@hi+12 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s5, 1 -; GFX10-SCRATCH-NEXT: s_mov_b32 s5, 2.0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s6, 2 -; GFX10-SCRATCH-NEXT: s_mov_b32 s6, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s7, 3 -; GFX10-SCRATCH-NEXT: s_mov_b32 s7, 0x40100000 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 4 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 5 +; GFX10-SCRATCH-NEXT: s_mov_b32 s4, 0 +; GFX10-SCRATCH-NEXT: s_mov_b32 s5, 2.0 +; GFX10-SCRATCH-NEXT: s_mov_b32 s6, 0 +; GFX10-SCRATCH-NEXT: s_mov_b32 s7, 0x40100000 +; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] +; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v2f64_inreg@rel32@lo+4 +; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v2f64_inreg@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 5 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 4 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 5 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s7, v40, 3 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s6, v40, 2 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s5, v40, 1 @@ -10287,28 +10358,28 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s5, 1 ; GFX9-NEXT: v_writelane_b32 v40, s6, 2 ; GFX9-NEXT: v_writelane_b32 v40, s7, 3 ; GFX9-NEXT: v_writelane_b32 v40, s8, 4 ; GFX9-NEXT: v_writelane_b32 v40, s9, 5 -; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s30, 6 +; GFX9-NEXT: v_writelane_b32 v40, s31, 7 ; GFX9-NEXT: s_mov_b32 s4, 0 ; GFX9-NEXT: s_mov_b32 s5, 2.0 ; GFX9-NEXT: s_mov_b32 s6, 0 ; GFX9-NEXT: s_mov_b32 s7, 0x40100000 ; GFX9-NEXT: s_mov_b32 s8, 0 ; GFX9-NEXT: s_mov_b32 s9, 0x40200000 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 7 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v3f64_inreg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v3f64_inreg@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 7 ; GFX9-NEXT: v_readlane_b32 s30, v40, 6 +; GFX9-NEXT: v_readlane_b32 s31, v40, 7 ; GFX9-NEXT: v_readlane_b32 s9, v40, 5 ; GFX9-NEXT: v_readlane_b32 s8, v40, 4 ; GFX9-NEXT: v_readlane_b32 s7, v40, 3 @@ -10336,28 +10407,28 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: v_writelane_b32 v40, s4, 0 -; GFX10-NEXT: s_mov_b32 s4, 0 -; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: s_getpc_b64 s[34:35] -; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v3f64_inreg@rel32@lo+4 -; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v3f64_inreg@rel32@hi+12 +; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-NEXT: v_writelane_b32 v40, s5, 1 -; GFX10-NEXT: s_mov_b32 s5, 2.0 ; GFX10-NEXT: v_writelane_b32 v40, s6, 2 -; GFX10-NEXT: s_mov_b32 s6, 0 ; GFX10-NEXT: v_writelane_b32 v40, s7, 3 -; GFX10-NEXT: s_mov_b32 s7, 0x40100000 ; GFX10-NEXT: v_writelane_b32 v40, s8, 4 -; GFX10-NEXT: s_mov_b32 s8, 0 ; GFX10-NEXT: v_writelane_b32 v40, s9, 5 -; GFX10-NEXT: s_mov_b32 s9, 0x40200000 ; GFX10-NEXT: v_writelane_b32 v40, s30, 6 ; GFX10-NEXT: v_writelane_b32 v40, s31, 7 +; GFX10-NEXT: s_mov_b32 s4, 0 +; GFX10-NEXT: s_mov_b32 s5, 2.0 +; GFX10-NEXT: s_mov_b32 s6, 0 +; GFX10-NEXT: s_mov_b32 s7, 0x40100000 +; GFX10-NEXT: s_mov_b32 s8, 0 +; GFX10-NEXT: s_mov_b32 s9, 0x40200000 +; GFX10-NEXT: s_getpc_b64 s[34:35] +; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v3f64_inreg@rel32@lo+4 +; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v3f64_inreg@rel32@hi+12 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 7 ; GFX10-NEXT: v_readlane_b32 s30, v40, 6 +; GFX10-NEXT: v_readlane_b32 s31, v40, 7 ; GFX10-NEXT: v_readlane_b32 s9, v40, 5 ; GFX10-NEXT: v_readlane_b32 s8, v40, 4 ; GFX10-NEXT: v_readlane_b32 s7, v40, 3 @@ -10385,31 +10456,32 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: v_writelane_b32 v40, s4, 0 -; GFX11-NEXT: s_mov_b32 s4, 0 -; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v41, s0, 0 -; GFX11-NEXT: s_getpc_b64 s[0:1] -; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v3f64_inreg@rel32@lo+4 -; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v3f64_inreg@rel32@hi+12 +; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s4, 0 ; GFX11-NEXT: v_writelane_b32 v40, s5, 1 -; GFX11-NEXT: s_mov_b32 s5, 2.0 ; GFX11-NEXT: v_writelane_b32 v40, s6, 2 -; GFX11-NEXT: s_mov_b32 s6, 0 ; GFX11-NEXT: v_writelane_b32 v40, s7, 3 -; GFX11-NEXT: s_mov_b32 s7, 0x40100000 ; GFX11-NEXT: v_writelane_b32 v40, s8, 4 -; GFX11-NEXT: s_mov_b32 s8, 0 ; GFX11-NEXT: v_writelane_b32 v40, s9, 5 -; GFX11-NEXT: s_mov_b32 s9, 0x40200000 ; GFX11-NEXT: v_writelane_b32 v40, s30, 6 ; GFX11-NEXT: v_writelane_b32 v40, s31, 7 +; GFX11-NEXT: s_mov_b32 s4, 0 +; GFX11-NEXT: s_mov_b32 s5, 2.0 +; GFX11-NEXT: s_mov_b32 s6, 0 +; GFX11-NEXT: s_mov_b32 s7, 0x40100000 +; GFX11-NEXT: s_mov_b32 s8, 0 +; GFX11-NEXT: s_mov_b32 s9, 0x40200000 +; GFX11-NEXT: s_getpc_b64 s[0:1] +; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v3f64_inreg@rel32@lo+4 +; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v3f64_inreg@rel32@hi+12 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 7 ; GFX11-NEXT: v_readlane_b32 s30, v40, 6 +; GFX11-NEXT: v_readlane_b32 s31, v40, 7 ; GFX11-NEXT: v_readlane_b32 s9, v40, 5 ; GFX11-NEXT: v_readlane_b32 s8, v40, 4 ; GFX11-NEXT: v_readlane_b32 s7, v40, 3 @@ -10438,28 +10510,28 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 -; GFX10-SCRATCH-NEXT: s_mov_b32 s4, 0 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] -; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v3f64_inreg@rel32@lo+4 -; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v3f64_inreg@rel32@hi+12 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s5, 1 -; GFX10-SCRATCH-NEXT: s_mov_b32 s5, 2.0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s6, 2 -; GFX10-SCRATCH-NEXT: s_mov_b32 s6, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s7, 3 -; GFX10-SCRATCH-NEXT: s_mov_b32 s7, 0x40100000 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s8, 4 -; GFX10-SCRATCH-NEXT: s_mov_b32 s8, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s9, 5 -; GFX10-SCRATCH-NEXT: s_mov_b32 s9, 0x40200000 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 6 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 7 +; GFX10-SCRATCH-NEXT: s_mov_b32 s4, 0 +; GFX10-SCRATCH-NEXT: s_mov_b32 s5, 2.0 +; GFX10-SCRATCH-NEXT: s_mov_b32 s6, 0 +; GFX10-SCRATCH-NEXT: s_mov_b32 s7, 0x40100000 +; GFX10-SCRATCH-NEXT: s_mov_b32 s8, 0 +; GFX10-SCRATCH-NEXT: s_mov_b32 s9, 0x40200000 +; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] +; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v3f64_inreg@rel32@lo+4 +; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v3f64_inreg@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 7 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 6 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 7 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s9, v40, 5 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s8, v40, 4 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s7, v40, 3 @@ -10491,18 +10563,18 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: v_writelane_b32 v40, s4, 0 -; GFX9-NEXT: s_load_dword s4, s[34:35], 0x0 +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s30, 1 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s31, 2 +; GFX9-NEXT: s_load_dword s4, s[34:35], 0x0 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v2i16_inreg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v2i16_inreg@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 2 ; GFX9-NEXT: v_readlane_b32 s30, v40, 1 +; GFX9-NEXT: v_readlane_b32 s31, v40, 2 ; GFX9-NEXT: v_readlane_b32 s4, v40, 0 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 @@ -10525,18 +10597,18 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v40, s4, 0 +; GFX10-NEXT: v_writelane_b32 v40, s30, 1 +; GFX10-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-NEXT: s_load_dword s4, s[34:35], 0x0 -; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v2i16_inreg@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v2i16_inreg@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s30, 1 -; GFX10-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 2 ; GFX10-NEXT: v_readlane_b32 s30, v40, 1 +; GFX10-NEXT: v_readlane_b32 s31, v40, 2 ; GFX10-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 @@ -10559,21 +10631,22 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v40, s4, 0 +; GFX11-NEXT: v_writelane_b32 v40, s30, 1 +; GFX11-NEXT: v_writelane_b32 v40, s31, 2 ; GFX11-NEXT: s_load_b32 s4, s[0:1], 0x0 -; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v2i16_inreg@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v2i16_inreg@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s30, 1 -; GFX11-NEXT: v_writelane_b32 v40, s31, 2 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 2 ; GFX11-NEXT: v_readlane_b32 s30, v40, 1 +; GFX11-NEXT: v_readlane_b32 s31, v40, 2 ; GFX11-NEXT: v_readlane_b32 s4, v40, 0 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 @@ -10597,18 +10670,18 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-SCRATCH-NEXT: s_load_dword s4, s[0:1], 0x0 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v2i16_inreg@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v2i16_inreg@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 1 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 2 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 1 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 2 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 @@ -10636,19 +10709,19 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s5, 1 -; GFX9-NEXT: s_load_dwordx2 s[4:5], s[34:35], 0x0 -; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s30, 2 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s31, 3 +; GFX9-NEXT: s_load_dwordx2 s[4:5], s[34:35], 0x0 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v3i16_inreg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v3i16_inreg@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 3 ; GFX9-NEXT: v_readlane_b32 s30, v40, 2 +; GFX9-NEXT: v_readlane_b32 s31, v40, 3 ; GFX9-NEXT: v_readlane_b32 s5, v40, 1 ; GFX9-NEXT: v_readlane_b32 s4, v40, 0 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 @@ -10672,19 +10745,19 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: v_writelane_b32 v40, s4, 0 -; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-NEXT: v_writelane_b32 v40, s5, 1 +; GFX10-NEXT: v_writelane_b32 v40, s30, 2 +; GFX10-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-NEXT: s_load_dwordx2 s[4:5], s[34:35], 0x0 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v3i16_inreg@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v3i16_inreg@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s30, 2 -; GFX10-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-NEXT: v_readlane_b32 s30, v40, 2 +; GFX10-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-NEXT: v_readlane_b32 s5, v40, 1 ; GFX10-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 @@ -10708,22 +10781,23 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: v_writelane_b32 v40, s4, 0 -; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s4, 0 ; GFX11-NEXT: v_writelane_b32 v40, s5, 1 +; GFX11-NEXT: v_writelane_b32 v40, s30, 2 +; GFX11-NEXT: v_writelane_b32 v40, s31, 3 ; GFX11-NEXT: s_load_b64 s[4:5], s[0:1], 0x0 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v3i16_inreg@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v3i16_inreg@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s30, 2 -; GFX11-NEXT: v_writelane_b32 v40, s31, 3 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 3 ; GFX11-NEXT: v_readlane_b32 s30, v40, 2 +; GFX11-NEXT: v_readlane_b32 s31, v40, 3 ; GFX11-NEXT: v_readlane_b32 s5, v40, 1 ; GFX11-NEXT: v_readlane_b32 s4, v40, 0 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 @@ -10748,19 +10822,19 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s5, 1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 2 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-SCRATCH-NEXT: s_load_dwordx2 s[4:5], s[0:1], 0x0 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v3i16_inreg@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v3i16_inreg@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 2 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 2 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s5, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 @@ -10789,19 +10863,19 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s5, 1 -; GFX9-NEXT: s_load_dwordx2 s[4:5], s[34:35], 0x0 -; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s30, 2 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s31, 3 +; GFX9-NEXT: s_load_dwordx2 s[4:5], s[34:35], 0x0 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v3f16_inreg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v3f16_inreg@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 3 ; GFX9-NEXT: v_readlane_b32 s30, v40, 2 +; GFX9-NEXT: v_readlane_b32 s31, v40, 3 ; GFX9-NEXT: v_readlane_b32 s5, v40, 1 ; GFX9-NEXT: v_readlane_b32 s4, v40, 0 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 @@ -10825,19 +10899,19 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: v_writelane_b32 v40, s4, 0 -; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-NEXT: v_writelane_b32 v40, s5, 1 +; GFX10-NEXT: v_writelane_b32 v40, s30, 2 +; GFX10-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-NEXT: s_load_dwordx2 s[4:5], s[34:35], 0x0 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v3f16_inreg@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v3f16_inreg@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s30, 2 -; GFX10-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-NEXT: v_readlane_b32 s30, v40, 2 +; GFX10-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-NEXT: v_readlane_b32 s5, v40, 1 ; GFX10-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 @@ -10861,22 +10935,23 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: v_writelane_b32 v40, s4, 0 -; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s4, 0 ; GFX11-NEXT: v_writelane_b32 v40, s5, 1 +; GFX11-NEXT: v_writelane_b32 v40, s30, 2 +; GFX11-NEXT: v_writelane_b32 v40, s31, 3 ; GFX11-NEXT: s_load_b64 s[4:5], s[0:1], 0x0 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v3f16_inreg@rel32@lo+4 -; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v3f16_inreg@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s30, 2 -; GFX11-NEXT: v_writelane_b32 v40, s31, 3 +; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v3f16_inreg@rel32@hi+12 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 3 ; GFX11-NEXT: v_readlane_b32 s30, v40, 2 +; GFX11-NEXT: v_readlane_b32 s31, v40, 3 ; GFX11-NEXT: v_readlane_b32 s5, v40, 1 ; GFX11-NEXT: v_readlane_b32 s4, v40, 0 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 @@ -10901,19 +10976,19 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s5, 1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 2 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-SCRATCH-NEXT: s_load_dwordx2 s[4:5], s[0:1], 0x0 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v3f16_inreg@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v3f16_inreg@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 2 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 2 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s5, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 @@ -10942,20 +11017,20 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s5, 1 -; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s30, 2 +; GFX9-NEXT: v_writelane_b32 v40, s31, 3 ; GFX9-NEXT: s_mov_b32 s4, 0x20001 ; GFX9-NEXT: s_mov_b32 s5, 3 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 3 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v3i16_inreg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v3i16_inreg@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 3 ; GFX9-NEXT: v_readlane_b32 s30, v40, 2 +; GFX9-NEXT: v_readlane_b32 s31, v40, 3 ; GFX9-NEXT: v_readlane_b32 s5, v40, 1 ; GFX9-NEXT: v_readlane_b32 s4, v40, 0 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 @@ -10979,20 +11054,20 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v40, s4, 0 +; GFX10-NEXT: v_writelane_b32 v40, s5, 1 +; GFX10-NEXT: v_writelane_b32 v40, s30, 2 +; GFX10-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-NEXT: s_mov_b32 s4, 0x20001 -; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: s_mov_b32 s5, 3 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v3i16_inreg@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v3i16_inreg@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s5, 1 -; GFX10-NEXT: s_mov_b32 s5, 3 -; GFX10-NEXT: v_writelane_b32 v40, s30, 2 -; GFX10-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-NEXT: v_readlane_b32 s30, v40, 2 +; GFX10-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-NEXT: v_readlane_b32 s5, v40, 1 ; GFX10-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 @@ -11016,23 +11091,24 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v40, s4, 0 +; GFX11-NEXT: v_writelane_b32 v40, s5, 1 +; GFX11-NEXT: v_writelane_b32 v40, s30, 2 +; GFX11-NEXT: v_writelane_b32 v40, s31, 3 ; GFX11-NEXT: s_mov_b32 s4, 0x20001 -; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: s_mov_b32 s5, 3 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v3i16_inreg@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v3i16_inreg@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s5, 1 -; GFX11-NEXT: s_mov_b32 s5, 3 -; GFX11-NEXT: v_writelane_b32 v40, s30, 2 -; GFX11-NEXT: v_writelane_b32 v40, s31, 3 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 3 ; GFX11-NEXT: v_readlane_b32 s30, v40, 2 +; GFX11-NEXT: v_readlane_b32 s31, v40, 3 ; GFX11-NEXT: v_readlane_b32 s5, v40, 1 ; GFX11-NEXT: v_readlane_b32 s4, v40, 0 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 @@ -11057,20 +11133,20 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s5, 1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 2 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-SCRATCH-NEXT: s_mov_b32 s4, 0x20001 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: s_mov_b32 s5, 3 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v3i16_inreg@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v3i16_inreg@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s5, 1 -; GFX10-SCRATCH-NEXT: s_mov_b32 s5, 3 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 2 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 2 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s5, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 @@ -11098,20 +11174,20 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s5, 1 -; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s30, 2 +; GFX9-NEXT: v_writelane_b32 v40, s31, 3 ; GFX9-NEXT: s_mov_b32 s4, 0x40003c00 ; GFX9-NEXT: s_movk_i32 s5, 0x4400 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 3 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v3f16_inreg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v3f16_inreg@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 3 ; GFX9-NEXT: v_readlane_b32 s30, v40, 2 +; GFX9-NEXT: v_readlane_b32 s31, v40, 3 ; GFX9-NEXT: v_readlane_b32 s5, v40, 1 ; GFX9-NEXT: v_readlane_b32 s4, v40, 0 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 @@ -11135,20 +11211,20 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v40, s4, 0 +; GFX10-NEXT: v_writelane_b32 v40, s5, 1 +; GFX10-NEXT: v_writelane_b32 v40, s30, 2 +; GFX10-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-NEXT: s_mov_b32 s4, 0x40003c00 -; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: s_movk_i32 s5, 0x4400 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v3f16_inreg@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v3f16_inreg@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s5, 1 -; GFX10-NEXT: s_movk_i32 s5, 0x4400 -; GFX10-NEXT: v_writelane_b32 v40, s30, 2 -; GFX10-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-NEXT: v_readlane_b32 s30, v40, 2 +; GFX10-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-NEXT: v_readlane_b32 s5, v40, 1 ; GFX10-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 @@ -11172,23 +11248,24 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v40, s4, 0 +; GFX11-NEXT: v_writelane_b32 v40, s5, 1 +; GFX11-NEXT: v_writelane_b32 v40, s30, 2 +; GFX11-NEXT: v_writelane_b32 v40, s31, 3 ; GFX11-NEXT: s_mov_b32 s4, 0x40003c00 -; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: s_movk_i32 s5, 0x4400 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v3f16_inreg@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v3f16_inreg@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s5, 1 -; GFX11-NEXT: s_movk_i32 s5, 0x4400 -; GFX11-NEXT: v_writelane_b32 v40, s30, 2 -; GFX11-NEXT: v_writelane_b32 v40, s31, 3 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 3 ; GFX11-NEXT: v_readlane_b32 s30, v40, 2 +; GFX11-NEXT: v_readlane_b32 s31, v40, 3 ; GFX11-NEXT: v_readlane_b32 s5, v40, 1 ; GFX11-NEXT: v_readlane_b32 s4, v40, 0 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 @@ -11213,20 +11290,20 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s5, 1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 2 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-SCRATCH-NEXT: s_mov_b32 s4, 0x40003c00 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: s_movk_i32 s5, 0x4400 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v3f16_inreg@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v3f16_inreg@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s5, 1 -; GFX10-SCRATCH-NEXT: s_movk_i32 s5, 0x4400 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 2 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 2 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s5, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 @@ -11254,19 +11331,19 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s5, 1 -; GFX9-NEXT: s_load_dwordx2 s[4:5], s[34:35], 0x0 -; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s30, 2 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s31, 3 +; GFX9-NEXT: s_load_dwordx2 s[4:5], s[34:35], 0x0 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v4i16_inreg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v4i16_inreg@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 3 ; GFX9-NEXT: v_readlane_b32 s30, v40, 2 +; GFX9-NEXT: v_readlane_b32 s31, v40, 3 ; GFX9-NEXT: v_readlane_b32 s5, v40, 1 ; GFX9-NEXT: v_readlane_b32 s4, v40, 0 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 @@ -11290,19 +11367,19 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: v_writelane_b32 v40, s4, 0 -; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-NEXT: v_writelane_b32 v40, s5, 1 +; GFX10-NEXT: v_writelane_b32 v40, s30, 2 +; GFX10-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-NEXT: s_load_dwordx2 s[4:5], s[34:35], 0x0 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v4i16_inreg@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v4i16_inreg@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s30, 2 -; GFX10-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-NEXT: v_readlane_b32 s30, v40, 2 +; GFX10-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-NEXT: v_readlane_b32 s5, v40, 1 ; GFX10-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 @@ -11326,22 +11403,23 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: v_writelane_b32 v40, s4, 0 -; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s4, 0 ; GFX11-NEXT: v_writelane_b32 v40, s5, 1 +; GFX11-NEXT: v_writelane_b32 v40, s30, 2 +; GFX11-NEXT: v_writelane_b32 v40, s31, 3 ; GFX11-NEXT: s_load_b64 s[4:5], s[0:1], 0x0 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v4i16_inreg@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v4i16_inreg@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s30, 2 -; GFX11-NEXT: v_writelane_b32 v40, s31, 3 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 3 ; GFX11-NEXT: v_readlane_b32 s30, v40, 2 +; GFX11-NEXT: v_readlane_b32 s31, v40, 3 ; GFX11-NEXT: v_readlane_b32 s5, v40, 1 ; GFX11-NEXT: v_readlane_b32 s4, v40, 0 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 @@ -11366,19 +11444,19 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s5, 1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 2 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-SCRATCH-NEXT: s_load_dwordx2 s[4:5], s[0:1], 0x0 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v4i16_inreg@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v4i16_inreg@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 2 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 2 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s5, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 @@ -11407,20 +11485,20 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s5, 1 -; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s30, 2 +; GFX9-NEXT: v_writelane_b32 v40, s31, 3 ; GFX9-NEXT: s_mov_b32 s4, 0x20001 ; GFX9-NEXT: s_mov_b32 s5, 0x40003 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 3 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v4i16_inreg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v4i16_inreg@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 3 ; GFX9-NEXT: v_readlane_b32 s30, v40, 2 +; GFX9-NEXT: v_readlane_b32 s31, v40, 3 ; GFX9-NEXT: v_readlane_b32 s5, v40, 1 ; GFX9-NEXT: v_readlane_b32 s4, v40, 0 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 @@ -11444,20 +11522,20 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v40, s4, 0 +; GFX10-NEXT: v_writelane_b32 v40, s5, 1 +; GFX10-NEXT: v_writelane_b32 v40, s30, 2 +; GFX10-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-NEXT: s_mov_b32 s4, 0x20001 -; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: s_mov_b32 s5, 0x40003 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v4i16_inreg@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v4i16_inreg@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s5, 1 -; GFX10-NEXT: s_mov_b32 s5, 0x40003 -; GFX10-NEXT: v_writelane_b32 v40, s30, 2 -; GFX10-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-NEXT: v_readlane_b32 s30, v40, 2 +; GFX10-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-NEXT: v_readlane_b32 s5, v40, 1 ; GFX10-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 @@ -11481,23 +11559,24 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v40, s4, 0 +; GFX11-NEXT: v_writelane_b32 v40, s5, 1 +; GFX11-NEXT: v_writelane_b32 v40, s30, 2 +; GFX11-NEXT: v_writelane_b32 v40, s31, 3 ; GFX11-NEXT: s_mov_b32 s4, 0x20001 -; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: s_mov_b32 s5, 0x40003 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v4i16_inreg@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v4i16_inreg@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s5, 1 -; GFX11-NEXT: s_mov_b32 s5, 0x40003 -; GFX11-NEXT: v_writelane_b32 v40, s30, 2 -; GFX11-NEXT: v_writelane_b32 v40, s31, 3 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 3 ; GFX11-NEXT: v_readlane_b32 s30, v40, 2 +; GFX11-NEXT: v_readlane_b32 s31, v40, 3 ; GFX11-NEXT: v_readlane_b32 s5, v40, 1 ; GFX11-NEXT: v_readlane_b32 s4, v40, 0 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 @@ -11522,20 +11601,20 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s5, 1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 2 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-SCRATCH-NEXT: s_mov_b32 s4, 0x20001 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: s_mov_b32 s5, 0x40003 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v4i16_inreg@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v4i16_inreg@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s5, 1 -; GFX10-SCRATCH-NEXT: s_mov_b32 s5, 0x40003 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 2 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 2 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s5, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 @@ -11563,18 +11642,18 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: v_writelane_b32 v40, s4, 0 -; GFX9-NEXT: s_load_dword s4, s[34:35], 0x0 +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s30, 1 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s31, 2 +; GFX9-NEXT: s_load_dword s4, s[34:35], 0x0 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v2f16_inreg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v2f16_inreg@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 2 ; GFX9-NEXT: v_readlane_b32 s30, v40, 1 +; GFX9-NEXT: v_readlane_b32 s31, v40, 2 ; GFX9-NEXT: v_readlane_b32 s4, v40, 0 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 @@ -11597,18 +11676,18 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v40, s4, 0 +; GFX10-NEXT: v_writelane_b32 v40, s30, 1 +; GFX10-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-NEXT: s_load_dword s4, s[34:35], 0x0 -; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v2f16_inreg@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v2f16_inreg@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s30, 1 -; GFX10-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 2 ; GFX10-NEXT: v_readlane_b32 s30, v40, 1 +; GFX10-NEXT: v_readlane_b32 s31, v40, 2 ; GFX10-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 @@ -11631,21 +11710,22 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v40, s4, 0 +; GFX11-NEXT: v_writelane_b32 v40, s30, 1 +; GFX11-NEXT: v_writelane_b32 v40, s31, 2 ; GFX11-NEXT: s_load_b32 s4, s[0:1], 0x0 -; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v2f16_inreg@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v2f16_inreg@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s30, 1 -; GFX11-NEXT: v_writelane_b32 v40, s31, 2 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 2 ; GFX11-NEXT: v_readlane_b32 s30, v40, 1 +; GFX11-NEXT: v_readlane_b32 s31, v40, 2 ; GFX11-NEXT: v_readlane_b32 s4, v40, 0 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 @@ -11669,18 +11749,18 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-SCRATCH-NEXT: s_load_dword s4, s[0:1], 0x0 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v2f16_inreg@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v2f16_inreg@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 1 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 2 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 1 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 2 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 @@ -11708,19 +11788,19 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s5, 1 -; GFX9-NEXT: s_load_dwordx2 s[4:5], s[34:35], 0x0 -; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s30, 2 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s31, 3 +; GFX9-NEXT: s_load_dwordx2 s[4:5], s[34:35], 0x0 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v2i32_inreg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v2i32_inreg@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 3 ; GFX9-NEXT: v_readlane_b32 s30, v40, 2 +; GFX9-NEXT: v_readlane_b32 s31, v40, 3 ; GFX9-NEXT: v_readlane_b32 s5, v40, 1 ; GFX9-NEXT: v_readlane_b32 s4, v40, 0 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 @@ -11743,20 +11823,20 @@ ; GFX10-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 -; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: v_writelane_b32 v40, s4, 0 -; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: s_mov_b32 exec_lo, s35 ; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-NEXT: v_writelane_b32 v40, s5, 1 +; GFX10-NEXT: v_writelane_b32 v40, s30, 2 +; GFX10-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-NEXT: s_load_dwordx2 s[4:5], s[34:35], 0x0 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v2i32_inreg@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v2i32_inreg@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s30, 2 -; GFX10-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-NEXT: v_readlane_b32 s30, v40, 2 +; GFX10-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-NEXT: v_readlane_b32 s5, v40, 1 ; GFX10-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 @@ -11780,22 +11860,23 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: v_writelane_b32 v40, s4, 0 -; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s4, 0 ; GFX11-NEXT: v_writelane_b32 v40, s5, 1 +; GFX11-NEXT: v_writelane_b32 v40, s30, 2 +; GFX11-NEXT: v_writelane_b32 v40, s31, 3 ; GFX11-NEXT: s_load_b64 s[4:5], s[0:1], 0x0 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v2i32_inreg@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v2i32_inreg@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s30, 2 -; GFX11-NEXT: v_writelane_b32 v40, s31, 3 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 3 ; GFX11-NEXT: v_readlane_b32 s30, v40, 2 +; GFX11-NEXT: v_readlane_b32 s31, v40, 3 ; GFX11-NEXT: v_readlane_b32 s5, v40, 1 ; GFX11-NEXT: v_readlane_b32 s4, v40, 0 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 @@ -11820,19 +11901,19 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s5, 1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 2 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-SCRATCH-NEXT: s_load_dwordx2 s[4:5], s[0:1], 0x0 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v2i32_inreg@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v2i32_inreg@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 2 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 2 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s5, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 @@ -11861,20 +11942,20 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s5, 1 -; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s30, 2 +; GFX9-NEXT: v_writelane_b32 v40, s31, 3 ; GFX9-NEXT: s_mov_b32 s4, 1 ; GFX9-NEXT: s_mov_b32 s5, 2 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 3 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v2i32_inreg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v2i32_inreg@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 3 ; GFX9-NEXT: v_readlane_b32 s30, v40, 2 +; GFX9-NEXT: v_readlane_b32 s31, v40, 3 ; GFX9-NEXT: v_readlane_b32 s5, v40, 1 ; GFX9-NEXT: v_readlane_b32 s4, v40, 0 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 @@ -11898,20 +11979,20 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v40, s4, 0 +; GFX10-NEXT: v_writelane_b32 v40, s5, 1 +; GFX10-NEXT: v_writelane_b32 v40, s30, 2 +; GFX10-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-NEXT: s_mov_b32 s4, 1 -; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: s_mov_b32 s5, 2 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v2i32_inreg@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v2i32_inreg@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s5, 1 -; GFX10-NEXT: s_mov_b32 s5, 2 -; GFX10-NEXT: v_writelane_b32 v40, s30, 2 -; GFX10-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-NEXT: v_readlane_b32 s30, v40, 2 +; GFX10-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-NEXT: v_readlane_b32 s5, v40, 1 ; GFX10-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 @@ -11935,23 +12016,24 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v40, s4, 0 +; GFX11-NEXT: v_writelane_b32 v40, s5, 1 +; GFX11-NEXT: v_writelane_b32 v40, s30, 2 +; GFX11-NEXT: v_writelane_b32 v40, s31, 3 ; GFX11-NEXT: s_mov_b32 s4, 1 -; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: s_mov_b32 s5, 2 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v2i32_inreg@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v2i32_inreg@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s5, 1 -; GFX11-NEXT: s_mov_b32 s5, 2 -; GFX11-NEXT: v_writelane_b32 v40, s30, 2 -; GFX11-NEXT: v_writelane_b32 v40, s31, 3 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 3 ; GFX11-NEXT: v_readlane_b32 s30, v40, 2 +; GFX11-NEXT: v_readlane_b32 s31, v40, 3 ; GFX11-NEXT: v_readlane_b32 s5, v40, 1 ; GFX11-NEXT: v_readlane_b32 s4, v40, 0 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 @@ -11976,20 +12058,20 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s5, 1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 2 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-SCRATCH-NEXT: s_mov_b32 s4, 1 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: s_mov_b32 s5, 2 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v2i32_inreg@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v2i32_inreg@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s5, 1 -; GFX10-SCRATCH-NEXT: s_mov_b32 s5, 2 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 2 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 2 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s5, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 @@ -12017,22 +12099,22 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s5, 1 ; GFX9-NEXT: v_writelane_b32 v40, s6, 2 -; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s30, 3 +; GFX9-NEXT: v_writelane_b32 v40, s31, 4 ; GFX9-NEXT: s_mov_b32 s4, 3 ; GFX9-NEXT: s_mov_b32 s5, 4 ; GFX9-NEXT: s_mov_b32 s6, 5 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 4 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v3i32_inreg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v3i32_inreg@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 4 ; GFX9-NEXT: v_readlane_b32 s30, v40, 3 +; GFX9-NEXT: v_readlane_b32 s31, v40, 4 ; GFX9-NEXT: v_readlane_b32 s6, v40, 2 ; GFX9-NEXT: v_readlane_b32 s5, v40, 1 ; GFX9-NEXT: v_readlane_b32 s4, v40, 0 @@ -12057,22 +12139,22 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: v_writelane_b32 v40, s4, 0 -; GFX10-NEXT: s_mov_b32 s4, 3 -; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: s_getpc_b64 s[34:35] -; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v3i32_inreg@rel32@lo+4 -; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v3i32_inreg@rel32@hi+12 +; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-NEXT: v_writelane_b32 v40, s5, 1 -; GFX10-NEXT: s_mov_b32 s5, 4 ; GFX10-NEXT: v_writelane_b32 v40, s6, 2 -; GFX10-NEXT: s_mov_b32 s6, 5 ; GFX10-NEXT: v_writelane_b32 v40, s30, 3 ; GFX10-NEXT: v_writelane_b32 v40, s31, 4 +; GFX10-NEXT: s_mov_b32 s4, 3 +; GFX10-NEXT: s_mov_b32 s5, 4 +; GFX10-NEXT: s_mov_b32 s6, 5 +; GFX10-NEXT: s_getpc_b64 s[34:35] +; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v3i32_inreg@rel32@lo+4 +; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v3i32_inreg@rel32@hi+12 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 4 ; GFX10-NEXT: v_readlane_b32 s30, v40, 3 +; GFX10-NEXT: v_readlane_b32 s31, v40, 4 ; GFX10-NEXT: v_readlane_b32 s6, v40, 2 ; GFX10-NEXT: v_readlane_b32 s5, v40, 1 ; GFX10-NEXT: v_readlane_b32 s4, v40, 0 @@ -12097,25 +12179,26 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: v_writelane_b32 v40, s4, 0 -; GFX11-NEXT: s_mov_b32 s4, 3 -; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v41, s0, 0 -; GFX11-NEXT: s_getpc_b64 s[0:1] -; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v3i32_inreg@rel32@lo+4 -; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v3i32_inreg@rel32@hi+12 +; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s4, 0 ; GFX11-NEXT: v_writelane_b32 v40, s5, 1 -; GFX11-NEXT: s_mov_b32 s5, 4 ; GFX11-NEXT: v_writelane_b32 v40, s6, 2 -; GFX11-NEXT: s_mov_b32 s6, 5 ; GFX11-NEXT: v_writelane_b32 v40, s30, 3 ; GFX11-NEXT: v_writelane_b32 v40, s31, 4 +; GFX11-NEXT: s_mov_b32 s4, 3 +; GFX11-NEXT: s_mov_b32 s5, 4 +; GFX11-NEXT: s_mov_b32 s6, 5 +; GFX11-NEXT: s_getpc_b64 s[0:1] +; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v3i32_inreg@rel32@lo+4 +; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v3i32_inreg@rel32@hi+12 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 4 ; GFX11-NEXT: v_readlane_b32 s30, v40, 3 +; GFX11-NEXT: v_readlane_b32 s31, v40, 4 ; GFX11-NEXT: v_readlane_b32 s6, v40, 2 ; GFX11-NEXT: v_readlane_b32 s5, v40, 1 ; GFX11-NEXT: v_readlane_b32 s4, v40, 0 @@ -12141,22 +12224,22 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 -; GFX10-SCRATCH-NEXT: s_mov_b32 s4, 3 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] -; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v3i32_inreg@rel32@lo+4 -; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v3i32_inreg@rel32@hi+12 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s5, 1 -; GFX10-SCRATCH-NEXT: s_mov_b32 s5, 4 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s6, 2 -; GFX10-SCRATCH-NEXT: s_mov_b32 s6, 5 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 3 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 4 +; GFX10-SCRATCH-NEXT: s_mov_b32 s4, 3 +; GFX10-SCRATCH-NEXT: s_mov_b32 s5, 4 +; GFX10-SCRATCH-NEXT: s_mov_b32 s6, 5 +; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] +; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v3i32_inreg@rel32@lo+4 +; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v3i32_inreg@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 4 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 3 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 4 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s6, v40, 2 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s5, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s4, v40, 0 @@ -12185,24 +12268,24 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s5, 1 ; GFX9-NEXT: v_writelane_b32 v40, s6, 2 ; GFX9-NEXT: v_writelane_b32 v40, s7, 3 -; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s30, 4 +; GFX9-NEXT: v_writelane_b32 v40, s31, 5 ; GFX9-NEXT: s_mov_b32 s4, 3 ; GFX9-NEXT: s_mov_b32 s5, 4 ; GFX9-NEXT: s_mov_b32 s6, 5 ; GFX9-NEXT: s_mov_b32 s7, 6 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 5 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v3i32_i32_inreg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v3i32_i32_inreg@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 5 ; GFX9-NEXT: v_readlane_b32 s30, v40, 4 +; GFX9-NEXT: v_readlane_b32 s31, v40, 5 ; GFX9-NEXT: v_readlane_b32 s7, v40, 3 ; GFX9-NEXT: v_readlane_b32 s6, v40, 2 ; GFX9-NEXT: v_readlane_b32 s5, v40, 1 @@ -12228,24 +12311,24 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: v_writelane_b32 v40, s4, 0 -; GFX10-NEXT: s_mov_b32 s4, 3 -; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: s_getpc_b64 s[34:35] -; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v3i32_i32_inreg@rel32@lo+4 -; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v3i32_i32_inreg@rel32@hi+12 +; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-NEXT: v_writelane_b32 v40, s5, 1 -; GFX10-NEXT: s_mov_b32 s5, 4 ; GFX10-NEXT: v_writelane_b32 v40, s6, 2 -; GFX10-NEXT: s_mov_b32 s6, 5 ; GFX10-NEXT: v_writelane_b32 v40, s7, 3 -; GFX10-NEXT: s_mov_b32 s7, 6 ; GFX10-NEXT: v_writelane_b32 v40, s30, 4 ; GFX10-NEXT: v_writelane_b32 v40, s31, 5 +; GFX10-NEXT: s_mov_b32 s4, 3 +; GFX10-NEXT: s_mov_b32 s5, 4 +; GFX10-NEXT: s_mov_b32 s6, 5 +; GFX10-NEXT: s_mov_b32 s7, 6 +; GFX10-NEXT: s_getpc_b64 s[34:35] +; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v3i32_i32_inreg@rel32@lo+4 +; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v3i32_i32_inreg@rel32@hi+12 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 5 ; GFX10-NEXT: v_readlane_b32 s30, v40, 4 +; GFX10-NEXT: v_readlane_b32 s31, v40, 5 ; GFX10-NEXT: v_readlane_b32 s7, v40, 3 ; GFX10-NEXT: v_readlane_b32 s6, v40, 2 ; GFX10-NEXT: v_readlane_b32 s5, v40, 1 @@ -12271,27 +12354,28 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: v_writelane_b32 v40, s4, 0 -; GFX11-NEXT: s_mov_b32 s4, 3 -; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v41, s0, 0 -; GFX11-NEXT: s_getpc_b64 s[0:1] -; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v3i32_i32_inreg@rel32@lo+4 -; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v3i32_i32_inreg@rel32@hi+12 +; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s4, 0 ; GFX11-NEXT: v_writelane_b32 v40, s5, 1 -; GFX11-NEXT: s_mov_b32 s5, 4 ; GFX11-NEXT: v_writelane_b32 v40, s6, 2 -; GFX11-NEXT: s_mov_b32 s6, 5 ; GFX11-NEXT: v_writelane_b32 v40, s7, 3 -; GFX11-NEXT: s_mov_b32 s7, 6 ; GFX11-NEXT: v_writelane_b32 v40, s30, 4 ; GFX11-NEXT: v_writelane_b32 v40, s31, 5 +; GFX11-NEXT: s_mov_b32 s4, 3 +; GFX11-NEXT: s_mov_b32 s5, 4 +; GFX11-NEXT: s_mov_b32 s6, 5 +; GFX11-NEXT: s_mov_b32 s7, 6 +; GFX11-NEXT: s_getpc_b64 s[0:1] +; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v3i32_i32_inreg@rel32@lo+4 +; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v3i32_i32_inreg@rel32@hi+12 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 5 ; GFX11-NEXT: v_readlane_b32 s30, v40, 4 +; GFX11-NEXT: v_readlane_b32 s31, v40, 5 ; GFX11-NEXT: v_readlane_b32 s7, v40, 3 ; GFX11-NEXT: v_readlane_b32 s6, v40, 2 ; GFX11-NEXT: v_readlane_b32 s5, v40, 1 @@ -12318,24 +12402,24 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 -; GFX10-SCRATCH-NEXT: s_mov_b32 s4, 3 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] -; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v3i32_i32_inreg@rel32@lo+4 -; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v3i32_i32_inreg@rel32@hi+12 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s5, 1 -; GFX10-SCRATCH-NEXT: s_mov_b32 s5, 4 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s6, 2 -; GFX10-SCRATCH-NEXT: s_mov_b32 s6, 5 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s7, 3 -; GFX10-SCRATCH-NEXT: s_mov_b32 s7, 6 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 4 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 5 +; GFX10-SCRATCH-NEXT: s_mov_b32 s4, 3 +; GFX10-SCRATCH-NEXT: s_mov_b32 s5, 4 +; GFX10-SCRATCH-NEXT: s_mov_b32 s6, 5 +; GFX10-SCRATCH-NEXT: s_mov_b32 s7, 6 +; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] +; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v3i32_i32_inreg@rel32@lo+4 +; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v3i32_i32_inreg@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 5 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 4 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 5 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s7, v40, 3 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s6, v40, 2 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s5, v40, 1 @@ -12365,21 +12449,21 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s5, 1 ; GFX9-NEXT: v_writelane_b32 v40, s6, 2 ; GFX9-NEXT: v_writelane_b32 v40, s7, 3 -; GFX9-NEXT: s_load_dwordx4 s[4:7], s[34:35], 0x0 -; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s30, 4 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s31, 5 +; GFX9-NEXT: s_load_dwordx4 s[4:7], s[34:35], 0x0 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v4i32_inreg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v4i32_inreg@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 5 ; GFX9-NEXT: v_readlane_b32 s30, v40, 4 +; GFX9-NEXT: v_readlane_b32 s31, v40, 5 ; GFX9-NEXT: v_readlane_b32 s7, v40, 3 ; GFX9-NEXT: v_readlane_b32 s6, v40, 2 ; GFX9-NEXT: v_readlane_b32 s5, v40, 1 @@ -12405,21 +12489,21 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: v_writelane_b32 v40, s4, 0 -; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-NEXT: v_writelane_b32 v40, s5, 1 ; GFX10-NEXT: v_writelane_b32 v40, s6, 2 ; GFX10-NEXT: v_writelane_b32 v40, s7, 3 +; GFX10-NEXT: v_writelane_b32 v40, s30, 4 +; GFX10-NEXT: v_writelane_b32 v40, s31, 5 ; GFX10-NEXT: s_load_dwordx4 s[4:7], s[34:35], 0x0 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v4i32_inreg@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v4i32_inreg@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s30, 4 -; GFX10-NEXT: v_writelane_b32 v40, s31, 5 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 5 ; GFX10-NEXT: v_readlane_b32 s30, v40, 4 +; GFX10-NEXT: v_readlane_b32 s31, v40, 5 ; GFX10-NEXT: v_readlane_b32 s7, v40, 3 ; GFX10-NEXT: v_readlane_b32 s6, v40, 2 ; GFX10-NEXT: v_readlane_b32 s5, v40, 1 @@ -12445,24 +12529,25 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: v_writelane_b32 v40, s4, 0 -; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s4, 0 ; GFX11-NEXT: v_writelane_b32 v40, s5, 1 ; GFX11-NEXT: v_writelane_b32 v40, s6, 2 ; GFX11-NEXT: v_writelane_b32 v40, s7, 3 +; GFX11-NEXT: v_writelane_b32 v40, s30, 4 +; GFX11-NEXT: v_writelane_b32 v40, s31, 5 ; GFX11-NEXT: s_load_b128 s[4:7], s[0:1], 0x0 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v4i32_inreg@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v4i32_inreg@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s30, 4 -; GFX11-NEXT: v_writelane_b32 v40, s31, 5 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 5 ; GFX11-NEXT: v_readlane_b32 s30, v40, 4 +; GFX11-NEXT: v_readlane_b32 s31, v40, 5 ; GFX11-NEXT: v_readlane_b32 s7, v40, 3 ; GFX11-NEXT: v_readlane_b32 s6, v40, 2 ; GFX11-NEXT: v_readlane_b32 s5, v40, 1 @@ -12489,21 +12574,21 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s5, 1 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s6, 2 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s7, 3 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 4 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 5 ; GFX10-SCRATCH-NEXT: s_load_dwordx4 s[4:7], s[0:1], 0x0 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v4i32_inreg@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v4i32_inreg@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 4 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 5 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 5 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 4 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 5 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s7, v40, 3 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s6, v40, 2 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s5, v40, 1 @@ -12534,24 +12619,24 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s5, 1 ; GFX9-NEXT: v_writelane_b32 v40, s6, 2 ; GFX9-NEXT: v_writelane_b32 v40, s7, 3 -; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s30, 4 +; GFX9-NEXT: v_writelane_b32 v40, s31, 5 ; GFX9-NEXT: s_mov_b32 s4, 1 ; GFX9-NEXT: s_mov_b32 s5, 2 ; GFX9-NEXT: s_mov_b32 s6, 3 ; GFX9-NEXT: s_mov_b32 s7, 4 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 5 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v4i32_inreg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v4i32_inreg@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 5 ; GFX9-NEXT: v_readlane_b32 s30, v40, 4 +; GFX9-NEXT: v_readlane_b32 s31, v40, 5 ; GFX9-NEXT: v_readlane_b32 s7, v40, 3 ; GFX9-NEXT: v_readlane_b32 s6, v40, 2 ; GFX9-NEXT: v_readlane_b32 s5, v40, 1 @@ -12577,24 +12662,24 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: v_writelane_b32 v40, s4, 0 -; GFX10-NEXT: s_mov_b32 s4, 1 -; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: s_getpc_b64 s[34:35] -; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v4i32_inreg@rel32@lo+4 -; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v4i32_inreg@rel32@hi+12 +; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-NEXT: v_writelane_b32 v40, s5, 1 -; GFX10-NEXT: s_mov_b32 s5, 2 ; GFX10-NEXT: v_writelane_b32 v40, s6, 2 -; GFX10-NEXT: s_mov_b32 s6, 3 ; GFX10-NEXT: v_writelane_b32 v40, s7, 3 -; GFX10-NEXT: s_mov_b32 s7, 4 ; GFX10-NEXT: v_writelane_b32 v40, s30, 4 ; GFX10-NEXT: v_writelane_b32 v40, s31, 5 +; GFX10-NEXT: s_mov_b32 s4, 1 +; GFX10-NEXT: s_mov_b32 s5, 2 +; GFX10-NEXT: s_mov_b32 s6, 3 +; GFX10-NEXT: s_mov_b32 s7, 4 +; GFX10-NEXT: s_getpc_b64 s[34:35] +; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v4i32_inreg@rel32@lo+4 +; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v4i32_inreg@rel32@hi+12 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 5 ; GFX10-NEXT: v_readlane_b32 s30, v40, 4 +; GFX10-NEXT: v_readlane_b32 s31, v40, 5 ; GFX10-NEXT: v_readlane_b32 s7, v40, 3 ; GFX10-NEXT: v_readlane_b32 s6, v40, 2 ; GFX10-NEXT: v_readlane_b32 s5, v40, 1 @@ -12620,27 +12705,28 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: v_writelane_b32 v40, s4, 0 -; GFX11-NEXT: s_mov_b32 s4, 1 -; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v41, s0, 0 -; GFX11-NEXT: s_getpc_b64 s[0:1] -; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v4i32_inreg@rel32@lo+4 -; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v4i32_inreg@rel32@hi+12 +; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s4, 0 ; GFX11-NEXT: v_writelane_b32 v40, s5, 1 -; GFX11-NEXT: s_mov_b32 s5, 2 ; GFX11-NEXT: v_writelane_b32 v40, s6, 2 -; GFX11-NEXT: s_mov_b32 s6, 3 ; GFX11-NEXT: v_writelane_b32 v40, s7, 3 -; GFX11-NEXT: s_mov_b32 s7, 4 ; GFX11-NEXT: v_writelane_b32 v40, s30, 4 ; GFX11-NEXT: v_writelane_b32 v40, s31, 5 +; GFX11-NEXT: s_mov_b32 s4, 1 +; GFX11-NEXT: s_mov_b32 s5, 2 +; GFX11-NEXT: s_mov_b32 s6, 3 +; GFX11-NEXT: s_mov_b32 s7, 4 +; GFX11-NEXT: s_getpc_b64 s[0:1] +; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v4i32_inreg@rel32@lo+4 +; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v4i32_inreg@rel32@hi+12 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 5 ; GFX11-NEXT: v_readlane_b32 s30, v40, 4 +; GFX11-NEXT: v_readlane_b32 s31, v40, 5 ; GFX11-NEXT: v_readlane_b32 s7, v40, 3 ; GFX11-NEXT: v_readlane_b32 s6, v40, 2 ; GFX11-NEXT: v_readlane_b32 s5, v40, 1 @@ -12667,24 +12753,24 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 -; GFX10-SCRATCH-NEXT: s_mov_b32 s4, 1 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] -; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v4i32_inreg@rel32@lo+4 -; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v4i32_inreg@rel32@hi+12 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s5, 1 -; GFX10-SCRATCH-NEXT: s_mov_b32 s5, 2 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s6, 2 -; GFX10-SCRATCH-NEXT: s_mov_b32 s6, 3 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s7, 3 -; GFX10-SCRATCH-NEXT: s_mov_b32 s7, 4 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 4 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 5 +; GFX10-SCRATCH-NEXT: s_mov_b32 s4, 1 +; GFX10-SCRATCH-NEXT: s_mov_b32 s5, 2 +; GFX10-SCRATCH-NEXT: s_mov_b32 s6, 3 +; GFX10-SCRATCH-NEXT: s_mov_b32 s7, 4 +; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] +; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v4i32_inreg@rel32@lo+4 +; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v4i32_inreg@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 5 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 4 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 5 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s7, v40, 3 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s6, v40, 2 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s5, v40, 1 @@ -12714,26 +12800,26 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s5, 1 ; GFX9-NEXT: v_writelane_b32 v40, s6, 2 ; GFX9-NEXT: v_writelane_b32 v40, s7, 3 ; GFX9-NEXT: v_writelane_b32 v40, s8, 4 -; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s30, 5 +; GFX9-NEXT: v_writelane_b32 v40, s31, 6 ; GFX9-NEXT: s_mov_b32 s4, 1 ; GFX9-NEXT: s_mov_b32 s5, 2 ; GFX9-NEXT: s_mov_b32 s6, 3 ; GFX9-NEXT: s_mov_b32 s7, 4 ; GFX9-NEXT: s_mov_b32 s8, 5 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 6 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v5i32_inreg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v5i32_inreg@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 6 ; GFX9-NEXT: v_readlane_b32 s30, v40, 5 +; GFX9-NEXT: v_readlane_b32 s31, v40, 6 ; GFX9-NEXT: v_readlane_b32 s8, v40, 4 ; GFX9-NEXT: v_readlane_b32 s7, v40, 3 ; GFX9-NEXT: v_readlane_b32 s6, v40, 2 @@ -12760,26 +12846,26 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: v_writelane_b32 v40, s4, 0 -; GFX10-NEXT: s_mov_b32 s4, 1 -; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: s_getpc_b64 s[34:35] -; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v5i32_inreg@rel32@lo+4 -; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v5i32_inreg@rel32@hi+12 +; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-NEXT: v_writelane_b32 v40, s5, 1 -; GFX10-NEXT: s_mov_b32 s5, 2 ; GFX10-NEXT: v_writelane_b32 v40, s6, 2 -; GFX10-NEXT: s_mov_b32 s6, 3 ; GFX10-NEXT: v_writelane_b32 v40, s7, 3 -; GFX10-NEXT: s_mov_b32 s7, 4 ; GFX10-NEXT: v_writelane_b32 v40, s8, 4 -; GFX10-NEXT: s_mov_b32 s8, 5 ; GFX10-NEXT: v_writelane_b32 v40, s30, 5 ; GFX10-NEXT: v_writelane_b32 v40, s31, 6 +; GFX10-NEXT: s_mov_b32 s4, 1 +; GFX10-NEXT: s_mov_b32 s5, 2 +; GFX10-NEXT: s_mov_b32 s6, 3 +; GFX10-NEXT: s_mov_b32 s7, 4 +; GFX10-NEXT: s_mov_b32 s8, 5 +; GFX10-NEXT: s_getpc_b64 s[34:35] +; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v5i32_inreg@rel32@lo+4 +; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v5i32_inreg@rel32@hi+12 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 6 ; GFX10-NEXT: v_readlane_b32 s30, v40, 5 +; GFX10-NEXT: v_readlane_b32 s31, v40, 6 ; GFX10-NEXT: v_readlane_b32 s8, v40, 4 ; GFX10-NEXT: v_readlane_b32 s7, v40, 3 ; GFX10-NEXT: v_readlane_b32 s6, v40, 2 @@ -12806,29 +12892,30 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: v_writelane_b32 v40, s4, 0 -; GFX11-NEXT: s_mov_b32 s4, 1 -; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v41, s0, 0 -; GFX11-NEXT: s_getpc_b64 s[0:1] -; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v5i32_inreg@rel32@lo+4 -; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v5i32_inreg@rel32@hi+12 +; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s4, 0 ; GFX11-NEXT: v_writelane_b32 v40, s5, 1 -; GFX11-NEXT: s_mov_b32 s5, 2 ; GFX11-NEXT: v_writelane_b32 v40, s6, 2 -; GFX11-NEXT: s_mov_b32 s6, 3 ; GFX11-NEXT: v_writelane_b32 v40, s7, 3 -; GFX11-NEXT: s_mov_b32 s7, 4 ; GFX11-NEXT: v_writelane_b32 v40, s8, 4 -; GFX11-NEXT: s_mov_b32 s8, 5 ; GFX11-NEXT: v_writelane_b32 v40, s30, 5 ; GFX11-NEXT: v_writelane_b32 v40, s31, 6 +; GFX11-NEXT: s_mov_b32 s4, 1 +; GFX11-NEXT: s_mov_b32 s5, 2 +; GFX11-NEXT: s_mov_b32 s6, 3 +; GFX11-NEXT: s_mov_b32 s7, 4 +; GFX11-NEXT: s_mov_b32 s8, 5 +; GFX11-NEXT: s_getpc_b64 s[0:1] +; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v5i32_inreg@rel32@lo+4 +; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v5i32_inreg@rel32@hi+12 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 6 ; GFX11-NEXT: v_readlane_b32 s30, v40, 5 +; GFX11-NEXT: v_readlane_b32 s31, v40, 6 ; GFX11-NEXT: v_readlane_b32 s8, v40, 4 ; GFX11-NEXT: v_readlane_b32 s7, v40, 3 ; GFX11-NEXT: v_readlane_b32 s6, v40, 2 @@ -12856,26 +12943,26 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 -; GFX10-SCRATCH-NEXT: s_mov_b32 s4, 1 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] -; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v5i32_inreg@rel32@lo+4 -; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v5i32_inreg@rel32@hi+12 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s5, 1 -; GFX10-SCRATCH-NEXT: s_mov_b32 s5, 2 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s6, 2 -; GFX10-SCRATCH-NEXT: s_mov_b32 s6, 3 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s7, 3 -; GFX10-SCRATCH-NEXT: s_mov_b32 s7, 4 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s8, 4 -; GFX10-SCRATCH-NEXT: s_mov_b32 s8, 5 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 5 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 6 +; GFX10-SCRATCH-NEXT: s_mov_b32 s4, 1 +; GFX10-SCRATCH-NEXT: s_mov_b32 s5, 2 +; GFX10-SCRATCH-NEXT: s_mov_b32 s6, 3 +; GFX10-SCRATCH-NEXT: s_mov_b32 s7, 4 +; GFX10-SCRATCH-NEXT: s_mov_b32 s8, 5 +; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] +; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v5i32_inreg@rel32@lo+4 +; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v5i32_inreg@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 6 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 5 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 6 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s8, v40, 4 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s7, v40, 3 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s6, v40, 2 @@ -12906,27 +12993,27 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s5, 1 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s6, 2 -; GFX9-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 ; GFX9-NEXT: v_writelane_b32 v40, s7, 3 ; GFX9-NEXT: v_writelane_b32 v40, s8, 4 ; GFX9-NEXT: v_writelane_b32 v40, s9, 5 ; GFX9-NEXT: v_writelane_b32 v40, s10, 6 ; GFX9-NEXT: v_writelane_b32 v40, s11, 7 -; GFX9-NEXT: s_waitcnt lgkmcnt(0) -; GFX9-NEXT: s_load_dwordx8 s[4:11], s[34:35], 0x0 -; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s30, 8 ; GFX9-NEXT: v_writelane_b32 v40, s31, 9 +; GFX9-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 +; GFX9-NEXT: s_waitcnt lgkmcnt(0) +; GFX9-NEXT: s_load_dwordx8 s[4:11], s[34:35], 0x0 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v8i32_inreg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v8i32_inreg@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 9 ; GFX9-NEXT: v_readlane_b32 s30, v40, 8 +; GFX9-NEXT: v_readlane_b32 s31, v40, 9 ; GFX9-NEXT: v_readlane_b32 s11, v40, 7 ; GFX9-NEXT: v_readlane_b32 s10, v40, 6 ; GFX9-NEXT: v_readlane_b32 s9, v40, 5 @@ -12956,10 +13043,9 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-NEXT: v_writelane_b32 v40, s5, 1 ; GFX10-NEXT: v_writelane_b32 v40, s6, 2 ; GFX10-NEXT: v_writelane_b32 v40, s7, 3 @@ -12967,16 +13053,17 @@ ; GFX10-NEXT: v_writelane_b32 v40, s9, 5 ; GFX10-NEXT: v_writelane_b32 v40, s10, 6 ; GFX10-NEXT: v_writelane_b32 v40, s11, 7 +; GFX10-NEXT: v_writelane_b32 v40, s30, 8 +; GFX10-NEXT: v_writelane_b32 v40, s31, 9 +; GFX10-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 ; GFX10-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-NEXT: s_load_dwordx8 s[4:11], s[34:35], 0x0 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v8i32_inreg@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v8i32_inreg@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s30, 8 -; GFX10-NEXT: v_writelane_b32 v40, s31, 9 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 9 ; GFX10-NEXT: v_readlane_b32 s30, v40, 8 +; GFX10-NEXT: v_readlane_b32 s31, v40, 9 ; GFX10-NEXT: v_readlane_b32 s11, v40, 7 ; GFX10-NEXT: v_readlane_b32 s10, v40, 6 ; GFX10-NEXT: v_readlane_b32 s9, v40, 5 @@ -13006,12 +13093,12 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: v_writelane_b32 v40, s4, 0 ; GFX11-NEXT: v_writelane_b32 v41, s0, 0 -; GFX11-NEXT: s_load_b64 s[0:1], s[0:1], 0x0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s4, 0 ; GFX11-NEXT: v_writelane_b32 v40, s5, 1 ; GFX11-NEXT: v_writelane_b32 v40, s6, 2 ; GFX11-NEXT: v_writelane_b32 v40, s7, 3 @@ -13019,17 +13106,18 @@ ; GFX11-NEXT: v_writelane_b32 v40, s9, 5 ; GFX11-NEXT: v_writelane_b32 v40, s10, 6 ; GFX11-NEXT: v_writelane_b32 v40, s11, 7 +; GFX11-NEXT: v_writelane_b32 v40, s30, 8 +; GFX11-NEXT: v_writelane_b32 v40, s31, 9 +; GFX11-NEXT: s_load_b64 s[0:1], s[0:1], 0x0 ; GFX11-NEXT: s_waitcnt lgkmcnt(0) ; GFX11-NEXT: s_load_b256 s[4:11], s[0:1], 0x0 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v8i32_inreg@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v8i32_inreg@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s30, 8 -; GFX11-NEXT: v_writelane_b32 v40, s31, 9 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 9 ; GFX11-NEXT: v_readlane_b32 s30, v40, 8 +; GFX11-NEXT: v_readlane_b32 s31, v40, 9 ; GFX11-NEXT: v_readlane_b32 s11, v40, 7 ; GFX11-NEXT: v_readlane_b32 s10, v40, 6 ; GFX11-NEXT: v_readlane_b32 s9, v40, 5 @@ -13060,10 +13148,9 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x0 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s5, 1 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s6, 2 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s7, 3 @@ -13071,16 +13158,17 @@ ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s9, 5 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s10, 6 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s11, 7 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 8 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 9 +; GFX10-SCRATCH-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x0 ; GFX10-SCRATCH-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-SCRATCH-NEXT: s_load_dwordx8 s[4:11], s[0:1], 0x0 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v8i32_inreg@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v8i32_inreg@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 8 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 9 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 9 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 8 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 9 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s11, v40, 7 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s10, v40, 6 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s9, v40, 5 @@ -13116,6 +13204,8 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s5, 1 ; GFX9-NEXT: v_writelane_b32 v40, s6, 2 @@ -13124,8 +13214,8 @@ ; GFX9-NEXT: v_writelane_b32 v40, s9, 5 ; GFX9-NEXT: v_writelane_b32 v40, s10, 6 ; GFX9-NEXT: v_writelane_b32 v40, s11, 7 -; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s30, 8 +; GFX9-NEXT: v_writelane_b32 v40, s31, 9 ; GFX9-NEXT: s_mov_b32 s4, 1 ; GFX9-NEXT: s_mov_b32 s5, 2 ; GFX9-NEXT: s_mov_b32 s6, 3 @@ -13134,14 +13224,12 @@ ; GFX9-NEXT: s_mov_b32 s9, 6 ; GFX9-NEXT: s_mov_b32 s10, 7 ; GFX9-NEXT: s_mov_b32 s11, 8 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 9 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v8i32_inreg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v8i32_inreg@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 9 ; GFX9-NEXT: v_readlane_b32 s30, v40, 8 +; GFX9-NEXT: v_readlane_b32 s31, v40, 9 ; GFX9-NEXT: v_readlane_b32 s11, v40, 7 ; GFX9-NEXT: v_readlane_b32 s10, v40, 6 ; GFX9-NEXT: v_readlane_b32 s9, v40, 5 @@ -13171,32 +13259,32 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: v_writelane_b32 v40, s4, 0 -; GFX10-NEXT: s_mov_b32 s4, 1 -; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: s_getpc_b64 s[34:35] -; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v8i32_inreg@rel32@lo+4 -; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v8i32_inreg@rel32@hi+12 +; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-NEXT: v_writelane_b32 v40, s5, 1 -; GFX10-NEXT: s_mov_b32 s5, 2 ; GFX10-NEXT: v_writelane_b32 v40, s6, 2 -; GFX10-NEXT: s_mov_b32 s6, 3 ; GFX10-NEXT: v_writelane_b32 v40, s7, 3 -; GFX10-NEXT: s_mov_b32 s7, 4 ; GFX10-NEXT: v_writelane_b32 v40, s8, 4 -; GFX10-NEXT: s_mov_b32 s8, 5 ; GFX10-NEXT: v_writelane_b32 v40, s9, 5 -; GFX10-NEXT: s_mov_b32 s9, 6 ; GFX10-NEXT: v_writelane_b32 v40, s10, 6 -; GFX10-NEXT: s_mov_b32 s10, 7 ; GFX10-NEXT: v_writelane_b32 v40, s11, 7 -; GFX10-NEXT: s_mov_b32 s11, 8 ; GFX10-NEXT: v_writelane_b32 v40, s30, 8 ; GFX10-NEXT: v_writelane_b32 v40, s31, 9 +; GFX10-NEXT: s_mov_b32 s4, 1 +; GFX10-NEXT: s_mov_b32 s5, 2 +; GFX10-NEXT: s_mov_b32 s6, 3 +; GFX10-NEXT: s_mov_b32 s7, 4 +; GFX10-NEXT: s_mov_b32 s8, 5 +; GFX10-NEXT: s_mov_b32 s9, 6 +; GFX10-NEXT: s_mov_b32 s10, 7 +; GFX10-NEXT: s_mov_b32 s11, 8 +; GFX10-NEXT: s_getpc_b64 s[34:35] +; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v8i32_inreg@rel32@lo+4 +; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v8i32_inreg@rel32@hi+12 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 9 ; GFX10-NEXT: v_readlane_b32 s30, v40, 8 +; GFX10-NEXT: v_readlane_b32 s31, v40, 9 ; GFX10-NEXT: v_readlane_b32 s11, v40, 7 ; GFX10-NEXT: v_readlane_b32 s10, v40, 6 ; GFX10-NEXT: v_readlane_b32 s9, v40, 5 @@ -13226,35 +13314,36 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: v_writelane_b32 v40, s4, 0 -; GFX11-NEXT: s_mov_b32 s4, 1 -; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v41, s0, 0 -; GFX11-NEXT: s_getpc_b64 s[0:1] -; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v8i32_inreg@rel32@lo+4 -; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v8i32_inreg@rel32@hi+12 +; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s4, 0 ; GFX11-NEXT: v_writelane_b32 v40, s5, 1 -; GFX11-NEXT: s_mov_b32 s5, 2 ; GFX11-NEXT: v_writelane_b32 v40, s6, 2 -; GFX11-NEXT: s_mov_b32 s6, 3 ; GFX11-NEXT: v_writelane_b32 v40, s7, 3 -; GFX11-NEXT: s_mov_b32 s7, 4 ; GFX11-NEXT: v_writelane_b32 v40, s8, 4 -; GFX11-NEXT: s_mov_b32 s8, 5 ; GFX11-NEXT: v_writelane_b32 v40, s9, 5 -; GFX11-NEXT: s_mov_b32 s9, 6 ; GFX11-NEXT: v_writelane_b32 v40, s10, 6 -; GFX11-NEXT: s_mov_b32 s10, 7 ; GFX11-NEXT: v_writelane_b32 v40, s11, 7 -; GFX11-NEXT: s_mov_b32 s11, 8 ; GFX11-NEXT: v_writelane_b32 v40, s30, 8 ; GFX11-NEXT: v_writelane_b32 v40, s31, 9 +; GFX11-NEXT: s_mov_b32 s4, 1 +; GFX11-NEXT: s_mov_b32 s5, 2 +; GFX11-NEXT: s_mov_b32 s6, 3 +; GFX11-NEXT: s_mov_b32 s7, 4 +; GFX11-NEXT: s_mov_b32 s8, 5 +; GFX11-NEXT: s_mov_b32 s9, 6 +; GFX11-NEXT: s_mov_b32 s10, 7 +; GFX11-NEXT: s_mov_b32 s11, 8 +; GFX11-NEXT: s_getpc_b64 s[0:1] +; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v8i32_inreg@rel32@lo+4 +; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v8i32_inreg@rel32@hi+12 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 9 ; GFX11-NEXT: v_readlane_b32 s30, v40, 8 +; GFX11-NEXT: v_readlane_b32 s31, v40, 9 ; GFX11-NEXT: v_readlane_b32 s11, v40, 7 ; GFX11-NEXT: v_readlane_b32 s10, v40, 6 ; GFX11-NEXT: v_readlane_b32 s9, v40, 5 @@ -13284,33 +13373,33 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v40, s33 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 -; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 -; GFX10-SCRATCH-NEXT: s_mov_b32 s4, 1 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] -; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v8i32_inreg@rel32@lo+4 -; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v8i32_inreg@rel32@hi+12 +; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s5, 1 -; GFX10-SCRATCH-NEXT: s_mov_b32 s5, 2 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s6, 2 -; GFX10-SCRATCH-NEXT: s_mov_b32 s6, 3 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s7, 3 -; GFX10-SCRATCH-NEXT: s_mov_b32 s7, 4 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s8, 4 -; GFX10-SCRATCH-NEXT: s_mov_b32 s8, 5 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s9, 5 -; GFX10-SCRATCH-NEXT: s_mov_b32 s9, 6 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s10, 6 -; GFX10-SCRATCH-NEXT: s_mov_b32 s10, 7 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s11, 7 -; GFX10-SCRATCH-NEXT: s_mov_b32 s11, 8 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 8 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 9 +; GFX10-SCRATCH-NEXT: s_mov_b32 s4, 1 +; GFX10-SCRATCH-NEXT: s_mov_b32 s5, 2 +; GFX10-SCRATCH-NEXT: s_mov_b32 s6, 3 +; GFX10-SCRATCH-NEXT: s_mov_b32 s7, 4 +; GFX10-SCRATCH-NEXT: s_mov_b32 s8, 5 +; GFX10-SCRATCH-NEXT: s_mov_b32 s9, 6 +; GFX10-SCRATCH-NEXT: s_mov_b32 s10, 7 +; GFX10-SCRATCH-NEXT: s_mov_b32 s11, 8 +; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] +; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v8i32_inreg@rel32@lo+4 +; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v8i32_inreg@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 9 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 8 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 9 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s11, v40, 7 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s10, v40, 6 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s9, v40, 5 @@ -13344,6 +13433,8 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s5, 1 ; GFX9-NEXT: v_writelane_b32 v40, s6, 2 @@ -13354,25 +13445,23 @@ ; GFX9-NEXT: v_writelane_b32 v40, s11, 7 ; GFX9-NEXT: v_writelane_b32 v40, s12, 8 ; GFX9-NEXT: v_writelane_b32 v40, s13, 9 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s14, 10 -; GFX9-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 ; GFX9-NEXT: v_writelane_b32 v40, s15, 11 ; GFX9-NEXT: v_writelane_b32 v40, s16, 12 ; GFX9-NEXT: v_writelane_b32 v40, s17, 13 ; GFX9-NEXT: v_writelane_b32 v40, s18, 14 ; GFX9-NEXT: v_writelane_b32 v40, s19, 15 -; GFX9-NEXT: s_waitcnt lgkmcnt(0) -; GFX9-NEXT: s_load_dwordx16 s[4:19], s[34:35], 0x0 -; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s30, 16 ; GFX9-NEXT: v_writelane_b32 v40, s31, 17 +; GFX9-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 +; GFX9-NEXT: s_waitcnt lgkmcnt(0) +; GFX9-NEXT: s_load_dwordx16 s[4:19], s[34:35], 0x0 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v16i32_inreg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v16i32_inreg@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 17 ; GFX9-NEXT: v_readlane_b32 s30, v40, 16 +; GFX9-NEXT: v_readlane_b32 s31, v40, 17 ; GFX9-NEXT: v_readlane_b32 s19, v40, 15 ; GFX9-NEXT: v_readlane_b32 s18, v40, 14 ; GFX9-NEXT: v_readlane_b32 s17, v40, 13 @@ -13410,10 +13499,9 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-NEXT: v_writelane_b32 v40, s5, 1 ; GFX10-NEXT: v_writelane_b32 v40, s6, 2 ; GFX10-NEXT: v_writelane_b32 v40, s7, 3 @@ -13429,16 +13517,17 @@ ; GFX10-NEXT: v_writelane_b32 v40, s17, 13 ; GFX10-NEXT: v_writelane_b32 v40, s18, 14 ; GFX10-NEXT: v_writelane_b32 v40, s19, 15 +; GFX10-NEXT: v_writelane_b32 v40, s30, 16 +; GFX10-NEXT: v_writelane_b32 v40, s31, 17 +; GFX10-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 ; GFX10-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-NEXT: s_load_dwordx16 s[4:19], s[34:35], 0x0 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v16i32_inreg@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v16i32_inreg@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s30, 16 -; GFX10-NEXT: v_writelane_b32 v40, s31, 17 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 17 ; GFX10-NEXT: v_readlane_b32 s30, v40, 16 +; GFX10-NEXT: v_readlane_b32 s31, v40, 17 ; GFX10-NEXT: v_readlane_b32 s19, v40, 15 ; GFX10-NEXT: v_readlane_b32 s18, v40, 14 ; GFX10-NEXT: v_readlane_b32 s17, v40, 13 @@ -13476,12 +13565,12 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: v_writelane_b32 v40, s4, 0 ; GFX11-NEXT: v_writelane_b32 v41, s0, 0 -; GFX11-NEXT: s_load_b64 s[0:1], s[0:1], 0x0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s4, 0 ; GFX11-NEXT: v_writelane_b32 v40, s5, 1 ; GFX11-NEXT: v_writelane_b32 v40, s6, 2 ; GFX11-NEXT: v_writelane_b32 v40, s7, 3 @@ -13497,17 +13586,18 @@ ; GFX11-NEXT: v_writelane_b32 v40, s17, 13 ; GFX11-NEXT: v_writelane_b32 v40, s18, 14 ; GFX11-NEXT: v_writelane_b32 v40, s19, 15 +; GFX11-NEXT: v_writelane_b32 v40, s30, 16 +; GFX11-NEXT: v_writelane_b32 v40, s31, 17 +; GFX11-NEXT: s_load_b64 s[0:1], s[0:1], 0x0 ; GFX11-NEXT: s_waitcnt lgkmcnt(0) ; GFX11-NEXT: s_load_b512 s[4:19], s[0:1], 0x0 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v16i32_inreg@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v16i32_inreg@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s30, 16 -; GFX11-NEXT: v_writelane_b32 v40, s31, 17 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 17 ; GFX11-NEXT: v_readlane_b32 s30, v40, 16 +; GFX11-NEXT: v_readlane_b32 s31, v40, 17 ; GFX11-NEXT: v_readlane_b32 s19, v40, 15 ; GFX11-NEXT: v_readlane_b32 s18, v40, 14 ; GFX11-NEXT: v_readlane_b32 s17, v40, 13 @@ -13546,10 +13636,9 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x0 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s5, 1 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s6, 2 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s7, 3 @@ -13565,16 +13654,17 @@ ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s17, 13 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s18, 14 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s19, 15 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 17 +; GFX10-SCRATCH-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x0 ; GFX10-SCRATCH-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-SCRATCH-NEXT: s_load_dwordx16 s[4:19], s[0:1], 0x0 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v16i32_inreg@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v16i32_inreg@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 17 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 17 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 16 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 17 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s19, v40, 15 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s18, v40, 14 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s17, v40, 13 @@ -13618,6 +13708,8 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s5, 1 ; GFX9-NEXT: v_writelane_b32 v40, s6, 2 @@ -13633,25 +13725,28 @@ ; GFX9-NEXT: v_writelane_b32 v40, s16, 12 ; GFX9-NEXT: v_writelane_b32 v40, s17, 13 ; GFX9-NEXT: v_writelane_b32 v40, s18, 14 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s19, 15 -; GFX9-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 ; GFX9-NEXT: v_writelane_b32 v40, s20, 16 ; GFX9-NEXT: v_writelane_b32 v40, s21, 17 ; GFX9-NEXT: v_writelane_b32 v40, s22, 18 ; GFX9-NEXT: v_writelane_b32 v40, s23, 19 ; GFX9-NEXT: v_writelane_b32 v40, s24, 20 -; GFX9-NEXT: s_waitcnt lgkmcnt(0) -; GFX9-NEXT: s_load_dwordx16 s[36:51], s[34:35], 0x40 -; GFX9-NEXT: s_load_dwordx16 s[4:19], s[34:35], 0x0 ; GFX9-NEXT: v_writelane_b32 v40, s25, 21 ; GFX9-NEXT: v_writelane_b32 v40, s26, 22 ; GFX9-NEXT: v_writelane_b32 v40, s27, 23 -; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s28, 24 +; GFX9-NEXT: v_writelane_b32 v40, s29, 25 +; GFX9-NEXT: v_writelane_b32 v40, s30, 26 +; GFX9-NEXT: v_writelane_b32 v40, s31, 27 +; GFX9-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 +; GFX9-NEXT: s_waitcnt lgkmcnt(0) +; GFX9-NEXT: s_load_dwordx16 s[36:51], s[34:35], 0x40 +; GFX9-NEXT: s_load_dwordx16 s[4:19], s[34:35], 0x0 +; GFX9-NEXT: s_getpc_b64 s[34:35] +; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v32i32_inreg@rel32@lo+4 +; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v32i32_inreg@rel32@hi+12 ; GFX9-NEXT: s_waitcnt lgkmcnt(0) ; GFX9-NEXT: v_mov_b32_e32 v0, s46 -; GFX9-NEXT: v_writelane_b32 v40, s29, 25 ; GFX9-NEXT: v_mov_b32_e32 v1, s47 ; GFX9-NEXT: v_mov_b32_e32 v2, s48 ; GFX9-NEXT: v_mov_b32_e32 v3, s49 @@ -13660,7 +13755,6 @@ ; GFX9-NEXT: buffer_store_dword v2, off, s[0:3], s32 offset:8 ; GFX9-NEXT: buffer_store_dword v3, off, s[0:3], s32 offset:12 ; GFX9-NEXT: v_mov_b32_e32 v0, s50 -; GFX9-NEXT: v_writelane_b32 v40, s30, 26 ; GFX9-NEXT: buffer_store_dword v0, off, s[0:3], s32 offset:16 ; GFX9-NEXT: v_mov_b32_e32 v0, s51 ; GFX9-NEXT: s_mov_b32 s20, s36 @@ -13673,14 +13767,10 @@ ; GFX9-NEXT: s_mov_b32 s27, s43 ; GFX9-NEXT: s_mov_b32 s28, s44 ; GFX9-NEXT: s_mov_b32 s29, s45 -; GFX9-NEXT: v_writelane_b32 v40, s31, 27 ; GFX9-NEXT: buffer_store_dword v0, off, s[0:3], s32 offset:20 -; GFX9-NEXT: s_getpc_b64 s[34:35] -; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v32i32_inreg@rel32@lo+4 -; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v32i32_inreg@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 27 ; GFX9-NEXT: v_readlane_b32 s30, v40, 26 +; GFX9-NEXT: v_readlane_b32 s31, v40, 27 ; GFX9-NEXT: v_readlane_b32 s29, v40, 25 ; GFX9-NEXT: v_readlane_b32 s28, v40, 24 ; GFX9-NEXT: v_readlane_b32 s27, v40, 23 @@ -13728,10 +13818,9 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-NEXT: v_writelane_b32 v40, s5, 1 ; GFX10-NEXT: v_writelane_b32 v40, s6, 2 ; GFX10-NEXT: v_writelane_b32 v40, s7, 3 @@ -13747,6 +13836,19 @@ ; GFX10-NEXT: v_writelane_b32 v40, s17, 13 ; GFX10-NEXT: v_writelane_b32 v40, s18, 14 ; GFX10-NEXT: v_writelane_b32 v40, s19, 15 +; GFX10-NEXT: v_writelane_b32 v40, s20, 16 +; GFX10-NEXT: v_writelane_b32 v40, s21, 17 +; GFX10-NEXT: v_writelane_b32 v40, s22, 18 +; GFX10-NEXT: v_writelane_b32 v40, s23, 19 +; GFX10-NEXT: v_writelane_b32 v40, s24, 20 +; GFX10-NEXT: v_writelane_b32 v40, s25, 21 +; GFX10-NEXT: v_writelane_b32 v40, s26, 22 +; GFX10-NEXT: v_writelane_b32 v40, s27, 23 +; GFX10-NEXT: v_writelane_b32 v40, s28, 24 +; GFX10-NEXT: v_writelane_b32 v40, s29, 25 +; GFX10-NEXT: v_writelane_b32 v40, s30, 26 +; GFX10-NEXT: v_writelane_b32 v40, s31, 27 +; GFX10-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 ; GFX10-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-NEXT: s_clause 0x1 ; GFX10-NEXT: s_load_dwordx16 s[36:51], s[34:35], 0x40 @@ -13754,23 +13856,21 @@ ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v32i32_inreg@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v32i32_inreg@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s20, 16 -; GFX10-NEXT: v_writelane_b32 v40, s21, 17 -; GFX10-NEXT: v_writelane_b32 v40, s22, 18 ; GFX10-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-NEXT: v_mov_b32_e32 v0, s46 -; GFX10-NEXT: v_writelane_b32 v40, s23, 19 ; GFX10-NEXT: v_mov_b32_e32 v1, s47 ; GFX10-NEXT: v_mov_b32_e32 v2, s48 ; GFX10-NEXT: v_mov_b32_e32 v3, s49 ; GFX10-NEXT: s_mov_b32 s20, s36 -; GFX10-NEXT: v_writelane_b32 v40, s24, 20 ; GFX10-NEXT: s_mov_b32 s21, s37 ; GFX10-NEXT: s_mov_b32 s22, s38 ; GFX10-NEXT: s_mov_b32 s23, s39 ; GFX10-NEXT: s_mov_b32 s24, s40 -; GFX10-NEXT: v_writelane_b32 v40, s25, 21 ; GFX10-NEXT: s_mov_b32 s25, s41 +; GFX10-NEXT: s_mov_b32 s26, s42 +; GFX10-NEXT: s_mov_b32 s27, s43 +; GFX10-NEXT: s_mov_b32 s28, s44 +; GFX10-NEXT: s_mov_b32 s29, s45 ; GFX10-NEXT: v_mov_b32_e32 v4, s50 ; GFX10-NEXT: v_mov_b32_e32 v5, s51 ; GFX10-NEXT: buffer_store_dword v0, off, s[0:3], s32 @@ -13779,19 +13879,9 @@ ; GFX10-NEXT: buffer_store_dword v3, off, s[0:3], s32 offset:12 ; GFX10-NEXT: buffer_store_dword v4, off, s[0:3], s32 offset:16 ; GFX10-NEXT: buffer_store_dword v5, off, s[0:3], s32 offset:20 -; GFX10-NEXT: v_writelane_b32 v40, s26, 22 -; GFX10-NEXT: s_mov_b32 s26, s42 -; GFX10-NEXT: v_writelane_b32 v40, s27, 23 -; GFX10-NEXT: s_mov_b32 s27, s43 -; GFX10-NEXT: v_writelane_b32 v40, s28, 24 -; GFX10-NEXT: s_mov_b32 s28, s44 -; GFX10-NEXT: v_writelane_b32 v40, s29, 25 -; GFX10-NEXT: s_mov_b32 s29, s45 -; GFX10-NEXT: v_writelane_b32 v40, s30, 26 -; GFX10-NEXT: v_writelane_b32 v40, s31, 27 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 27 ; GFX10-NEXT: v_readlane_b32 s30, v40, 26 +; GFX10-NEXT: v_readlane_b32 s31, v40, 27 ; GFX10-NEXT: v_readlane_b32 s29, v40, 25 ; GFX10-NEXT: v_readlane_b32 s28, v40, 24 ; GFX10-NEXT: v_readlane_b32 s27, v40, 23 @@ -13839,14 +13929,12 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: v_writelane_b32 v40, s4, 0 ; GFX11-NEXT: v_writelane_b32 v41, s0, 0 -; GFX11-NEXT: s_load_b64 s[0:1], s[0:1], 0x0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) -; GFX11-NEXT: s_add_i32 s2, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s4, 0 ; GFX11-NEXT: v_writelane_b32 v40, s5, 1 ; GFX11-NEXT: v_writelane_b32 v40, s6, 2 ; GFX11-NEXT: v_writelane_b32 v40, s7, 3 @@ -13862,6 +13950,20 @@ ; GFX11-NEXT: v_writelane_b32 v40, s17, 13 ; GFX11-NEXT: v_writelane_b32 v40, s18, 14 ; GFX11-NEXT: v_writelane_b32 v40, s19, 15 +; GFX11-NEXT: v_writelane_b32 v40, s20, 16 +; GFX11-NEXT: v_writelane_b32 v40, s21, 17 +; GFX11-NEXT: v_writelane_b32 v40, s22, 18 +; GFX11-NEXT: v_writelane_b32 v40, s23, 19 +; GFX11-NEXT: v_writelane_b32 v40, s24, 20 +; GFX11-NEXT: v_writelane_b32 v40, s25, 21 +; GFX11-NEXT: v_writelane_b32 v40, s26, 22 +; GFX11-NEXT: v_writelane_b32 v40, s27, 23 +; GFX11-NEXT: v_writelane_b32 v40, s28, 24 +; GFX11-NEXT: v_writelane_b32 v40, s29, 25 +; GFX11-NEXT: v_writelane_b32 v40, s30, 26 +; GFX11-NEXT: v_writelane_b32 v40, s31, 27 +; GFX11-NEXT: s_load_b64 s[0:1], s[0:1], 0x0 +; GFX11-NEXT: s_add_i32 s2, s32, 16 ; GFX11-NEXT: s_waitcnt lgkmcnt(0) ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: s_load_b512 s[36:51], s[0:1], 0x40 @@ -13869,38 +13971,25 @@ ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v32i32_inreg@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v32i32_inreg@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s20, 16 -; GFX11-NEXT: v_writelane_b32 v40, s21, 17 -; GFX11-NEXT: v_writelane_b32 v40, s22, 18 ; GFX11-NEXT: s_waitcnt lgkmcnt(0) ; GFX11-NEXT: v_dual_mov_b32 v4, s50 :: v_dual_mov_b32 v5, s51 -; GFX11-NEXT: v_writelane_b32 v40, s23, 19 ; GFX11-NEXT: v_dual_mov_b32 v0, s46 :: v_dual_mov_b32 v1, s47 ; GFX11-NEXT: v_dual_mov_b32 v2, s48 :: v_dual_mov_b32 v3, s49 -; GFX11-NEXT: v_writelane_b32 v40, s24, 20 ; GFX11-NEXT: s_mov_b32 s20, s36 ; GFX11-NEXT: s_mov_b32 s21, s37 ; GFX11-NEXT: s_mov_b32 s22, s38 ; GFX11-NEXT: s_mov_b32 s23, s39 -; GFX11-NEXT: v_writelane_b32 v40, s25, 21 ; GFX11-NEXT: s_mov_b32 s24, s40 ; GFX11-NEXT: s_mov_b32 s25, s41 -; GFX11-NEXT: scratch_store_b64 off, v[4:5], s2 -; GFX11-NEXT: scratch_store_b128 off, v[0:3], s32 -; GFX11-NEXT: v_writelane_b32 v40, s26, 22 ; GFX11-NEXT: s_mov_b32 s26, s42 -; GFX11-NEXT: v_writelane_b32 v40, s27, 23 ; GFX11-NEXT: s_mov_b32 s27, s43 -; GFX11-NEXT: v_writelane_b32 v40, s28, 24 ; GFX11-NEXT: s_mov_b32 s28, s44 -; GFX11-NEXT: v_writelane_b32 v40, s29, 25 ; GFX11-NEXT: s_mov_b32 s29, s45 -; GFX11-NEXT: v_writelane_b32 v40, s30, 26 -; GFX11-NEXT: v_writelane_b32 v40, s31, 27 +; GFX11-NEXT: scratch_store_b64 off, v[4:5], s2 +; GFX11-NEXT: scratch_store_b128 off, v[0:3], s32 ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 27 ; GFX11-NEXT: v_readlane_b32 s30, v40, 26 +; GFX11-NEXT: v_readlane_b32 s31, v40, 27 ; GFX11-NEXT: v_readlane_b32 s29, v40, 25 ; GFX11-NEXT: v_readlane_b32 s28, v40, 24 ; GFX11-NEXT: v_readlane_b32 s27, v40, 23 @@ -13949,11 +14038,9 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x0 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: s_add_i32 s2, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s5, 1 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s6, 2 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s7, 3 @@ -13969,6 +14056,20 @@ ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s17, 13 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s18, 14 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s19, 15 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s20, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s21, 17 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s22, 18 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s23, 19 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s24, 20 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s25, 21 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s26, 22 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s27, 23 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s28, 24 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s29, 25 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 26 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 27 +; GFX10-SCRATCH-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x0 +; GFX10-SCRATCH-NEXT: s_add_i32 s2, s32, 16 ; GFX10-SCRATCH-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-SCRATCH-NEXT: s_clause 0x1 ; GFX10-SCRATCH-NEXT: s_load_dwordx16 s[36:51], s[0:1], 0x40 @@ -13976,40 +14077,28 @@ ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v32i32_inreg@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v32i32_inreg@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s20, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s21, 17 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s22, 18 ; GFX10-SCRATCH-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v4, s50 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s23, 19 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v5, s51 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, s46 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, s47 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v2, s48 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s24, 20 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v3, s49 ; GFX10-SCRATCH-NEXT: s_mov_b32 s20, s36 ; GFX10-SCRATCH-NEXT: s_mov_b32 s21, s37 ; GFX10-SCRATCH-NEXT: s_mov_b32 s22, s38 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s25, 21 ; GFX10-SCRATCH-NEXT: s_mov_b32 s23, s39 ; GFX10-SCRATCH-NEXT: s_mov_b32 s24, s40 ; GFX10-SCRATCH-NEXT: s_mov_b32 s25, s41 -; GFX10-SCRATCH-NEXT: scratch_store_dwordx2 off, v[4:5], s2 -; GFX10-SCRATCH-NEXT: scratch_store_dwordx4 off, v[0:3], s32 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s26, 22 ; GFX10-SCRATCH-NEXT: s_mov_b32 s26, s42 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s27, 23 ; GFX10-SCRATCH-NEXT: s_mov_b32 s27, s43 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s28, 24 ; GFX10-SCRATCH-NEXT: s_mov_b32 s28, s44 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s29, 25 ; GFX10-SCRATCH-NEXT: s_mov_b32 s29, s45 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 26 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 27 +; GFX10-SCRATCH-NEXT: scratch_store_dwordx2 off, v[4:5], s2 +; GFX10-SCRATCH-NEXT: scratch_store_dwordx4 off, v[0:3], s32 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 27 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 26 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 27 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s29, v40, 25 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s28, v40, 24 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s27, v40, 23 @@ -14063,6 +14152,8 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s5, 1 ; GFX9-NEXT: v_writelane_b32 v40, s6, 2 @@ -14077,40 +14168,42 @@ ; GFX9-NEXT: v_writelane_b32 v40, s15, 11 ; GFX9-NEXT: v_writelane_b32 v40, s16, 12 ; GFX9-NEXT: v_writelane_b32 v40, s17, 13 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s18, 14 -; GFX9-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 ; GFX9-NEXT: v_writelane_b32 v40, s19, 15 ; GFX9-NEXT: v_writelane_b32 v40, s20, 16 ; GFX9-NEXT: v_writelane_b32 v40, s21, 17 ; GFX9-NEXT: v_writelane_b32 v40, s22, 18 ; GFX9-NEXT: v_writelane_b32 v40, s23, 19 +; GFX9-NEXT: v_writelane_b32 v40, s24, 20 +; GFX9-NEXT: v_writelane_b32 v40, s25, 21 +; GFX9-NEXT: v_writelane_b32 v40, s26, 22 +; GFX9-NEXT: v_writelane_b32 v40, s27, 23 +; GFX9-NEXT: v_writelane_b32 v40, s28, 24 +; GFX9-NEXT: v_writelane_b32 v40, s29, 25 +; GFX9-NEXT: v_writelane_b32 v40, s30, 26 +; GFX9-NEXT: v_writelane_b32 v40, s31, 27 +; GFX9-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 ; GFX9-NEXT: s_waitcnt lgkmcnt(0) ; GFX9-NEXT: s_load_dword s52, s[34:35], 0x0 ; GFX9-NEXT: ; kill: killed $sgpr34_sgpr35 ; GFX9-NEXT: ; kill: killed $sgpr34_sgpr35 ; GFX9-NEXT: s_load_dwordx16 s[36:51], s[34:35], 0x40 ; GFX9-NEXT: s_load_dwordx16 s[4:19], s[34:35], 0x0 -; GFX9-NEXT: v_writelane_b32 v40, s24, 20 -; GFX9-NEXT: v_writelane_b32 v40, s25, 21 -; GFX9-NEXT: s_addk_i32 s32, 0x400 -; GFX9-NEXT: v_writelane_b32 v40, s26, 22 ; GFX9-NEXT: s_waitcnt lgkmcnt(0) ; GFX9-NEXT: v_mov_b32_e32 v0, s52 -; GFX9-NEXT: v_writelane_b32 v40, s27, 23 ; GFX9-NEXT: buffer_store_dword v0, off, s[0:3], s32 offset:24 +; GFX9-NEXT: s_getpc_b64 s[34:35] +; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v32i32_i32_inreg@rel32@lo+4 +; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v32i32_i32_inreg@rel32@hi+12 ; GFX9-NEXT: v_mov_b32_e32 v0, s46 -; GFX9-NEXT: v_writelane_b32 v40, s28, 24 ; GFX9-NEXT: v_mov_b32_e32 v1, s47 ; GFX9-NEXT: v_mov_b32_e32 v2, s48 ; GFX9-NEXT: buffer_store_dword v0, off, s[0:3], s32 ; GFX9-NEXT: buffer_store_dword v1, off, s[0:3], s32 offset:4 ; GFX9-NEXT: buffer_store_dword v2, off, s[0:3], s32 offset:8 ; GFX9-NEXT: v_mov_b32_e32 v0, s49 -; GFX9-NEXT: v_writelane_b32 v40, s29, 25 ; GFX9-NEXT: buffer_store_dword v0, off, s[0:3], s32 offset:12 ; GFX9-NEXT: v_mov_b32_e32 v0, s50 -; GFX9-NEXT: v_writelane_b32 v40, s30, 26 ; GFX9-NEXT: buffer_store_dword v0, off, s[0:3], s32 offset:16 ; GFX9-NEXT: v_mov_b32_e32 v0, s51 ; GFX9-NEXT: s_mov_b32 s20, s36 @@ -14123,14 +14216,10 @@ ; GFX9-NEXT: s_mov_b32 s27, s43 ; GFX9-NEXT: s_mov_b32 s28, s44 ; GFX9-NEXT: s_mov_b32 s29, s45 -; GFX9-NEXT: v_writelane_b32 v40, s31, 27 ; GFX9-NEXT: buffer_store_dword v0, off, s[0:3], s32 offset:20 -; GFX9-NEXT: s_getpc_b64 s[34:35] -; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_v32i32_i32_inreg@rel32@lo+4 -; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_v32i32_i32_inreg@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 27 ; GFX9-NEXT: v_readlane_b32 s30, v40, 26 +; GFX9-NEXT: v_readlane_b32 s31, v40, 27 ; GFX9-NEXT: v_readlane_b32 s29, v40, 25 ; GFX9-NEXT: v_readlane_b32 s28, v40, 24 ; GFX9-NEXT: v_readlane_b32 s27, v40, 23 @@ -14178,10 +14267,9 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-NEXT: v_writelane_b32 v40, s5, 1 ; GFX10-NEXT: v_writelane_b32 v40, s6, 2 ; GFX10-NEXT: v_writelane_b32 v40, s7, 3 @@ -14197,6 +14285,19 @@ ; GFX10-NEXT: v_writelane_b32 v40, s17, 13 ; GFX10-NEXT: v_writelane_b32 v40, s18, 14 ; GFX10-NEXT: v_writelane_b32 v40, s19, 15 +; GFX10-NEXT: v_writelane_b32 v40, s20, 16 +; GFX10-NEXT: v_writelane_b32 v40, s21, 17 +; GFX10-NEXT: v_writelane_b32 v40, s22, 18 +; GFX10-NEXT: v_writelane_b32 v40, s23, 19 +; GFX10-NEXT: v_writelane_b32 v40, s24, 20 +; GFX10-NEXT: v_writelane_b32 v40, s25, 21 +; GFX10-NEXT: v_writelane_b32 v40, s26, 22 +; GFX10-NEXT: v_writelane_b32 v40, s27, 23 +; GFX10-NEXT: v_writelane_b32 v40, s28, 24 +; GFX10-NEXT: v_writelane_b32 v40, s29, 25 +; GFX10-NEXT: v_writelane_b32 v40, s30, 26 +; GFX10-NEXT: v_writelane_b32 v40, s31, 27 +; GFX10-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 ; GFX10-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-NEXT: s_clause 0x2 ; GFX10-NEXT: s_load_dword s52, s[34:35], 0x0 @@ -14207,46 +14308,34 @@ ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_v32i32_i32_inreg@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_v32i32_i32_inreg@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s20, 16 -; GFX10-NEXT: v_writelane_b32 v40, s21, 17 -; GFX10-NEXT: v_writelane_b32 v40, s22, 18 ; GFX10-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-NEXT: v_mov_b32_e32 v0, s52 ; GFX10-NEXT: v_mov_b32_e32 v1, s47 -; GFX10-NEXT: v_writelane_b32 v40, s23, 19 +; GFX10-NEXT: v_mov_b32_e32 v2, s48 ; GFX10-NEXT: buffer_store_dword v0, off, s[0:3], s32 offset:24 ; GFX10-NEXT: v_mov_b32_e32 v0, s46 -; GFX10-NEXT: v_mov_b32_e32 v2, s48 ; GFX10-NEXT: v_mov_b32_e32 v3, s49 -; GFX10-NEXT: v_writelane_b32 v40, s24, 20 ; GFX10-NEXT: s_mov_b32 s20, s36 ; GFX10-NEXT: s_mov_b32 s21, s37 ; GFX10-NEXT: s_mov_b32 s22, s38 ; GFX10-NEXT: s_mov_b32 s23, s39 -; GFX10-NEXT: v_writelane_b32 v40, s25, 21 ; GFX10-NEXT: s_mov_b32 s24, s40 ; GFX10-NEXT: s_mov_b32 s25, s41 +; GFX10-NEXT: s_mov_b32 s26, s42 +; GFX10-NEXT: s_mov_b32 s27, s43 +; GFX10-NEXT: s_mov_b32 s28, s44 +; GFX10-NEXT: s_mov_b32 s29, s45 ; GFX10-NEXT: v_mov_b32_e32 v4, s50 ; GFX10-NEXT: v_mov_b32_e32 v5, s51 -; GFX10-NEXT: v_writelane_b32 v40, s26, 22 -; GFX10-NEXT: s_mov_b32 s26, s42 ; GFX10-NEXT: buffer_store_dword v0, off, s[0:3], s32 ; GFX10-NEXT: buffer_store_dword v1, off, s[0:3], s32 offset:4 ; GFX10-NEXT: buffer_store_dword v2, off, s[0:3], s32 offset:8 ; GFX10-NEXT: buffer_store_dword v3, off, s[0:3], s32 offset:12 ; GFX10-NEXT: buffer_store_dword v4, off, s[0:3], s32 offset:16 ; GFX10-NEXT: buffer_store_dword v5, off, s[0:3], s32 offset:20 -; GFX10-NEXT: v_writelane_b32 v40, s27, 23 -; GFX10-NEXT: s_mov_b32 s27, s43 -; GFX10-NEXT: v_writelane_b32 v40, s28, 24 -; GFX10-NEXT: s_mov_b32 s28, s44 -; GFX10-NEXT: v_writelane_b32 v40, s29, 25 -; GFX10-NEXT: s_mov_b32 s29, s45 -; GFX10-NEXT: v_writelane_b32 v40, s30, 26 -; GFX10-NEXT: v_writelane_b32 v40, s31, 27 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 27 ; GFX10-NEXT: v_readlane_b32 s30, v40, 26 +; GFX10-NEXT: v_readlane_b32 s31, v40, 27 ; GFX10-NEXT: v_readlane_b32 s29, v40, 25 ; GFX10-NEXT: v_readlane_b32 s28, v40, 24 ; GFX10-NEXT: v_readlane_b32 s27, v40, 23 @@ -14294,12 +14383,12 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: v_writelane_b32 v40, s4, 0 ; GFX11-NEXT: v_writelane_b32 v41, s0, 0 -; GFX11-NEXT: s_load_b64 s[0:1], s[0:1], 0x0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s4, 0 ; GFX11-NEXT: v_writelane_b32 v40, s5, 1 ; GFX11-NEXT: v_writelane_b32 v40, s6, 2 ; GFX11-NEXT: v_writelane_b32 v40, s7, 3 @@ -14315,6 +14404,19 @@ ; GFX11-NEXT: v_writelane_b32 v40, s17, 13 ; GFX11-NEXT: v_writelane_b32 v40, s18, 14 ; GFX11-NEXT: v_writelane_b32 v40, s19, 15 +; GFX11-NEXT: v_writelane_b32 v40, s20, 16 +; GFX11-NEXT: v_writelane_b32 v40, s21, 17 +; GFX11-NEXT: v_writelane_b32 v40, s22, 18 +; GFX11-NEXT: v_writelane_b32 v40, s23, 19 +; GFX11-NEXT: v_writelane_b32 v40, s24, 20 +; GFX11-NEXT: v_writelane_b32 v40, s25, 21 +; GFX11-NEXT: v_writelane_b32 v40, s26, 22 +; GFX11-NEXT: v_writelane_b32 v40, s27, 23 +; GFX11-NEXT: v_writelane_b32 v40, s28, 24 +; GFX11-NEXT: v_writelane_b32 v40, s29, 25 +; GFX11-NEXT: v_writelane_b32 v40, s30, 26 +; GFX11-NEXT: v_writelane_b32 v40, s31, 27 +; GFX11-NEXT: s_load_b64 s[0:1], s[0:1], 0x0 ; GFX11-NEXT: s_waitcnt lgkmcnt(0) ; GFX11-NEXT: s_clause 0x2 ; GFX11-NEXT: s_load_b32 s2, s[0:1], 0x0 @@ -14324,41 +14426,28 @@ ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_v32i32_i32_inreg@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_v32i32_i32_inreg@rel32@hi+12 ; GFX11-NEXT: s_add_i32 s3, s32, 16 -; GFX11-NEXT: v_writelane_b32 v40, s20, 16 -; GFX11-NEXT: v_writelane_b32 v40, s21, 17 -; GFX11-NEXT: v_writelane_b32 v40, s22, 18 ; GFX11-NEXT: s_waitcnt lgkmcnt(0) ; GFX11-NEXT: v_dual_mov_b32 v6, s2 :: v_dual_mov_b32 v5, s51 -; GFX11-NEXT: v_writelane_b32 v40, s23, 19 ; GFX11-NEXT: v_dual_mov_b32 v4, s50 :: v_dual_mov_b32 v1, s47 ; GFX11-NEXT: v_dual_mov_b32 v0, s46 :: v_dual_mov_b32 v3, s49 -; GFX11-NEXT: v_writelane_b32 v40, s24, 20 ; GFX11-NEXT: v_mov_b32_e32 v2, s48 ; GFX11-NEXT: s_add_i32 s2, s32, 24 ; GFX11-NEXT: s_mov_b32 s20, s36 ; GFX11-NEXT: s_mov_b32 s21, s37 -; GFX11-NEXT: v_writelane_b32 v40, s25, 21 ; GFX11-NEXT: s_mov_b32 s22, s38 ; GFX11-NEXT: s_mov_b32 s23, s39 ; GFX11-NEXT: s_mov_b32 s24, s40 ; GFX11-NEXT: s_mov_b32 s25, s41 -; GFX11-NEXT: v_writelane_b32 v40, s26, 22 ; GFX11-NEXT: s_mov_b32 s26, s42 -; GFX11-NEXT: scratch_store_b32 off, v6, s2 -; GFX11-NEXT: scratch_store_b64 off, v[4:5], s3 -; GFX11-NEXT: scratch_store_b128 off, v[0:3], s32 -; GFX11-NEXT: v_writelane_b32 v40, s27, 23 ; GFX11-NEXT: s_mov_b32 s27, s43 -; GFX11-NEXT: v_writelane_b32 v40, s28, 24 ; GFX11-NEXT: s_mov_b32 s28, s44 -; GFX11-NEXT: v_writelane_b32 v40, s29, 25 ; GFX11-NEXT: s_mov_b32 s29, s45 -; GFX11-NEXT: v_writelane_b32 v40, s30, 26 -; GFX11-NEXT: v_writelane_b32 v40, s31, 27 +; GFX11-NEXT: scratch_store_b32 off, v6, s2 +; GFX11-NEXT: scratch_store_b64 off, v[4:5], s3 +; GFX11-NEXT: scratch_store_b128 off, v[0:3], s32 ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 27 ; GFX11-NEXT: v_readlane_b32 s30, v40, 26 +; GFX11-NEXT: v_readlane_b32 s31, v40, 27 ; GFX11-NEXT: v_readlane_b32 s29, v40, 25 ; GFX11-NEXT: v_readlane_b32 s28, v40, 24 ; GFX11-NEXT: v_readlane_b32 s27, v40, 23 @@ -14407,10 +14496,9 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x0 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s5, 1 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s6, 2 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s7, 3 @@ -14426,6 +14514,19 @@ ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s17, 13 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s18, 14 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s19, 15 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s20, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s21, 17 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s22, 18 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s23, 19 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s24, 20 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s25, 21 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s26, 22 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s27, 23 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s28, 24 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s29, 25 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 26 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 27 +; GFX10-SCRATCH-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x0 ; GFX10-SCRATCH-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-SCRATCH-NEXT: s_clause 0x2 ; GFX10-SCRATCH-NEXT: s_load_dword s2, s[0:1], 0x0 @@ -14437,43 +14538,31 @@ ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_v32i32_i32_inreg@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_v32i32_i32_inreg@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_add_i32 s3, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s20, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s21, 17 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s22, 18 ; GFX10-SCRATCH-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v6, s2 ; GFX10-SCRATCH-NEXT: s_add_i32 s2, s32, 24 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v4, s50 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s23, 19 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v5, s51 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, s46 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, s47 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v2, s48 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s24, 20 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v3, s49 ; GFX10-SCRATCH-NEXT: s_mov_b32 s20, s36 ; GFX10-SCRATCH-NEXT: s_mov_b32 s21, s37 ; GFX10-SCRATCH-NEXT: s_mov_b32 s22, s38 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s25, 21 ; GFX10-SCRATCH-NEXT: s_mov_b32 s23, s39 ; GFX10-SCRATCH-NEXT: s_mov_b32 s24, s40 ; GFX10-SCRATCH-NEXT: s_mov_b32 s25, s41 -; GFX10-SCRATCH-NEXT: scratch_store_dword off, v6, s2 -; GFX10-SCRATCH-NEXT: scratch_store_dwordx2 off, v[4:5], s3 -; GFX10-SCRATCH-NEXT: scratch_store_dwordx4 off, v[0:3], s32 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s26, 22 ; GFX10-SCRATCH-NEXT: s_mov_b32 s26, s42 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s27, 23 ; GFX10-SCRATCH-NEXT: s_mov_b32 s27, s43 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s28, 24 ; GFX10-SCRATCH-NEXT: s_mov_b32 s28, s44 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s29, 25 ; GFX10-SCRATCH-NEXT: s_mov_b32 s29, s45 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 26 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 27 +; GFX10-SCRATCH-NEXT: scratch_store_dword off, v6, s2 +; GFX10-SCRATCH-NEXT: scratch_store_dwordx2 off, v[4:5], s3 +; GFX10-SCRATCH-NEXT: scratch_store_dwordx4 off, v[0:3], s32 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 27 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 26 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 27 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s29, v40, 25 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s28, v40, 24 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s27, v40, 23 @@ -14528,12 +14617,12 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 offset:8 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:12 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: buffer_load_dword v32, off, s[0:3], s33 -; GFX9-NEXT: buffer_load_dword v33, off, s[0:3], s33 offset:4 -; GFX9-NEXT: s_addk_i32 s32, 0x800 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 ; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x800 ; GFX9-NEXT: v_writelane_b32 v40, s31, 1 +; GFX9-NEXT: buffer_load_dword v32, off, s[0:3], s33 +; GFX9-NEXT: buffer_load_dword v33, off, s[0:3], s33 offset:4 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, stack_passed_f64_arg@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, stack_passed_f64_arg@rel32@hi+12 @@ -14542,8 +14631,8 @@ ; GFX9-NEXT: s_waitcnt vmcnt(1) ; GFX9-NEXT: buffer_store_dword v33, off, s[0:3], s32 offset:4 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 offset:8 ; 4-byte Folded Reload @@ -14565,12 +14654,13 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:12 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x400 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_clause 0x1 ; GFX10-NEXT: buffer_load_dword v32, off, s[0:3], s33 ; GFX10-NEXT: buffer_load_dword v33, off, s[0:3], s33 offset:4 -; GFX10-NEXT: v_writelane_b32 v40, s30, 0 -; GFX10-NEXT: s_addk_i32 s32, 0x400 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, stack_passed_f64_arg@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, stack_passed_f64_arg@rel32@hi+12 @@ -14578,10 +14668,9 @@ ; GFX10-NEXT: buffer_store_dword v32, off, s[0:3], s32 ; GFX10-NEXT: s_waitcnt vmcnt(0) ; GFX10-NEXT: buffer_store_dword v33, off, s[0:3], s32 offset:4 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -14603,21 +14692,22 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 offset:8 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:12 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: scratch_load_b64 v[32:33], off, s33 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 ; GFX11-NEXT: s_add_i32 s32, s32, 32 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: scratch_load_b64 v[32:33], off, s33 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, stack_passed_f64_arg@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, stack_passed_f64_arg@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 ; GFX11-NEXT: s_waitcnt vmcnt(0) ; GFX11-NEXT: scratch_store_b64 off, v[32:33], s32 ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -14640,19 +14730,19 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:12 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 -; GFX10-SCRATCH-NEXT: scratch_load_dwordx2 v[32:33], off, s33 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 32 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 +; GFX10-SCRATCH-NEXT: scratch_load_dwordx2 v[32:33], off, s33 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, stack_passed_f64_arg@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, stack_passed_f64_arg@rel32@hi+12 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: s_waitcnt vmcnt(0) ; GFX10-SCRATCH-NEXT: scratch_store_dwordx2 off, v[32:33], s32 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -14679,7 +14769,10 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 ; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: v_mov_b32_e32 v0, 12 ; GFX9-NEXT: buffer_store_dword v0, off, s[0:3], s32 ; GFX9-NEXT: v_mov_b32_e32 v0, 13 @@ -14687,7 +14780,6 @@ ; GFX9-NEXT: v_mov_b32_e32 v0, 14 ; GFX9-NEXT: buffer_store_dword v0, off, s[0:3], s32 offset:8 ; GFX9-NEXT: v_mov_b32_e32 v0, 15 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 ; GFX9-NEXT: buffer_store_dword v0, off, s[0:3], s32 offset:12 ; GFX9-NEXT: v_mov_b32_e32 v0, 0 ; GFX9-NEXT: v_mov_b32_e32 v1, 0 @@ -14721,14 +14813,12 @@ ; GFX9-NEXT: v_mov_b32_e32 v29, 9 ; GFX9-NEXT: v_mov_b32_e32 v30, 10 ; GFX9-NEXT: v_mov_b32_e32 v31, 11 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_12xv3i32@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_12xv3i32@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -14750,12 +14840,15 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: v_mov_b32_e32 v0, 12 ; GFX10-NEXT: v_mov_b32_e32 v1, 13 ; GFX10-NEXT: v_mov_b32_e32 v2, 14 -; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_mov_b32_e32 v3, 15 -; GFX10-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-NEXT: v_mov_b32_e32 v4, 1 ; GFX10-NEXT: buffer_store_dword v0, off, s[0:3], s32 ; GFX10-NEXT: buffer_store_dword v1, off, s[0:3], s32 offset:4 ; GFX10-NEXT: buffer_store_dword v2, off, s[0:3], s32 offset:8 @@ -14764,7 +14857,6 @@ ; GFX10-NEXT: v_mov_b32_e32 v1, 0 ; GFX10-NEXT: v_mov_b32_e32 v2, 0 ; GFX10-NEXT: v_mov_b32_e32 v3, 1 -; GFX10-NEXT: v_mov_b32_e32 v4, 1 ; GFX10-NEXT: v_mov_b32_e32 v5, 1 ; GFX10-NEXT: v_mov_b32_e32 v6, 2 ; GFX10-NEXT: v_mov_b32_e32 v7, 2 @@ -14792,14 +14884,12 @@ ; GFX10-NEXT: v_mov_b32_e32 v29, 9 ; GFX10-NEXT: v_mov_b32_e32 v30, 10 ; GFX10-NEXT: v_mov_b32_e32 v31, 11 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_12xv3i32@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_12xv3i32@rel32@hi+12 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -14821,17 +14911,20 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: v_writelane_b32 v40, s30, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 ; GFX11-NEXT: v_dual_mov_b32 v0, 12 :: v_dual_mov_b32 v1, 13 ; GFX11-NEXT: v_dual_mov_b32 v2, 14 :: v_dual_mov_b32 v3, 15 -; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v40, s30, 0 ; GFX11-NEXT: v_dual_mov_b32 v4, 1 :: v_dual_mov_b32 v5, 1 +; GFX11-NEXT: v_dual_mov_b32 v6, 2 :: v_dual_mov_b32 v7, 2 ; GFX11-NEXT: scratch_store_b128 off, v[0:3], s32 ; GFX11-NEXT: v_dual_mov_b32 v0, 0 :: v_dual_mov_b32 v1, 0 ; GFX11-NEXT: v_dual_mov_b32 v2, 0 :: v_dual_mov_b32 v3, 1 -; GFX11-NEXT: v_dual_mov_b32 v6, 2 :: v_dual_mov_b32 v7, 2 ; GFX11-NEXT: v_dual_mov_b32 v8, 2 :: v_dual_mov_b32 v9, 3 ; GFX11-NEXT: v_dual_mov_b32 v10, 3 :: v_dual_mov_b32 v11, 3 ; GFX11-NEXT: v_dual_mov_b32 v12, 4 :: v_dual_mov_b32 v13, 4 @@ -14844,15 +14937,13 @@ ; GFX11-NEXT: v_dual_mov_b32 v26, 8 :: v_dual_mov_b32 v27, 9 ; GFX11-NEXT: v_dual_mov_b32 v28, 9 :: v_dual_mov_b32 v29, 9 ; GFX11-NEXT: v_dual_mov_b32 v30, 10 :: v_dual_mov_b32 v31, 11 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_12xv3i32@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_12xv3i32@rel32@hi+12 ; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -14875,21 +14966,23 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 12 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, 13 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v2, 14 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v3, 15 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v4, 1 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v5, 1 +; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v6, 2 +; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v7, 2 ; GFX10-SCRATCH-NEXT: scratch_store_dwordx4 off, v[0:3], s32 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 0 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, 0 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v2, 0 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v3, 1 -; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v6, 2 -; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v7, 2 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v8, 2 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v9, 3 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v10, 3 @@ -14914,14 +15007,12 @@ ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v29, 9 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v30, 10 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v31, 11 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_12xv3i32@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_12xv3i32@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -14960,7 +15051,10 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 ; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: v_mov_b32_e32 v0, 8 ; GFX9-NEXT: buffer_store_dword v0, off, s[0:3], s32 ; GFX9-NEXT: v_mov_b32_e32 v0, 9 @@ -14976,7 +15070,6 @@ ; GFX9-NEXT: v_mov_b32_e32 v0, 14 ; GFX9-NEXT: buffer_store_dword v0, off, s[0:3], s32 offset:24 ; GFX9-NEXT: v_mov_b32_e32 v0, 15 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 ; GFX9-NEXT: buffer_store_dword v0, off, s[0:3], s32 offset:28 ; GFX9-NEXT: v_mov_b32_e32 v0, 0 ; GFX9-NEXT: v_mov_b32_e32 v1, 0 @@ -15010,14 +15103,12 @@ ; GFX9-NEXT: v_mov_b32_e32 v29, 5 ; GFX9-NEXT: v_mov_b32_e32 v30, 6 ; GFX9-NEXT: v_mov_b32_e32 v31, 7 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_8xv5i32@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_8xv5i32@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -15039,19 +15130,22 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: v_mov_b32_e32 v0, 8 ; GFX10-NEXT: v_mov_b32_e32 v1, 9 ; GFX10-NEXT: v_mov_b32_e32 v2, 10 -; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_mov_b32_e32 v3, 14 +; GFX10-NEXT: v_mov_b32_e32 v4, 15 ; GFX10-NEXT: buffer_store_dword v0, off, s[0:3], s32 ; GFX10-NEXT: buffer_store_dword v1, off, s[0:3], s32 offset:4 ; GFX10-NEXT: buffer_store_dword v2, off, s[0:3], s32 offset:8 ; GFX10-NEXT: v_mov_b32_e32 v0, 11 ; GFX10-NEXT: v_mov_b32_e32 v1, 12 ; GFX10-NEXT: v_mov_b32_e32 v2, 13 -; GFX10-NEXT: v_mov_b32_e32 v4, 15 -; GFX10-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-NEXT: v_mov_b32_e32 v5, 1 ; GFX10-NEXT: buffer_store_dword v0, off, s[0:3], s32 offset:12 ; GFX10-NEXT: buffer_store_dword v1, off, s[0:3], s32 offset:16 ; GFX10-NEXT: buffer_store_dword v2, off, s[0:3], s32 offset:20 @@ -15062,7 +15156,6 @@ ; GFX10-NEXT: v_mov_b32_e32 v2, 0 ; GFX10-NEXT: v_mov_b32_e32 v3, 0 ; GFX10-NEXT: v_mov_b32_e32 v4, 0 -; GFX10-NEXT: v_mov_b32_e32 v5, 1 ; GFX10-NEXT: v_mov_b32_e32 v6, 1 ; GFX10-NEXT: v_mov_b32_e32 v7, 1 ; GFX10-NEXT: v_mov_b32_e32 v8, 1 @@ -15089,14 +15182,12 @@ ; GFX10-NEXT: v_mov_b32_e32 v29, 5 ; GFX10-NEXT: v_mov_b32_e32 v30, 6 ; GFX10-NEXT: v_mov_b32_e32 v31, 7 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_8xv5i32@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_8xv5i32@rel32@hi+12 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -15118,16 +15209,18 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: v_writelane_b32 v40, s30, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 ; GFX11-NEXT: v_dual_mov_b32 v0, 8 :: v_dual_mov_b32 v1, 9 ; GFX11-NEXT: v_dual_mov_b32 v2, 10 :: v_dual_mov_b32 v3, 11 ; GFX11-NEXT: v_dual_mov_b32 v4, 12 :: v_dual_mov_b32 v5, 13 ; GFX11-NEXT: v_dual_mov_b32 v6, 14 :: v_dual_mov_b32 v7, 15 -; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: s_add_i32 s0, s32, 16 -; GFX11-NEXT: v_writelane_b32 v40, s30, 0 ; GFX11-NEXT: scratch_store_b128 off, v[0:3], s32 ; GFX11-NEXT: scratch_store_b128 off, v[4:7], s0 ; GFX11-NEXT: v_dual_mov_b32 v0, 0 :: v_dual_mov_b32 v1, 0 @@ -15146,14 +15239,13 @@ ; GFX11-NEXT: v_dual_mov_b32 v26, 5 :: v_dual_mov_b32 v27, 5 ; GFX11-NEXT: v_dual_mov_b32 v28, 5 :: v_dual_mov_b32 v29, 5 ; GFX11-NEXT: v_dual_mov_b32 v30, 6 :: v_dual_mov_b32 v31, 7 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_8xv5i32@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_8xv5i32@rel32@hi+12 ; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -15176,6 +15268,10 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 8 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, 9 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v2, 10 @@ -15184,10 +15280,7 @@ ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v5, 13 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v6, 14 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v7, 15 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: s_add_i32 s0, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-SCRATCH-NEXT: scratch_store_dwordx4 off, v[0:3], s32 ; GFX10-SCRATCH-NEXT: scratch_store_dwordx4 off, v[4:7], s0 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 0 @@ -15222,13 +15315,12 @@ ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v29, 5 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v30, 6 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v31, 7 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_8xv5i32@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_8xv5i32@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 @@ -15263,7 +15355,10 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 ; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: v_mov_b32_e32 v0, 0x41000000 ; GFX9-NEXT: buffer_store_dword v0, off, s[0:3], s32 ; GFX9-NEXT: v_mov_b32_e32 v0, 0x41100000 @@ -15279,7 +15374,6 @@ ; GFX9-NEXT: v_mov_b32_e32 v0, 0x41600000 ; GFX9-NEXT: buffer_store_dword v0, off, s[0:3], s32 offset:24 ; GFX9-NEXT: v_mov_b32_e32 v0, 0x41700000 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 ; GFX9-NEXT: buffer_store_dword v0, off, s[0:3], s32 offset:28 ; GFX9-NEXT: v_mov_b32_e32 v0, 0 ; GFX9-NEXT: v_mov_b32_e32 v1, 0 @@ -15313,14 +15407,12 @@ ; GFX9-NEXT: v_mov_b32_e32 v29, 0x40a00000 ; GFX9-NEXT: v_mov_b32_e32 v30, 0x40c00000 ; GFX9-NEXT: v_mov_b32_e32 v31, 0x40e00000 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_8xv5f32@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_8xv5f32@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -15342,19 +15434,22 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: v_mov_b32_e32 v0, 0x41000000 ; GFX10-NEXT: v_mov_b32_e32 v1, 0x41100000 ; GFX10-NEXT: v_mov_b32_e32 v2, 0x41200000 -; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_mov_b32_e32 v3, 0x41600000 +; GFX10-NEXT: v_mov_b32_e32 v4, 0x41700000 ; GFX10-NEXT: buffer_store_dword v0, off, s[0:3], s32 ; GFX10-NEXT: buffer_store_dword v1, off, s[0:3], s32 offset:4 ; GFX10-NEXT: buffer_store_dword v2, off, s[0:3], s32 offset:8 ; GFX10-NEXT: v_mov_b32_e32 v0, 0x41300000 ; GFX10-NEXT: v_mov_b32_e32 v1, 0x41400000 ; GFX10-NEXT: v_mov_b32_e32 v2, 0x41500000 -; GFX10-NEXT: v_mov_b32_e32 v4, 0x41700000 -; GFX10-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-NEXT: v_mov_b32_e32 v5, 1.0 ; GFX10-NEXT: buffer_store_dword v0, off, s[0:3], s32 offset:12 ; GFX10-NEXT: buffer_store_dword v1, off, s[0:3], s32 offset:16 ; GFX10-NEXT: buffer_store_dword v2, off, s[0:3], s32 offset:20 @@ -15365,7 +15460,6 @@ ; GFX10-NEXT: v_mov_b32_e32 v2, 0 ; GFX10-NEXT: v_mov_b32_e32 v3, 0 ; GFX10-NEXT: v_mov_b32_e32 v4, 0 -; GFX10-NEXT: v_mov_b32_e32 v5, 1.0 ; GFX10-NEXT: v_mov_b32_e32 v6, 1.0 ; GFX10-NEXT: v_mov_b32_e32 v7, 1.0 ; GFX10-NEXT: v_mov_b32_e32 v8, 1.0 @@ -15392,14 +15486,12 @@ ; GFX10-NEXT: v_mov_b32_e32 v29, 0x40a00000 ; GFX10-NEXT: v_mov_b32_e32 v30, 0x40c00000 ; GFX10-NEXT: v_mov_b32_e32 v31, 0x40e00000 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_8xv5f32@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_8xv5f32@rel32@hi+12 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -15421,8 +15513,13 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: v_writelane_b32 v40, s30, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 ; GFX11-NEXT: v_mov_b32_e32 v0, 0x41000000 ; GFX11-NEXT: v_mov_b32_e32 v1, 0x41100000 ; GFX11-NEXT: v_mov_b32_e32 v2, 0x41200000 @@ -15431,10 +15528,7 @@ ; GFX11-NEXT: v_mov_b32_e32 v5, 0x41500000 ; GFX11-NEXT: v_mov_b32_e32 v6, 0x41600000 ; GFX11-NEXT: v_mov_b32_e32 v7, 0x41700000 -; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: s_add_i32 s0, s32, 16 -; GFX11-NEXT: v_writelane_b32 v40, s30, 0 ; GFX11-NEXT: scratch_store_b128 off, v[0:3], s32 ; GFX11-NEXT: scratch_store_b128 off, v[4:7], s0 ; GFX11-NEXT: v_mov_b32_e32 v6, 1.0 @@ -15455,14 +15549,13 @@ ; GFX11-NEXT: v_mov_b32_e32 v29, 0x40a00000 ; GFX11-NEXT: v_mov_b32_e32 v30, 0x40c00000 ; GFX11-NEXT: v_mov_b32_e32 v31, 0x40e00000 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_8xv5f32@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_8xv5f32@rel32@hi+12 ; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -15485,6 +15578,10 @@ ; GFX10-SCRATCH-NEXT: scratch_store_dword off, v41, s33 offset:4 ; 4-byte Folded Spill ; GFX10-SCRATCH-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-SCRATCH-NEXT: s_mov_b32 exec_lo, s1 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 +; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 0x41000000 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v1, 0x41100000 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v2, 0x41200000 @@ -15493,10 +15590,7 @@ ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v5, 0x41500000 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v6, 0x41600000 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v7, 0x41700000 -; GFX10-SCRATCH-NEXT: s_add_i32 s32, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v41, s0, 0 ; GFX10-SCRATCH-NEXT: s_add_i32 s0, s32, 16 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-SCRATCH-NEXT: scratch_store_dwordx4 off, v[0:3], s32 ; GFX10-SCRATCH-NEXT: scratch_store_dwordx4 off, v[4:7], s0 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v0, 0 @@ -15531,13 +15625,12 @@ ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v29, 0x40a00000 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v30, 0x40c00000 ; GFX10-SCRATCH-NEXT: v_mov_b32_e32 v31, 0x40e00000 -; GFX10-SCRATCH-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-SCRATCH-NEXT: s_getpc_b64 s[0:1] ; GFX10-SCRATCH-NEXT: s_add_u32 s0, s0, external_void_func_8xv5f32@rel32@lo+4 ; GFX10-SCRATCH-NEXT: s_addc_u32 s1, s1, external_void_func_8xv5f32@rel32@hi+12 ; GFX10-SCRATCH-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-SCRATCH-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-SCRATCH-NEXT: v_readlane_b32 s0, v41, 0 ; GFX10-SCRATCH-NEXT: s_or_saveexec_b32 s1, -1 ; GFX10-SCRATCH-NEXT: s_clause 0x1 diff --git a/llvm/test/CodeGen/AMDGPU/gfx-callable-preserved-registers.ll b/llvm/test/CodeGen/AMDGPU/gfx-callable-preserved-registers.ll --- a/llvm/test/CodeGen/AMDGPU/gfx-callable-preserved-registers.ll +++ b/llvm/test/CodeGen/AMDGPU/gfx-callable-preserved-registers.ll @@ -15,11 +15,11 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s5, 1 -; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s30, 2 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s31, 3 ; GFX9-NEXT: s_getpc_b64 s[4:5] ; GFX9-NEXT: s_add_u32 s4, s4, external_void_func_void@rel32@lo+4 @@ -28,8 +28,8 @@ ; GFX9-NEXT: ;;#ASMSTART ; GFX9-NEXT: ;;#ASMEND ; GFX9-NEXT: s_swappc_b64 s[30:31], s[4:5] -; GFX9-NEXT: v_readlane_b32 s31, v40, 3 ; GFX9-NEXT: v_readlane_b32 s30, v40, 2 +; GFX9-NEXT: v_readlane_b32 s31, v40, 3 ; GFX9-NEXT: v_readlane_b32 s5, v40, 1 ; GFX9-NEXT: v_readlane_b32 s4, v40, 0 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 @@ -53,21 +53,21 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: v_writelane_b32 v40, s4, 0 -; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s4, 0 ; GFX10-NEXT: v_writelane_b32 v40, s5, 1 +; GFX10-NEXT: v_writelane_b32 v40, s30, 2 +; GFX10-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-NEXT: s_getpc_b64 s[4:5] ; GFX10-NEXT: s_add_u32 s4, s4, external_void_func_void@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s5, s5, external_void_func_void@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s30, 2 -; GFX10-NEXT: v_writelane_b32 v40, s31, 3 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[4:5] ; GFX10-NEXT: ;;#ASMSTART ; GFX10-NEXT: ;;#ASMEND ; GFX10-NEXT: s_swappc_b64 s[30:31], s[4:5] -; GFX10-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-NEXT: v_readlane_b32 s30, v40, 2 +; GFX10-NEXT: v_readlane_b32 s31, v40, 3 ; GFX10-NEXT: v_readlane_b32 s5, v40, 1 ; GFX10-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 @@ -91,24 +91,25 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: v_writelane_b32 v40, s4, 0 -; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s4, 0 ; GFX11-NEXT: v_writelane_b32 v40, s5, 1 +; GFX11-NEXT: v_writelane_b32 v40, s30, 2 +; GFX11-NEXT: v_writelane_b32 v40, s31, 3 ; GFX11-NEXT: s_getpc_b64 s[4:5] ; GFX11-NEXT: s_add_u32 s4, s4, external_void_func_void@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s5, s5, external_void_func_void@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s30, 2 -; GFX11-NEXT: v_writelane_b32 v40, s31, 3 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[4:5] ; GFX11-NEXT: ;;#ASMSTART ; GFX11-NEXT: ;;#ASMEND ; GFX11-NEXT: s_swappc_b64 s[30:31], s[4:5] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 3 ; GFX11-NEXT: v_readlane_b32 s30, v40, 2 +; GFX11-NEXT: v_readlane_b32 s31, v40, 3 ; GFX11-NEXT: v_readlane_b32 s5, v40, 1 ; GFX11-NEXT: v_readlane_b32 s4, v40, 0 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 @@ -144,8 +145,8 @@ ; GFX9-NEXT: ;;#ASMSTART ; GFX9-NEXT: ; clobber ; GFX9-NEXT: ;;#ASMEND -; GFX9-NEXT: v_readlane_b32 s31, v0, 3 ; GFX9-NEXT: v_readlane_b32 s30, v0, 2 +; GFX9-NEXT: v_readlane_b32 s31, v0, 3 ; GFX9-NEXT: v_readlane_b32 s29, v0, 1 ; GFX9-NEXT: v_readlane_b32 s28, v0, 0 ; GFX9-NEXT: s_xor_saveexec_b64 s[34:35], -1 @@ -172,8 +173,8 @@ ; GFX10-NEXT: ;;#ASMSTART ; GFX10-NEXT: ; clobber ; GFX10-NEXT: ;;#ASMEND -; GFX10-NEXT: v_readlane_b32 s31, v0, 3 ; GFX10-NEXT: v_readlane_b32 s30, v0, 2 +; GFX10-NEXT: v_readlane_b32 s31, v0, 3 ; GFX10-NEXT: v_readlane_b32 s29, v0, 1 ; GFX10-NEXT: v_readlane_b32 s28, v0, 0 ; GFX10-NEXT: s_xor_saveexec_b32 s34, -1 @@ -202,8 +203,8 @@ ; GFX11-NEXT: ; clobber ; GFX11-NEXT: ;;#ASMEND ; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v0, 3 ; GFX11-NEXT: v_readlane_b32 s30, v0, 2 +; GFX11-NEXT: v_readlane_b32 s31, v0, 3 ; GFX11-NEXT: v_readlane_b32 s29, v0, 1 ; GFX11-NEXT: v_readlane_b32 s28, v0, 0 ; GFX11-NEXT: s_xor_saveexec_b32 s0, -1 @@ -232,10 +233,10 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: v_writelane_b32 v40, s4, 0 +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s30, 1 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s31, 2 ; GFX9-NEXT: ;;#ASMSTART ; GFX9-NEXT: ; def s31 @@ -249,8 +250,8 @@ ; GFX9-NEXT: ;;#ASMSTART ; GFX9-NEXT: ; use s31 ; GFX9-NEXT: ;;#ASMEND -; GFX9-NEXT: v_readlane_b32 s31, v40, 2 ; GFX9-NEXT: v_readlane_b32 s30, v40, 1 +; GFX9-NEXT: v_readlane_b32 s31, v40, 2 ; GFX9-NEXT: v_readlane_b32 s4, v40, 0 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 @@ -273,14 +274,14 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: v_writelane_b32 v40, s4, 0 -; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s4, 0 +; GFX10-NEXT: v_writelane_b32 v40, s30, 1 +; GFX10-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_void@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_void@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s30, 1 -; GFX10-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-NEXT: ;;#ASMSTART ; GFX10-NEXT: ; def s31 ; GFX10-NEXT: ;;#ASMEND @@ -290,8 +291,8 @@ ; GFX10-NEXT: ;;#ASMSTART ; GFX10-NEXT: ; use s31 ; GFX10-NEXT: ;;#ASMEND -; GFX10-NEXT: v_readlane_b32 s31, v40, 2 ; GFX10-NEXT: v_readlane_b32 s30, v40, 1 +; GFX10-NEXT: v_readlane_b32 s31, v40, 2 ; GFX10-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 @@ -314,16 +315,17 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: v_writelane_b32 v40, s4, 0 -; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s4, 0 +; GFX11-NEXT: v_writelane_b32 v40, s30, 1 +; GFX11-NEXT: v_writelane_b32 v40, s31, 2 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_void@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_void@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s30, 1 -; GFX11-NEXT: v_writelane_b32 v40, s31, 2 ; GFX11-NEXT: ;;#ASMSTART ; GFX11-NEXT: ; def s31 ; GFX11-NEXT: ;;#ASMEND @@ -333,8 +335,8 @@ ; GFX11-NEXT: ;;#ASMSTART ; GFX11-NEXT: ; use s31 ; GFX11-NEXT: ;;#ASMEND -; GFX11-NEXT: v_readlane_b32 s31, v40, 2 ; GFX11-NEXT: v_readlane_b32 s30, v40, 1 +; GFX11-NEXT: v_readlane_b32 s31, v40, 2 ; GFX11-NEXT: v_readlane_b32 s4, v40, 0 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 @@ -362,10 +364,10 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v42, off, s[0:3], s33 offset:8 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: s_addk_i32 s32, 0x400 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 ; GFX9-NEXT: v_writelane_b32 v42, s34, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 ; 4-byte Folded Spill +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 ; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: ;;#ASMSTART ; GFX9-NEXT: ; def v31 @@ -380,8 +382,8 @@ ; GFX9-NEXT: ; use v31 ; GFX9-NEXT: ;;#ASMEND ; GFX9-NEXT: buffer_load_dword v41, off, s[0:3], s33 ; 4-byte Folded Reload -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v42, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 offset:4 ; 4-byte Folded Reload @@ -403,14 +405,14 @@ ; GFX10-NEXT: buffer_store_dword v42, off, s[0:3], s33 offset:8 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: v_writelane_b32 v40, s30, 0 -; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v42, s34, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 ; 4-byte Folded Spill +; GFX10-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: ;;#ASMSTART ; GFX10-NEXT: ; def v31 ; GFX10-NEXT: ;;#ASMEND -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: v_mov_b32_e32 v41, v31 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_void@rel32@lo+4 @@ -421,8 +423,8 @@ ; GFX10-NEXT: ; use v31 ; GFX10-NEXT: ;;#ASMEND ; GFX10-NEXT: buffer_load_dword v41, off, s[0:3], s33 ; 4-byte Folded Reload -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v42, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -444,16 +446,17 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 offset:4 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v42, s33 offset:8 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: v_writelane_b32 v40, s30, 0 -; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v42, s0, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: scratch_store_b32 off, v41, s33 ; 4-byte Folded Spill +; GFX11-NEXT: v_writelane_b32 v40, s30, 0 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 ; GFX11-NEXT: ;;#ASMSTART ; GFX11-NEXT: ; def v31 ; GFX11-NEXT: ;;#ASMEND -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 ; GFX11-NEXT: v_mov_b32_e32 v41, v31 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_void@rel32@lo+4 @@ -465,8 +468,8 @@ ; GFX11-NEXT: ; use v31 ; GFX11-NEXT: ;;#ASMEND ; GFX11-NEXT: scratch_load_b32 v41, off, s33 ; 4-byte Folded Reload -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v42, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -494,10 +497,10 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: v_writelane_b32 v40, s4, 0 +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s30, 1 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s31, 2 ; GFX9-NEXT: ;;#ASMSTART ; GFX9-NEXT: ; def s33 @@ -507,12 +510,12 @@ ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_void@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_void@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] +; GFX9-NEXT: v_readlane_b32 s30, v40, 1 ; GFX9-NEXT: s_mov_b32 s33, s4 ; GFX9-NEXT: ;;#ASMSTART ; GFX9-NEXT: ; use s33 ; GFX9-NEXT: ;;#ASMEND ; GFX9-NEXT: v_readlane_b32 s31, v40, 2 -; GFX9-NEXT: v_readlane_b32 s30, v40, 1 ; GFX9-NEXT: v_readlane_b32 s4, v40, 0 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 @@ -535,25 +538,25 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: v_writelane_b32 v40, s4, 0 -; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s4, 0 +; GFX10-NEXT: v_writelane_b32 v40, s30, 1 +; GFX10-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_void@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_void@rel32@hi+12 ; GFX10-NEXT: ;;#ASMSTART ; GFX10-NEXT: ; def s33 ; GFX10-NEXT: ;;#ASMEND -; GFX10-NEXT: v_writelane_b32 v40, s30, 1 ; GFX10-NEXT: s_mov_b32 s4, s33 -; GFX10-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] +; GFX10-NEXT: v_readlane_b32 s30, v40, 1 ; GFX10-NEXT: s_mov_b32 s33, s4 ; GFX10-NEXT: ;;#ASMSTART ; GFX10-NEXT: ; use s33 ; GFX10-NEXT: ;;#ASMEND ; GFX10-NEXT: v_readlane_b32 s31, v40, 2 -; GFX10-NEXT: v_readlane_b32 s30, v40, 1 ; GFX10-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 @@ -576,28 +579,28 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: v_writelane_b32 v40, s4, 0 -; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s4, 0 +; GFX11-NEXT: v_writelane_b32 v40, s30, 1 +; GFX11-NEXT: v_writelane_b32 v40, s31, 2 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_void@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_void@rel32@hi+12 ; GFX11-NEXT: ;;#ASMSTART ; GFX11-NEXT: ; def s33 ; GFX11-NEXT: ;;#ASMEND -; GFX11-NEXT: v_writelane_b32 v40, s30, 1 ; GFX11-NEXT: s_mov_b32 s4, s33 -; GFX11-NEXT: v_writelane_b32 v40, s31, 2 ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] +; GFX11-NEXT: v_readlane_b32 s30, v40, 1 ; GFX11-NEXT: s_mov_b32 s33, s4 ; GFX11-NEXT: ;;#ASMSTART ; GFX11-NEXT: ; use s33 ; GFX11-NEXT: ;;#ASMEND -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) ; GFX11-NEXT: v_readlane_b32 s31, v40, 2 -; GFX11-NEXT: v_readlane_b32 s30, v40, 1 ; GFX11-NEXT: v_readlane_b32 s4, v40, 0 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 @@ -625,25 +628,25 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s30, 1 +; GFX9-NEXT: v_writelane_b32 v40, s31, 2 ; GFX9-NEXT: ;;#ASMSTART ; GFX9-NEXT: ; def s34 ; GFX9-NEXT: ;;#ASMEND -; GFX9-NEXT: v_writelane_b32 v40, s31, 2 ; GFX9-NEXT: s_mov_b32 s4, s34 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_void@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_void@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] ; GFX9-NEXT: s_mov_b32 s34, s4 +; GFX9-NEXT: v_readlane_b32 s30, v40, 1 ; GFX9-NEXT: ;;#ASMSTART ; GFX9-NEXT: ; use s34 ; GFX9-NEXT: ;;#ASMEND ; GFX9-NEXT: v_readlane_b32 s31, v40, 2 -; GFX9-NEXT: v_readlane_b32 s30, v40, 1 ; GFX9-NEXT: v_readlane_b32 s4, v40, 0 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 @@ -666,25 +669,25 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: v_writelane_b32 v40, s4, 0 -; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s4, 0 +; GFX10-NEXT: v_writelane_b32 v40, s30, 1 +; GFX10-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-NEXT: s_getpc_b64 s[36:37] ; GFX10-NEXT: s_add_u32 s36, s36, external_void_func_void@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s37, s37, external_void_func_void@rel32@hi+12 ; GFX10-NEXT: ;;#ASMSTART ; GFX10-NEXT: ; def s34 ; GFX10-NEXT: ;;#ASMEND -; GFX10-NEXT: v_writelane_b32 v40, s30, 1 ; GFX10-NEXT: s_mov_b32 s4, s34 -; GFX10-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[36:37] ; GFX10-NEXT: s_mov_b32 s34, s4 +; GFX10-NEXT: v_readlane_b32 s30, v40, 1 ; GFX10-NEXT: ;;#ASMSTART ; GFX10-NEXT: ; use s34 ; GFX10-NEXT: ;;#ASMEND ; GFX10-NEXT: v_readlane_b32 s31, v40, 2 -; GFX10-NEXT: v_readlane_b32 s30, v40, 1 ; GFX10-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 @@ -707,28 +710,28 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: v_writelane_b32 v40, s4, 0 -; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s4, 0 +; GFX11-NEXT: v_writelane_b32 v40, s30, 1 +; GFX11-NEXT: v_writelane_b32 v40, s31, 2 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_void@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_void@rel32@hi+12 ; GFX11-NEXT: ;;#ASMSTART ; GFX11-NEXT: ; def s34 ; GFX11-NEXT: ;;#ASMEND -; GFX11-NEXT: v_writelane_b32 v40, s30, 1 ; GFX11-NEXT: s_mov_b32 s4, s34 -; GFX11-NEXT: v_writelane_b32 v40, s31, 2 ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] +; GFX11-NEXT: v_readlane_b32 s30, v40, 1 ; GFX11-NEXT: s_mov_b32 s34, s4 ; GFX11-NEXT: ;;#ASMSTART ; GFX11-NEXT: ; use s34 ; GFX11-NEXT: ;;#ASMEND -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) ; GFX11-NEXT: v_readlane_b32 s31, v40, 2 -; GFX11-NEXT: v_readlane_b32 s30, v40, 1 ; GFX11-NEXT: v_readlane_b32 s4, v40, 0 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 @@ -756,10 +759,10 @@ ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v42, off, s[0:3], s33 offset:8 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: s_addk_i32 s32, 0x400 -; GFX9-NEXT: v_writelane_b32 v41, s30, 0 ; GFX9-NEXT: v_writelane_b32 v42, s34, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill +; GFX9-NEXT: v_writelane_b32 v41, s30, 0 ; GFX9-NEXT: v_writelane_b32 v41, s31, 1 ; GFX9-NEXT: ;;#ASMSTART ; GFX9-NEXT: ; def v40 @@ -772,8 +775,8 @@ ; GFX9-NEXT: ; use v40 ; GFX9-NEXT: ;;#ASMEND ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload -; GFX9-NEXT: v_readlane_b32 s31, v41, 1 ; GFX9-NEXT: v_readlane_b32 s30, v41, 0 +; GFX9-NEXT: v_readlane_b32 s31, v41, 1 ; GFX9-NEXT: v_readlane_b32 s34, v42, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Reload @@ -795,14 +798,14 @@ ; GFX10-NEXT: buffer_store_dword v42, off, s[0:3], s33 offset:8 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: v_writelane_b32 v41, s30, 0 -; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v42, s34, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill +; GFX10-NEXT: v_writelane_b32 v41, s30, 0 +; GFX10-NEXT: v_writelane_b32 v41, s31, 1 ; GFX10-NEXT: ;;#ASMSTART ; GFX10-NEXT: ; def v40 ; GFX10-NEXT: ;;#ASMEND -; GFX10-NEXT: v_writelane_b32 v41, s31, 1 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_void@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_void@rel32@hi+12 @@ -811,8 +814,8 @@ ; GFX10-NEXT: ; use v40 ; GFX10-NEXT: ;;#ASMEND ; GFX10-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload -; GFX10-NEXT: v_readlane_b32 s31, v41, 1 ; GFX10-NEXT: v_readlane_b32 s30, v41, 0 +; GFX10-NEXT: v_readlane_b32 s31, v41, 1 ; GFX10-NEXT: v_readlane_b32 s34, v42, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -834,16 +837,17 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v42, s33 offset:8 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: v_writelane_b32 v41, s30, 0 -; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v42, s0, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 ; 4-byte Folded Spill +; GFX11-NEXT: v_writelane_b32 v41, s30, 0 +; GFX11-NEXT: v_writelane_b32 v41, s31, 1 ; GFX11-NEXT: ;;#ASMSTART ; GFX11-NEXT: ; def v40 ; GFX11-NEXT: ;;#ASMEND -; GFX11-NEXT: v_writelane_b32 v41, s31, 1 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_void@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_void@rel32@hi+12 @@ -853,8 +857,8 @@ ; GFX11-NEXT: ; use v40 ; GFX11-NEXT: ;;#ASMEND ; GFX11-NEXT: scratch_load_b32 v40, off, s33 ; 4-byte Folded Reload -; GFX11-NEXT: v_readlane_b32 s31, v41, 1 ; GFX11-NEXT: v_readlane_b32 s30, v41, 0 +; GFX11-NEXT: v_readlane_b32 s31, v41, 1 ; GFX11-NEXT: v_readlane_b32 s0, v42, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -1005,16 +1009,16 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: s_addk_i32 s32, 0x400 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 ; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, void_func_void_clobber_s33@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, void_func_void_clobber_s33@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -1036,16 +1040,16 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, void_func_void_clobber_s33@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, void_func_void_clobber_s33@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -1067,19 +1071,20 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, void_func_void_clobber_s33@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, void_func_void_clobber_s33@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -1104,16 +1109,16 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: s_addk_i32 s32, 0x400 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 ; GFX9-NEXT: v_writelane_b32 v41, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, void_func_void_clobber_s34@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, void_func_void_clobber_s34@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -1135,16 +1140,16 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 +; GFX10-NEXT: v_writelane_b32 v41, s34, 0 ; GFX10-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 -; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, void_func_void_clobber_s34@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, void_func_void_clobber_s34@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 ; GFX10-NEXT: s_clause 0x1 @@ -1166,19 +1171,20 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v41, s0, 0 ; GFX11-NEXT: v_writelane_b32 v40, s30, 0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 -; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, void_func_void_clobber_s34@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, void_func_void_clobber_s34@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -1203,10 +1209,10 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: v_writelane_b32 v40, s4, 0 +; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v40, s4, 0 ; GFX9-NEXT: v_writelane_b32 v40, s30, 1 -; GFX9-NEXT: v_writelane_b32 v41, s34, 0 ; GFX9-NEXT: v_writelane_b32 v40, s31, 2 ; GFX9-NEXT: ;;#ASMSTART ; GFX9-NEXT: ; def s40 @@ -1216,11 +1222,11 @@ ; GFX9-NEXT: s_add_u32 s34, s34, external_void_func_void@rel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, external_void_func_void@rel32@hi+12 ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] +; GFX9-NEXT: v_readlane_b32 s30, v40, 1 ; GFX9-NEXT: ;;#ASMSTART ; GFX9-NEXT: ; use s4 ; GFX9-NEXT: ;;#ASMEND ; GFX9-NEXT: v_readlane_b32 s31, v40, 2 -; GFX9-NEXT: v_readlane_b32 s30, v40, 1 ; GFX9-NEXT: v_readlane_b32 s4, v40, 0 ; GFX9-NEXT: v_readlane_b32 s34, v41, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 @@ -1243,24 +1249,24 @@ ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: v_writelane_b32 v40, s4, 0 -; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v41, s34, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v40, s4, 0 +; GFX10-NEXT: v_writelane_b32 v40, s30, 1 +; GFX10-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_void@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_void@rel32@hi+12 ; GFX10-NEXT: ;;#ASMSTART ; GFX10-NEXT: ; def s40 ; GFX10-NEXT: ;;#ASMEND -; GFX10-NEXT: v_writelane_b32 v40, s30, 1 ; GFX10-NEXT: s_mov_b32 s4, s40 -; GFX10-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] +; GFX10-NEXT: v_readlane_b32 s30, v40, 1 ; GFX10-NEXT: ;;#ASMSTART ; GFX10-NEXT: ; use s4 ; GFX10-NEXT: ;;#ASMEND ; GFX10-NEXT: v_readlane_b32 s31, v40, 2 -; GFX10-NEXT: v_readlane_b32 s30, v40, 1 ; GFX10-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-NEXT: v_readlane_b32 s34, v41, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 @@ -1283,27 +1289,27 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:4 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: v_writelane_b32 v40, s4, 0 -; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v41, s0, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v40, s4, 0 +; GFX11-NEXT: v_writelane_b32 v40, s30, 1 +; GFX11-NEXT: v_writelane_b32 v40, s31, 2 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_void@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_void@rel32@hi+12 ; GFX11-NEXT: ;;#ASMSTART ; GFX11-NEXT: ; def s40 ; GFX11-NEXT: ;;#ASMEND -; GFX11-NEXT: v_writelane_b32 v40, s30, 1 ; GFX11-NEXT: s_mov_b32 s4, s40 -; GFX11-NEXT: v_writelane_b32 v40, s31, 2 ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] +; GFX11-NEXT: v_readlane_b32 s30, v40, 1 ; GFX11-NEXT: ;;#ASMSTART ; GFX11-NEXT: ; use s4 ; GFX11-NEXT: ;;#ASMEND -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) ; GFX11-NEXT: v_readlane_b32 s31, v40, 2 -; GFX11-NEXT: v_readlane_b32 s30, v40, 1 ; GFX11-NEXT: v_readlane_b32 s4, v40, 0 ; GFX11-NEXT: v_readlane_b32 s0, v41, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 @@ -1331,11 +1337,11 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v42, off, s[0:3], s33 offset:8 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[36:37] -; GFX9-NEXT: v_writelane_b32 v40, s4, 0 -; GFX9-NEXT: s_addk_i32 s32, 0x400 -; GFX9-NEXT: v_writelane_b32 v40, s30, 1 ; GFX9-NEXT: v_writelane_b32 v42, s34, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x400 ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 ; 4-byte Folded Spill +; GFX9-NEXT: v_writelane_b32 v40, s4, 0 +; GFX9-NEXT: v_writelane_b32 v40, s30, 1 ; GFX9-NEXT: v_writelane_b32 v40, s31, 2 ; GFX9-NEXT: ;;#ASMSTART ; GFX9-NEXT: ; def s40 @@ -1356,8 +1362,8 @@ ; GFX9-NEXT: ; use v41 ; GFX9-NEXT: ;;#ASMEND ; GFX9-NEXT: buffer_load_dword v41, off, s[0:3], s33 ; 4-byte Folded Reload -; GFX9-NEXT: v_readlane_b32 s31, v40, 2 ; GFX9-NEXT: v_readlane_b32 s30, v40, 1 +; GFX9-NEXT: v_readlane_b32 s31, v40, 2 ; GFX9-NEXT: v_readlane_b32 s4, v40, 0 ; GFX9-NEXT: v_readlane_b32 s34, v42, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[36:37], -1 @@ -1380,14 +1386,15 @@ ; GFX10-NEXT: buffer_store_dword v42, off, s[0:3], s33 offset:8 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s35 -; GFX10-NEXT: v_writelane_b32 v40, s4, 0 -; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: v_writelane_b32 v42, s34, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x200 ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 ; 4-byte Folded Spill +; GFX10-NEXT: v_writelane_b32 v40, s4, 0 +; GFX10-NEXT: v_writelane_b32 v40, s30, 1 +; GFX10-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-NEXT: ;;#ASMSTART ; GFX10-NEXT: ; def s40 ; GFX10-NEXT: ;;#ASMEND -; GFX10-NEXT: v_writelane_b32 v40, s30, 1 ; GFX10-NEXT: s_mov_b32 s4, s40 ; GFX10-NEXT: ;;#ASMSTART ; GFX10-NEXT: ; def v32 @@ -1396,7 +1403,6 @@ ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, external_void_func_void@rel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, external_void_func_void@rel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s31, 2 ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] ; GFX10-NEXT: ;;#ASMSTART ; GFX10-NEXT: ; use s4 @@ -1405,8 +1411,8 @@ ; GFX10-NEXT: ; use v41 ; GFX10-NEXT: ;;#ASMEND ; GFX10-NEXT: buffer_load_dword v41, off, s[0:3], s33 ; 4-byte Folded Reload -; GFX10-NEXT: v_readlane_b32 s31, v40, 2 ; GFX10-NEXT: v_readlane_b32 s30, v40, 1 +; GFX10-NEXT: v_readlane_b32 s31, v40, 2 ; GFX10-NEXT: v_readlane_b32 s4, v40, 0 ; GFX10-NEXT: v_readlane_b32 s34, v42, 0 ; GFX10-NEXT: s_or_saveexec_b32 s35, -1 @@ -1429,16 +1435,18 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 offset:4 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v42, s33 offset:8 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: v_writelane_b32 v40, s4, 0 -; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: v_writelane_b32 v42, s0, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 16 ; GFX11-NEXT: scratch_store_b32 off, v41, s33 ; 4-byte Folded Spill +; GFX11-NEXT: v_writelane_b32 v40, s4, 0 +; GFX11-NEXT: v_writelane_b32 v40, s30, 1 +; GFX11-NEXT: v_writelane_b32 v40, s31, 2 ; GFX11-NEXT: ;;#ASMSTART ; GFX11-NEXT: ; def s40 ; GFX11-NEXT: ;;#ASMEND -; GFX11-NEXT: v_writelane_b32 v40, s30, 1 ; GFX11-NEXT: s_mov_b32 s4, s40 ; GFX11-NEXT: ;;#ASMSTART ; GFX11-NEXT: ; def v32 @@ -1447,7 +1455,7 @@ ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, external_void_func_void@rel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, external_void_func_void@rel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s31, 2 +; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] ; GFX11-NEXT: ;;#ASMSTART ; GFX11-NEXT: ; use s4 @@ -1456,8 +1464,8 @@ ; GFX11-NEXT: ; use v41 ; GFX11-NEXT: ;;#ASMEND ; GFX11-NEXT: scratch_load_b32 v41, off, s33 ; 4-byte Folded Reload -; GFX11-NEXT: v_readlane_b32 s31, v40, 2 ; GFX11-NEXT: v_readlane_b32 s30, v40, 1 +; GFX11-NEXT: v_readlane_b32 s31, v40, 2 ; GFX11-NEXT: v_readlane_b32 s4, v40, 0 ; GFX11-NEXT: v_readlane_b32 s0, v42, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 diff --git a/llvm/test/CodeGen/AMDGPU/gfx-callable-return-types.ll b/llvm/test/CodeGen/AMDGPU/gfx-callable-return-types.ll --- a/llvm/test/CodeGen/AMDGPU/gfx-callable-return-types.ll +++ b/llvm/test/CodeGen/AMDGPU/gfx-callable-return-types.ll @@ -29,17 +29,17 @@ ; GFX9-NEXT: s_xor_saveexec_b64 s[34:35], -1 ; GFX9-NEXT: buffer_store_dword v1, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[34:35] +; GFX9-NEXT: v_writelane_b32 v1, s30, 0 ; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v1, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, return_i1@gotpcrel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, return_i1@gotpcrel32@hi+12 ; GFX9-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 -; GFX9-NEXT: v_writelane_b32 v1, s30, 0 -; GFX9-NEXT: v_writelane_b32 v1, s31, 1 ; GFX9-NEXT: s_waitcnt lgkmcnt(0) ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v1, 1 ; GFX9-NEXT: v_readlane_b32 s30, v1, 0 +; GFX9-NEXT: v_readlane_b32 s31, v1, 1 ; GFX9-NEXT: s_xor_saveexec_b64 s[34:35], -1 ; GFX9-NEXT: buffer_load_dword v1, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX9-NEXT: s_mov_b64 exec, s[34:35] @@ -58,17 +58,17 @@ ; GFX10-NEXT: buffer_store_dword v1, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s34 +; GFX10-NEXT: v_writelane_b32 v1, s30, 0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v1, s31, 1 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, return_i1@gotpcrel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, return_i1@gotpcrel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v1, s30, 0 ; GFX10-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 -; GFX10-NEXT: v_writelane_b32 v1, s31, 1 ; GFX10-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v1, 1 ; GFX10-NEXT: v_readlane_b32 s30, v1, 0 +; GFX10-NEXT: v_readlane_b32 s31, v1, 1 ; GFX10-NEXT: s_xor_saveexec_b32 s34, -1 ; GFX10-NEXT: buffer_load_dword v1, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 @@ -87,18 +87,17 @@ ; GFX11-NEXT: s_xor_saveexec_b32 s0, -1 ; GFX11-NEXT: scratch_store_b32 off, v1, s33 ; 4-byte Folded Spill ; GFX11-NEXT: s_mov_b32 exec_lo, s0 +; GFX11-NEXT: v_writelane_b32 v1, s30, 0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v1, s31, 1 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, return_i1@gotpcrel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, return_i1@gotpcrel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v1, s30, 0 ; GFX11-NEXT: s_load_b64 s[0:1], s[0:1], 0x0 -; GFX11-NEXT: v_writelane_b32 v1, s31, 1 ; GFX11-NEXT: s_waitcnt lgkmcnt(0) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v1, 1 ; GFX11-NEXT: v_readlane_b32 s30, v1, 0 +; GFX11-NEXT: v_readlane_b32 s31, v1, 1 ; GFX11-NEXT: s_xor_saveexec_b32 s0, -1 ; GFX11-NEXT: scratch_load_b32 v1, off, s33 ; 4-byte Folded Reload ; GFX11-NEXT: s_mov_b32 exec_lo, s0 @@ -137,17 +136,17 @@ ; GFX9-NEXT: s_xor_saveexec_b64 s[34:35], -1 ; GFX9-NEXT: buffer_store_dword v1, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[34:35] +; GFX9-NEXT: v_writelane_b32 v1, s30, 0 ; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v1, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, return_i16@gotpcrel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, return_i16@gotpcrel32@hi+12 ; GFX9-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 -; GFX9-NEXT: v_writelane_b32 v1, s30, 0 -; GFX9-NEXT: v_writelane_b32 v1, s31, 1 ; GFX9-NEXT: s_waitcnt lgkmcnt(0) ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v1, 1 ; GFX9-NEXT: v_readlane_b32 s30, v1, 0 +; GFX9-NEXT: v_readlane_b32 s31, v1, 1 ; GFX9-NEXT: s_xor_saveexec_b64 s[34:35], -1 ; GFX9-NEXT: buffer_load_dword v1, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX9-NEXT: s_mov_b64 exec, s[34:35] @@ -166,17 +165,17 @@ ; GFX10-NEXT: buffer_store_dword v1, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s34 +; GFX10-NEXT: v_writelane_b32 v1, s30, 0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v1, s31, 1 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, return_i16@gotpcrel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, return_i16@gotpcrel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v1, s30, 0 ; GFX10-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 -; GFX10-NEXT: v_writelane_b32 v1, s31, 1 ; GFX10-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v1, 1 ; GFX10-NEXT: v_readlane_b32 s30, v1, 0 +; GFX10-NEXT: v_readlane_b32 s31, v1, 1 ; GFX10-NEXT: s_xor_saveexec_b32 s34, -1 ; GFX10-NEXT: buffer_load_dword v1, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 @@ -195,18 +194,17 @@ ; GFX11-NEXT: s_xor_saveexec_b32 s0, -1 ; GFX11-NEXT: scratch_store_b32 off, v1, s33 ; 4-byte Folded Spill ; GFX11-NEXT: s_mov_b32 exec_lo, s0 +; GFX11-NEXT: v_writelane_b32 v1, s30, 0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v1, s31, 1 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, return_i16@gotpcrel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, return_i16@gotpcrel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v1, s30, 0 ; GFX11-NEXT: s_load_b64 s[0:1], s[0:1], 0x0 -; GFX11-NEXT: v_writelane_b32 v1, s31, 1 ; GFX11-NEXT: s_waitcnt lgkmcnt(0) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v1, 1 ; GFX11-NEXT: v_readlane_b32 s30, v1, 0 +; GFX11-NEXT: v_readlane_b32 s31, v1, 1 ; GFX11-NEXT: s_xor_saveexec_b32 s0, -1 ; GFX11-NEXT: scratch_load_b32 v1, off, s33 ; 4-byte Folded Reload ; GFX11-NEXT: s_mov_b32 exec_lo, s0 @@ -245,17 +243,17 @@ ; GFX9-NEXT: s_xor_saveexec_b64 s[34:35], -1 ; GFX9-NEXT: buffer_store_dword v1, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[34:35] +; GFX9-NEXT: v_writelane_b32 v1, s30, 0 ; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v1, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, return_2xi16@gotpcrel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, return_2xi16@gotpcrel32@hi+12 ; GFX9-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 -; GFX9-NEXT: v_writelane_b32 v1, s30, 0 -; GFX9-NEXT: v_writelane_b32 v1, s31, 1 ; GFX9-NEXT: s_waitcnt lgkmcnt(0) ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v1, 1 ; GFX9-NEXT: v_readlane_b32 s30, v1, 0 +; GFX9-NEXT: v_readlane_b32 s31, v1, 1 ; GFX9-NEXT: s_xor_saveexec_b64 s[34:35], -1 ; GFX9-NEXT: buffer_load_dword v1, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX9-NEXT: s_mov_b64 exec, s[34:35] @@ -274,17 +272,17 @@ ; GFX10-NEXT: buffer_store_dword v1, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s34 +; GFX10-NEXT: v_writelane_b32 v1, s30, 0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v1, s31, 1 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, return_2xi16@gotpcrel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, return_2xi16@gotpcrel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v1, s30, 0 ; GFX10-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 -; GFX10-NEXT: v_writelane_b32 v1, s31, 1 ; GFX10-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v1, 1 ; GFX10-NEXT: v_readlane_b32 s30, v1, 0 +; GFX10-NEXT: v_readlane_b32 s31, v1, 1 ; GFX10-NEXT: s_xor_saveexec_b32 s34, -1 ; GFX10-NEXT: buffer_load_dword v1, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 @@ -303,18 +301,17 @@ ; GFX11-NEXT: s_xor_saveexec_b32 s0, -1 ; GFX11-NEXT: scratch_store_b32 off, v1, s33 ; 4-byte Folded Spill ; GFX11-NEXT: s_mov_b32 exec_lo, s0 +; GFX11-NEXT: v_writelane_b32 v1, s30, 0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v1, s31, 1 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, return_2xi16@gotpcrel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, return_2xi16@gotpcrel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v1, s30, 0 ; GFX11-NEXT: s_load_b64 s[0:1], s[0:1], 0x0 -; GFX11-NEXT: v_writelane_b32 v1, s31, 1 ; GFX11-NEXT: s_waitcnt lgkmcnt(0) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v1, 1 ; GFX11-NEXT: v_readlane_b32 s30, v1, 0 +; GFX11-NEXT: v_readlane_b32 s31, v1, 1 ; GFX11-NEXT: s_xor_saveexec_b32 s0, -1 ; GFX11-NEXT: scratch_load_b32 v1, off, s33 ; 4-byte Folded Reload ; GFX11-NEXT: s_mov_b32 exec_lo, s0 @@ -362,17 +359,17 @@ ; GFX9-NEXT: s_xor_saveexec_b64 s[34:35], -1 ; GFX9-NEXT: buffer_store_dword v2, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[34:35] +; GFX9-NEXT: v_writelane_b32 v2, s30, 0 ; GFX9-NEXT: s_addk_i32 s32, 0x400 +; GFX9-NEXT: v_writelane_b32 v2, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, return_3xi16@gotpcrel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, return_3xi16@gotpcrel32@hi+12 ; GFX9-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 -; GFX9-NEXT: v_writelane_b32 v2, s30, 0 -; GFX9-NEXT: v_writelane_b32 v2, s31, 1 ; GFX9-NEXT: s_waitcnt lgkmcnt(0) ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v2, 1 ; GFX9-NEXT: v_readlane_b32 s30, v2, 0 +; GFX9-NEXT: v_readlane_b32 s31, v2, 1 ; GFX9-NEXT: s_xor_saveexec_b64 s[34:35], -1 ; GFX9-NEXT: buffer_load_dword v2, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX9-NEXT: s_mov_b64 exec, s[34:35] @@ -391,17 +388,17 @@ ; GFX10-NEXT: buffer_store_dword v2, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s34 +; GFX10-NEXT: v_writelane_b32 v2, s30, 0 ; GFX10-NEXT: s_addk_i32 s32, 0x200 +; GFX10-NEXT: v_writelane_b32 v2, s31, 1 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, return_3xi16@gotpcrel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, return_3xi16@gotpcrel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v2, s30, 0 ; GFX10-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 -; GFX10-NEXT: v_writelane_b32 v2, s31, 1 ; GFX10-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v2, 1 ; GFX10-NEXT: v_readlane_b32 s30, v2, 0 +; GFX10-NEXT: v_readlane_b32 s31, v2, 1 ; GFX10-NEXT: s_xor_saveexec_b32 s34, -1 ; GFX10-NEXT: buffer_load_dword v2, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 @@ -420,18 +417,17 @@ ; GFX11-NEXT: s_xor_saveexec_b32 s0, -1 ; GFX11-NEXT: scratch_store_b32 off, v2, s33 ; 4-byte Folded Spill ; GFX11-NEXT: s_mov_b32 exec_lo, s0 +; GFX11-NEXT: v_writelane_b32 v2, s30, 0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v2, s31, 1 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, return_3xi16@gotpcrel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, return_3xi16@gotpcrel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v2, s30, 0 ; GFX11-NEXT: s_load_b64 s[0:1], s[0:1], 0x0 -; GFX11-NEXT: v_writelane_b32 v2, s31, 1 ; GFX11-NEXT: s_waitcnt lgkmcnt(0) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v2, 1 ; GFX11-NEXT: v_readlane_b32 s30, v2, 0 +; GFX11-NEXT: v_readlane_b32 s31, v2, 1 ; GFX11-NEXT: s_xor_saveexec_b32 s0, -1 ; GFX11-NEXT: scratch_load_b32 v2, off, s33 ; 4-byte Folded Reload ; GFX11-NEXT: s_mov_b32 exec_lo, s0 @@ -1770,18 +1766,18 @@ ; GFX9-NEXT: s_xor_saveexec_b64 s[34:35], -1 ; GFX9-NEXT: buffer_store_dword v2, off, s[0:3], s33 offset:2048 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[34:35] +; GFX9-NEXT: v_writelane_b32 v2, s30, 0 ; GFX9-NEXT: s_add_i32 s32, s32, 0x60000 +; GFX9-NEXT: v_writelane_b32 v2, s31, 1 ; GFX9-NEXT: s_getpc_b64 s[34:35] ; GFX9-NEXT: s_add_u32 s34, s34, return_512xi32@gotpcrel32@lo+4 ; GFX9-NEXT: s_addc_u32 s35, s35, return_512xi32@gotpcrel32@hi+12 ; GFX9-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 -; GFX9-NEXT: v_writelane_b32 v2, s30, 0 ; GFX9-NEXT: v_lshrrev_b32_e64 v0, 6, s33 -; GFX9-NEXT: v_writelane_b32 v2, s31, 1 ; GFX9-NEXT: s_waitcnt lgkmcnt(0) ; GFX9-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX9-NEXT: v_readlane_b32 s31, v2, 1 ; GFX9-NEXT: v_readlane_b32 s30, v2, 0 +; GFX9-NEXT: v_readlane_b32 s31, v2, 1 ; GFX9-NEXT: s_xor_saveexec_b64 s[34:35], -1 ; GFX9-NEXT: buffer_load_dword v2, off, s[0:3], s33 offset:2048 ; 4-byte Folded Reload ; GFX9-NEXT: s_mov_b64 exec, s[34:35] @@ -1801,18 +1797,18 @@ ; GFX10-NEXT: buffer_store_dword v2, off, s[0:3], s33 offset:2048 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s34 +; GFX10-NEXT: v_writelane_b32 v2, s30, 0 ; GFX10-NEXT: s_add_i32 s32, s32, 0x30000 +; GFX10-NEXT: v_writelane_b32 v2, s31, 1 ; GFX10-NEXT: s_getpc_b64 s[34:35] ; GFX10-NEXT: s_add_u32 s34, s34, return_512xi32@gotpcrel32@lo+4 ; GFX10-NEXT: s_addc_u32 s35, s35, return_512xi32@gotpcrel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v2, s30, 0 -; GFX10-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 ; GFX10-NEXT: v_lshrrev_b32_e64 v0, 5, s33 -; GFX10-NEXT: v_writelane_b32 v2, s31, 1 +; GFX10-NEXT: s_load_dwordx2 s[34:35], s[34:35], 0x0 ; GFX10-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GFX10-NEXT: v_readlane_b32 s31, v2, 1 ; GFX10-NEXT: v_readlane_b32 s30, v2, 0 +; GFX10-NEXT: v_readlane_b32 s31, v2, 1 ; GFX10-NEXT: s_xor_saveexec_b32 s34, -1 ; GFX10-NEXT: buffer_load_dword v2, off, s[0:3], s33 offset:2048 ; 4-byte Folded Reload ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 @@ -1833,19 +1829,18 @@ ; GFX11-NEXT: s_xor_saveexec_b32 s0, -1 ; GFX11-NEXT: scratch_store_b32 off, v5, s33 offset:2048 ; 4-byte Folded Spill ; GFX11-NEXT: s_mov_b32 exec_lo, s0 +; GFX11-NEXT: v_writelane_b32 v5, s30, 0 ; GFX11-NEXT: s_addk_i32 s32, 0x1800 +; GFX11-NEXT: v_writelane_b32 v5, s31, 1 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, return_512xi32@gotpcrel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, return_512xi32@gotpcrel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v5, s30, 0 -; GFX11-NEXT: s_load_b64 s[0:1], s[0:1], 0x0 ; GFX11-NEXT: v_mov_b32_e32 v0, s33 -; GFX11-NEXT: v_writelane_b32 v5, s31, 1 +; GFX11-NEXT: s_load_b64 s[0:1], s[0:1], 0x0 ; GFX11-NEXT: s_waitcnt lgkmcnt(0) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v5, 1 ; GFX11-NEXT: v_readlane_b32 s30, v5, 0 +; GFX11-NEXT: v_readlane_b32 s31, v5, 1 ; GFX11-NEXT: s_xor_saveexec_b32 s0, -1 ; GFX11-NEXT: scratch_load_b32 v5, off, s33 offset:2048 ; 4-byte Folded Reload ; GFX11-NEXT: s_mov_b32 exec_lo, s0 diff --git a/llvm/test/CodeGen/AMDGPU/indirect-call.ll b/llvm/test/CodeGen/AMDGPU/indirect-call.ll --- a/llvm/test/CodeGen/AMDGPU/indirect-call.ll +++ b/llvm/test/CodeGen/AMDGPU/indirect-call.ll @@ -401,24 +401,24 @@ ; GCN-NEXT: s_mov_b64 exec, s[18:19] ; GCN-NEXT: v_writelane_b32 v41, s16, 0 ; GCN-NEXT: s_addk_i32 s32, 0x400 -; GCN-NEXT: v_writelane_b32 v40, s30, 0 -; GCN-NEXT: v_writelane_b32 v40, s31, 1 -; GCN-NEXT: v_writelane_b32 v40, s34, 2 -; GCN-NEXT: v_writelane_b32 v40, s35, 3 -; GCN-NEXT: v_writelane_b32 v40, s36, 4 -; GCN-NEXT: v_writelane_b32 v40, s37, 5 -; GCN-NEXT: v_writelane_b32 v40, s38, 6 -; GCN-NEXT: v_writelane_b32 v40, s39, 7 -; GCN-NEXT: v_writelane_b32 v40, s40, 8 -; GCN-NEXT: v_writelane_b32 v40, s41, 9 -; GCN-NEXT: v_writelane_b32 v40, s42, 10 -; GCN-NEXT: v_writelane_b32 v40, s43, 11 -; GCN-NEXT: v_writelane_b32 v40, s44, 12 -; GCN-NEXT: v_writelane_b32 v40, s45, 13 -; GCN-NEXT: v_writelane_b32 v40, s46, 14 -; GCN-NEXT: v_writelane_b32 v40, s47, 15 -; GCN-NEXT: v_writelane_b32 v40, s48, 16 -; GCN-NEXT: v_writelane_b32 v40, s49, 17 +; GCN-NEXT: v_writelane_b32 v40, s34, 0 +; GCN-NEXT: v_writelane_b32 v40, s35, 1 +; GCN-NEXT: v_writelane_b32 v40, s36, 2 +; GCN-NEXT: v_writelane_b32 v40, s37, 3 +; GCN-NEXT: v_writelane_b32 v40, s38, 4 +; GCN-NEXT: v_writelane_b32 v40, s39, 5 +; GCN-NEXT: v_writelane_b32 v40, s40, 6 +; GCN-NEXT: v_writelane_b32 v40, s41, 7 +; GCN-NEXT: v_writelane_b32 v40, s42, 8 +; GCN-NEXT: v_writelane_b32 v40, s43, 9 +; GCN-NEXT: v_writelane_b32 v40, s44, 10 +; GCN-NEXT: v_writelane_b32 v40, s45, 11 +; GCN-NEXT: v_writelane_b32 v40, s46, 12 +; GCN-NEXT: v_writelane_b32 v40, s47, 13 +; GCN-NEXT: v_writelane_b32 v40, s48, 14 +; GCN-NEXT: v_writelane_b32 v40, s49, 15 +; GCN-NEXT: v_writelane_b32 v40, s30, 16 +; GCN-NEXT: v_writelane_b32 v40, s31, 17 ; GCN-NEXT: s_mov_b32 s42, s15 ; GCN-NEXT: s_mov_b32 s43, s14 ; GCN-NEXT: s_mov_b32 s44, s13 @@ -448,24 +448,24 @@ ; GCN-NEXT: s_cbranch_execnz .LBB2_1 ; GCN-NEXT: ; %bb.2: ; GCN-NEXT: s_mov_b64 exec, s[46:47] -; GCN-NEXT: v_readlane_b32 s49, v40, 17 -; GCN-NEXT: v_readlane_b32 s48, v40, 16 -; GCN-NEXT: v_readlane_b32 s47, v40, 15 -; GCN-NEXT: v_readlane_b32 s46, v40, 14 -; GCN-NEXT: v_readlane_b32 s45, v40, 13 -; GCN-NEXT: v_readlane_b32 s44, v40, 12 -; GCN-NEXT: v_readlane_b32 s43, v40, 11 -; GCN-NEXT: v_readlane_b32 s42, v40, 10 -; GCN-NEXT: v_readlane_b32 s41, v40, 9 -; GCN-NEXT: v_readlane_b32 s40, v40, 8 -; GCN-NEXT: v_readlane_b32 s39, v40, 7 -; GCN-NEXT: v_readlane_b32 s38, v40, 6 -; GCN-NEXT: v_readlane_b32 s37, v40, 5 -; GCN-NEXT: v_readlane_b32 s36, v40, 4 -; GCN-NEXT: v_readlane_b32 s35, v40, 3 -; GCN-NEXT: v_readlane_b32 s34, v40, 2 -; GCN-NEXT: v_readlane_b32 s31, v40, 1 -; GCN-NEXT: v_readlane_b32 s30, v40, 0 +; GCN-NEXT: v_readlane_b32 s30, v40, 16 +; GCN-NEXT: v_readlane_b32 s31, v40, 17 +; GCN-NEXT: v_readlane_b32 s49, v40, 15 +; GCN-NEXT: v_readlane_b32 s48, v40, 14 +; GCN-NEXT: v_readlane_b32 s47, v40, 13 +; GCN-NEXT: v_readlane_b32 s46, v40, 12 +; GCN-NEXT: v_readlane_b32 s45, v40, 11 +; GCN-NEXT: v_readlane_b32 s44, v40, 10 +; GCN-NEXT: v_readlane_b32 s43, v40, 9 +; GCN-NEXT: v_readlane_b32 s42, v40, 8 +; GCN-NEXT: v_readlane_b32 s41, v40, 7 +; GCN-NEXT: v_readlane_b32 s40, v40, 6 +; GCN-NEXT: v_readlane_b32 s39, v40, 5 +; GCN-NEXT: v_readlane_b32 s38, v40, 4 +; GCN-NEXT: v_readlane_b32 s37, v40, 3 +; GCN-NEXT: v_readlane_b32 s36, v40, 2 +; GCN-NEXT: v_readlane_b32 s35, v40, 1 +; GCN-NEXT: v_readlane_b32 s34, v40, 0 ; GCN-NEXT: v_readlane_b32 s4, v41, 0 ; GCN-NEXT: s_or_saveexec_b64 s[6:7], -1 ; GCN-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -487,24 +487,24 @@ ; GISEL-NEXT: s_mov_b64 exec, s[18:19] ; GISEL-NEXT: v_writelane_b32 v41, s16, 0 ; GISEL-NEXT: s_addk_i32 s32, 0x400 -; GISEL-NEXT: v_writelane_b32 v40, s30, 0 -; GISEL-NEXT: v_writelane_b32 v40, s31, 1 -; GISEL-NEXT: v_writelane_b32 v40, s34, 2 -; GISEL-NEXT: v_writelane_b32 v40, s35, 3 -; GISEL-NEXT: v_writelane_b32 v40, s36, 4 -; GISEL-NEXT: v_writelane_b32 v40, s37, 5 -; GISEL-NEXT: v_writelane_b32 v40, s38, 6 -; GISEL-NEXT: v_writelane_b32 v40, s39, 7 -; GISEL-NEXT: v_writelane_b32 v40, s40, 8 -; GISEL-NEXT: v_writelane_b32 v40, s41, 9 -; GISEL-NEXT: v_writelane_b32 v40, s42, 10 -; GISEL-NEXT: v_writelane_b32 v40, s43, 11 -; GISEL-NEXT: v_writelane_b32 v40, s44, 12 -; GISEL-NEXT: v_writelane_b32 v40, s45, 13 -; GISEL-NEXT: v_writelane_b32 v40, s46, 14 -; GISEL-NEXT: v_writelane_b32 v40, s47, 15 -; GISEL-NEXT: v_writelane_b32 v40, s48, 16 -; GISEL-NEXT: v_writelane_b32 v40, s49, 17 +; GISEL-NEXT: v_writelane_b32 v40, s34, 0 +; GISEL-NEXT: v_writelane_b32 v40, s35, 1 +; GISEL-NEXT: v_writelane_b32 v40, s36, 2 +; GISEL-NEXT: v_writelane_b32 v40, s37, 3 +; GISEL-NEXT: v_writelane_b32 v40, s38, 4 +; GISEL-NEXT: v_writelane_b32 v40, s39, 5 +; GISEL-NEXT: v_writelane_b32 v40, s40, 6 +; GISEL-NEXT: v_writelane_b32 v40, s41, 7 +; GISEL-NEXT: v_writelane_b32 v40, s42, 8 +; GISEL-NEXT: v_writelane_b32 v40, s43, 9 +; GISEL-NEXT: v_writelane_b32 v40, s44, 10 +; GISEL-NEXT: v_writelane_b32 v40, s45, 11 +; GISEL-NEXT: v_writelane_b32 v40, s46, 12 +; GISEL-NEXT: v_writelane_b32 v40, s47, 13 +; GISEL-NEXT: v_writelane_b32 v40, s48, 14 +; GISEL-NEXT: v_writelane_b32 v40, s49, 15 +; GISEL-NEXT: v_writelane_b32 v40, s30, 16 +; GISEL-NEXT: v_writelane_b32 v40, s31, 17 ; GISEL-NEXT: s_mov_b32 s42, s15 ; GISEL-NEXT: s_mov_b32 s43, s14 ; GISEL-NEXT: s_mov_b32 s44, s13 @@ -534,24 +534,24 @@ ; GISEL-NEXT: s_cbranch_execnz .LBB2_1 ; GISEL-NEXT: ; %bb.2: ; GISEL-NEXT: s_mov_b64 exec, s[46:47] -; GISEL-NEXT: v_readlane_b32 s49, v40, 17 -; GISEL-NEXT: v_readlane_b32 s48, v40, 16 -; GISEL-NEXT: v_readlane_b32 s47, v40, 15 -; GISEL-NEXT: v_readlane_b32 s46, v40, 14 -; GISEL-NEXT: v_readlane_b32 s45, v40, 13 -; GISEL-NEXT: v_readlane_b32 s44, v40, 12 -; GISEL-NEXT: v_readlane_b32 s43, v40, 11 -; GISEL-NEXT: v_readlane_b32 s42, v40, 10 -; GISEL-NEXT: v_readlane_b32 s41, v40, 9 -; GISEL-NEXT: v_readlane_b32 s40, v40, 8 -; GISEL-NEXT: v_readlane_b32 s39, v40, 7 -; GISEL-NEXT: v_readlane_b32 s38, v40, 6 -; GISEL-NEXT: v_readlane_b32 s37, v40, 5 -; GISEL-NEXT: v_readlane_b32 s36, v40, 4 -; GISEL-NEXT: v_readlane_b32 s35, v40, 3 -; GISEL-NEXT: v_readlane_b32 s34, v40, 2 -; GISEL-NEXT: v_readlane_b32 s31, v40, 1 -; GISEL-NEXT: v_readlane_b32 s30, v40, 0 +; GISEL-NEXT: v_readlane_b32 s30, v40, 16 +; GISEL-NEXT: v_readlane_b32 s31, v40, 17 +; GISEL-NEXT: v_readlane_b32 s49, v40, 15 +; GISEL-NEXT: v_readlane_b32 s48, v40, 14 +; GISEL-NEXT: v_readlane_b32 s47, v40, 13 +; GISEL-NEXT: v_readlane_b32 s46, v40, 12 +; GISEL-NEXT: v_readlane_b32 s45, v40, 11 +; GISEL-NEXT: v_readlane_b32 s44, v40, 10 +; GISEL-NEXT: v_readlane_b32 s43, v40, 9 +; GISEL-NEXT: v_readlane_b32 s42, v40, 8 +; GISEL-NEXT: v_readlane_b32 s41, v40, 7 +; GISEL-NEXT: v_readlane_b32 s40, v40, 6 +; GISEL-NEXT: v_readlane_b32 s39, v40, 5 +; GISEL-NEXT: v_readlane_b32 s38, v40, 4 +; GISEL-NEXT: v_readlane_b32 s37, v40, 3 +; GISEL-NEXT: v_readlane_b32 s36, v40, 2 +; GISEL-NEXT: v_readlane_b32 s35, v40, 1 +; GISEL-NEXT: v_readlane_b32 s34, v40, 0 ; GISEL-NEXT: v_readlane_b32 s4, v41, 0 ; GISEL-NEXT: s_or_saveexec_b64 s[6:7], -1 ; GISEL-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -577,24 +577,24 @@ ; GCN-NEXT: s_mov_b64 exec, s[18:19] ; GCN-NEXT: v_writelane_b32 v41, s16, 0 ; GCN-NEXT: s_addk_i32 s32, 0x400 -; GCN-NEXT: v_writelane_b32 v40, s30, 0 -; GCN-NEXT: v_writelane_b32 v40, s31, 1 -; GCN-NEXT: v_writelane_b32 v40, s34, 2 -; GCN-NEXT: v_writelane_b32 v40, s35, 3 -; GCN-NEXT: v_writelane_b32 v40, s36, 4 -; GCN-NEXT: v_writelane_b32 v40, s37, 5 -; GCN-NEXT: v_writelane_b32 v40, s38, 6 -; GCN-NEXT: v_writelane_b32 v40, s39, 7 -; GCN-NEXT: v_writelane_b32 v40, s40, 8 -; GCN-NEXT: v_writelane_b32 v40, s41, 9 -; GCN-NEXT: v_writelane_b32 v40, s42, 10 -; GCN-NEXT: v_writelane_b32 v40, s43, 11 -; GCN-NEXT: v_writelane_b32 v40, s44, 12 -; GCN-NEXT: v_writelane_b32 v40, s45, 13 -; GCN-NEXT: v_writelane_b32 v40, s46, 14 -; GCN-NEXT: v_writelane_b32 v40, s47, 15 -; GCN-NEXT: v_writelane_b32 v40, s48, 16 -; GCN-NEXT: v_writelane_b32 v40, s49, 17 +; GCN-NEXT: v_writelane_b32 v40, s34, 0 +; GCN-NEXT: v_writelane_b32 v40, s35, 1 +; GCN-NEXT: v_writelane_b32 v40, s36, 2 +; GCN-NEXT: v_writelane_b32 v40, s37, 3 +; GCN-NEXT: v_writelane_b32 v40, s38, 4 +; GCN-NEXT: v_writelane_b32 v40, s39, 5 +; GCN-NEXT: v_writelane_b32 v40, s40, 6 +; GCN-NEXT: v_writelane_b32 v40, s41, 7 +; GCN-NEXT: v_writelane_b32 v40, s42, 8 +; GCN-NEXT: v_writelane_b32 v40, s43, 9 +; GCN-NEXT: v_writelane_b32 v40, s44, 10 +; GCN-NEXT: v_writelane_b32 v40, s45, 11 +; GCN-NEXT: v_writelane_b32 v40, s46, 12 +; GCN-NEXT: v_writelane_b32 v40, s47, 13 +; GCN-NEXT: v_writelane_b32 v40, s48, 14 +; GCN-NEXT: v_writelane_b32 v40, s49, 15 +; GCN-NEXT: v_writelane_b32 v40, s30, 16 +; GCN-NEXT: v_writelane_b32 v40, s31, 17 ; GCN-NEXT: s_mov_b32 s42, s15 ; GCN-NEXT: s_mov_b32 s43, s14 ; GCN-NEXT: s_mov_b32 s44, s13 @@ -627,24 +627,24 @@ ; GCN-NEXT: s_cbranch_execnz .LBB3_1 ; GCN-NEXT: ; %bb.2: ; GCN-NEXT: s_mov_b64 exec, s[46:47] -; GCN-NEXT: v_readlane_b32 s49, v40, 17 -; GCN-NEXT: v_readlane_b32 s48, v40, 16 -; GCN-NEXT: v_readlane_b32 s47, v40, 15 -; GCN-NEXT: v_readlane_b32 s46, v40, 14 -; GCN-NEXT: v_readlane_b32 s45, v40, 13 -; GCN-NEXT: v_readlane_b32 s44, v40, 12 -; GCN-NEXT: v_readlane_b32 s43, v40, 11 -; GCN-NEXT: v_readlane_b32 s42, v40, 10 -; GCN-NEXT: v_readlane_b32 s41, v40, 9 -; GCN-NEXT: v_readlane_b32 s40, v40, 8 -; GCN-NEXT: v_readlane_b32 s39, v40, 7 -; GCN-NEXT: v_readlane_b32 s38, v40, 6 -; GCN-NEXT: v_readlane_b32 s37, v40, 5 -; GCN-NEXT: v_readlane_b32 s36, v40, 4 -; GCN-NEXT: v_readlane_b32 s35, v40, 3 -; GCN-NEXT: v_readlane_b32 s34, v40, 2 -; GCN-NEXT: v_readlane_b32 s31, v40, 1 -; GCN-NEXT: v_readlane_b32 s30, v40, 0 +; GCN-NEXT: v_readlane_b32 s30, v40, 16 +; GCN-NEXT: v_readlane_b32 s31, v40, 17 +; GCN-NEXT: v_readlane_b32 s49, v40, 15 +; GCN-NEXT: v_readlane_b32 s48, v40, 14 +; GCN-NEXT: v_readlane_b32 s47, v40, 13 +; GCN-NEXT: v_readlane_b32 s46, v40, 12 +; GCN-NEXT: v_readlane_b32 s45, v40, 11 +; GCN-NEXT: v_readlane_b32 s44, v40, 10 +; GCN-NEXT: v_readlane_b32 s43, v40, 9 +; GCN-NEXT: v_readlane_b32 s42, v40, 8 +; GCN-NEXT: v_readlane_b32 s41, v40, 7 +; GCN-NEXT: v_readlane_b32 s40, v40, 6 +; GCN-NEXT: v_readlane_b32 s39, v40, 5 +; GCN-NEXT: v_readlane_b32 s38, v40, 4 +; GCN-NEXT: v_readlane_b32 s37, v40, 3 +; GCN-NEXT: v_readlane_b32 s36, v40, 2 +; GCN-NEXT: v_readlane_b32 s35, v40, 1 +; GCN-NEXT: v_readlane_b32 s34, v40, 0 ; GCN-NEXT: v_readlane_b32 s4, v41, 0 ; GCN-NEXT: s_or_saveexec_b64 s[6:7], -1 ; GCN-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -666,24 +666,24 @@ ; GISEL-NEXT: s_mov_b64 exec, s[18:19] ; GISEL-NEXT: v_writelane_b32 v41, s16, 0 ; GISEL-NEXT: s_addk_i32 s32, 0x400 -; GISEL-NEXT: v_writelane_b32 v40, s30, 0 -; GISEL-NEXT: v_writelane_b32 v40, s31, 1 -; GISEL-NEXT: v_writelane_b32 v40, s34, 2 -; GISEL-NEXT: v_writelane_b32 v40, s35, 3 -; GISEL-NEXT: v_writelane_b32 v40, s36, 4 -; GISEL-NEXT: v_writelane_b32 v40, s37, 5 -; GISEL-NEXT: v_writelane_b32 v40, s38, 6 -; GISEL-NEXT: v_writelane_b32 v40, s39, 7 -; GISEL-NEXT: v_writelane_b32 v40, s40, 8 -; GISEL-NEXT: v_writelane_b32 v40, s41, 9 -; GISEL-NEXT: v_writelane_b32 v40, s42, 10 -; GISEL-NEXT: v_writelane_b32 v40, s43, 11 -; GISEL-NEXT: v_writelane_b32 v40, s44, 12 -; GISEL-NEXT: v_writelane_b32 v40, s45, 13 -; GISEL-NEXT: v_writelane_b32 v40, s46, 14 -; GISEL-NEXT: v_writelane_b32 v40, s47, 15 -; GISEL-NEXT: v_writelane_b32 v40, s48, 16 -; GISEL-NEXT: v_writelane_b32 v40, s49, 17 +; GISEL-NEXT: v_writelane_b32 v40, s34, 0 +; GISEL-NEXT: v_writelane_b32 v40, s35, 1 +; GISEL-NEXT: v_writelane_b32 v40, s36, 2 +; GISEL-NEXT: v_writelane_b32 v40, s37, 3 +; GISEL-NEXT: v_writelane_b32 v40, s38, 4 +; GISEL-NEXT: v_writelane_b32 v40, s39, 5 +; GISEL-NEXT: v_writelane_b32 v40, s40, 6 +; GISEL-NEXT: v_writelane_b32 v40, s41, 7 +; GISEL-NEXT: v_writelane_b32 v40, s42, 8 +; GISEL-NEXT: v_writelane_b32 v40, s43, 9 +; GISEL-NEXT: v_writelane_b32 v40, s44, 10 +; GISEL-NEXT: v_writelane_b32 v40, s45, 11 +; GISEL-NEXT: v_writelane_b32 v40, s46, 12 +; GISEL-NEXT: v_writelane_b32 v40, s47, 13 +; GISEL-NEXT: v_writelane_b32 v40, s48, 14 +; GISEL-NEXT: v_writelane_b32 v40, s49, 15 +; GISEL-NEXT: v_writelane_b32 v40, s30, 16 +; GISEL-NEXT: v_writelane_b32 v40, s31, 17 ; GISEL-NEXT: s_mov_b32 s42, s15 ; GISEL-NEXT: s_mov_b32 s43, s14 ; GISEL-NEXT: s_mov_b32 s44, s13 @@ -714,24 +714,24 @@ ; GISEL-NEXT: s_cbranch_execnz .LBB3_1 ; GISEL-NEXT: ; %bb.2: ; GISEL-NEXT: s_mov_b64 exec, s[46:47] -; GISEL-NEXT: v_readlane_b32 s49, v40, 17 -; GISEL-NEXT: v_readlane_b32 s48, v40, 16 -; GISEL-NEXT: v_readlane_b32 s47, v40, 15 -; GISEL-NEXT: v_readlane_b32 s46, v40, 14 -; GISEL-NEXT: v_readlane_b32 s45, v40, 13 -; GISEL-NEXT: v_readlane_b32 s44, v40, 12 -; GISEL-NEXT: v_readlane_b32 s43, v40, 11 -; GISEL-NEXT: v_readlane_b32 s42, v40, 10 -; GISEL-NEXT: v_readlane_b32 s41, v40, 9 -; GISEL-NEXT: v_readlane_b32 s40, v40, 8 -; GISEL-NEXT: v_readlane_b32 s39, v40, 7 -; GISEL-NEXT: v_readlane_b32 s38, v40, 6 -; GISEL-NEXT: v_readlane_b32 s37, v40, 5 -; GISEL-NEXT: v_readlane_b32 s36, v40, 4 -; GISEL-NEXT: v_readlane_b32 s35, v40, 3 -; GISEL-NEXT: v_readlane_b32 s34, v40, 2 -; GISEL-NEXT: v_readlane_b32 s31, v40, 1 -; GISEL-NEXT: v_readlane_b32 s30, v40, 0 +; GISEL-NEXT: v_readlane_b32 s30, v40, 16 +; GISEL-NEXT: v_readlane_b32 s31, v40, 17 +; GISEL-NEXT: v_readlane_b32 s49, v40, 15 +; GISEL-NEXT: v_readlane_b32 s48, v40, 14 +; GISEL-NEXT: v_readlane_b32 s47, v40, 13 +; GISEL-NEXT: v_readlane_b32 s46, v40, 12 +; GISEL-NEXT: v_readlane_b32 s45, v40, 11 +; GISEL-NEXT: v_readlane_b32 s44, v40, 10 +; GISEL-NEXT: v_readlane_b32 s43, v40, 9 +; GISEL-NEXT: v_readlane_b32 s42, v40, 8 +; GISEL-NEXT: v_readlane_b32 s41, v40, 7 +; GISEL-NEXT: v_readlane_b32 s40, v40, 6 +; GISEL-NEXT: v_readlane_b32 s39, v40, 5 +; GISEL-NEXT: v_readlane_b32 s38, v40, 4 +; GISEL-NEXT: v_readlane_b32 s37, v40, 3 +; GISEL-NEXT: v_readlane_b32 s36, v40, 2 +; GISEL-NEXT: v_readlane_b32 s35, v40, 1 +; GISEL-NEXT: v_readlane_b32 s34, v40, 0 ; GISEL-NEXT: v_readlane_b32 s4, v41, 0 ; GISEL-NEXT: s_or_saveexec_b64 s[6:7], -1 ; GISEL-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -757,24 +757,24 @@ ; GCN-NEXT: s_mov_b64 exec, s[18:19] ; GCN-NEXT: v_writelane_b32 v41, s16, 0 ; GCN-NEXT: s_addk_i32 s32, 0x400 -; GCN-NEXT: v_writelane_b32 v40, s30, 0 -; GCN-NEXT: v_writelane_b32 v40, s31, 1 -; GCN-NEXT: v_writelane_b32 v40, s34, 2 -; GCN-NEXT: v_writelane_b32 v40, s35, 3 -; GCN-NEXT: v_writelane_b32 v40, s36, 4 -; GCN-NEXT: v_writelane_b32 v40, s37, 5 -; GCN-NEXT: v_writelane_b32 v40, s38, 6 -; GCN-NEXT: v_writelane_b32 v40, s39, 7 -; GCN-NEXT: v_writelane_b32 v40, s40, 8 -; GCN-NEXT: v_writelane_b32 v40, s41, 9 -; GCN-NEXT: v_writelane_b32 v40, s42, 10 -; GCN-NEXT: v_writelane_b32 v40, s43, 11 -; GCN-NEXT: v_writelane_b32 v40, s44, 12 -; GCN-NEXT: v_writelane_b32 v40, s45, 13 -; GCN-NEXT: v_writelane_b32 v40, s46, 14 -; GCN-NEXT: v_writelane_b32 v40, s47, 15 -; GCN-NEXT: v_writelane_b32 v40, s48, 16 -; GCN-NEXT: v_writelane_b32 v40, s49, 17 +; GCN-NEXT: v_writelane_b32 v40, s34, 0 +; GCN-NEXT: v_writelane_b32 v40, s35, 1 +; GCN-NEXT: v_writelane_b32 v40, s36, 2 +; GCN-NEXT: v_writelane_b32 v40, s37, 3 +; GCN-NEXT: v_writelane_b32 v40, s38, 4 +; GCN-NEXT: v_writelane_b32 v40, s39, 5 +; GCN-NEXT: v_writelane_b32 v40, s40, 6 +; GCN-NEXT: v_writelane_b32 v40, s41, 7 +; GCN-NEXT: v_writelane_b32 v40, s42, 8 +; GCN-NEXT: v_writelane_b32 v40, s43, 9 +; GCN-NEXT: v_writelane_b32 v40, s44, 10 +; GCN-NEXT: v_writelane_b32 v40, s45, 11 +; GCN-NEXT: v_writelane_b32 v40, s46, 12 +; GCN-NEXT: v_writelane_b32 v40, s47, 13 +; GCN-NEXT: v_writelane_b32 v40, s48, 14 +; GCN-NEXT: v_writelane_b32 v40, s49, 15 +; GCN-NEXT: v_writelane_b32 v40, s30, 16 +; GCN-NEXT: v_writelane_b32 v40, s31, 17 ; GCN-NEXT: s_mov_b32 s42, s15 ; GCN-NEXT: s_mov_b32 s43, s14 ; GCN-NEXT: s_mov_b32 s44, s13 @@ -806,24 +806,24 @@ ; GCN-NEXT: ; %bb.2: ; GCN-NEXT: s_mov_b64 exec, s[46:47] ; GCN-NEXT: v_add_i32_e32 v0, vcc, 1, v2 -; GCN-NEXT: v_readlane_b32 s49, v40, 17 -; GCN-NEXT: v_readlane_b32 s48, v40, 16 -; GCN-NEXT: v_readlane_b32 s47, v40, 15 -; GCN-NEXT: v_readlane_b32 s46, v40, 14 -; GCN-NEXT: v_readlane_b32 s45, v40, 13 -; GCN-NEXT: v_readlane_b32 s44, v40, 12 -; GCN-NEXT: v_readlane_b32 s43, v40, 11 -; GCN-NEXT: v_readlane_b32 s42, v40, 10 -; GCN-NEXT: v_readlane_b32 s41, v40, 9 -; GCN-NEXT: v_readlane_b32 s40, v40, 8 -; GCN-NEXT: v_readlane_b32 s39, v40, 7 -; GCN-NEXT: v_readlane_b32 s38, v40, 6 -; GCN-NEXT: v_readlane_b32 s37, v40, 5 -; GCN-NEXT: v_readlane_b32 s36, v40, 4 -; GCN-NEXT: v_readlane_b32 s35, v40, 3 -; GCN-NEXT: v_readlane_b32 s34, v40, 2 -; GCN-NEXT: v_readlane_b32 s31, v40, 1 -; GCN-NEXT: v_readlane_b32 s30, v40, 0 +; GCN-NEXT: v_readlane_b32 s30, v40, 16 +; GCN-NEXT: v_readlane_b32 s31, v40, 17 +; GCN-NEXT: v_readlane_b32 s49, v40, 15 +; GCN-NEXT: v_readlane_b32 s48, v40, 14 +; GCN-NEXT: v_readlane_b32 s47, v40, 13 +; GCN-NEXT: v_readlane_b32 s46, v40, 12 +; GCN-NEXT: v_readlane_b32 s45, v40, 11 +; GCN-NEXT: v_readlane_b32 s44, v40, 10 +; GCN-NEXT: v_readlane_b32 s43, v40, 9 +; GCN-NEXT: v_readlane_b32 s42, v40, 8 +; GCN-NEXT: v_readlane_b32 s41, v40, 7 +; GCN-NEXT: v_readlane_b32 s40, v40, 6 +; GCN-NEXT: v_readlane_b32 s39, v40, 5 +; GCN-NEXT: v_readlane_b32 s38, v40, 4 +; GCN-NEXT: v_readlane_b32 s37, v40, 3 +; GCN-NEXT: v_readlane_b32 s36, v40, 2 +; GCN-NEXT: v_readlane_b32 s35, v40, 1 +; GCN-NEXT: v_readlane_b32 s34, v40, 0 ; GCN-NEXT: v_readlane_b32 s4, v41, 0 ; GCN-NEXT: s_or_saveexec_b64 s[6:7], -1 ; GCN-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -845,24 +845,24 @@ ; GISEL-NEXT: s_mov_b64 exec, s[18:19] ; GISEL-NEXT: v_writelane_b32 v41, s16, 0 ; GISEL-NEXT: s_addk_i32 s32, 0x400 -; GISEL-NEXT: v_writelane_b32 v40, s30, 0 -; GISEL-NEXT: v_writelane_b32 v40, s31, 1 -; GISEL-NEXT: v_writelane_b32 v40, s34, 2 -; GISEL-NEXT: v_writelane_b32 v40, s35, 3 -; GISEL-NEXT: v_writelane_b32 v40, s36, 4 -; GISEL-NEXT: v_writelane_b32 v40, s37, 5 -; GISEL-NEXT: v_writelane_b32 v40, s38, 6 -; GISEL-NEXT: v_writelane_b32 v40, s39, 7 -; GISEL-NEXT: v_writelane_b32 v40, s40, 8 -; GISEL-NEXT: v_writelane_b32 v40, s41, 9 -; GISEL-NEXT: v_writelane_b32 v40, s42, 10 -; GISEL-NEXT: v_writelane_b32 v40, s43, 11 -; GISEL-NEXT: v_writelane_b32 v40, s44, 12 -; GISEL-NEXT: v_writelane_b32 v40, s45, 13 -; GISEL-NEXT: v_writelane_b32 v40, s46, 14 -; GISEL-NEXT: v_writelane_b32 v40, s47, 15 -; GISEL-NEXT: v_writelane_b32 v40, s48, 16 -; GISEL-NEXT: v_writelane_b32 v40, s49, 17 +; GISEL-NEXT: v_writelane_b32 v40, s34, 0 +; GISEL-NEXT: v_writelane_b32 v40, s35, 1 +; GISEL-NEXT: v_writelane_b32 v40, s36, 2 +; GISEL-NEXT: v_writelane_b32 v40, s37, 3 +; GISEL-NEXT: v_writelane_b32 v40, s38, 4 +; GISEL-NEXT: v_writelane_b32 v40, s39, 5 +; GISEL-NEXT: v_writelane_b32 v40, s40, 6 +; GISEL-NEXT: v_writelane_b32 v40, s41, 7 +; GISEL-NEXT: v_writelane_b32 v40, s42, 8 +; GISEL-NEXT: v_writelane_b32 v40, s43, 9 +; GISEL-NEXT: v_writelane_b32 v40, s44, 10 +; GISEL-NEXT: v_writelane_b32 v40, s45, 11 +; GISEL-NEXT: v_writelane_b32 v40, s46, 12 +; GISEL-NEXT: v_writelane_b32 v40, s47, 13 +; GISEL-NEXT: v_writelane_b32 v40, s48, 14 +; GISEL-NEXT: v_writelane_b32 v40, s49, 15 +; GISEL-NEXT: v_writelane_b32 v40, s30, 16 +; GISEL-NEXT: v_writelane_b32 v40, s31, 17 ; GISEL-NEXT: s_mov_b32 s42, s15 ; GISEL-NEXT: s_mov_b32 s43, s14 ; GISEL-NEXT: s_mov_b32 s44, s13 @@ -894,24 +894,24 @@ ; GISEL-NEXT: ; %bb.2: ; GISEL-NEXT: s_mov_b64 exec, s[46:47] ; GISEL-NEXT: v_add_i32_e32 v0, vcc, 1, v1 -; GISEL-NEXT: v_readlane_b32 s49, v40, 17 -; GISEL-NEXT: v_readlane_b32 s48, v40, 16 -; GISEL-NEXT: v_readlane_b32 s47, v40, 15 -; GISEL-NEXT: v_readlane_b32 s46, v40, 14 -; GISEL-NEXT: v_readlane_b32 s45, v40, 13 -; GISEL-NEXT: v_readlane_b32 s44, v40, 12 -; GISEL-NEXT: v_readlane_b32 s43, v40, 11 -; GISEL-NEXT: v_readlane_b32 s42, v40, 10 -; GISEL-NEXT: v_readlane_b32 s41, v40, 9 -; GISEL-NEXT: v_readlane_b32 s40, v40, 8 -; GISEL-NEXT: v_readlane_b32 s39, v40, 7 -; GISEL-NEXT: v_readlane_b32 s38, v40, 6 -; GISEL-NEXT: v_readlane_b32 s37, v40, 5 -; GISEL-NEXT: v_readlane_b32 s36, v40, 4 -; GISEL-NEXT: v_readlane_b32 s35, v40, 3 -; GISEL-NEXT: v_readlane_b32 s34, v40, 2 -; GISEL-NEXT: v_readlane_b32 s31, v40, 1 -; GISEL-NEXT: v_readlane_b32 s30, v40, 0 +; GISEL-NEXT: v_readlane_b32 s30, v40, 16 +; GISEL-NEXT: v_readlane_b32 s31, v40, 17 +; GISEL-NEXT: v_readlane_b32 s49, v40, 15 +; GISEL-NEXT: v_readlane_b32 s48, v40, 14 +; GISEL-NEXT: v_readlane_b32 s47, v40, 13 +; GISEL-NEXT: v_readlane_b32 s46, v40, 12 +; GISEL-NEXT: v_readlane_b32 s45, v40, 11 +; GISEL-NEXT: v_readlane_b32 s44, v40, 10 +; GISEL-NEXT: v_readlane_b32 s43, v40, 9 +; GISEL-NEXT: v_readlane_b32 s42, v40, 8 +; GISEL-NEXT: v_readlane_b32 s41, v40, 7 +; GISEL-NEXT: v_readlane_b32 s40, v40, 6 +; GISEL-NEXT: v_readlane_b32 s39, v40, 5 +; GISEL-NEXT: v_readlane_b32 s38, v40, 4 +; GISEL-NEXT: v_readlane_b32 s37, v40, 3 +; GISEL-NEXT: v_readlane_b32 s36, v40, 2 +; GISEL-NEXT: v_readlane_b32 s35, v40, 1 +; GISEL-NEXT: v_readlane_b32 s34, v40, 0 ; GISEL-NEXT: v_readlane_b32 s4, v41, 0 ; GISEL-NEXT: s_or_saveexec_b64 s[6:7], -1 ; GISEL-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -938,26 +938,26 @@ ; GCN-NEXT: s_mov_b64 exec, s[18:19] ; GCN-NEXT: v_writelane_b32 v41, s16, 0 ; GCN-NEXT: s_addk_i32 s32, 0x400 -; GCN-NEXT: v_writelane_b32 v40, s30, 0 -; GCN-NEXT: v_writelane_b32 v40, s31, 1 -; GCN-NEXT: v_writelane_b32 v40, s34, 2 -; GCN-NEXT: v_writelane_b32 v40, s35, 3 -; GCN-NEXT: v_writelane_b32 v40, s36, 4 -; GCN-NEXT: v_writelane_b32 v40, s37, 5 -; GCN-NEXT: v_writelane_b32 v40, s38, 6 -; GCN-NEXT: v_writelane_b32 v40, s39, 7 -; GCN-NEXT: v_writelane_b32 v40, s40, 8 -; GCN-NEXT: v_writelane_b32 v40, s41, 9 -; GCN-NEXT: v_writelane_b32 v40, s42, 10 -; GCN-NEXT: v_writelane_b32 v40, s43, 11 -; GCN-NEXT: v_writelane_b32 v40, s44, 12 -; GCN-NEXT: v_writelane_b32 v40, s45, 13 -; GCN-NEXT: v_writelane_b32 v40, s46, 14 -; GCN-NEXT: v_writelane_b32 v40, s47, 15 -; GCN-NEXT: v_writelane_b32 v40, s48, 16 -; GCN-NEXT: v_writelane_b32 v40, s49, 17 -; GCN-NEXT: v_writelane_b32 v40, s50, 18 -; GCN-NEXT: v_writelane_b32 v40, s51, 19 +; GCN-NEXT: v_writelane_b32 v40, s34, 0 +; GCN-NEXT: v_writelane_b32 v40, s35, 1 +; GCN-NEXT: v_writelane_b32 v40, s36, 2 +; GCN-NEXT: v_writelane_b32 v40, s37, 3 +; GCN-NEXT: v_writelane_b32 v40, s38, 4 +; GCN-NEXT: v_writelane_b32 v40, s39, 5 +; GCN-NEXT: v_writelane_b32 v40, s40, 6 +; GCN-NEXT: v_writelane_b32 v40, s41, 7 +; GCN-NEXT: v_writelane_b32 v40, s42, 8 +; GCN-NEXT: v_writelane_b32 v40, s43, 9 +; GCN-NEXT: v_writelane_b32 v40, s44, 10 +; GCN-NEXT: v_writelane_b32 v40, s45, 11 +; GCN-NEXT: v_writelane_b32 v40, s46, 12 +; GCN-NEXT: v_writelane_b32 v40, s47, 13 +; GCN-NEXT: v_writelane_b32 v40, s48, 14 +; GCN-NEXT: v_writelane_b32 v40, s49, 15 +; GCN-NEXT: v_writelane_b32 v40, s50, 16 +; GCN-NEXT: v_writelane_b32 v40, s51, 17 +; GCN-NEXT: v_writelane_b32 v40, s30, 18 +; GCN-NEXT: v_writelane_b32 v40, s31, 19 ; GCN-NEXT: s_mov_b32 s42, s15 ; GCN-NEXT: s_mov_b32 s43, s14 ; GCN-NEXT: s_mov_b32 s44, s13 @@ -994,26 +994,26 @@ ; GCN-NEXT: s_mov_b64 exec, s[48:49] ; GCN-NEXT: .LBB5_4: ; %bb2 ; GCN-NEXT: s_or_b64 exec, exec, s[46:47] -; GCN-NEXT: v_readlane_b32 s51, v40, 19 -; GCN-NEXT: v_readlane_b32 s50, v40, 18 -; GCN-NEXT: v_readlane_b32 s49, v40, 17 -; GCN-NEXT: v_readlane_b32 s48, v40, 16 -; GCN-NEXT: v_readlane_b32 s47, v40, 15 -; GCN-NEXT: v_readlane_b32 s46, v40, 14 -; GCN-NEXT: v_readlane_b32 s45, v40, 13 -; GCN-NEXT: v_readlane_b32 s44, v40, 12 -; GCN-NEXT: v_readlane_b32 s43, v40, 11 -; GCN-NEXT: v_readlane_b32 s42, v40, 10 -; GCN-NEXT: v_readlane_b32 s41, v40, 9 -; GCN-NEXT: v_readlane_b32 s40, v40, 8 -; GCN-NEXT: v_readlane_b32 s39, v40, 7 -; GCN-NEXT: v_readlane_b32 s38, v40, 6 -; GCN-NEXT: v_readlane_b32 s37, v40, 5 -; GCN-NEXT: v_readlane_b32 s36, v40, 4 -; GCN-NEXT: v_readlane_b32 s35, v40, 3 -; GCN-NEXT: v_readlane_b32 s34, v40, 2 -; GCN-NEXT: v_readlane_b32 s31, v40, 1 -; GCN-NEXT: v_readlane_b32 s30, v40, 0 +; GCN-NEXT: v_readlane_b32 s30, v40, 18 +; GCN-NEXT: v_readlane_b32 s31, v40, 19 +; GCN-NEXT: v_readlane_b32 s51, v40, 17 +; GCN-NEXT: v_readlane_b32 s50, v40, 16 +; GCN-NEXT: v_readlane_b32 s49, v40, 15 +; GCN-NEXT: v_readlane_b32 s48, v40, 14 +; GCN-NEXT: v_readlane_b32 s47, v40, 13 +; GCN-NEXT: v_readlane_b32 s46, v40, 12 +; GCN-NEXT: v_readlane_b32 s45, v40, 11 +; GCN-NEXT: v_readlane_b32 s44, v40, 10 +; GCN-NEXT: v_readlane_b32 s43, v40, 9 +; GCN-NEXT: v_readlane_b32 s42, v40, 8 +; GCN-NEXT: v_readlane_b32 s41, v40, 7 +; GCN-NEXT: v_readlane_b32 s40, v40, 6 +; GCN-NEXT: v_readlane_b32 s39, v40, 5 +; GCN-NEXT: v_readlane_b32 s38, v40, 4 +; GCN-NEXT: v_readlane_b32 s37, v40, 3 +; GCN-NEXT: v_readlane_b32 s36, v40, 2 +; GCN-NEXT: v_readlane_b32 s35, v40, 1 +; GCN-NEXT: v_readlane_b32 s34, v40, 0 ; GCN-NEXT: v_readlane_b32 s4, v41, 0 ; GCN-NEXT: s_or_saveexec_b64 s[6:7], -1 ; GCN-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -1035,26 +1035,26 @@ ; GISEL-NEXT: s_mov_b64 exec, s[18:19] ; GISEL-NEXT: v_writelane_b32 v41, s16, 0 ; GISEL-NEXT: s_addk_i32 s32, 0x400 -; GISEL-NEXT: v_writelane_b32 v40, s30, 0 -; GISEL-NEXT: v_writelane_b32 v40, s31, 1 -; GISEL-NEXT: v_writelane_b32 v40, s34, 2 -; GISEL-NEXT: v_writelane_b32 v40, s35, 3 -; GISEL-NEXT: v_writelane_b32 v40, s36, 4 -; GISEL-NEXT: v_writelane_b32 v40, s37, 5 -; GISEL-NEXT: v_writelane_b32 v40, s38, 6 -; GISEL-NEXT: v_writelane_b32 v40, s39, 7 -; GISEL-NEXT: v_writelane_b32 v40, s40, 8 -; GISEL-NEXT: v_writelane_b32 v40, s41, 9 -; GISEL-NEXT: v_writelane_b32 v40, s42, 10 -; GISEL-NEXT: v_writelane_b32 v40, s43, 11 -; GISEL-NEXT: v_writelane_b32 v40, s44, 12 -; GISEL-NEXT: v_writelane_b32 v40, s45, 13 -; GISEL-NEXT: v_writelane_b32 v40, s46, 14 -; GISEL-NEXT: v_writelane_b32 v40, s47, 15 -; GISEL-NEXT: v_writelane_b32 v40, s48, 16 -; GISEL-NEXT: v_writelane_b32 v40, s49, 17 -; GISEL-NEXT: v_writelane_b32 v40, s50, 18 -; GISEL-NEXT: v_writelane_b32 v40, s51, 19 +; GISEL-NEXT: v_writelane_b32 v40, s34, 0 +; GISEL-NEXT: v_writelane_b32 v40, s35, 1 +; GISEL-NEXT: v_writelane_b32 v40, s36, 2 +; GISEL-NEXT: v_writelane_b32 v40, s37, 3 +; GISEL-NEXT: v_writelane_b32 v40, s38, 4 +; GISEL-NEXT: v_writelane_b32 v40, s39, 5 +; GISEL-NEXT: v_writelane_b32 v40, s40, 6 +; GISEL-NEXT: v_writelane_b32 v40, s41, 7 +; GISEL-NEXT: v_writelane_b32 v40, s42, 8 +; GISEL-NEXT: v_writelane_b32 v40, s43, 9 +; GISEL-NEXT: v_writelane_b32 v40, s44, 10 +; GISEL-NEXT: v_writelane_b32 v40, s45, 11 +; GISEL-NEXT: v_writelane_b32 v40, s46, 12 +; GISEL-NEXT: v_writelane_b32 v40, s47, 13 +; GISEL-NEXT: v_writelane_b32 v40, s48, 14 +; GISEL-NEXT: v_writelane_b32 v40, s49, 15 +; GISEL-NEXT: v_writelane_b32 v40, s50, 16 +; GISEL-NEXT: v_writelane_b32 v40, s51, 17 +; GISEL-NEXT: v_writelane_b32 v40, s30, 18 +; GISEL-NEXT: v_writelane_b32 v40, s31, 19 ; GISEL-NEXT: s_mov_b32 s42, s15 ; GISEL-NEXT: s_mov_b32 s43, s14 ; GISEL-NEXT: s_mov_b32 s44, s13 @@ -1091,26 +1091,26 @@ ; GISEL-NEXT: s_mov_b64 exec, s[48:49] ; GISEL-NEXT: .LBB5_4: ; %bb2 ; GISEL-NEXT: s_or_b64 exec, exec, s[46:47] -; GISEL-NEXT: v_readlane_b32 s51, v40, 19 -; GISEL-NEXT: v_readlane_b32 s50, v40, 18 -; GISEL-NEXT: v_readlane_b32 s49, v40, 17 -; GISEL-NEXT: v_readlane_b32 s48, v40, 16 -; GISEL-NEXT: v_readlane_b32 s47, v40, 15 -; GISEL-NEXT: v_readlane_b32 s46, v40, 14 -; GISEL-NEXT: v_readlane_b32 s45, v40, 13 -; GISEL-NEXT: v_readlane_b32 s44, v40, 12 -; GISEL-NEXT: v_readlane_b32 s43, v40, 11 -; GISEL-NEXT: v_readlane_b32 s42, v40, 10 -; GISEL-NEXT: v_readlane_b32 s41, v40, 9 -; GISEL-NEXT: v_readlane_b32 s40, v40, 8 -; GISEL-NEXT: v_readlane_b32 s39, v40, 7 -; GISEL-NEXT: v_readlane_b32 s38, v40, 6 -; GISEL-NEXT: v_readlane_b32 s37, v40, 5 -; GISEL-NEXT: v_readlane_b32 s36, v40, 4 -; GISEL-NEXT: v_readlane_b32 s35, v40, 3 -; GISEL-NEXT: v_readlane_b32 s34, v40, 2 -; GISEL-NEXT: v_readlane_b32 s31, v40, 1 -; GISEL-NEXT: v_readlane_b32 s30, v40, 0 +; GISEL-NEXT: v_readlane_b32 s30, v40, 18 +; GISEL-NEXT: v_readlane_b32 s31, v40, 19 +; GISEL-NEXT: v_readlane_b32 s51, v40, 17 +; GISEL-NEXT: v_readlane_b32 s50, v40, 16 +; GISEL-NEXT: v_readlane_b32 s49, v40, 15 +; GISEL-NEXT: v_readlane_b32 s48, v40, 14 +; GISEL-NEXT: v_readlane_b32 s47, v40, 13 +; GISEL-NEXT: v_readlane_b32 s46, v40, 12 +; GISEL-NEXT: v_readlane_b32 s45, v40, 11 +; GISEL-NEXT: v_readlane_b32 s44, v40, 10 +; GISEL-NEXT: v_readlane_b32 s43, v40, 9 +; GISEL-NEXT: v_readlane_b32 s42, v40, 8 +; GISEL-NEXT: v_readlane_b32 s41, v40, 7 +; GISEL-NEXT: v_readlane_b32 s40, v40, 6 +; GISEL-NEXT: v_readlane_b32 s39, v40, 5 +; GISEL-NEXT: v_readlane_b32 s38, v40, 4 +; GISEL-NEXT: v_readlane_b32 s37, v40, 3 +; GISEL-NEXT: v_readlane_b32 s36, v40, 2 +; GISEL-NEXT: v_readlane_b32 s35, v40, 1 +; GISEL-NEXT: v_readlane_b32 s34, v40, 0 ; GISEL-NEXT: v_readlane_b32 s4, v41, 0 ; GISEL-NEXT: s_or_saveexec_b64 s[6:7], -1 ; GISEL-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload @@ -1141,38 +1141,38 @@ ; GCN-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GCN-NEXT: s_mov_b64 exec, s[6:7] ; GCN-NEXT: s_addk_i32 s32, 0x400 -; GCN-NEXT: v_writelane_b32 v40, s30, 0 -; GCN-NEXT: v_writelane_b32 v40, s31, 1 -; GCN-NEXT: v_writelane_b32 v40, s34, 2 -; GCN-NEXT: v_writelane_b32 v40, s35, 3 -; GCN-NEXT: v_writelane_b32 v40, s36, 4 -; GCN-NEXT: v_writelane_b32 v40, s37, 5 -; GCN-NEXT: v_writelane_b32 v40, s38, 6 -; GCN-NEXT: v_writelane_b32 v40, s39, 7 -; GCN-NEXT: v_writelane_b32 v40, s40, 8 -; GCN-NEXT: v_writelane_b32 v40, s41, 9 -; GCN-NEXT: v_writelane_b32 v40, s42, 10 -; GCN-NEXT: v_writelane_b32 v40, s43, 11 -; GCN-NEXT: v_writelane_b32 v40, s44, 12 -; GCN-NEXT: v_writelane_b32 v40, s45, 13 -; GCN-NEXT: v_writelane_b32 v40, s46, 14 -; GCN-NEXT: v_writelane_b32 v40, s47, 15 -; GCN-NEXT: v_writelane_b32 v40, s48, 16 -; GCN-NEXT: v_writelane_b32 v40, s49, 17 -; GCN-NEXT: v_writelane_b32 v40, s50, 18 -; GCN-NEXT: v_writelane_b32 v40, s51, 19 -; GCN-NEXT: v_writelane_b32 v40, s52, 20 -; GCN-NEXT: v_writelane_b32 v40, s53, 21 -; GCN-NEXT: v_writelane_b32 v40, s54, 22 -; GCN-NEXT: v_writelane_b32 v40, s55, 23 -; GCN-NEXT: v_writelane_b32 v40, s56, 24 -; GCN-NEXT: v_writelane_b32 v40, s57, 25 -; GCN-NEXT: v_writelane_b32 v40, s58, 26 -; GCN-NEXT: v_writelane_b32 v40, s59, 27 -; GCN-NEXT: v_writelane_b32 v40, s60, 28 -; GCN-NEXT: v_writelane_b32 v40, s61, 29 -; GCN-NEXT: v_writelane_b32 v40, s62, 30 -; GCN-NEXT: v_writelane_b32 v40, s63, 31 +; GCN-NEXT: v_writelane_b32 v40, s34, 0 +; GCN-NEXT: v_writelane_b32 v40, s35, 1 +; GCN-NEXT: v_writelane_b32 v40, s36, 2 +; GCN-NEXT: v_writelane_b32 v40, s37, 3 +; GCN-NEXT: v_writelane_b32 v40, s38, 4 +; GCN-NEXT: v_writelane_b32 v40, s39, 5 +; GCN-NEXT: v_writelane_b32 v40, s40, 6 +; GCN-NEXT: v_writelane_b32 v40, s41, 7 +; GCN-NEXT: v_writelane_b32 v40, s42, 8 +; GCN-NEXT: v_writelane_b32 v40, s43, 9 +; GCN-NEXT: v_writelane_b32 v40, s44, 10 +; GCN-NEXT: v_writelane_b32 v40, s45, 11 +; GCN-NEXT: v_writelane_b32 v40, s46, 12 +; GCN-NEXT: v_writelane_b32 v40, s47, 13 +; GCN-NEXT: v_writelane_b32 v40, s48, 14 +; GCN-NEXT: v_writelane_b32 v40, s49, 15 +; GCN-NEXT: v_writelane_b32 v40, s50, 16 +; GCN-NEXT: v_writelane_b32 v40, s51, 17 +; GCN-NEXT: v_writelane_b32 v40, s52, 18 +; GCN-NEXT: v_writelane_b32 v40, s53, 19 +; GCN-NEXT: v_writelane_b32 v40, s54, 20 +; GCN-NEXT: v_writelane_b32 v40, s55, 21 +; GCN-NEXT: v_writelane_b32 v40, s56, 22 +; GCN-NEXT: v_writelane_b32 v40, s57, 23 +; GCN-NEXT: v_writelane_b32 v40, s58, 24 +; GCN-NEXT: v_writelane_b32 v40, s59, 25 +; GCN-NEXT: v_writelane_b32 v40, s60, 26 +; GCN-NEXT: v_writelane_b32 v40, s61, 27 +; GCN-NEXT: v_writelane_b32 v40, s62, 28 +; GCN-NEXT: v_writelane_b32 v40, s63, 29 +; GCN-NEXT: v_writelane_b32 v40, s30, 30 +; GCN-NEXT: v_writelane_b32 v40, s31, 31 ; GCN-NEXT: s_mov_b64 s[6:7], exec ; GCN-NEXT: s_movk_i32 s4, 0x7b ; GCN-NEXT: .LBB6_1: ; =>This Inner Loop Header: Depth=1 @@ -1186,38 +1186,38 @@ ; GCN-NEXT: s_cbranch_execnz .LBB6_1 ; GCN-NEXT: ; %bb.2: ; GCN-NEXT: s_mov_b64 exec, s[6:7] -; GCN-NEXT: v_readlane_b32 s63, v40, 31 -; GCN-NEXT: v_readlane_b32 s62, v40, 30 -; GCN-NEXT: v_readlane_b32 s61, v40, 29 -; GCN-NEXT: v_readlane_b32 s60, v40, 28 -; GCN-NEXT: v_readlane_b32 s59, v40, 27 -; GCN-NEXT: v_readlane_b32 s58, v40, 26 -; GCN-NEXT: v_readlane_b32 s57, v40, 25 -; GCN-NEXT: v_readlane_b32 s56, v40, 24 -; GCN-NEXT: v_readlane_b32 s55, v40, 23 -; GCN-NEXT: v_readlane_b32 s54, v40, 22 -; GCN-NEXT: v_readlane_b32 s53, v40, 21 -; GCN-NEXT: v_readlane_b32 s52, v40, 20 -; GCN-NEXT: v_readlane_b32 s51, v40, 19 -; GCN-NEXT: v_readlane_b32 s50, v40, 18 -; GCN-NEXT: v_readlane_b32 s49, v40, 17 -; GCN-NEXT: v_readlane_b32 s48, v40, 16 -; GCN-NEXT: v_readlane_b32 s47, v40, 15 -; GCN-NEXT: v_readlane_b32 s46, v40, 14 -; GCN-NEXT: v_readlane_b32 s45, v40, 13 -; GCN-NEXT: v_readlane_b32 s44, v40, 12 -; GCN-NEXT: v_readlane_b32 s43, v40, 11 -; GCN-NEXT: v_readlane_b32 s42, v40, 10 -; GCN-NEXT: v_readlane_b32 s41, v40, 9 -; GCN-NEXT: v_readlane_b32 s40, v40, 8 -; GCN-NEXT: v_readlane_b32 s39, v40, 7 -; GCN-NEXT: v_readlane_b32 s38, v40, 6 -; GCN-NEXT: v_readlane_b32 s37, v40, 5 -; GCN-NEXT: v_readlane_b32 s36, v40, 4 -; GCN-NEXT: v_readlane_b32 s35, v40, 3 -; GCN-NEXT: v_readlane_b32 s34, v40, 2 -; GCN-NEXT: v_readlane_b32 s31, v40, 1 -; GCN-NEXT: v_readlane_b32 s30, v40, 0 +; GCN-NEXT: v_readlane_b32 s30, v40, 30 +; GCN-NEXT: v_readlane_b32 s31, v40, 31 +; GCN-NEXT: v_readlane_b32 s63, v40, 29 +; GCN-NEXT: v_readlane_b32 s62, v40, 28 +; GCN-NEXT: v_readlane_b32 s61, v40, 27 +; GCN-NEXT: v_readlane_b32 s60, v40, 26 +; GCN-NEXT: v_readlane_b32 s59, v40, 25 +; GCN-NEXT: v_readlane_b32 s58, v40, 24 +; GCN-NEXT: v_readlane_b32 s57, v40, 23 +; GCN-NEXT: v_readlane_b32 s56, v40, 22 +; GCN-NEXT: v_readlane_b32 s55, v40, 21 +; GCN-NEXT: v_readlane_b32 s54, v40, 20 +; GCN-NEXT: v_readlane_b32 s53, v40, 19 +; GCN-NEXT: v_readlane_b32 s52, v40, 18 +; GCN-NEXT: v_readlane_b32 s51, v40, 17 +; GCN-NEXT: v_readlane_b32 s50, v40, 16 +; GCN-NEXT: v_readlane_b32 s49, v40, 15 +; GCN-NEXT: v_readlane_b32 s48, v40, 14 +; GCN-NEXT: v_readlane_b32 s47, v40, 13 +; GCN-NEXT: v_readlane_b32 s46, v40, 12 +; GCN-NEXT: v_readlane_b32 s45, v40, 11 +; GCN-NEXT: v_readlane_b32 s44, v40, 10 +; GCN-NEXT: v_readlane_b32 s43, v40, 9 +; GCN-NEXT: v_readlane_b32 s42, v40, 8 +; GCN-NEXT: v_readlane_b32 s41, v40, 7 +; GCN-NEXT: v_readlane_b32 s40, v40, 6 +; GCN-NEXT: v_readlane_b32 s39, v40, 5 +; GCN-NEXT: v_readlane_b32 s38, v40, 4 +; GCN-NEXT: v_readlane_b32 s37, v40, 3 +; GCN-NEXT: v_readlane_b32 s36, v40, 2 +; GCN-NEXT: v_readlane_b32 s35, v40, 1 +; GCN-NEXT: v_readlane_b32 s34, v40, 0 ; GCN-NEXT: s_or_saveexec_b64 s[6:7], -1 ; GCN-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload ; GCN-NEXT: s_mov_b64 exec, s[6:7] @@ -1235,38 +1235,38 @@ ; GISEL-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GISEL-NEXT: s_mov_b64 exec, s[6:7] ; GISEL-NEXT: s_addk_i32 s32, 0x400 -; GISEL-NEXT: v_writelane_b32 v40, s30, 0 -; GISEL-NEXT: v_writelane_b32 v40, s31, 1 -; GISEL-NEXT: v_writelane_b32 v40, s34, 2 -; GISEL-NEXT: v_writelane_b32 v40, s35, 3 -; GISEL-NEXT: v_writelane_b32 v40, s36, 4 -; GISEL-NEXT: v_writelane_b32 v40, s37, 5 -; GISEL-NEXT: v_writelane_b32 v40, s38, 6 -; GISEL-NEXT: v_writelane_b32 v40, s39, 7 -; GISEL-NEXT: v_writelane_b32 v40, s40, 8 -; GISEL-NEXT: v_writelane_b32 v40, s41, 9 -; GISEL-NEXT: v_writelane_b32 v40, s42, 10 -; GISEL-NEXT: v_writelane_b32 v40, s43, 11 -; GISEL-NEXT: v_writelane_b32 v40, s44, 12 -; GISEL-NEXT: v_writelane_b32 v40, s45, 13 -; GISEL-NEXT: v_writelane_b32 v40, s46, 14 -; GISEL-NEXT: v_writelane_b32 v40, s47, 15 -; GISEL-NEXT: v_writelane_b32 v40, s48, 16 -; GISEL-NEXT: v_writelane_b32 v40, s49, 17 -; GISEL-NEXT: v_writelane_b32 v40, s50, 18 -; GISEL-NEXT: v_writelane_b32 v40, s51, 19 -; GISEL-NEXT: v_writelane_b32 v40, s52, 20 -; GISEL-NEXT: v_writelane_b32 v40, s53, 21 -; GISEL-NEXT: v_writelane_b32 v40, s54, 22 -; GISEL-NEXT: v_writelane_b32 v40, s55, 23 -; GISEL-NEXT: v_writelane_b32 v40, s56, 24 -; GISEL-NEXT: v_writelane_b32 v40, s57, 25 -; GISEL-NEXT: v_writelane_b32 v40, s58, 26 -; GISEL-NEXT: v_writelane_b32 v40, s59, 27 -; GISEL-NEXT: v_writelane_b32 v40, s60, 28 -; GISEL-NEXT: v_writelane_b32 v40, s61, 29 -; GISEL-NEXT: v_writelane_b32 v40, s62, 30 -; GISEL-NEXT: v_writelane_b32 v40, s63, 31 +; GISEL-NEXT: v_writelane_b32 v40, s34, 0 +; GISEL-NEXT: v_writelane_b32 v40, s35, 1 +; GISEL-NEXT: v_writelane_b32 v40, s36, 2 +; GISEL-NEXT: v_writelane_b32 v40, s37, 3 +; GISEL-NEXT: v_writelane_b32 v40, s38, 4 +; GISEL-NEXT: v_writelane_b32 v40, s39, 5 +; GISEL-NEXT: v_writelane_b32 v40, s40, 6 +; GISEL-NEXT: v_writelane_b32 v40, s41, 7 +; GISEL-NEXT: v_writelane_b32 v40, s42, 8 +; GISEL-NEXT: v_writelane_b32 v40, s43, 9 +; GISEL-NEXT: v_writelane_b32 v40, s44, 10 +; GISEL-NEXT: v_writelane_b32 v40, s45, 11 +; GISEL-NEXT: v_writelane_b32 v40, s46, 12 +; GISEL-NEXT: v_writelane_b32 v40, s47, 13 +; GISEL-NEXT: v_writelane_b32 v40, s48, 14 +; GISEL-NEXT: v_writelane_b32 v40, s49, 15 +; GISEL-NEXT: v_writelane_b32 v40, s50, 16 +; GISEL-NEXT: v_writelane_b32 v40, s51, 17 +; GISEL-NEXT: v_writelane_b32 v40, s52, 18 +; GISEL-NEXT: v_writelane_b32 v40, s53, 19 +; GISEL-NEXT: v_writelane_b32 v40, s54, 20 +; GISEL-NEXT: v_writelane_b32 v40, s55, 21 +; GISEL-NEXT: v_writelane_b32 v40, s56, 22 +; GISEL-NEXT: v_writelane_b32 v40, s57, 23 +; GISEL-NEXT: v_writelane_b32 v40, s58, 24 +; GISEL-NEXT: v_writelane_b32 v40, s59, 25 +; GISEL-NEXT: v_writelane_b32 v40, s60, 26 +; GISEL-NEXT: v_writelane_b32 v40, s61, 27 +; GISEL-NEXT: v_writelane_b32 v40, s62, 28 +; GISEL-NEXT: v_writelane_b32 v40, s63, 29 +; GISEL-NEXT: v_writelane_b32 v40, s30, 30 +; GISEL-NEXT: v_writelane_b32 v40, s31, 31 ; GISEL-NEXT: s_mov_b64 s[6:7], exec ; GISEL-NEXT: s_movk_i32 s4, 0x7b ; GISEL-NEXT: .LBB6_1: ; =>This Inner Loop Header: Depth=1 @@ -1280,38 +1280,38 @@ ; GISEL-NEXT: s_cbranch_execnz .LBB6_1 ; GISEL-NEXT: ; %bb.2: ; GISEL-NEXT: s_mov_b64 exec, s[6:7] -; GISEL-NEXT: v_readlane_b32 s63, v40, 31 -; GISEL-NEXT: v_readlane_b32 s62, v40, 30 -; GISEL-NEXT: v_readlane_b32 s61, v40, 29 -; GISEL-NEXT: v_readlane_b32 s60, v40, 28 -; GISEL-NEXT: v_readlane_b32 s59, v40, 27 -; GISEL-NEXT: v_readlane_b32 s58, v40, 26 -; GISEL-NEXT: v_readlane_b32 s57, v40, 25 -; GISEL-NEXT: v_readlane_b32 s56, v40, 24 -; GISEL-NEXT: v_readlane_b32 s55, v40, 23 -; GISEL-NEXT: v_readlane_b32 s54, v40, 22 -; GISEL-NEXT: v_readlane_b32 s53, v40, 21 -; GISEL-NEXT: v_readlane_b32 s52, v40, 20 -; GISEL-NEXT: v_readlane_b32 s51, v40, 19 -; GISEL-NEXT: v_readlane_b32 s50, v40, 18 -; GISEL-NEXT: v_readlane_b32 s49, v40, 17 -; GISEL-NEXT: v_readlane_b32 s48, v40, 16 -; GISEL-NEXT: v_readlane_b32 s47, v40, 15 -; GISEL-NEXT: v_readlane_b32 s46, v40, 14 -; GISEL-NEXT: v_readlane_b32 s45, v40, 13 -; GISEL-NEXT: v_readlane_b32 s44, v40, 12 -; GISEL-NEXT: v_readlane_b32 s43, v40, 11 -; GISEL-NEXT: v_readlane_b32 s42, v40, 10 -; GISEL-NEXT: v_readlane_b32 s41, v40, 9 -; GISEL-NEXT: v_readlane_b32 s40, v40, 8 -; GISEL-NEXT: v_readlane_b32 s39, v40, 7 -; GISEL-NEXT: v_readlane_b32 s38, v40, 6 -; GISEL-NEXT: v_readlane_b32 s37, v40, 5 -; GISEL-NEXT: v_readlane_b32 s36, v40, 4 -; GISEL-NEXT: v_readlane_b32 s35, v40, 3 -; GISEL-NEXT: v_readlane_b32 s34, v40, 2 -; GISEL-NEXT: v_readlane_b32 s31, v40, 1 -; GISEL-NEXT: v_readlane_b32 s30, v40, 0 +; GISEL-NEXT: v_readlane_b32 s30, v40, 30 +; GISEL-NEXT: v_readlane_b32 s31, v40, 31 +; GISEL-NEXT: v_readlane_b32 s63, v40, 29 +; GISEL-NEXT: v_readlane_b32 s62, v40, 28 +; GISEL-NEXT: v_readlane_b32 s61, v40, 27 +; GISEL-NEXT: v_readlane_b32 s60, v40, 26 +; GISEL-NEXT: v_readlane_b32 s59, v40, 25 +; GISEL-NEXT: v_readlane_b32 s58, v40, 24 +; GISEL-NEXT: v_readlane_b32 s57, v40, 23 +; GISEL-NEXT: v_readlane_b32 s56, v40, 22 +; GISEL-NEXT: v_readlane_b32 s55, v40, 21 +; GISEL-NEXT: v_readlane_b32 s54, v40, 20 +; GISEL-NEXT: v_readlane_b32 s53, v40, 19 +; GISEL-NEXT: v_readlane_b32 s52, v40, 18 +; GISEL-NEXT: v_readlane_b32 s51, v40, 17 +; GISEL-NEXT: v_readlane_b32 s50, v40, 16 +; GISEL-NEXT: v_readlane_b32 s49, v40, 15 +; GISEL-NEXT: v_readlane_b32 s48, v40, 14 +; GISEL-NEXT: v_readlane_b32 s47, v40, 13 +; GISEL-NEXT: v_readlane_b32 s46, v40, 12 +; GISEL-NEXT: v_readlane_b32 s45, v40, 11 +; GISEL-NEXT: v_readlane_b32 s44, v40, 10 +; GISEL-NEXT: v_readlane_b32 s43, v40, 9 +; GISEL-NEXT: v_readlane_b32 s42, v40, 8 +; GISEL-NEXT: v_readlane_b32 s41, v40, 7 +; GISEL-NEXT: v_readlane_b32 s40, v40, 6 +; GISEL-NEXT: v_readlane_b32 s39, v40, 5 +; GISEL-NEXT: v_readlane_b32 s38, v40, 4 +; GISEL-NEXT: v_readlane_b32 s37, v40, 3 +; GISEL-NEXT: v_readlane_b32 s36, v40, 2 +; GISEL-NEXT: v_readlane_b32 s35, v40, 1 +; GISEL-NEXT: v_readlane_b32 s34, v40, 0 ; GISEL-NEXT: s_or_saveexec_b64 s[6:7], -1 ; GISEL-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload ; GISEL-NEXT: s_mov_b64 exec, s[6:7] @@ -1334,38 +1334,38 @@ ; GCN-NEXT: s_mov_b64 exec, s[4:5] ; GCN-NEXT: s_addk_i32 s32, 0x400 ; GCN-NEXT: buffer_store_dword v41, off, s[0:3], s33 ; 4-byte Folded Spill -; GCN-NEXT: v_writelane_b32 v40, s30, 0 -; GCN-NEXT: v_writelane_b32 v40, s31, 1 -; GCN-NEXT: v_writelane_b32 v40, s34, 2 -; GCN-NEXT: v_writelane_b32 v40, s35, 3 -; GCN-NEXT: v_writelane_b32 v40, s36, 4 -; GCN-NEXT: v_writelane_b32 v40, s37, 5 -; GCN-NEXT: v_writelane_b32 v40, s38, 6 -; GCN-NEXT: v_writelane_b32 v40, s39, 7 -; GCN-NEXT: v_writelane_b32 v40, s40, 8 -; GCN-NEXT: v_writelane_b32 v40, s41, 9 -; GCN-NEXT: v_writelane_b32 v40, s42, 10 -; GCN-NEXT: v_writelane_b32 v40, s43, 11 -; GCN-NEXT: v_writelane_b32 v40, s44, 12 -; GCN-NEXT: v_writelane_b32 v40, s45, 13 -; GCN-NEXT: v_writelane_b32 v40, s46, 14 -; GCN-NEXT: v_writelane_b32 v40, s47, 15 -; GCN-NEXT: v_writelane_b32 v40, s48, 16 -; GCN-NEXT: v_writelane_b32 v40, s49, 17 -; GCN-NEXT: v_writelane_b32 v40, s50, 18 -; GCN-NEXT: v_writelane_b32 v40, s51, 19 -; GCN-NEXT: v_writelane_b32 v40, s52, 20 -; GCN-NEXT: v_writelane_b32 v40, s53, 21 -; GCN-NEXT: v_writelane_b32 v40, s54, 22 -; GCN-NEXT: v_writelane_b32 v40, s55, 23 -; GCN-NEXT: v_writelane_b32 v40, s56, 24 -; GCN-NEXT: v_writelane_b32 v40, s57, 25 -; GCN-NEXT: v_writelane_b32 v40, s58, 26 -; GCN-NEXT: v_writelane_b32 v40, s59, 27 -; GCN-NEXT: v_writelane_b32 v40, s60, 28 -; GCN-NEXT: v_writelane_b32 v40, s61, 29 -; GCN-NEXT: v_writelane_b32 v40, s62, 30 -; GCN-NEXT: v_writelane_b32 v40, s63, 31 +; GCN-NEXT: v_writelane_b32 v40, s34, 0 +; GCN-NEXT: v_writelane_b32 v40, s35, 1 +; GCN-NEXT: v_writelane_b32 v40, s36, 2 +; GCN-NEXT: v_writelane_b32 v40, s37, 3 +; GCN-NEXT: v_writelane_b32 v40, s38, 4 +; GCN-NEXT: v_writelane_b32 v40, s39, 5 +; GCN-NEXT: v_writelane_b32 v40, s40, 6 +; GCN-NEXT: v_writelane_b32 v40, s41, 7 +; GCN-NEXT: v_writelane_b32 v40, s42, 8 +; GCN-NEXT: v_writelane_b32 v40, s43, 9 +; GCN-NEXT: v_writelane_b32 v40, s44, 10 +; GCN-NEXT: v_writelane_b32 v40, s45, 11 +; GCN-NEXT: v_writelane_b32 v40, s46, 12 +; GCN-NEXT: v_writelane_b32 v40, s47, 13 +; GCN-NEXT: v_writelane_b32 v40, s48, 14 +; GCN-NEXT: v_writelane_b32 v40, s49, 15 +; GCN-NEXT: v_writelane_b32 v40, s50, 16 +; GCN-NEXT: v_writelane_b32 v40, s51, 17 +; GCN-NEXT: v_writelane_b32 v40, s52, 18 +; GCN-NEXT: v_writelane_b32 v40, s53, 19 +; GCN-NEXT: v_writelane_b32 v40, s54, 20 +; GCN-NEXT: v_writelane_b32 v40, s55, 21 +; GCN-NEXT: v_writelane_b32 v40, s56, 22 +; GCN-NEXT: v_writelane_b32 v40, s57, 23 +; GCN-NEXT: v_writelane_b32 v40, s58, 24 +; GCN-NEXT: v_writelane_b32 v40, s59, 25 +; GCN-NEXT: v_writelane_b32 v40, s60, 26 +; GCN-NEXT: v_writelane_b32 v40, s61, 27 +; GCN-NEXT: v_writelane_b32 v40, s62, 28 +; GCN-NEXT: v_writelane_b32 v40, s63, 29 +; GCN-NEXT: v_writelane_b32 v40, s30, 30 +; GCN-NEXT: v_writelane_b32 v40, s31, 31 ; GCN-NEXT: v_mov_b32_e32 v41, v0 ; GCN-NEXT: s_mov_b64 s[4:5], exec ; GCN-NEXT: .LBB7_1: ; =>This Inner Loop Header: Depth=1 @@ -1381,38 +1381,38 @@ ; GCN-NEXT: ; %bb.2: ; GCN-NEXT: s_mov_b64 exec, s[4:5] ; GCN-NEXT: v_mov_b32_e32 v0, v41 -; GCN-NEXT: v_readlane_b32 s63, v40, 31 -; GCN-NEXT: v_readlane_b32 s62, v40, 30 -; GCN-NEXT: v_readlane_b32 s61, v40, 29 -; GCN-NEXT: v_readlane_b32 s60, v40, 28 -; GCN-NEXT: v_readlane_b32 s59, v40, 27 -; GCN-NEXT: v_readlane_b32 s58, v40, 26 -; GCN-NEXT: v_readlane_b32 s57, v40, 25 -; GCN-NEXT: v_readlane_b32 s56, v40, 24 -; GCN-NEXT: v_readlane_b32 s55, v40, 23 -; GCN-NEXT: v_readlane_b32 s54, v40, 22 -; GCN-NEXT: v_readlane_b32 s53, v40, 21 -; GCN-NEXT: v_readlane_b32 s52, v40, 20 -; GCN-NEXT: v_readlane_b32 s51, v40, 19 -; GCN-NEXT: v_readlane_b32 s50, v40, 18 -; GCN-NEXT: v_readlane_b32 s49, v40, 17 -; GCN-NEXT: v_readlane_b32 s48, v40, 16 -; GCN-NEXT: v_readlane_b32 s47, v40, 15 -; GCN-NEXT: v_readlane_b32 s46, v40, 14 -; GCN-NEXT: v_readlane_b32 s45, v40, 13 -; GCN-NEXT: v_readlane_b32 s44, v40, 12 -; GCN-NEXT: v_readlane_b32 s43, v40, 11 -; GCN-NEXT: v_readlane_b32 s42, v40, 10 -; GCN-NEXT: v_readlane_b32 s41, v40, 9 -; GCN-NEXT: v_readlane_b32 s40, v40, 8 -; GCN-NEXT: v_readlane_b32 s39, v40, 7 -; GCN-NEXT: v_readlane_b32 s38, v40, 6 -; GCN-NEXT: v_readlane_b32 s37, v40, 5 -; GCN-NEXT: v_readlane_b32 s36, v40, 4 -; GCN-NEXT: v_readlane_b32 s35, v40, 3 -; GCN-NEXT: v_readlane_b32 s34, v40, 2 -; GCN-NEXT: v_readlane_b32 s31, v40, 1 -; GCN-NEXT: v_readlane_b32 s30, v40, 0 +; GCN-NEXT: v_readlane_b32 s30, v40, 30 +; GCN-NEXT: v_readlane_b32 s31, v40, 31 +; GCN-NEXT: v_readlane_b32 s63, v40, 29 +; GCN-NEXT: v_readlane_b32 s62, v40, 28 +; GCN-NEXT: v_readlane_b32 s61, v40, 27 +; GCN-NEXT: v_readlane_b32 s60, v40, 26 +; GCN-NEXT: v_readlane_b32 s59, v40, 25 +; GCN-NEXT: v_readlane_b32 s58, v40, 24 +; GCN-NEXT: v_readlane_b32 s57, v40, 23 +; GCN-NEXT: v_readlane_b32 s56, v40, 22 +; GCN-NEXT: v_readlane_b32 s55, v40, 21 +; GCN-NEXT: v_readlane_b32 s54, v40, 20 +; GCN-NEXT: v_readlane_b32 s53, v40, 19 +; GCN-NEXT: v_readlane_b32 s52, v40, 18 +; GCN-NEXT: v_readlane_b32 s51, v40, 17 +; GCN-NEXT: v_readlane_b32 s50, v40, 16 +; GCN-NEXT: v_readlane_b32 s49, v40, 15 +; GCN-NEXT: v_readlane_b32 s48, v40, 14 +; GCN-NEXT: v_readlane_b32 s47, v40, 13 +; GCN-NEXT: v_readlane_b32 s46, v40, 12 +; GCN-NEXT: v_readlane_b32 s45, v40, 11 +; GCN-NEXT: v_readlane_b32 s44, v40, 10 +; GCN-NEXT: v_readlane_b32 s43, v40, 9 +; GCN-NEXT: v_readlane_b32 s42, v40, 8 +; GCN-NEXT: v_readlane_b32 s41, v40, 7 +; GCN-NEXT: v_readlane_b32 s40, v40, 6 +; GCN-NEXT: v_readlane_b32 s39, v40, 5 +; GCN-NEXT: v_readlane_b32 s38, v40, 4 +; GCN-NEXT: v_readlane_b32 s37, v40, 3 +; GCN-NEXT: v_readlane_b32 s36, v40, 2 +; GCN-NEXT: v_readlane_b32 s35, v40, 1 +; GCN-NEXT: v_readlane_b32 s34, v40, 0 ; GCN-NEXT: buffer_load_dword v41, off, s[0:3], s33 ; 4-byte Folded Reload ; GCN-NEXT: s_or_saveexec_b64 s[4:5], -1 ; GCN-NEXT: buffer_load_dword v40, off, s[0:3], s33 offset:4 ; 4-byte Folded Reload @@ -1432,38 +1432,38 @@ ; GISEL-NEXT: s_mov_b64 exec, s[4:5] ; GISEL-NEXT: s_addk_i32 s32, 0x400 ; GISEL-NEXT: buffer_store_dword v41, off, s[0:3], s33 ; 4-byte Folded Spill -; GISEL-NEXT: v_writelane_b32 v40, s30, 0 -; GISEL-NEXT: v_writelane_b32 v40, s31, 1 -; GISEL-NEXT: v_writelane_b32 v40, s34, 2 -; GISEL-NEXT: v_writelane_b32 v40, s35, 3 -; GISEL-NEXT: v_writelane_b32 v40, s36, 4 -; GISEL-NEXT: v_writelane_b32 v40, s37, 5 -; GISEL-NEXT: v_writelane_b32 v40, s38, 6 -; GISEL-NEXT: v_writelane_b32 v40, s39, 7 -; GISEL-NEXT: v_writelane_b32 v40, s40, 8 -; GISEL-NEXT: v_writelane_b32 v40, s41, 9 -; GISEL-NEXT: v_writelane_b32 v40, s42, 10 -; GISEL-NEXT: v_writelane_b32 v40, s43, 11 -; GISEL-NEXT: v_writelane_b32 v40, s44, 12 -; GISEL-NEXT: v_writelane_b32 v40, s45, 13 -; GISEL-NEXT: v_writelane_b32 v40, s46, 14 -; GISEL-NEXT: v_writelane_b32 v40, s47, 15 -; GISEL-NEXT: v_writelane_b32 v40, s48, 16 -; GISEL-NEXT: v_writelane_b32 v40, s49, 17 -; GISEL-NEXT: v_writelane_b32 v40, s50, 18 -; GISEL-NEXT: v_writelane_b32 v40, s51, 19 -; GISEL-NEXT: v_writelane_b32 v40, s52, 20 -; GISEL-NEXT: v_writelane_b32 v40, s53, 21 -; GISEL-NEXT: v_writelane_b32 v40, s54, 22 -; GISEL-NEXT: v_writelane_b32 v40, s55, 23 -; GISEL-NEXT: v_writelane_b32 v40, s56, 24 -; GISEL-NEXT: v_writelane_b32 v40, s57, 25 -; GISEL-NEXT: v_writelane_b32 v40, s58, 26 -; GISEL-NEXT: v_writelane_b32 v40, s59, 27 -; GISEL-NEXT: v_writelane_b32 v40, s60, 28 -; GISEL-NEXT: v_writelane_b32 v40, s61, 29 -; GISEL-NEXT: v_writelane_b32 v40, s62, 30 -; GISEL-NEXT: v_writelane_b32 v40, s63, 31 +; GISEL-NEXT: v_writelane_b32 v40, s34, 0 +; GISEL-NEXT: v_writelane_b32 v40, s35, 1 +; GISEL-NEXT: v_writelane_b32 v40, s36, 2 +; GISEL-NEXT: v_writelane_b32 v40, s37, 3 +; GISEL-NEXT: v_writelane_b32 v40, s38, 4 +; GISEL-NEXT: v_writelane_b32 v40, s39, 5 +; GISEL-NEXT: v_writelane_b32 v40, s40, 6 +; GISEL-NEXT: v_writelane_b32 v40, s41, 7 +; GISEL-NEXT: v_writelane_b32 v40, s42, 8 +; GISEL-NEXT: v_writelane_b32 v40, s43, 9 +; GISEL-NEXT: v_writelane_b32 v40, s44, 10 +; GISEL-NEXT: v_writelane_b32 v40, s45, 11 +; GISEL-NEXT: v_writelane_b32 v40, s46, 12 +; GISEL-NEXT: v_writelane_b32 v40, s47, 13 +; GISEL-NEXT: v_writelane_b32 v40, s48, 14 +; GISEL-NEXT: v_writelane_b32 v40, s49, 15 +; GISEL-NEXT: v_writelane_b32 v40, s50, 16 +; GISEL-NEXT: v_writelane_b32 v40, s51, 17 +; GISEL-NEXT: v_writelane_b32 v40, s52, 18 +; GISEL-NEXT: v_writelane_b32 v40, s53, 19 +; GISEL-NEXT: v_writelane_b32 v40, s54, 20 +; GISEL-NEXT: v_writelane_b32 v40, s55, 21 +; GISEL-NEXT: v_writelane_b32 v40, s56, 22 +; GISEL-NEXT: v_writelane_b32 v40, s57, 23 +; GISEL-NEXT: v_writelane_b32 v40, s58, 24 +; GISEL-NEXT: v_writelane_b32 v40, s59, 25 +; GISEL-NEXT: v_writelane_b32 v40, s60, 26 +; GISEL-NEXT: v_writelane_b32 v40, s61, 27 +; GISEL-NEXT: v_writelane_b32 v40, s62, 28 +; GISEL-NEXT: v_writelane_b32 v40, s63, 29 +; GISEL-NEXT: v_writelane_b32 v40, s30, 30 +; GISEL-NEXT: v_writelane_b32 v40, s31, 31 ; GISEL-NEXT: v_mov_b32_e32 v41, v0 ; GISEL-NEXT: s_mov_b64 s[4:5], exec ; GISEL-NEXT: .LBB7_1: ; =>This Inner Loop Header: Depth=1 @@ -1479,38 +1479,38 @@ ; GISEL-NEXT: ; %bb.2: ; GISEL-NEXT: s_mov_b64 exec, s[4:5] ; GISEL-NEXT: v_mov_b32_e32 v0, v41 -; GISEL-NEXT: v_readlane_b32 s63, v40, 31 -; GISEL-NEXT: v_readlane_b32 s62, v40, 30 -; GISEL-NEXT: v_readlane_b32 s61, v40, 29 -; GISEL-NEXT: v_readlane_b32 s60, v40, 28 -; GISEL-NEXT: v_readlane_b32 s59, v40, 27 -; GISEL-NEXT: v_readlane_b32 s58, v40, 26 -; GISEL-NEXT: v_readlane_b32 s57, v40, 25 -; GISEL-NEXT: v_readlane_b32 s56, v40, 24 -; GISEL-NEXT: v_readlane_b32 s55, v40, 23 -; GISEL-NEXT: v_readlane_b32 s54, v40, 22 -; GISEL-NEXT: v_readlane_b32 s53, v40, 21 -; GISEL-NEXT: v_readlane_b32 s52, v40, 20 -; GISEL-NEXT: v_readlane_b32 s51, v40, 19 -; GISEL-NEXT: v_readlane_b32 s50, v40, 18 -; GISEL-NEXT: v_readlane_b32 s49, v40, 17 -; GISEL-NEXT: v_readlane_b32 s48, v40, 16 -; GISEL-NEXT: v_readlane_b32 s47, v40, 15 -; GISEL-NEXT: v_readlane_b32 s46, v40, 14 -; GISEL-NEXT: v_readlane_b32 s45, v40, 13 -; GISEL-NEXT: v_readlane_b32 s44, v40, 12 -; GISEL-NEXT: v_readlane_b32 s43, v40, 11 -; GISEL-NEXT: v_readlane_b32 s42, v40, 10 -; GISEL-NEXT: v_readlane_b32 s41, v40, 9 -; GISEL-NEXT: v_readlane_b32 s40, v40, 8 -; GISEL-NEXT: v_readlane_b32 s39, v40, 7 -; GISEL-NEXT: v_readlane_b32 s38, v40, 6 -; GISEL-NEXT: v_readlane_b32 s37, v40, 5 -; GISEL-NEXT: v_readlane_b32 s36, v40, 4 -; GISEL-NEXT: v_readlane_b32 s35, v40, 3 -; GISEL-NEXT: v_readlane_b32 s34, v40, 2 -; GISEL-NEXT: v_readlane_b32 s31, v40, 1 -; GISEL-NEXT: v_readlane_b32 s30, v40, 0 +; GISEL-NEXT: v_readlane_b32 s30, v40, 30 +; GISEL-NEXT: v_readlane_b32 s31, v40, 31 +; GISEL-NEXT: v_readlane_b32 s63, v40, 29 +; GISEL-NEXT: v_readlane_b32 s62, v40, 28 +; GISEL-NEXT: v_readlane_b32 s61, v40, 27 +; GISEL-NEXT: v_readlane_b32 s60, v40, 26 +; GISEL-NEXT: v_readlane_b32 s59, v40, 25 +; GISEL-NEXT: v_readlane_b32 s58, v40, 24 +; GISEL-NEXT: v_readlane_b32 s57, v40, 23 +; GISEL-NEXT: v_readlane_b32 s56, v40, 22 +; GISEL-NEXT: v_readlane_b32 s55, v40, 21 +; GISEL-NEXT: v_readlane_b32 s54, v40, 20 +; GISEL-NEXT: v_readlane_b32 s53, v40, 19 +; GISEL-NEXT: v_readlane_b32 s52, v40, 18 +; GISEL-NEXT: v_readlane_b32 s51, v40, 17 +; GISEL-NEXT: v_readlane_b32 s50, v40, 16 +; GISEL-NEXT: v_readlane_b32 s49, v40, 15 +; GISEL-NEXT: v_readlane_b32 s48, v40, 14 +; GISEL-NEXT: v_readlane_b32 s47, v40, 13 +; GISEL-NEXT: v_readlane_b32 s46, v40, 12 +; GISEL-NEXT: v_readlane_b32 s45, v40, 11 +; GISEL-NEXT: v_readlane_b32 s44, v40, 10 +; GISEL-NEXT: v_readlane_b32 s43, v40, 9 +; GISEL-NEXT: v_readlane_b32 s42, v40, 8 +; GISEL-NEXT: v_readlane_b32 s41, v40, 7 +; GISEL-NEXT: v_readlane_b32 s40, v40, 6 +; GISEL-NEXT: v_readlane_b32 s39, v40, 5 +; GISEL-NEXT: v_readlane_b32 s38, v40, 4 +; GISEL-NEXT: v_readlane_b32 s37, v40, 3 +; GISEL-NEXT: v_readlane_b32 s36, v40, 2 +; GISEL-NEXT: v_readlane_b32 s35, v40, 1 +; GISEL-NEXT: v_readlane_b32 s34, v40, 0 ; GISEL-NEXT: buffer_load_dword v41, off, s[0:3], s33 ; 4-byte Folded Reload ; GISEL-NEXT: s_or_saveexec_b64 s[4:5], -1 ; GISEL-NEXT: buffer_load_dword v40, off, s[0:3], s33 offset:4 ; 4-byte Folded Reload @@ -1537,38 +1537,38 @@ ; GCN-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GCN-NEXT: s_mov_b64 exec, s[4:5] ; GCN-NEXT: s_addk_i32 s32, 0x400 -; GCN-NEXT: v_writelane_b32 v40, s30, 0 -; GCN-NEXT: v_writelane_b32 v40, s31, 1 -; GCN-NEXT: v_writelane_b32 v40, s34, 2 -; GCN-NEXT: v_writelane_b32 v40, s35, 3 -; GCN-NEXT: v_writelane_b32 v40, s36, 4 -; GCN-NEXT: v_writelane_b32 v40, s37, 5 -; GCN-NEXT: v_writelane_b32 v40, s38, 6 -; GCN-NEXT: v_writelane_b32 v40, s39, 7 -; GCN-NEXT: v_writelane_b32 v40, s40, 8 -; GCN-NEXT: v_writelane_b32 v40, s41, 9 -; GCN-NEXT: v_writelane_b32 v40, s42, 10 -; GCN-NEXT: v_writelane_b32 v40, s43, 11 -; GCN-NEXT: v_writelane_b32 v40, s44, 12 -; GCN-NEXT: v_writelane_b32 v40, s45, 13 -; GCN-NEXT: v_writelane_b32 v40, s46, 14 -; GCN-NEXT: v_writelane_b32 v40, s47, 15 -; GCN-NEXT: v_writelane_b32 v40, s48, 16 -; GCN-NEXT: v_writelane_b32 v40, s49, 17 -; GCN-NEXT: v_writelane_b32 v40, s50, 18 -; GCN-NEXT: v_writelane_b32 v40, s51, 19 -; GCN-NEXT: v_writelane_b32 v40, s52, 20 -; GCN-NEXT: v_writelane_b32 v40, s53, 21 -; GCN-NEXT: v_writelane_b32 v40, s54, 22 -; GCN-NEXT: v_writelane_b32 v40, s55, 23 -; GCN-NEXT: v_writelane_b32 v40, s56, 24 -; GCN-NEXT: v_writelane_b32 v40, s57, 25 -; GCN-NEXT: v_writelane_b32 v40, s58, 26 -; GCN-NEXT: v_writelane_b32 v40, s59, 27 -; GCN-NEXT: v_writelane_b32 v40, s60, 28 -; GCN-NEXT: v_writelane_b32 v40, s61, 29 -; GCN-NEXT: v_writelane_b32 v40, s62, 30 -; GCN-NEXT: v_writelane_b32 v40, s63, 31 +; GCN-NEXT: v_writelane_b32 v40, s34, 0 +; GCN-NEXT: v_writelane_b32 v40, s35, 1 +; GCN-NEXT: v_writelane_b32 v40, s36, 2 +; GCN-NEXT: v_writelane_b32 v40, s37, 3 +; GCN-NEXT: v_writelane_b32 v40, s38, 4 +; GCN-NEXT: v_writelane_b32 v40, s39, 5 +; GCN-NEXT: v_writelane_b32 v40, s40, 6 +; GCN-NEXT: v_writelane_b32 v40, s41, 7 +; GCN-NEXT: v_writelane_b32 v40, s42, 8 +; GCN-NEXT: v_writelane_b32 v40, s43, 9 +; GCN-NEXT: v_writelane_b32 v40, s44, 10 +; GCN-NEXT: v_writelane_b32 v40, s45, 11 +; GCN-NEXT: v_writelane_b32 v40, s46, 12 +; GCN-NEXT: v_writelane_b32 v40, s47, 13 +; GCN-NEXT: v_writelane_b32 v40, s48, 14 +; GCN-NEXT: v_writelane_b32 v40, s49, 15 +; GCN-NEXT: v_writelane_b32 v40, s50, 16 +; GCN-NEXT: v_writelane_b32 v40, s51, 17 +; GCN-NEXT: v_writelane_b32 v40, s52, 18 +; GCN-NEXT: v_writelane_b32 v40, s53, 19 +; GCN-NEXT: v_writelane_b32 v40, s54, 20 +; GCN-NEXT: v_writelane_b32 v40, s55, 21 +; GCN-NEXT: v_writelane_b32 v40, s56, 22 +; GCN-NEXT: v_writelane_b32 v40, s57, 23 +; GCN-NEXT: v_writelane_b32 v40, s58, 24 +; GCN-NEXT: v_writelane_b32 v40, s59, 25 +; GCN-NEXT: v_writelane_b32 v40, s60, 26 +; GCN-NEXT: v_writelane_b32 v40, s61, 27 +; GCN-NEXT: v_writelane_b32 v40, s62, 28 +; GCN-NEXT: v_writelane_b32 v40, s63, 29 +; GCN-NEXT: v_writelane_b32 v40, s30, 30 +; GCN-NEXT: v_writelane_b32 v40, s31, 31 ; GCN-NEXT: s_mov_b64 s[4:5], exec ; GCN-NEXT: .LBB8_1: ; =>This Inner Loop Header: Depth=1 ; GCN-NEXT: v_readfirstlane_b32 s6, v1 @@ -1584,38 +1584,38 @@ ; GCN-NEXT: ; %bb.2: ; GCN-NEXT: s_mov_b64 exec, s[4:5] ; GCN-NEXT: v_mov_b32_e32 v0, v3 -; GCN-NEXT: v_readlane_b32 s63, v40, 31 -; GCN-NEXT: v_readlane_b32 s62, v40, 30 -; GCN-NEXT: v_readlane_b32 s61, v40, 29 -; GCN-NEXT: v_readlane_b32 s60, v40, 28 -; GCN-NEXT: v_readlane_b32 s59, v40, 27 -; GCN-NEXT: v_readlane_b32 s58, v40, 26 -; GCN-NEXT: v_readlane_b32 s57, v40, 25 -; GCN-NEXT: v_readlane_b32 s56, v40, 24 -; GCN-NEXT: v_readlane_b32 s55, v40, 23 -; GCN-NEXT: v_readlane_b32 s54, v40, 22 -; GCN-NEXT: v_readlane_b32 s53, v40, 21 -; GCN-NEXT: v_readlane_b32 s52, v40, 20 -; GCN-NEXT: v_readlane_b32 s51, v40, 19 -; GCN-NEXT: v_readlane_b32 s50, v40, 18 -; GCN-NEXT: v_readlane_b32 s49, v40, 17 -; GCN-NEXT: v_readlane_b32 s48, v40, 16 -; GCN-NEXT: v_readlane_b32 s47, v40, 15 -; GCN-NEXT: v_readlane_b32 s46, v40, 14 -; GCN-NEXT: v_readlane_b32 s45, v40, 13 -; GCN-NEXT: v_readlane_b32 s44, v40, 12 -; GCN-NEXT: v_readlane_b32 s43, v40, 11 -; GCN-NEXT: v_readlane_b32 s42, v40, 10 -; GCN-NEXT: v_readlane_b32 s41, v40, 9 -; GCN-NEXT: v_readlane_b32 s40, v40, 8 -; GCN-NEXT: v_readlane_b32 s39, v40, 7 -; GCN-NEXT: v_readlane_b32 s38, v40, 6 -; GCN-NEXT: v_readlane_b32 s37, v40, 5 -; GCN-NEXT: v_readlane_b32 s36, v40, 4 -; GCN-NEXT: v_readlane_b32 s35, v40, 3 -; GCN-NEXT: v_readlane_b32 s34, v40, 2 -; GCN-NEXT: v_readlane_b32 s31, v40, 1 -; GCN-NEXT: v_readlane_b32 s30, v40, 0 +; GCN-NEXT: v_readlane_b32 s30, v40, 30 +; GCN-NEXT: v_readlane_b32 s31, v40, 31 +; GCN-NEXT: v_readlane_b32 s63, v40, 29 +; GCN-NEXT: v_readlane_b32 s62, v40, 28 +; GCN-NEXT: v_readlane_b32 s61, v40, 27 +; GCN-NEXT: v_readlane_b32 s60, v40, 26 +; GCN-NEXT: v_readlane_b32 s59, v40, 25 +; GCN-NEXT: v_readlane_b32 s58, v40, 24 +; GCN-NEXT: v_readlane_b32 s57, v40, 23 +; GCN-NEXT: v_readlane_b32 s56, v40, 22 +; GCN-NEXT: v_readlane_b32 s55, v40, 21 +; GCN-NEXT: v_readlane_b32 s54, v40, 20 +; GCN-NEXT: v_readlane_b32 s53, v40, 19 +; GCN-NEXT: v_readlane_b32 s52, v40, 18 +; GCN-NEXT: v_readlane_b32 s51, v40, 17 +; GCN-NEXT: v_readlane_b32 s50, v40, 16 +; GCN-NEXT: v_readlane_b32 s49, v40, 15 +; GCN-NEXT: v_readlane_b32 s48, v40, 14 +; GCN-NEXT: v_readlane_b32 s47, v40, 13 +; GCN-NEXT: v_readlane_b32 s46, v40, 12 +; GCN-NEXT: v_readlane_b32 s45, v40, 11 +; GCN-NEXT: v_readlane_b32 s44, v40, 10 +; GCN-NEXT: v_readlane_b32 s43, v40, 9 +; GCN-NEXT: v_readlane_b32 s42, v40, 8 +; GCN-NEXT: v_readlane_b32 s41, v40, 7 +; GCN-NEXT: v_readlane_b32 s40, v40, 6 +; GCN-NEXT: v_readlane_b32 s39, v40, 5 +; GCN-NEXT: v_readlane_b32 s38, v40, 4 +; GCN-NEXT: v_readlane_b32 s37, v40, 3 +; GCN-NEXT: v_readlane_b32 s36, v40, 2 +; GCN-NEXT: v_readlane_b32 s35, v40, 1 +; GCN-NEXT: v_readlane_b32 s34, v40, 0 ; GCN-NEXT: s_or_saveexec_b64 s[4:5], -1 ; GCN-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload ; GCN-NEXT: s_mov_b64 exec, s[4:5] @@ -1633,38 +1633,38 @@ ; GISEL-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GISEL-NEXT: s_mov_b64 exec, s[4:5] ; GISEL-NEXT: s_addk_i32 s32, 0x400 -; GISEL-NEXT: v_writelane_b32 v40, s30, 0 -; GISEL-NEXT: v_writelane_b32 v40, s31, 1 -; GISEL-NEXT: v_writelane_b32 v40, s34, 2 -; GISEL-NEXT: v_writelane_b32 v40, s35, 3 -; GISEL-NEXT: v_writelane_b32 v40, s36, 4 -; GISEL-NEXT: v_writelane_b32 v40, s37, 5 -; GISEL-NEXT: v_writelane_b32 v40, s38, 6 -; GISEL-NEXT: v_writelane_b32 v40, s39, 7 -; GISEL-NEXT: v_writelane_b32 v40, s40, 8 -; GISEL-NEXT: v_writelane_b32 v40, s41, 9 -; GISEL-NEXT: v_writelane_b32 v40, s42, 10 -; GISEL-NEXT: v_writelane_b32 v40, s43, 11 -; GISEL-NEXT: v_writelane_b32 v40, s44, 12 -; GISEL-NEXT: v_writelane_b32 v40, s45, 13 -; GISEL-NEXT: v_writelane_b32 v40, s46, 14 -; GISEL-NEXT: v_writelane_b32 v40, s47, 15 -; GISEL-NEXT: v_writelane_b32 v40, s48, 16 -; GISEL-NEXT: v_writelane_b32 v40, s49, 17 -; GISEL-NEXT: v_writelane_b32 v40, s50, 18 -; GISEL-NEXT: v_writelane_b32 v40, s51, 19 -; GISEL-NEXT: v_writelane_b32 v40, s52, 20 -; GISEL-NEXT: v_writelane_b32 v40, s53, 21 -; GISEL-NEXT: v_writelane_b32 v40, s54, 22 -; GISEL-NEXT: v_writelane_b32 v40, s55, 23 -; GISEL-NEXT: v_writelane_b32 v40, s56, 24 -; GISEL-NEXT: v_writelane_b32 v40, s57, 25 -; GISEL-NEXT: v_writelane_b32 v40, s58, 26 -; GISEL-NEXT: v_writelane_b32 v40, s59, 27 -; GISEL-NEXT: v_writelane_b32 v40, s60, 28 -; GISEL-NEXT: v_writelane_b32 v40, s61, 29 -; GISEL-NEXT: v_writelane_b32 v40, s62, 30 -; GISEL-NEXT: v_writelane_b32 v40, s63, 31 +; GISEL-NEXT: v_writelane_b32 v40, s34, 0 +; GISEL-NEXT: v_writelane_b32 v40, s35, 1 +; GISEL-NEXT: v_writelane_b32 v40, s36, 2 +; GISEL-NEXT: v_writelane_b32 v40, s37, 3 +; GISEL-NEXT: v_writelane_b32 v40, s38, 4 +; GISEL-NEXT: v_writelane_b32 v40, s39, 5 +; GISEL-NEXT: v_writelane_b32 v40, s40, 6 +; GISEL-NEXT: v_writelane_b32 v40, s41, 7 +; GISEL-NEXT: v_writelane_b32 v40, s42, 8 +; GISEL-NEXT: v_writelane_b32 v40, s43, 9 +; GISEL-NEXT: v_writelane_b32 v40, s44, 10 +; GISEL-NEXT: v_writelane_b32 v40, s45, 11 +; GISEL-NEXT: v_writelane_b32 v40, s46, 12 +; GISEL-NEXT: v_writelane_b32 v40, s47, 13 +; GISEL-NEXT: v_writelane_b32 v40, s48, 14 +; GISEL-NEXT: v_writelane_b32 v40, s49, 15 +; GISEL-NEXT: v_writelane_b32 v40, s50, 16 +; GISEL-NEXT: v_writelane_b32 v40, s51, 17 +; GISEL-NEXT: v_writelane_b32 v40, s52, 18 +; GISEL-NEXT: v_writelane_b32 v40, s53, 19 +; GISEL-NEXT: v_writelane_b32 v40, s54, 20 +; GISEL-NEXT: v_writelane_b32 v40, s55, 21 +; GISEL-NEXT: v_writelane_b32 v40, s56, 22 +; GISEL-NEXT: v_writelane_b32 v40, s57, 23 +; GISEL-NEXT: v_writelane_b32 v40, s58, 24 +; GISEL-NEXT: v_writelane_b32 v40, s59, 25 +; GISEL-NEXT: v_writelane_b32 v40, s60, 26 +; GISEL-NEXT: v_writelane_b32 v40, s61, 27 +; GISEL-NEXT: v_writelane_b32 v40, s62, 28 +; GISEL-NEXT: v_writelane_b32 v40, s63, 29 +; GISEL-NEXT: v_writelane_b32 v40, s30, 30 +; GISEL-NEXT: v_writelane_b32 v40, s31, 31 ; GISEL-NEXT: s_mov_b64 s[4:5], exec ; GISEL-NEXT: .LBB8_1: ; =>This Inner Loop Header: Depth=1 ; GISEL-NEXT: v_readfirstlane_b32 s8, v1 @@ -1680,38 +1680,38 @@ ; GISEL-NEXT: ; %bb.2: ; GISEL-NEXT: s_mov_b64 exec, s[4:5] ; GISEL-NEXT: v_mov_b32_e32 v0, v2 -; GISEL-NEXT: v_readlane_b32 s63, v40, 31 -; GISEL-NEXT: v_readlane_b32 s62, v40, 30 -; GISEL-NEXT: v_readlane_b32 s61, v40, 29 -; GISEL-NEXT: v_readlane_b32 s60, v40, 28 -; GISEL-NEXT: v_readlane_b32 s59, v40, 27 -; GISEL-NEXT: v_readlane_b32 s58, v40, 26 -; GISEL-NEXT: v_readlane_b32 s57, v40, 25 -; GISEL-NEXT: v_readlane_b32 s56, v40, 24 -; GISEL-NEXT: v_readlane_b32 s55, v40, 23 -; GISEL-NEXT: v_readlane_b32 s54, v40, 22 -; GISEL-NEXT: v_readlane_b32 s53, v40, 21 -; GISEL-NEXT: v_readlane_b32 s52, v40, 20 -; GISEL-NEXT: v_readlane_b32 s51, v40, 19 -; GISEL-NEXT: v_readlane_b32 s50, v40, 18 -; GISEL-NEXT: v_readlane_b32 s49, v40, 17 -; GISEL-NEXT: v_readlane_b32 s48, v40, 16 -; GISEL-NEXT: v_readlane_b32 s47, v40, 15 -; GISEL-NEXT: v_readlane_b32 s46, v40, 14 -; GISEL-NEXT: v_readlane_b32 s45, v40, 13 -; GISEL-NEXT: v_readlane_b32 s44, v40, 12 -; GISEL-NEXT: v_readlane_b32 s43, v40, 11 -; GISEL-NEXT: v_readlane_b32 s42, v40, 10 -; GISEL-NEXT: v_readlane_b32 s41, v40, 9 -; GISEL-NEXT: v_readlane_b32 s40, v40, 8 -; GISEL-NEXT: v_readlane_b32 s39, v40, 7 -; GISEL-NEXT: v_readlane_b32 s38, v40, 6 -; GISEL-NEXT: v_readlane_b32 s37, v40, 5 -; GISEL-NEXT: v_readlane_b32 s36, v40, 4 -; GISEL-NEXT: v_readlane_b32 s35, v40, 3 -; GISEL-NEXT: v_readlane_b32 s34, v40, 2 -; GISEL-NEXT: v_readlane_b32 s31, v40, 1 -; GISEL-NEXT: v_readlane_b32 s30, v40, 0 +; GISEL-NEXT: v_readlane_b32 s30, v40, 30 +; GISEL-NEXT: v_readlane_b32 s31, v40, 31 +; GISEL-NEXT: v_readlane_b32 s63, v40, 29 +; GISEL-NEXT: v_readlane_b32 s62, v40, 28 +; GISEL-NEXT: v_readlane_b32 s61, v40, 27 +; GISEL-NEXT: v_readlane_b32 s60, v40, 26 +; GISEL-NEXT: v_readlane_b32 s59, v40, 25 +; GISEL-NEXT: v_readlane_b32 s58, v40, 24 +; GISEL-NEXT: v_readlane_b32 s57, v40, 23 +; GISEL-NEXT: v_readlane_b32 s56, v40, 22 +; GISEL-NEXT: v_readlane_b32 s55, v40, 21 +; GISEL-NEXT: v_readlane_b32 s54, v40, 20 +; GISEL-NEXT: v_readlane_b32 s53, v40, 19 +; GISEL-NEXT: v_readlane_b32 s52, v40, 18 +; GISEL-NEXT: v_readlane_b32 s51, v40, 17 +; GISEL-NEXT: v_readlane_b32 s50, v40, 16 +; GISEL-NEXT: v_readlane_b32 s49, v40, 15 +; GISEL-NEXT: v_readlane_b32 s48, v40, 14 +; GISEL-NEXT: v_readlane_b32 s47, v40, 13 +; GISEL-NEXT: v_readlane_b32 s46, v40, 12 +; GISEL-NEXT: v_readlane_b32 s45, v40, 11 +; GISEL-NEXT: v_readlane_b32 s44, v40, 10 +; GISEL-NEXT: v_readlane_b32 s43, v40, 9 +; GISEL-NEXT: v_readlane_b32 s42, v40, 8 +; GISEL-NEXT: v_readlane_b32 s41, v40, 7 +; GISEL-NEXT: v_readlane_b32 s40, v40, 6 +; GISEL-NEXT: v_readlane_b32 s39, v40, 5 +; GISEL-NEXT: v_readlane_b32 s38, v40, 4 +; GISEL-NEXT: v_readlane_b32 s37, v40, 3 +; GISEL-NEXT: v_readlane_b32 s36, v40, 2 +; GISEL-NEXT: v_readlane_b32 s35, v40, 1 +; GISEL-NEXT: v_readlane_b32 s34, v40, 0 ; GISEL-NEXT: s_or_saveexec_b64 s[4:5], -1 ; GISEL-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload ; GISEL-NEXT: s_mov_b64 exec, s[4:5] @@ -1734,38 +1734,38 @@ ; GCN-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GCN-NEXT: s_mov_b64 exec, s[4:5] ; GCN-NEXT: s_addk_i32 s32, 0x400 -; GCN-NEXT: v_writelane_b32 v40, s30, 0 -; GCN-NEXT: v_writelane_b32 v40, s31, 1 -; GCN-NEXT: v_writelane_b32 v40, s34, 2 -; GCN-NEXT: v_writelane_b32 v40, s35, 3 -; GCN-NEXT: v_writelane_b32 v40, s36, 4 -; GCN-NEXT: v_writelane_b32 v40, s37, 5 -; GCN-NEXT: v_writelane_b32 v40, s38, 6 -; GCN-NEXT: v_writelane_b32 v40, s39, 7 -; GCN-NEXT: v_writelane_b32 v40, s40, 8 -; GCN-NEXT: v_writelane_b32 v40, s41, 9 -; GCN-NEXT: v_writelane_b32 v40, s42, 10 -; GCN-NEXT: v_writelane_b32 v40, s43, 11 -; GCN-NEXT: v_writelane_b32 v40, s44, 12 -; GCN-NEXT: v_writelane_b32 v40, s45, 13 -; GCN-NEXT: v_writelane_b32 v40, s46, 14 -; GCN-NEXT: v_writelane_b32 v40, s47, 15 -; GCN-NEXT: v_writelane_b32 v40, s48, 16 -; GCN-NEXT: v_writelane_b32 v40, s49, 17 -; GCN-NEXT: v_writelane_b32 v40, s50, 18 -; GCN-NEXT: v_writelane_b32 v40, s51, 19 -; GCN-NEXT: v_writelane_b32 v40, s52, 20 -; GCN-NEXT: v_writelane_b32 v40, s53, 21 -; GCN-NEXT: v_writelane_b32 v40, s54, 22 -; GCN-NEXT: v_writelane_b32 v40, s55, 23 -; GCN-NEXT: v_writelane_b32 v40, s56, 24 -; GCN-NEXT: v_writelane_b32 v40, s57, 25 -; GCN-NEXT: v_writelane_b32 v40, s58, 26 -; GCN-NEXT: v_writelane_b32 v40, s59, 27 -; GCN-NEXT: v_writelane_b32 v40, s60, 28 -; GCN-NEXT: v_writelane_b32 v40, s61, 29 -; GCN-NEXT: v_writelane_b32 v40, s62, 30 -; GCN-NEXT: v_writelane_b32 v40, s63, 31 +; GCN-NEXT: v_writelane_b32 v40, s34, 0 +; GCN-NEXT: v_writelane_b32 v40, s35, 1 +; GCN-NEXT: v_writelane_b32 v40, s36, 2 +; GCN-NEXT: v_writelane_b32 v40, s37, 3 +; GCN-NEXT: v_writelane_b32 v40, s38, 4 +; GCN-NEXT: v_writelane_b32 v40, s39, 5 +; GCN-NEXT: v_writelane_b32 v40, s40, 6 +; GCN-NEXT: v_writelane_b32 v40, s41, 7 +; GCN-NEXT: v_writelane_b32 v40, s42, 8 +; GCN-NEXT: v_writelane_b32 v40, s43, 9 +; GCN-NEXT: v_writelane_b32 v40, s44, 10 +; GCN-NEXT: v_writelane_b32 v40, s45, 11 +; GCN-NEXT: v_writelane_b32 v40, s46, 12 +; GCN-NEXT: v_writelane_b32 v40, s47, 13 +; GCN-NEXT: v_writelane_b32 v40, s48, 14 +; GCN-NEXT: v_writelane_b32 v40, s49, 15 +; GCN-NEXT: v_writelane_b32 v40, s50, 16 +; GCN-NEXT: v_writelane_b32 v40, s51, 17 +; GCN-NEXT: v_writelane_b32 v40, s52, 18 +; GCN-NEXT: v_writelane_b32 v40, s53, 19 +; GCN-NEXT: v_writelane_b32 v40, s54, 20 +; GCN-NEXT: v_writelane_b32 v40, s55, 21 +; GCN-NEXT: v_writelane_b32 v40, s56, 22 +; GCN-NEXT: v_writelane_b32 v40, s57, 23 +; GCN-NEXT: v_writelane_b32 v40, s58, 24 +; GCN-NEXT: v_writelane_b32 v40, s59, 25 +; GCN-NEXT: v_writelane_b32 v40, s60, 26 +; GCN-NEXT: v_writelane_b32 v40, s61, 27 +; GCN-NEXT: v_writelane_b32 v40, s62, 28 +; GCN-NEXT: v_writelane_b32 v40, s63, 29 +; GCN-NEXT: v_writelane_b32 v40, s30, 30 +; GCN-NEXT: v_writelane_b32 v40, s31, 31 ; GCN-NEXT: s_mov_b64 s[4:5], exec ; GCN-NEXT: .LBB9_1: ; =>This Inner Loop Header: Depth=1 ; GCN-NEXT: v_readfirstlane_b32 s6, v0 @@ -1778,38 +1778,38 @@ ; GCN-NEXT: s_cbranch_execnz .LBB9_1 ; GCN-NEXT: ; %bb.2: ; GCN-NEXT: s_mov_b64 exec, s[4:5] -; GCN-NEXT: v_readlane_b32 s63, v40, 31 -; GCN-NEXT: v_readlane_b32 s62, v40, 30 -; GCN-NEXT: v_readlane_b32 s61, v40, 29 -; GCN-NEXT: v_readlane_b32 s60, v40, 28 -; GCN-NEXT: v_readlane_b32 s59, v40, 27 -; GCN-NEXT: v_readlane_b32 s58, v40, 26 -; GCN-NEXT: v_readlane_b32 s57, v40, 25 -; GCN-NEXT: v_readlane_b32 s56, v40, 24 -; GCN-NEXT: v_readlane_b32 s55, v40, 23 -; GCN-NEXT: v_readlane_b32 s54, v40, 22 -; GCN-NEXT: v_readlane_b32 s53, v40, 21 -; GCN-NEXT: v_readlane_b32 s52, v40, 20 -; GCN-NEXT: v_readlane_b32 s51, v40, 19 -; GCN-NEXT: v_readlane_b32 s50, v40, 18 -; GCN-NEXT: v_readlane_b32 s49, v40, 17 -; GCN-NEXT: v_readlane_b32 s48, v40, 16 -; GCN-NEXT: v_readlane_b32 s47, v40, 15 -; GCN-NEXT: v_readlane_b32 s46, v40, 14 -; GCN-NEXT: v_readlane_b32 s45, v40, 13 -; GCN-NEXT: v_readlane_b32 s44, v40, 12 -; GCN-NEXT: v_readlane_b32 s43, v40, 11 -; GCN-NEXT: v_readlane_b32 s42, v40, 10 -; GCN-NEXT: v_readlane_b32 s41, v40, 9 -; GCN-NEXT: v_readlane_b32 s40, v40, 8 -; GCN-NEXT: v_readlane_b32 s39, v40, 7 -; GCN-NEXT: v_readlane_b32 s38, v40, 6 -; GCN-NEXT: v_readlane_b32 s37, v40, 5 -; GCN-NEXT: v_readlane_b32 s36, v40, 4 -; GCN-NEXT: v_readlane_b32 s35, v40, 3 -; GCN-NEXT: v_readlane_b32 s34, v40, 2 -; GCN-NEXT: v_readlane_b32 s31, v40, 1 -; GCN-NEXT: v_readlane_b32 s30, v40, 0 +; GCN-NEXT: v_readlane_b32 s30, v40, 30 +; GCN-NEXT: v_readlane_b32 s31, v40, 31 +; GCN-NEXT: v_readlane_b32 s63, v40, 29 +; GCN-NEXT: v_readlane_b32 s62, v40, 28 +; GCN-NEXT: v_readlane_b32 s61, v40, 27 +; GCN-NEXT: v_readlane_b32 s60, v40, 26 +; GCN-NEXT: v_readlane_b32 s59, v40, 25 +; GCN-NEXT: v_readlane_b32 s58, v40, 24 +; GCN-NEXT: v_readlane_b32 s57, v40, 23 +; GCN-NEXT: v_readlane_b32 s56, v40, 22 +; GCN-NEXT: v_readlane_b32 s55, v40, 21 +; GCN-NEXT: v_readlane_b32 s54, v40, 20 +; GCN-NEXT: v_readlane_b32 s53, v40, 19 +; GCN-NEXT: v_readlane_b32 s52, v40, 18 +; GCN-NEXT: v_readlane_b32 s51, v40, 17 +; GCN-NEXT: v_readlane_b32 s50, v40, 16 +; GCN-NEXT: v_readlane_b32 s49, v40, 15 +; GCN-NEXT: v_readlane_b32 s48, v40, 14 +; GCN-NEXT: v_readlane_b32 s47, v40, 13 +; GCN-NEXT: v_readlane_b32 s46, v40, 12 +; GCN-NEXT: v_readlane_b32 s45, v40, 11 +; GCN-NEXT: v_readlane_b32 s44, v40, 10 +; GCN-NEXT: v_readlane_b32 s43, v40, 9 +; GCN-NEXT: v_readlane_b32 s42, v40, 8 +; GCN-NEXT: v_readlane_b32 s41, v40, 7 +; GCN-NEXT: v_readlane_b32 s40, v40, 6 +; GCN-NEXT: v_readlane_b32 s39, v40, 5 +; GCN-NEXT: v_readlane_b32 s38, v40, 4 +; GCN-NEXT: v_readlane_b32 s37, v40, 3 +; GCN-NEXT: v_readlane_b32 s36, v40, 2 +; GCN-NEXT: v_readlane_b32 s35, v40, 1 +; GCN-NEXT: v_readlane_b32 s34, v40, 0 ; GCN-NEXT: s_or_saveexec_b64 s[4:5], -1 ; GCN-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload ; GCN-NEXT: s_mov_b64 exec, s[4:5] @@ -1827,38 +1827,38 @@ ; GISEL-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GISEL-NEXT: s_mov_b64 exec, s[4:5] ; GISEL-NEXT: s_addk_i32 s32, 0x400 -; GISEL-NEXT: v_writelane_b32 v40, s30, 0 -; GISEL-NEXT: v_writelane_b32 v40, s31, 1 -; GISEL-NEXT: v_writelane_b32 v40, s34, 2 -; GISEL-NEXT: v_writelane_b32 v40, s35, 3 -; GISEL-NEXT: v_writelane_b32 v40, s36, 4 -; GISEL-NEXT: v_writelane_b32 v40, s37, 5 -; GISEL-NEXT: v_writelane_b32 v40, s38, 6 -; GISEL-NEXT: v_writelane_b32 v40, s39, 7 -; GISEL-NEXT: v_writelane_b32 v40, s40, 8 -; GISEL-NEXT: v_writelane_b32 v40, s41, 9 -; GISEL-NEXT: v_writelane_b32 v40, s42, 10 -; GISEL-NEXT: v_writelane_b32 v40, s43, 11 -; GISEL-NEXT: v_writelane_b32 v40, s44, 12 -; GISEL-NEXT: v_writelane_b32 v40, s45, 13 -; GISEL-NEXT: v_writelane_b32 v40, s46, 14 -; GISEL-NEXT: v_writelane_b32 v40, s47, 15 -; GISEL-NEXT: v_writelane_b32 v40, s48, 16 -; GISEL-NEXT: v_writelane_b32 v40, s49, 17 -; GISEL-NEXT: v_writelane_b32 v40, s50, 18 -; GISEL-NEXT: v_writelane_b32 v40, s51, 19 -; GISEL-NEXT: v_writelane_b32 v40, s52, 20 -; GISEL-NEXT: v_writelane_b32 v40, s53, 21 -; GISEL-NEXT: v_writelane_b32 v40, s54, 22 -; GISEL-NEXT: v_writelane_b32 v40, s55, 23 -; GISEL-NEXT: v_writelane_b32 v40, s56, 24 -; GISEL-NEXT: v_writelane_b32 v40, s57, 25 -; GISEL-NEXT: v_writelane_b32 v40, s58, 26 -; GISEL-NEXT: v_writelane_b32 v40, s59, 27 -; GISEL-NEXT: v_writelane_b32 v40, s60, 28 -; GISEL-NEXT: v_writelane_b32 v40, s61, 29 -; GISEL-NEXT: v_writelane_b32 v40, s62, 30 -; GISEL-NEXT: v_writelane_b32 v40, s63, 31 +; GISEL-NEXT: v_writelane_b32 v40, s34, 0 +; GISEL-NEXT: v_writelane_b32 v40, s35, 1 +; GISEL-NEXT: v_writelane_b32 v40, s36, 2 +; GISEL-NEXT: v_writelane_b32 v40, s37, 3 +; GISEL-NEXT: v_writelane_b32 v40, s38, 4 +; GISEL-NEXT: v_writelane_b32 v40, s39, 5 +; GISEL-NEXT: v_writelane_b32 v40, s40, 6 +; GISEL-NEXT: v_writelane_b32 v40, s41, 7 +; GISEL-NEXT: v_writelane_b32 v40, s42, 8 +; GISEL-NEXT: v_writelane_b32 v40, s43, 9 +; GISEL-NEXT: v_writelane_b32 v40, s44, 10 +; GISEL-NEXT: v_writelane_b32 v40, s45, 11 +; GISEL-NEXT: v_writelane_b32 v40, s46, 12 +; GISEL-NEXT: v_writelane_b32 v40, s47, 13 +; GISEL-NEXT: v_writelane_b32 v40, s48, 14 +; GISEL-NEXT: v_writelane_b32 v40, s49, 15 +; GISEL-NEXT: v_writelane_b32 v40, s50, 16 +; GISEL-NEXT: v_writelane_b32 v40, s51, 17 +; GISEL-NEXT: v_writelane_b32 v40, s52, 18 +; GISEL-NEXT: v_writelane_b32 v40, s53, 19 +; GISEL-NEXT: v_writelane_b32 v40, s54, 20 +; GISEL-NEXT: v_writelane_b32 v40, s55, 21 +; GISEL-NEXT: v_writelane_b32 v40, s56, 22 +; GISEL-NEXT: v_writelane_b32 v40, s57, 23 +; GISEL-NEXT: v_writelane_b32 v40, s58, 24 +; GISEL-NEXT: v_writelane_b32 v40, s59, 25 +; GISEL-NEXT: v_writelane_b32 v40, s60, 26 +; GISEL-NEXT: v_writelane_b32 v40, s61, 27 +; GISEL-NEXT: v_writelane_b32 v40, s62, 28 +; GISEL-NEXT: v_writelane_b32 v40, s63, 29 +; GISEL-NEXT: v_writelane_b32 v40, s30, 30 +; GISEL-NEXT: v_writelane_b32 v40, s31, 31 ; GISEL-NEXT: s_mov_b64 s[4:5], exec ; GISEL-NEXT: .LBB9_1: ; =>This Inner Loop Header: Depth=1 ; GISEL-NEXT: v_readfirstlane_b32 s6, v0 @@ -1871,38 +1871,38 @@ ; GISEL-NEXT: s_cbranch_execnz .LBB9_1 ; GISEL-NEXT: ; %bb.2: ; GISEL-NEXT: s_mov_b64 exec, s[4:5] -; GISEL-NEXT: v_readlane_b32 s63, v40, 31 -; GISEL-NEXT: v_readlane_b32 s62, v40, 30 -; GISEL-NEXT: v_readlane_b32 s61, v40, 29 -; GISEL-NEXT: v_readlane_b32 s60, v40, 28 -; GISEL-NEXT: v_readlane_b32 s59, v40, 27 -; GISEL-NEXT: v_readlane_b32 s58, v40, 26 -; GISEL-NEXT: v_readlane_b32 s57, v40, 25 -; GISEL-NEXT: v_readlane_b32 s56, v40, 24 -; GISEL-NEXT: v_readlane_b32 s55, v40, 23 -; GISEL-NEXT: v_readlane_b32 s54, v40, 22 -; GISEL-NEXT: v_readlane_b32 s53, v40, 21 -; GISEL-NEXT: v_readlane_b32 s52, v40, 20 -; GISEL-NEXT: v_readlane_b32 s51, v40, 19 -; GISEL-NEXT: v_readlane_b32 s50, v40, 18 -; GISEL-NEXT: v_readlane_b32 s49, v40, 17 -; GISEL-NEXT: v_readlane_b32 s48, v40, 16 -; GISEL-NEXT: v_readlane_b32 s47, v40, 15 -; GISEL-NEXT: v_readlane_b32 s46, v40, 14 -; GISEL-NEXT: v_readlane_b32 s45, v40, 13 -; GISEL-NEXT: v_readlane_b32 s44, v40, 12 -; GISEL-NEXT: v_readlane_b32 s43, v40, 11 -; GISEL-NEXT: v_readlane_b32 s42, v40, 10 -; GISEL-NEXT: v_readlane_b32 s41, v40, 9 -; GISEL-NEXT: v_readlane_b32 s40, v40, 8 -; GISEL-NEXT: v_readlane_b32 s39, v40, 7 -; GISEL-NEXT: v_readlane_b32 s38, v40, 6 -; GISEL-NEXT: v_readlane_b32 s37, v40, 5 -; GISEL-NEXT: v_readlane_b32 s36, v40, 4 -; GISEL-NEXT: v_readlane_b32 s35, v40, 3 -; GISEL-NEXT: v_readlane_b32 s34, v40, 2 -; GISEL-NEXT: v_readlane_b32 s31, v40, 1 -; GISEL-NEXT: v_readlane_b32 s30, v40, 0 +; GISEL-NEXT: v_readlane_b32 s30, v40, 30 +; GISEL-NEXT: v_readlane_b32 s31, v40, 31 +; GISEL-NEXT: v_readlane_b32 s63, v40, 29 +; GISEL-NEXT: v_readlane_b32 s62, v40, 28 +; GISEL-NEXT: v_readlane_b32 s61, v40, 27 +; GISEL-NEXT: v_readlane_b32 s60, v40, 26 +; GISEL-NEXT: v_readlane_b32 s59, v40, 25 +; GISEL-NEXT: v_readlane_b32 s58, v40, 24 +; GISEL-NEXT: v_readlane_b32 s57, v40, 23 +; GISEL-NEXT: v_readlane_b32 s56, v40, 22 +; GISEL-NEXT: v_readlane_b32 s55, v40, 21 +; GISEL-NEXT: v_readlane_b32 s54, v40, 20 +; GISEL-NEXT: v_readlane_b32 s53, v40, 19 +; GISEL-NEXT: v_readlane_b32 s52, v40, 18 +; GISEL-NEXT: v_readlane_b32 s51, v40, 17 +; GISEL-NEXT: v_readlane_b32 s50, v40, 16 +; GISEL-NEXT: v_readlane_b32 s49, v40, 15 +; GISEL-NEXT: v_readlane_b32 s48, v40, 14 +; GISEL-NEXT: v_readlane_b32 s47, v40, 13 +; GISEL-NEXT: v_readlane_b32 s46, v40, 12 +; GISEL-NEXT: v_readlane_b32 s45, v40, 11 +; GISEL-NEXT: v_readlane_b32 s44, v40, 10 +; GISEL-NEXT: v_readlane_b32 s43, v40, 9 +; GISEL-NEXT: v_readlane_b32 s42, v40, 8 +; GISEL-NEXT: v_readlane_b32 s41, v40, 7 +; GISEL-NEXT: v_readlane_b32 s40, v40, 6 +; GISEL-NEXT: v_readlane_b32 s39, v40, 5 +; GISEL-NEXT: v_readlane_b32 s38, v40, 4 +; GISEL-NEXT: v_readlane_b32 s37, v40, 3 +; GISEL-NEXT: v_readlane_b32 s36, v40, 2 +; GISEL-NEXT: v_readlane_b32 s35, v40, 1 +; GISEL-NEXT: v_readlane_b32 s34, v40, 0 ; GISEL-NEXT: s_or_saveexec_b64 s[4:5], -1 ; GISEL-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload ; GISEL-NEXT: s_mov_b64 exec, s[4:5] diff --git a/llvm/test/CodeGen/AMDGPU/insert-delay-alu-bug.ll b/llvm/test/CodeGen/AMDGPU/insert-delay-alu-bug.ll --- a/llvm/test/CodeGen/AMDGPU/insert-delay-alu-bug.ll +++ b/llvm/test/CodeGen/AMDGPU/insert-delay-alu-bug.ll @@ -13,18 +13,17 @@ ; GFX11-NEXT: s_xor_saveexec_b32 s0, -1 ; GFX11-NEXT: scratch_store_b32 off, v4, s33 ; 4-byte Folded Spill ; GFX11-NEXT: s_mov_b32 exec_lo, s0 +; GFX11-NEXT: v_writelane_b32 v4, s30, 0 ; GFX11-NEXT: s_add_i32 s32, s32, 16 +; GFX11-NEXT: v_writelane_b32 v4, s31, 1 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, f1@gotpcrel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, f1@gotpcrel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v4, s30, 0 ; GFX11-NEXT: s_load_b64 s[0:1], s[0:1], 0x0 -; GFX11-NEXT: v_writelane_b32 v4, s31, 1 ; GFX11-NEXT: s_waitcnt lgkmcnt(0) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] -; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) -; GFX11-NEXT: v_readlane_b32 s31, v4, 1 ; GFX11-NEXT: v_readlane_b32 s30, v4, 0 +; GFX11-NEXT: v_readlane_b32 s31, v4, 1 ; GFX11-NEXT: s_xor_saveexec_b32 s0, -1 ; GFX11-NEXT: scratch_load_b32 v4, off, s33 ; 4-byte Folded Reload ; GFX11-NEXT: s_mov_b32 exec_lo, s0 diff --git a/llvm/test/CodeGen/AMDGPU/kernel-mubuf-with-voffset.mir b/llvm/test/CodeGen/AMDGPU/kernel-mubuf-with-voffset.mir --- a/llvm/test/CodeGen/AMDGPU/kernel-mubuf-with-voffset.mir +++ b/llvm/test/CodeGen/AMDGPU/kernel-mubuf-with-voffset.mir @@ -31,6 +31,8 @@ ; CHECK-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; CHECK-NEXT: liveins: $sgpr4, $sgpr5, $sgpr6, $sgpr7, $sgpr8, $sgpr9, $sgpr10, $sgpr11, $sgpr12, $sgpr13, $sgpr14, $sgpr15, $sgpr16, $sgpr17, $sgpr18, $sgpr19, $sgpr20, $sgpr21, $sgpr22, $sgpr23, $sgpr24, $sgpr25, $sgpr26, $sgpr27, $sgpr28, $sgpr29, $sgpr30, $sgpr31, $sgpr34, $sgpr35, $sgpr36, $sgpr37, $sgpr38, $sgpr39, $sgpr40, $sgpr41, $sgpr42, $sgpr43, $sgpr44, $sgpr45, $sgpr46, $sgpr47, $sgpr48, $sgpr49, $sgpr50, $sgpr51, $sgpr52, $sgpr53, $sgpr54, $sgpr55, $sgpr56, $sgpr57, $sgpr58, $sgpr59, $sgpr60, $sgpr61, $sgpr62, $sgpr63, $sgpr64, $sgpr65, $sgpr66, $sgpr67, $sgpr68, $sgpr69, $sgpr70, $sgpr71, $sgpr72, $sgpr73, $sgpr74, $sgpr75, $sgpr76, $sgpr77, $sgpr78, $sgpr79, $sgpr80, $sgpr81, $sgpr82, $sgpr83, $sgpr84, $sgpr85, $sgpr86, $sgpr87, $sgpr88, $sgpr89, $sgpr90, $sgpr91, $sgpr92, $sgpr93, $sgpr94, $sgpr95, $sgpr96, $sgpr97, $sgpr98, $sgpr99, $sgpr100, $sgpr101, $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3 ; CHECK-NEXT: {{ $}} + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x0f, 0x04, 0x30, 0x36, 0xe9, 0x02 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $pc_reg ; CHECK-NEXT: $sgpr33 = S_MOV_B32 0 ; CHECK-NEXT: $sgpr0 = S_ADD_U32 $sgpr0, $noreg, implicit-def $scc, implicit-def $sgpr0_sgpr1_sgpr2_sgpr3 ; CHECK-NEXT: $sgpr1 = S_ADDC_U32 $sgpr1, 0, implicit-def dead $scc, implicit $scc, implicit-def $sgpr0_sgpr1_sgpr2_sgpr3 diff --git a/llvm/test/CodeGen/AMDGPU/llvm.dbg.value.ll b/llvm/test/CodeGen/AMDGPU/llvm.dbg.value.ll --- a/llvm/test/CodeGen/AMDGPU/llvm.dbg.value.ll +++ b/llvm/test/CodeGen/AMDGPU/llvm.dbg.value.ll @@ -21,6 +21,8 @@ ; GCN-LABEL: {{^}}only_undef_dbg_value: ; NOOPT: ;DEBUG_VALUE: test_debug_value:globalptr_arg <- [DW_OP_constu 1, DW_OP_swap, DW_OP_xderef] undef +; NOOPT-NEXT: .cfi_escape 0x0f, 0x04, 0x30, 0x36, 0xe9, 0x02 +; NOOPT-NEXT: .cfi_undefined 16 ; NOOPT-NEXT: s_endpgm ; OPT: s_endpgm diff --git a/llvm/test/CodeGen/AMDGPU/local-stack-alloc-block-sp-reference.ll b/llvm/test/CodeGen/AMDGPU/local-stack-alloc-block-sp-reference.ll --- a/llvm/test/CodeGen/AMDGPU/local-stack-alloc-block-sp-reference.ll +++ b/llvm/test/CodeGen/AMDGPU/local-stack-alloc-block-sp-reference.ll @@ -140,11 +140,12 @@ ; MUBUF-NEXT: buffer_load_dword v7, v2, s[0:3], 0 offen offset:4 glc ; MUBUF-NEXT: s_waitcnt vmcnt(0) ; MUBUF-NEXT: s_add_i32 s32, s32, 0xffe00000 -; MUBUF-NEXT: s_mov_b32 s33, s5 ; MUBUF-NEXT: v_add_co_u32_e32 v2, vcc, v4, v6 ; MUBUF-NEXT: v_addc_co_u32_e32 v3, vcc, v5, v7, vcc ; MUBUF-NEXT: global_store_dwordx2 v[0:1], v[2:3], off ; MUBUF-NEXT: s_waitcnt vmcnt(0) +; MUBUF-NEXT: s_mov_b32 s33, s5 +; MUBUF-NEXT: s_waitcnt vmcnt(0) ; MUBUF-NEXT: s_setpc_b64 s[30:31] ; ; FLATSCR-LABEL: func_local_stack_offset_uses_sp: @@ -178,11 +179,12 @@ ; FLATSCR-NEXT: scratch_load_dwordx2 v[4:5], off, s0 offset:64 glc ; FLATSCR-NEXT: s_waitcnt vmcnt(0) ; FLATSCR-NEXT: s_addk_i32 s32, 0x8000 -; FLATSCR-NEXT: s_mov_b32 s33, s2 ; FLATSCR-NEXT: v_add_co_u32_e32 v2, vcc, v2, v4 ; FLATSCR-NEXT: v_addc_co_u32_e32 v3, vcc, v3, v5, vcc ; FLATSCR-NEXT: global_store_dwordx2 v[0:1], v[2:3], off ; FLATSCR-NEXT: s_waitcnt vmcnt(0) +; FLATSCR-NEXT: s_mov_b32 s33, s2 +; FLATSCR-NEXT: s_waitcnt vmcnt(0) ; FLATSCR-NEXT: s_setpc_b64 s[30:31] entry: %pin.low = alloca i32, align 8192, addrspace(5) diff --git a/llvm/test/CodeGen/AMDGPU/mul24-pass-ordering.ll b/llvm/test/CodeGen/AMDGPU/mul24-pass-ordering.ll --- a/llvm/test/CodeGen/AMDGPU/mul24-pass-ordering.ll +++ b/llvm/test/CodeGen/AMDGPU/mul24-pass-ordering.ll @@ -194,20 +194,20 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 offset:12 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v44, off, s[0:3], s33 offset:16 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[6:7] -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 1 -; GFX9-NEXT: s_addk_i32 s32, 0x800 -; GFX9-NEXT: v_writelane_b32 v40, s34, 2 ; GFX9-NEXT: v_writelane_b32 v44, s4, 0 -; GFX9-NEXT: v_writelane_b32 v40, s36, 3 +; GFX9-NEXT: s_addk_i32 s32, 0x800 +; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:8 ; 4-byte Folded Spill +; GFX9-NEXT: buffer_store_dword v42, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill +; GFX9-NEXT: buffer_store_dword v43, off, s[0:3], s33 ; 4-byte Folded Spill +; GFX9-NEXT: v_writelane_b32 v40, s34, 0 +; GFX9-NEXT: v_writelane_b32 v40, s36, 1 +; GFX9-NEXT: v_writelane_b32 v40, s37, 2 +; GFX9-NEXT: v_writelane_b32 v40, s30, 3 +; GFX9-NEXT: v_writelane_b32 v40, s31, 4 ; GFX9-NEXT: s_getpc_b64 s[4:5] ; GFX9-NEXT: s_add_u32 s4, s4, foo@gotpcrel32@lo+4 ; GFX9-NEXT: s_addc_u32 s5, s5, foo@gotpcrel32@hi+12 -; GFX9-NEXT: v_writelane_b32 v40, s37, 4 ; GFX9-NEXT: s_load_dwordx2 s[36:37], s[4:5], 0x0 -; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:8 ; 4-byte Folded Spill -; GFX9-NEXT: buffer_store_dword v42, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill -; GFX9-NEXT: buffer_store_dword v43, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: v_mov_b32_e32 v41, v1 ; GFX9-NEXT: v_mov_b32_e32 v42, v0 ; GFX9-NEXT: v_mul_u32_u24_e32 v0, v42, v41 @@ -225,11 +225,11 @@ ; GFX9-NEXT: buffer_load_dword v43, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX9-NEXT: buffer_load_dword v42, off, s[0:3], s33 offset:4 ; 4-byte Folded Reload ; GFX9-NEXT: buffer_load_dword v41, off, s[0:3], s33 offset:8 ; 4-byte Folded Reload -; GFX9-NEXT: v_readlane_b32 s37, v40, 4 -; GFX9-NEXT: v_readlane_b32 s36, v40, 3 -; GFX9-NEXT: v_readlane_b32 s34, v40, 2 -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 -; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s30, v40, 3 +; GFX9-NEXT: v_readlane_b32 s31, v40, 4 +; GFX9-NEXT: v_readlane_b32 s37, v40, 2 +; GFX9-NEXT: v_readlane_b32 s36, v40, 1 +; GFX9-NEXT: v_readlane_b32 s34, v40, 0 ; GFX9-NEXT: v_readlane_b32 s4, v44, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[6:7], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 offset:12 ; 4-byte Folded Reload diff --git a/llvm/test/CodeGen/AMDGPU/need-fp-from-vgpr-spills.ll b/llvm/test/CodeGen/AMDGPU/need-fp-from-vgpr-spills.ll --- a/llvm/test/CodeGen/AMDGPU/need-fp-from-vgpr-spills.ll +++ b/llvm/test/CodeGen/AMDGPU/need-fp-from-vgpr-spills.ll @@ -47,8 +47,8 @@ ; CHECK-NEXT: ;;#ASMSTART ; CHECK-NEXT: ; clobber csr v40 ; CHECK-NEXT: ;;#ASMEND -; CHECK-NEXT: v_readlane_b32 s31, v1, 1 ; CHECK-NEXT: v_readlane_b32 s30, v1, 0 +; CHECK-NEXT: v_readlane_b32 s31, v1, 1 ; CHECK-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload ; CHECK-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; CHECK-NEXT: buffer_load_dword v1, off, s[0:3], s33 offset:4 ; 4-byte Folded Reload @@ -168,8 +168,8 @@ ; CHECK-NEXT: s_mov_b64 s[0:1], s[8:9] ; CHECK-NEXT: s_mov_b64 s[2:3], s[10:11] ; CHECK-NEXT: s_swappc_b64 s[30:31], s[4:5] -; CHECK-NEXT: v_readlane_b32 s31, v1, 1 ; CHECK-NEXT: v_readlane_b32 s30, v1, 0 +; CHECK-NEXT: v_readlane_b32 s31, v1, 1 ; CHECK-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; CHECK-NEXT: buffer_load_dword v1, off, s[0:3], s33 ; 4-byte Folded Reload ; CHECK-NEXT: s_mov_b64 exec, s[4:5] @@ -202,8 +202,8 @@ ; CHECK-NEXT: s_mov_b64 s[0:1], s[8:9] ; CHECK-NEXT: s_mov_b64 s[2:3], s[10:11] ; CHECK-NEXT: s_swappc_b64 s[30:31], s[4:5] -; CHECK-NEXT: v_readlane_b32 s31, v2, 1 ; CHECK-NEXT: v_readlane_b32 s30, v2, 0 +; CHECK-NEXT: v_readlane_b32 s31, v2, 1 ; CHECK-NEXT: s_xor_saveexec_b64 s[4:5], -1 ; CHECK-NEXT: buffer_load_dword v2, off, s[0:3], s33 ; 4-byte Folded Reload ; CHECK-NEXT: s_mov_b64 exec, s[4:5] diff --git a/llvm/test/CodeGen/AMDGPU/nested-calls.ll b/llvm/test/CodeGen/AMDGPU/nested-calls.ll --- a/llvm/test/CodeGen/AMDGPU/nested-calls.ll +++ b/llvm/test/CodeGen/AMDGPU/nested-calls.ll @@ -23,8 +23,8 @@ ; GCN: s_swappc_b64 -; GCN: v_readlane_b32 s31, v40, 1 ; GCN: v_readlane_b32 s30, v40, 0 +; GCN: v_readlane_b32 s31, v40, 1 ; GCN-NEXT: v_readlane_b32 [[FP_SCRATCH_COPY:s[0-9]+]], v41, 0 ; GCN: s_or_saveexec_b64 [[COPY_EXEC1:s\[[0-9]+:[0-9]+\]]], -1{{$}} diff --git a/llvm/test/CodeGen/AMDGPU/no-source-locations-in-prologue.ll b/llvm/test/CodeGen/AMDGPU/no-source-locations-in-prologue.ll --- a/llvm/test/CodeGen/AMDGPU/no-source-locations-in-prologue.ll +++ b/llvm/test/CodeGen/AMDGPU/no-source-locations-in-prologue.ll @@ -12,17 +12,198 @@ ; CHECK-NEXT: .cfi_sections .debug_frame ; CHECK-NEXT: .cfi_startproc ; CHECK-NEXT: ; %bb.0: ; %entry +; CHECK-NEXT: .cfi_llvm_def_aspace_cfa 64, 0, 6 +; CHECK-NEXT: .cfi_escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 ; +; CHECK-NEXT: .cfi_undefined 2560 +; CHECK-NEXT: .cfi_undefined 2561 +; CHECK-NEXT: .cfi_undefined 2562 +; CHECK-NEXT: .cfi_undefined 2563 +; CHECK-NEXT: .cfi_undefined 2564 +; CHECK-NEXT: .cfi_undefined 2565 +; CHECK-NEXT: .cfi_undefined 2566 +; CHECK-NEXT: .cfi_undefined 2567 +; CHECK-NEXT: .cfi_undefined 2568 +; CHECK-NEXT: .cfi_undefined 2569 +; CHECK-NEXT: .cfi_undefined 2570 +; CHECK-NEXT: .cfi_undefined 2571 +; CHECK-NEXT: .cfi_undefined 2572 +; CHECK-NEXT: .cfi_undefined 2573 +; CHECK-NEXT: .cfi_undefined 2574 +; CHECK-NEXT: .cfi_undefined 2575 +; CHECK-NEXT: .cfi_undefined 2576 +; CHECK-NEXT: .cfi_undefined 2577 +; CHECK-NEXT: .cfi_undefined 2578 +; CHECK-NEXT: .cfi_undefined 2579 +; CHECK-NEXT: .cfi_undefined 2580 +; CHECK-NEXT: .cfi_undefined 2581 +; CHECK-NEXT: .cfi_undefined 2582 +; CHECK-NEXT: .cfi_undefined 2583 +; CHECK-NEXT: .cfi_undefined 2584 +; CHECK-NEXT: .cfi_undefined 2585 +; CHECK-NEXT: .cfi_undefined 2586 +; CHECK-NEXT: .cfi_undefined 2587 +; CHECK-NEXT: .cfi_undefined 2588 +; CHECK-NEXT: .cfi_undefined 2589 +; CHECK-NEXT: .cfi_undefined 2590 +; CHECK-NEXT: .cfi_undefined 2591 +; CHECK-NEXT: .cfi_undefined 2592 +; CHECK-NEXT: .cfi_undefined 2593 +; CHECK-NEXT: .cfi_undefined 2594 +; CHECK-NEXT: .cfi_undefined 2595 +; CHECK-NEXT: .cfi_undefined 2596 +; CHECK-NEXT: .cfi_undefined 2597 +; CHECK-NEXT: .cfi_undefined 2598 +; CHECK-NEXT: .cfi_undefined 2599 +; CHECK-NEXT: .cfi_undefined 2608 +; CHECK-NEXT: .cfi_undefined 2609 +; CHECK-NEXT: .cfi_undefined 2610 +; CHECK-NEXT: .cfi_undefined 2611 +; CHECK-NEXT: .cfi_undefined 2612 +; CHECK-NEXT: .cfi_undefined 2613 +; CHECK-NEXT: .cfi_undefined 2614 +; CHECK-NEXT: .cfi_undefined 2615 +; CHECK-NEXT: .cfi_undefined 2624 +; CHECK-NEXT: .cfi_undefined 2625 +; CHECK-NEXT: .cfi_undefined 2626 +; CHECK-NEXT: .cfi_undefined 2627 +; CHECK-NEXT: .cfi_undefined 2628 +; CHECK-NEXT: .cfi_undefined 2629 +; CHECK-NEXT: .cfi_undefined 2630 +; CHECK-NEXT: .cfi_undefined 2631 +; CHECK-NEXT: .cfi_undefined 2640 +; CHECK-NEXT: .cfi_undefined 2641 +; CHECK-NEXT: .cfi_undefined 2642 +; CHECK-NEXT: .cfi_undefined 2643 +; CHECK-NEXT: .cfi_undefined 2644 +; CHECK-NEXT: .cfi_undefined 2645 +; CHECK-NEXT: .cfi_undefined 2646 +; CHECK-NEXT: .cfi_undefined 2647 +; CHECK-NEXT: .cfi_undefined 2656 +; CHECK-NEXT: .cfi_undefined 2657 +; CHECK-NEXT: .cfi_undefined 2658 +; CHECK-NEXT: .cfi_undefined 2659 +; CHECK-NEXT: .cfi_undefined 2660 +; CHECK-NEXT: .cfi_undefined 2661 +; CHECK-NEXT: .cfi_undefined 2662 +; CHECK-NEXT: .cfi_undefined 2663 +; CHECK-NEXT: .cfi_undefined 2672 +; CHECK-NEXT: .cfi_undefined 2673 +; CHECK-NEXT: .cfi_undefined 2674 +; CHECK-NEXT: .cfi_undefined 2675 +; CHECK-NEXT: .cfi_undefined 2676 +; CHECK-NEXT: .cfi_undefined 2677 +; CHECK-NEXT: .cfi_undefined 2678 +; CHECK-NEXT: .cfi_undefined 2679 +; CHECK-NEXT: .cfi_undefined 2688 +; CHECK-NEXT: .cfi_undefined 2689 +; CHECK-NEXT: .cfi_undefined 2690 +; CHECK-NEXT: .cfi_undefined 2691 +; CHECK-NEXT: .cfi_undefined 2692 +; CHECK-NEXT: .cfi_undefined 2693 +; CHECK-NEXT: .cfi_undefined 2694 +; CHECK-NEXT: .cfi_undefined 2695 +; CHECK-NEXT: .cfi_undefined 2704 +; CHECK-NEXT: .cfi_undefined 2705 +; CHECK-NEXT: .cfi_undefined 2706 +; CHECK-NEXT: .cfi_undefined 2707 +; CHECK-NEXT: .cfi_undefined 2708 +; CHECK-NEXT: .cfi_undefined 2709 +; CHECK-NEXT: .cfi_undefined 2710 +; CHECK-NEXT: .cfi_undefined 2711 +; CHECK-NEXT: .cfi_undefined 2720 +; CHECK-NEXT: .cfi_undefined 2721 +; CHECK-NEXT: .cfi_undefined 2722 +; CHECK-NEXT: .cfi_undefined 2723 +; CHECK-NEXT: .cfi_undefined 2724 +; CHECK-NEXT: .cfi_undefined 2725 +; CHECK-NEXT: .cfi_undefined 2726 +; CHECK-NEXT: .cfi_undefined 2727 +; CHECK-NEXT: .cfi_undefined 2736 +; CHECK-NEXT: .cfi_undefined 2737 +; CHECK-NEXT: .cfi_undefined 2738 +; CHECK-NEXT: .cfi_undefined 2739 +; CHECK-NEXT: .cfi_undefined 2740 +; CHECK-NEXT: .cfi_undefined 2741 +; CHECK-NEXT: .cfi_undefined 2742 +; CHECK-NEXT: .cfi_undefined 2743 +; CHECK-NEXT: .cfi_undefined 2752 +; CHECK-NEXT: .cfi_undefined 2753 +; CHECK-NEXT: .cfi_undefined 2754 +; CHECK-NEXT: .cfi_undefined 2755 +; CHECK-NEXT: .cfi_undefined 2756 +; CHECK-NEXT: .cfi_undefined 2757 +; CHECK-NEXT: .cfi_undefined 2758 +; CHECK-NEXT: .cfi_undefined 2759 +; CHECK-NEXT: .cfi_undefined 2768 +; CHECK-NEXT: .cfi_undefined 2769 +; CHECK-NEXT: .cfi_undefined 2770 +; CHECK-NEXT: .cfi_undefined 2771 +; CHECK-NEXT: .cfi_undefined 2772 +; CHECK-NEXT: .cfi_undefined 2773 +; CHECK-NEXT: .cfi_undefined 2774 +; CHECK-NEXT: .cfi_undefined 2775 +; CHECK-NEXT: .cfi_undefined 2784 +; CHECK-NEXT: .cfi_undefined 2785 +; CHECK-NEXT: .cfi_undefined 2786 +; CHECK-NEXT: .cfi_undefined 2787 +; CHECK-NEXT: .cfi_undefined 2788 +; CHECK-NEXT: .cfi_undefined 2789 +; CHECK-NEXT: .cfi_undefined 2790 +; CHECK-NEXT: .cfi_undefined 2791 +; CHECK-NEXT: .cfi_undefined 2800 +; CHECK-NEXT: .cfi_undefined 2801 +; CHECK-NEXT: .cfi_undefined 2802 +; CHECK-NEXT: .cfi_undefined 2803 +; CHECK-NEXT: .cfi_undefined 2804 +; CHECK-NEXT: .cfi_undefined 2805 +; CHECK-NEXT: .cfi_undefined 2806 +; CHECK-NEXT: .cfi_undefined 2807 +; CHECK-NEXT: .cfi_undefined 32 +; CHECK-NEXT: .cfi_undefined 33 +; CHECK-NEXT: .cfi_undefined 34 +; CHECK-NEXT: .cfi_undefined 35 +; CHECK-NEXT: .cfi_undefined 36 +; CHECK-NEXT: .cfi_undefined 37 +; CHECK-NEXT: .cfi_undefined 38 +; CHECK-NEXT: .cfi_undefined 39 +; CHECK-NEXT: .cfi_undefined 40 +; CHECK-NEXT: .cfi_undefined 41 +; CHECK-NEXT: .cfi_undefined 42 +; CHECK-NEXT: .cfi_undefined 43 +; CHECK-NEXT: .cfi_undefined 44 +; CHECK-NEXT: .cfi_undefined 45 +; CHECK-NEXT: .cfi_undefined 46 +; CHECK-NEXT: .cfi_undefined 47 +; CHECK-NEXT: .cfi_undefined 48 +; CHECK-NEXT: .cfi_undefined 49 +; CHECK-NEXT: .cfi_undefined 50 +; CHECK-NEXT: .cfi_undefined 51 +; CHECK-NEXT: .cfi_undefined 52 +; CHECK-NEXT: .cfi_undefined 53 +; CHECK-NEXT: .cfi_undefined 54 +; CHECK-NEXT: .cfi_undefined 55 +; CHECK-NEXT: .cfi_undefined 56 +; CHECK-NEXT: .cfi_undefined 57 +; CHECK-NEXT: .cfi_undefined 58 +; CHECK-NEXT: .cfi_undefined 59 +; CHECK-NEXT: .cfi_undefined 60 +; CHECK-NEXT: .cfi_undefined 61 ; CHECK-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) ; CHECK-NEXT: s_mov_b32 s16, s33 ; CHECK-NEXT: s_mov_b32 s33, s32 ; CHECK-NEXT: s_or_saveexec_b64 s[18:19], -1 ; CHECK-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill +; CHECK-NEXT: .cfi_offset 2600, 0 ; CHECK-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill +; CHECK-NEXT: .cfi_offset 2601, 256 ; CHECK-NEXT: s_mov_b64 exec, s[18:19] ; CHECK-NEXT: v_writelane_b32 v41, s16, 0 +; CHECK-NEXT: .cfi_escape 0x10, 0x41, 0x06, 0x90, 0xa9, 0x14, 0xe9, 0x05, 0x00 ; +; CHECK-NEXT: .cfi_def_cfa_register 65 ; CHECK-NEXT: s_add_i32 s32, s32, 0x400 ; CHECK-NEXT: v_writelane_b32 v40, s30, 0 ; CHECK-NEXT: v_writelane_b32 v40, s31, 1 +; CHECK-NEXT: .cfi_escape 0x10, 0x10, 0x0c, 0x90, 0xa8, 0x14, 0x9d, 0x20, 0x00, 0x90, 0xa8, 0x14, 0x9d, 0x20, 0x20 ; ; CHECK-NEXT: .Ltmp0: ; CHECK-NEXT: .loc 0 31 3 prologue_end ; lane-info.cpp:31:3 ; CHECK-NEXT: s_getpc_b64 s[16:17] @@ -37,15 +218,16 @@ ; CHECK-NEXT: s_swappc_b64 s[30:31], s[16:17] ; CHECK-NEXT: .Ltmp1: ; CHECK-NEXT: .loc 0 32 1 ; lane-info.cpp:32:1 -; CHECK-NEXT: v_readlane_b32 s31, v40, 1 ; CHECK-NEXT: v_readlane_b32 s30, v40, 0 +; CHECK-NEXT: v_readlane_b32 s31, v40, 1 ; CHECK-NEXT: v_readlane_b32 s4, v41, 0 ; CHECK-NEXT: s_or_saveexec_b64 s[6:7], -1 ; CHECK-NEXT: buffer_load_dword v40, off, s[0:3], s33 ; 4-byte Folded Reload ; CHECK-NEXT: buffer_load_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Reload ; CHECK-NEXT: s_mov_b64 exec, s[6:7] -; CHECK-NEXT: .loc 0 32 1 epilogue_begin is_stmt 0 ; lane-info.cpp:32:1 +; CHECK-NEXT: .loc 0 32 1 epilogue_begin is_stmt 0 ; lane-info.cpp:32:1 ; CHECK-NEXT: s_add_i32 s32, s32, 0xfffffc00 +; CHECK-NEXT: .cfi_def_cfa_register 64 ; CHECK-NEXT: s_mov_b32 s33, s4 ; CHECK-NEXT: s_waitcnt vmcnt(0) ; CHECK-NEXT: s_setpc_b64 s[30:31] diff --git a/llvm/test/CodeGen/AMDGPU/non-entry-alloca.ll b/llvm/test/CodeGen/AMDGPU/non-entry-alloca.ll --- a/llvm/test/CodeGen/AMDGPU/non-entry-alloca.ll +++ b/llvm/test/CodeGen/AMDGPU/non-entry-alloca.ll @@ -219,8 +219,8 @@ ; MUBUF: ; %bb.0: ; %entry ; MUBUF-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) ; MUBUF-NEXT: s_mov_b32 s7, s33 -; MUBUF-NEXT: v_cmp_eq_u32_e32 vcc, 0, v2 ; MUBUF-NEXT: s_mov_b32 s33, s32 +; MUBUF-NEXT: v_cmp_eq_u32_e32 vcc, 0, v2 ; MUBUF-NEXT: s_addk_i32 s32, 0x400 ; MUBUF-NEXT: s_and_saveexec_b64 s[4:5], vcc ; MUBUF-NEXT: s_cbranch_execz .LBB2_3 @@ -255,8 +255,8 @@ ; FLATSCR: ; %bb.0: ; %entry ; FLATSCR-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) ; FLATSCR-NEXT: s_mov_b32 s3, s33 -; FLATSCR-NEXT: v_cmp_eq_u32_e32 vcc, 0, v2 ; FLATSCR-NEXT: s_mov_b32 s33, s32 +; FLATSCR-NEXT: v_cmp_eq_u32_e32 vcc, 0, v2 ; FLATSCR-NEXT: s_add_i32 s32, s32, 16 ; FLATSCR-NEXT: s_and_saveexec_b64 s[0:1], vcc ; FLATSCR-NEXT: s_cbranch_execz .LBB2_3 @@ -317,8 +317,8 @@ ; MUBUF-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) ; MUBUF-NEXT: s_mov_b32 s7, s33 ; MUBUF-NEXT: s_add_i32 s33, s32, 0xfc0 -; MUBUF-NEXT: v_cmp_eq_u32_e32 vcc, 0, v2 ; MUBUF-NEXT: s_and_b32 s33, s33, 0xfffff000 +; MUBUF-NEXT: v_cmp_eq_u32_e32 vcc, 0, v2 ; MUBUF-NEXT: s_addk_i32 s32, 0x2000 ; MUBUF-NEXT: s_and_saveexec_b64 s[4:5], vcc ; MUBUF-NEXT: s_cbranch_execz .LBB3_2 @@ -351,8 +351,8 @@ ; FLATSCR-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) ; FLATSCR-NEXT: s_mov_b32 s3, s33 ; FLATSCR-NEXT: s_add_i32 s33, s32, 63 -; FLATSCR-NEXT: v_cmp_eq_u32_e32 vcc, 0, v2 ; FLATSCR-NEXT: s_andn2_b32 s33, s33, 63 +; FLATSCR-NEXT: v_cmp_eq_u32_e32 vcc, 0, v2 ; FLATSCR-NEXT: s_addk_i32 s32, 0x80 ; FLATSCR-NEXT: s_and_saveexec_b64 s[0:1], vcc ; FLATSCR-NEXT: s_cbranch_execz .LBB3_2 diff --git a/llvm/test/CodeGen/AMDGPU/partial-regcopy-and-spill-missed-at-regalloc.ll b/llvm/test/CodeGen/AMDGPU/partial-regcopy-and-spill-missed-at-regalloc.ll --- a/llvm/test/CodeGen/AMDGPU/partial-regcopy-and-spill-missed-at-regalloc.ll +++ b/llvm/test/CodeGen/AMDGPU/partial-regcopy-and-spill-missed-at-regalloc.ll @@ -31,6 +31,8 @@ ; PEI-GFX908: bb.0 (%ir-block.0): ; PEI-GFX908-NEXT: liveins: $agpr4, $sgpr4_sgpr5, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr7 ; PEI-GFX908-NEXT: {{ $}} + ; PEI-GFX908-NEXT: frame-setup CFI_INSTRUCTION escape 0x0f, 0x04, 0x30, 0x36, 0xe9, 0x02 + ; PEI-GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $pc_reg ; PEI-GFX908-NEXT: $sgpr8_sgpr9_sgpr10_sgpr11 = COPY killed $sgpr0_sgpr1_sgpr2_sgpr3 ; PEI-GFX908-NEXT: $sgpr8 = S_ADD_U32 $sgpr8, $sgpr7, implicit-def $scc, implicit-def $sgpr8_sgpr9_sgpr10_sgpr11 ; PEI-GFX908-NEXT: $sgpr9 = S_ADDC_U32 $sgpr9, 0, implicit-def dead $scc, implicit $scc, implicit-def $sgpr8_sgpr9_sgpr10_sgpr11 @@ -76,6 +78,8 @@ ; PEI-GFX90A: bb.0 (%ir-block.0): ; PEI-GFX90A-NEXT: liveins: $agpr4, $sgpr4_sgpr5, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr7 ; PEI-GFX90A-NEXT: {{ $}} + ; PEI-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x0f, 0x04, 0x30, 0x36, 0xe9, 0x02 + ; PEI-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $pc_reg ; PEI-GFX90A-NEXT: $sgpr8_sgpr9_sgpr10_sgpr11 = COPY killed $sgpr0_sgpr1_sgpr2_sgpr3 ; PEI-GFX90A-NEXT: $sgpr8 = S_ADD_U32 $sgpr8, $sgpr7, implicit-def $scc, implicit-def $sgpr8_sgpr9_sgpr10_sgpr11 ; PEI-GFX90A-NEXT: $sgpr9 = S_ADDC_U32 $sgpr9, 0, implicit-def dead $scc, implicit $scc, implicit-def $sgpr8_sgpr9_sgpr10_sgpr11 diff --git a/llvm/test/CodeGen/AMDGPU/pei-build-av-spill.mir b/llvm/test/CodeGen/AMDGPU/pei-build-av-spill.mir --- a/llvm/test/CodeGen/AMDGPU/pei-build-av-spill.mir +++ b/llvm/test/CodeGen/AMDGPU/pei-build-av-spill.mir @@ -20,49 +20,77 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_av_v1 - ; MUBUF: $vgpr0 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-NEXT: $vgpr0 = IMPLICIT_DEF ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: $vgpr0 = BUFFER_LOAD_DWORD_OFFSET $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (load (s32) from %stack.0, addrspace 5) ; MUBUF-NEXT: S_ENDPGM 0 ; MUBUF-V2A-LABEL: name: test_spill_av_v1 ; MUBUF-V2A: liveins: $agpr0 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 ; MUBUF-V2A-NEXT: $vgpr0 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec ; MUBUF-V2A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_av_v1 - ; FLATSCR: $vgpr0 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-NEXT: $vgpr0 = IMPLICIT_DEF ; FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr0, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.0, addrspace 5) ; FLATSCR-NEXT: $vgpr0 = SCRATCH_LOAD_DWORD_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (load (s32) from %stack.0, addrspace 5) ; FLATSCR-NEXT: S_ENDPGM 0 ; FLATSCR-V2A-LABEL: name: test_spill_av_v1 ; FLATSCR-V2A: liveins: $agpr0 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 ; FLATSCR-V2A-NEXT: $vgpr0 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec ; FLATSCR-V2A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_av_v1 - ; MUBUF-GFX90A: $vgpr0 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-NEXT: $vgpr0 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: $vgpr0 = BUFFER_LOAD_DWORD_OFFSET $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (load (s32) from %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_av_v1 ; MUBUF-GFX90A-V2A: liveins: $agpr0 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 ; MUBUF-GFX90A-V2A-NEXT: $vgpr0 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec ; MUBUF-GFX90A-V2A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_av_v1 - ; FLATSCR-GFX90A: $vgpr0 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-NEXT: $vgpr0 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr0, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.0, addrspace 5) ; FLATSCR-GFX90A-NEXT: $vgpr0 = SCRATCH_LOAD_DWORD_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (load (s32) from %stack.0, addrspace 5) ; FLATSCR-GFX90A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_av_v1 ; FLATSCR-GFX90A-V2A: liveins: $agpr0 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr0 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec ; FLATSCR-GFX90A-V2A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec @@ -86,7 +114,11 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_av_v2 - ; MUBUF: $vgpr0_vgpr1 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-NEXT: $vgpr0_vgpr1 = IMPLICIT_DEF ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $vgpr0_vgpr1 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec, implicit killed $vgpr0_vgpr1 :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-NEXT: $vgpr0 = BUFFER_LOAD_DWORD_OFFSET $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1 :: (load (s32) from %stack.0, addrspace 5) @@ -95,6 +127,12 @@ ; MUBUF-V2A-LABEL: name: test_spill_av_v2 ; MUBUF-V2A: liveins: $agpr0, $agpr1 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 ; MUBUF-V2A-NEXT: $vgpr0_vgpr1 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $vgpr0_vgpr1 ; MUBUF-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec, implicit killed $vgpr0_vgpr1 @@ -102,13 +140,23 @@ ; MUBUF-V2A-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $vgpr0_vgpr1 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_av_v2 - ; FLATSCR: $vgpr0_vgpr1 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-NEXT: $vgpr0_vgpr1 = IMPLICIT_DEF ; FLATSCR-NEXT: SCRATCH_STORE_DWORDX2_SADDR killed $vgpr0_vgpr1, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s64) into %stack.0, align 4, addrspace 5) ; FLATSCR-NEXT: $vgpr0_vgpr1 = SCRATCH_LOAD_DWORDX2_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (load (s64) from %stack.0, align 4, addrspace 5) ; FLATSCR-NEXT: S_ENDPGM 0 ; FLATSCR-V2A-LABEL: name: test_spill_av_v2 ; FLATSCR-V2A: liveins: $agpr0, $agpr1 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 ; FLATSCR-V2A-NEXT: $vgpr0_vgpr1 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $vgpr0_vgpr1 ; FLATSCR-V2A-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit killed $vgpr0_vgpr1 @@ -116,7 +164,11 @@ ; FLATSCR-V2A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 $agpr1, implicit $exec, implicit $vgpr0_vgpr1 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_av_v2 - ; MUBUF-GFX90A: $vgpr0_vgpr1 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-NEXT: $vgpr0_vgpr1 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $vgpr0_vgpr1 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec, implicit killed $vgpr0_vgpr1 :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: $vgpr0 = BUFFER_LOAD_DWORD_OFFSET $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1 :: (load (s32) from %stack.0, addrspace 5) @@ -125,6 +177,12 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_av_v2 ; MUBUF-GFX90A-V2A: liveins: $agpr0, $agpr1 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 ; MUBUF-GFX90A-V2A-NEXT: $vgpr0_vgpr1 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $vgpr0_vgpr1 ; MUBUF-GFX90A-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec, implicit killed $vgpr0_vgpr1 @@ -132,13 +190,23 @@ ; MUBUF-GFX90A-V2A-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $vgpr0_vgpr1 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_av_v2 - ; FLATSCR-GFX90A: $vgpr0_vgpr1 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-NEXT: $vgpr0_vgpr1 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX2_SADDR killed $vgpr0_vgpr1, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s64) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: $vgpr0_vgpr1 = SCRATCH_LOAD_DWORDX2_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (load (s64) from %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_av_v2 ; FLATSCR-GFX90A-V2A: liveins: $agpr0, $agpr1 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr0_vgpr1 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $vgpr0_vgpr1 ; FLATSCR-GFX90A-V2A-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit killed $vgpr0_vgpr1 @@ -164,7 +232,12 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_av_v3 - ; MUBUF: $vgpr0_vgpr1_vgpr2 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-NEXT: $vgpr0_vgpr1_vgpr2 = IMPLICIT_DEF ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2, implicit $vgpr0_vgpr1_vgpr2 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec, implicit killed $vgpr0_vgpr1_vgpr2 :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -175,6 +248,14 @@ ; MUBUF-V2A-LABEL: name: test_spill_av_v3 ; MUBUF-V2A: liveins: $agpr0, $agpr1, $agpr2 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 ; MUBUF-V2A-NEXT: $vgpr0_vgpr1_vgpr2 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $agpr2 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2, implicit $vgpr0_vgpr1_vgpr2 ; MUBUF-V2A-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec @@ -184,13 +265,26 @@ ; MUBUF-V2A-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $vgpr0_vgpr1_vgpr2 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_av_v3 - ; FLATSCR: $vgpr0_vgpr1_vgpr2 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-NEXT: $vgpr0_vgpr1_vgpr2 = IMPLICIT_DEF ; FLATSCR-NEXT: SCRATCH_STORE_DWORDX3_SADDR killed $vgpr0_vgpr1_vgpr2, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s96) into %stack.0, align 4, addrspace 5) ; FLATSCR-NEXT: $vgpr0_vgpr1_vgpr2 = SCRATCH_LOAD_DWORDX3_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (load (s96) from %stack.0, align 4, addrspace 5) ; FLATSCR-NEXT: S_ENDPGM 0 ; FLATSCR-V2A-LABEL: name: test_spill_av_v3 ; FLATSCR-V2A: liveins: $agpr0, $agpr1, $agpr2 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 ; FLATSCR-V2A-NEXT: $vgpr0_vgpr1_vgpr2 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2, implicit $vgpr0_vgpr1_vgpr2 ; FLATSCR-V2A-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec, implicit $vgpr0_vgpr1_vgpr2 @@ -200,7 +294,12 @@ ; FLATSCR-V2A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 $agpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_av_v3 - ; MUBUF-GFX90A: $vgpr0_vgpr1_vgpr2 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2, implicit $vgpr0_vgpr1_vgpr2 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec, implicit killed $vgpr0_vgpr1_vgpr2 :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -211,6 +310,14 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_av_v3 ; MUBUF-GFX90A-V2A: liveins: $agpr0, $agpr1, $agpr2 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 ; MUBUF-GFX90A-V2A-NEXT: $vgpr0_vgpr1_vgpr2 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $agpr2 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2, implicit $vgpr0_vgpr1_vgpr2 ; MUBUF-GFX90A-V2A-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec @@ -220,13 +327,26 @@ ; MUBUF-GFX90A-V2A-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $vgpr0_vgpr1_vgpr2 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_av_v3 - ; FLATSCR-GFX90A: $vgpr0_vgpr1_vgpr2 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX3_SADDR killed $vgpr0_vgpr1_vgpr2, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s96) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2 = SCRATCH_LOAD_DWORDX3_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (load (s96) from %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_av_v3 ; FLATSCR-GFX90A-V2A: liveins: $agpr0, $agpr1, $agpr2 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr0_vgpr1_vgpr2 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2, implicit $vgpr0_vgpr1_vgpr2 ; FLATSCR-GFX90A-V2A-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec, implicit $vgpr0_vgpr1_vgpr2 @@ -254,7 +374,13 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_av_v4 - ; MUBUF: $vgpr0_vgpr1_vgpr2_vgpr3 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = IMPLICIT_DEF ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $vgpr0_vgpr1_vgpr2_vgpr3 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -267,6 +393,16 @@ ; MUBUF-V2A-LABEL: name: test_spill_av_v4 ; MUBUF-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 ; MUBUF-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $agpr3 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $vgpr0_vgpr1_vgpr2_vgpr3 ; MUBUF-V2A-NEXT: $agpr2 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec @@ -278,13 +414,29 @@ ; MUBUF-V2A-NEXT: $vgpr3 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_av_v4 - ; FLATSCR: $vgpr0_vgpr1_vgpr2_vgpr3 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = IMPLICIT_DEF ; FLATSCR-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr0_vgpr1_vgpr2_vgpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = SCRATCH_LOAD_DWORDX4_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (load (s128) from %stack.0, align 4, addrspace 5) ; FLATSCR-NEXT: S_ENDPGM 0 ; FLATSCR-V2A-LABEL: name: test_spill_av_v4 ; FLATSCR-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 ; FLATSCR-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $vgpr0_vgpr1_vgpr2_vgpr3 ; FLATSCR-V2A-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3 @@ -296,7 +448,13 @@ ; FLATSCR-V2A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 $agpr3, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_av_v4 - ; MUBUF-GFX90A: $vgpr0_vgpr1_vgpr2_vgpr3 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $vgpr0_vgpr1_vgpr2_vgpr3 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -309,6 +467,16 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_av_v4 ; MUBUF-GFX90A-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 ; MUBUF-GFX90A-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $agpr3 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $vgpr0_vgpr1_vgpr2_vgpr3 ; MUBUF-GFX90A-V2A-NEXT: $agpr2 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec @@ -320,13 +488,29 @@ ; MUBUF-GFX90A-V2A-NEXT: $vgpr3 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_av_v4 - ; FLATSCR-GFX90A: $vgpr0_vgpr1_vgpr2_vgpr3 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr0_vgpr1_vgpr2_vgpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = SCRATCH_LOAD_DWORDX4_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (load (s128) from %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_av_v4 ; FLATSCR-GFX90A-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $vgpr0_vgpr1_vgpr2_vgpr3 ; FLATSCR-GFX90A-V2A-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3 @@ -356,7 +540,14 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_av_v5 - ; MUBUF: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 = IMPLICIT_DEF ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -371,6 +562,18 @@ ; MUBUF-V2A-LABEL: name: test_spill_av_v5 ; MUBUF-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 ; MUBUF-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $agpr4 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 ; MUBUF-V2A-NEXT: $agpr3 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec @@ -384,7 +587,14 @@ ; MUBUF-V2A-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_av_v5 - ; FLATSCR: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 = IMPLICIT_DEF ; FLATSCR-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr0_vgpr1_vgpr2_vgpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr4, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr, implicit killed $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 :: (store (s32) into %stack.0 + 16, addrspace 5) ; FLATSCR-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = SCRATCH_LOAD_DWORDX4_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 :: (load (s128) from %stack.0, align 4, addrspace 5) @@ -393,6 +603,18 @@ ; FLATSCR-V2A-LABEL: name: test_spill_av_v5 ; FLATSCR-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 ; FLATSCR-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 ; FLATSCR-V2A-NEXT: $agpr2 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 @@ -406,7 +628,14 @@ ; FLATSCR-V2A-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_av_v5 - ; MUBUF-GFX90A: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -421,6 +650,18 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_av_v5 ; MUBUF-GFX90A-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 ; MUBUF-GFX90A-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $agpr4 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 ; MUBUF-GFX90A-V2A-NEXT: $agpr3 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec @@ -434,7 +675,14 @@ ; MUBUF-GFX90A-V2A-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_av_v5 - ; FLATSCR-GFX90A: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr0_vgpr1_vgpr2_vgpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr4, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr, implicit killed $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 :: (store (s32) into %stack.0 + 16, addrspace 5) ; FLATSCR-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = SCRATCH_LOAD_DWORDX4_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 :: (load (s128) from %stack.0, align 4, addrspace 5) @@ -443,6 +691,18 @@ ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_av_v5 ; FLATSCR-GFX90A-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 ; FLATSCR-GFX90A-V2A-NEXT: $agpr2 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 @@ -474,7 +734,15 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_av_v6 - ; MUBUF: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 = IMPLICIT_DEF ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -491,6 +759,20 @@ ; MUBUF-V2A-LABEL: name: test_spill_av_v6 ; MUBUF-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4, $agpr5 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 ; MUBUF-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $agpr5 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 ; MUBUF-V2A-NEXT: $agpr4 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec @@ -506,7 +788,15 @@ ; MUBUF-V2A-NEXT: $vgpr5 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_av_v6 - ; FLATSCR: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 = IMPLICIT_DEF ; FLATSCR-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr0_vgpr1_vgpr2_vgpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-NEXT: SCRATCH_STORE_DWORDX2_SADDR killed $vgpr4_vgpr5, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr, implicit killed $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 :: (store (s64) into %stack.0 + 16, align 4, addrspace 5) ; FLATSCR-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = SCRATCH_LOAD_DWORDX4_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 :: (load (s128) from %stack.0, align 4, addrspace 5) @@ -515,6 +805,20 @@ ; FLATSCR-V2A-LABEL: name: test_spill_av_v6 ; FLATSCR-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4, $agpr5 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 ; FLATSCR-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $agpr2 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 ; FLATSCR-V2A-NEXT: $agpr3 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 @@ -530,7 +834,15 @@ ; FLATSCR-V2A-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 $agpr1, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_av_v6 - ; MUBUF-GFX90A: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -547,6 +859,20 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_av_v6 ; MUBUF-GFX90A-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4, $agpr5 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 ; MUBUF-GFX90A-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $agpr5 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 ; MUBUF-GFX90A-V2A-NEXT: $agpr4 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec @@ -562,7 +888,15 @@ ; MUBUF-GFX90A-V2A-NEXT: $vgpr5 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_av_v6 - ; FLATSCR-GFX90A: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr0_vgpr1_vgpr2_vgpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX2_SADDR killed $vgpr4_vgpr5, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr, implicit killed $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 :: (store (s64) into %stack.0 + 16, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = SCRATCH_LOAD_DWORDX4_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 :: (load (s128) from %stack.0, align 4, addrspace 5) @@ -571,6 +905,20 @@ ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_av_v6 ; FLATSCR-GFX90A-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4, $agpr5 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $agpr2 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 ; FLATSCR-GFX90A-V2A-NEXT: $agpr3 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 @@ -604,7 +952,16 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_av_v7 - ; MUBUF: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6 = IMPLICIT_DEF ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -623,6 +980,22 @@ ; MUBUF-V2A-LABEL: name: test_spill_av_v7 ; MUBUF-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4, $agpr5, $agpr6 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 ; MUBUF-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $agpr6 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6 ; MUBUF-V2A-NEXT: $agpr5 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec @@ -640,7 +1013,16 @@ ; MUBUF-V2A-NEXT: $vgpr6 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_av_v7 - ; FLATSCR: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6 = IMPLICIT_DEF ; FLATSCR-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr0_vgpr1_vgpr2_vgpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-NEXT: SCRATCH_STORE_DWORDX3_SADDR killed $vgpr4_vgpr5_vgpr6, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr, implicit killed $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6 :: (store (s96) into %stack.0 + 16, align 4, addrspace 5) ; FLATSCR-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = SCRATCH_LOAD_DWORDX4_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6 :: (load (s128) from %stack.0, align 4, addrspace 5) @@ -649,6 +1031,22 @@ ; FLATSCR-V2A-LABEL: name: test_spill_av_v7 ; FLATSCR-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4, $agpr5, $agpr6 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 ; FLATSCR-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $agpr3 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6 ; FLATSCR-V2A-NEXT: $agpr4 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6 @@ -666,7 +1064,16 @@ ; FLATSCR-V2A-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 $agpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_av_v7 - ; MUBUF-GFX90A: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -685,6 +1092,22 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_av_v7 ; MUBUF-GFX90A-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4, $agpr5, $agpr6 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 ; MUBUF-GFX90A-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $agpr6 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6 ; MUBUF-GFX90A-V2A-NEXT: $agpr5 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec @@ -702,7 +1125,16 @@ ; MUBUF-GFX90A-V2A-NEXT: $vgpr6 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_av_v7 - ; FLATSCR-GFX90A: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr0_vgpr1_vgpr2_vgpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX3_SADDR killed $vgpr4_vgpr5_vgpr6, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr, implicit killed $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6 :: (store (s96) into %stack.0 + 16, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = SCRATCH_LOAD_DWORDX4_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6 :: (load (s128) from %stack.0, align 4, addrspace 5) @@ -711,6 +1143,22 @@ ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_av_v7 ; FLATSCR-GFX90A-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4, $agpr5, $agpr6 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $agpr3 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6 ; FLATSCR-GFX90A-V2A-NEXT: $agpr4 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6 @@ -746,7 +1194,17 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_av_v8 - ; MUBUF: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = IMPLICIT_DEF ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -767,6 +1225,24 @@ ; MUBUF-V2A-LABEL: name: test_spill_av_v8 ; MUBUF-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4, $agpr5, $agpr6, $agpr7 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 ; MUBUF-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $agpr7 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 ; MUBUF-V2A-NEXT: $agpr6 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec @@ -786,7 +1262,17 @@ ; MUBUF-V2A-NEXT: $vgpr7 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_av_v8 - ; FLATSCR: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = IMPLICIT_DEF ; FLATSCR-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr0_vgpr1_vgpr2_vgpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr4_vgpr5_vgpr6_vgpr7, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr, implicit killed $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 :: (store (s128) into %stack.0 + 16, align 4, addrspace 5) ; FLATSCR-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = SCRATCH_LOAD_DWORDX4_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 :: (load (s128) from %stack.0, align 4, addrspace 5) @@ -795,6 +1281,24 @@ ; FLATSCR-V2A-LABEL: name: test_spill_av_v8 ; FLATSCR-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4, $agpr5, $agpr6, $agpr7 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 ; FLATSCR-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $agpr4 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 ; FLATSCR-V2A-NEXT: $agpr5 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 @@ -814,7 +1318,17 @@ ; FLATSCR-V2A-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 $agpr3, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_av_v8 - ; MUBUF-GFX90A: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -835,6 +1349,24 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_av_v8 ; MUBUF-GFX90A-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4, $agpr5, $agpr6, $agpr7 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 ; MUBUF-GFX90A-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $agpr7 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 ; MUBUF-GFX90A-V2A-NEXT: $agpr6 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec @@ -854,7 +1386,17 @@ ; MUBUF-GFX90A-V2A-NEXT: $vgpr7 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_av_v8 - ; FLATSCR-GFX90A: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr0_vgpr1_vgpr2_vgpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr4_vgpr5_vgpr6_vgpr7, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr, implicit killed $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 :: (store (s128) into %stack.0 + 16, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = SCRATCH_LOAD_DWORDX4_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 :: (load (s128) from %stack.0, align 4, addrspace 5) @@ -863,6 +1405,24 @@ ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_av_v8 ; FLATSCR-GFX90A-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4, $agpr5, $agpr6, $agpr7 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $agpr4 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 ; FLATSCR-GFX90A-V2A-NEXT: $agpr5 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 @@ -900,7 +1460,25 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_av_v16 - ; MUBUF: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; MUBUF-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 = IMPLICIT_DEF ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -937,6 +1515,40 @@ ; MUBUF-V2A-LABEL: name: test_spill_av_v16 ; MUBUF-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4, $agpr5, $agpr6, $agpr7, $agpr8, $agpr9, $agpr10, $agpr11, $agpr12, $agpr13, $agpr14, $agpr15 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 ; MUBUF-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $agpr15 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 ; MUBUF-V2A-NEXT: $agpr14 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec @@ -972,7 +1584,25 @@ ; MUBUF-V2A-NEXT: $vgpr15 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_av_v16 - ; FLATSCR: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; FLATSCR-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 = IMPLICIT_DEF ; FLATSCR-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr0_vgpr1_vgpr2_vgpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr4_vgpr5_vgpr6_vgpr7, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr :: (store (s128) into %stack.0 + 16, align 4, addrspace 5) ; FLATSCR-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr8_vgpr9_vgpr10_vgpr11, $sgpr32, 32, 0, implicit $exec, implicit $flat_scr :: (store (s128) into %stack.0 + 32, align 4, addrspace 5) @@ -985,6 +1615,40 @@ ; FLATSCR-V2A-LABEL: name: test_spill_av_v16 ; FLATSCR-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4, $agpr5, $agpr6, $agpr7, $agpr8, $agpr9, $agpr10, $agpr11, $agpr12, $agpr13, $agpr14, $agpr15 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 ; FLATSCR-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $agpr12 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 ; FLATSCR-V2A-NEXT: $agpr13 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 @@ -1020,7 +1684,25 @@ ; FLATSCR-V2A-NEXT: $vgpr12 = V_ACCVGPR_READ_B32_e64 $agpr3, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_av_v16 - ; MUBUF-GFX90A: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; MUBUF-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -1057,6 +1739,40 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_av_v16 ; MUBUF-GFX90A-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4, $agpr5, $agpr6, $agpr7, $agpr8, $agpr9, $agpr10, $agpr11, $agpr12, $agpr13, $agpr14, $agpr15 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 ; MUBUF-GFX90A-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $agpr15 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 ; MUBUF-GFX90A-V2A-NEXT: $agpr14 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec @@ -1092,7 +1808,25 @@ ; MUBUF-GFX90A-V2A-NEXT: $vgpr15 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_av_v16 - ; FLATSCR-GFX90A: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; FLATSCR-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr0_vgpr1_vgpr2_vgpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr4_vgpr5_vgpr6_vgpr7, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr :: (store (s128) into %stack.0 + 16, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr8_vgpr9_vgpr10_vgpr11, $sgpr32, 32, 0, implicit $exec, implicit $flat_scr :: (store (s128) into %stack.0 + 32, align 4, addrspace 5) @@ -1105,6 +1839,40 @@ ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_av_v16 ; FLATSCR-GFX90A-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4, $agpr5, $agpr6, $agpr7, $agpr8, $agpr9, $agpr10, $agpr11, $agpr12, $agpr13, $agpr14, $agpr15 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $agpr12 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 ; FLATSCR-GFX90A-V2A-NEXT: $agpr13 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 @@ -1158,7 +1926,41 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_av_v32 - ; MUBUF: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; MUBUF-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 = IMPLICIT_DEF ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -1227,6 +2029,72 @@ ; MUBUF-V2A-LABEL: name: test_spill_av_v32 ; MUBUF-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4, $agpr5, $agpr6, $agpr7, $agpr8, $agpr9, $agpr10, $agpr11, $agpr12, $agpr13, $agpr14, $agpr15, $agpr16, $agpr17, $agpr18, $agpr19, $agpr20, $agpr21, $agpr22, $agpr23, $agpr24, $agpr25, $agpr26, $agpr27, $agpr28, $agpr29, $agpr30, $agpr31 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 ; MUBUF-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $agpr31 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 ; MUBUF-V2A-NEXT: $agpr30 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec @@ -1294,7 +2162,41 @@ ; MUBUF-V2A-NEXT: $vgpr31 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_av_v32 - ; FLATSCR: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; FLATSCR-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 = IMPLICIT_DEF ; FLATSCR-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr0_vgpr1_vgpr2_vgpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr4_vgpr5_vgpr6_vgpr7, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr :: (store (s128) into %stack.0 + 16, align 4, addrspace 5) ; FLATSCR-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr8_vgpr9_vgpr10_vgpr11, $sgpr32, 32, 0, implicit $exec, implicit $flat_scr :: (store (s128) into %stack.0 + 32, align 4, addrspace 5) @@ -1315,6 +2217,72 @@ ; FLATSCR-V2A-LABEL: name: test_spill_av_v32 ; FLATSCR-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4, $agpr5, $agpr6, $agpr7, $agpr8, $agpr9, $agpr10, $agpr11, $agpr12, $agpr13, $agpr14, $agpr15, $agpr16, $agpr17, $agpr18, $agpr19, $agpr20, $agpr21, $agpr22, $agpr23, $agpr24, $agpr25, $agpr26, $agpr27, $agpr28, $agpr29, $agpr30, $agpr31 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 ; FLATSCR-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $agpr28 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 ; FLATSCR-V2A-NEXT: $agpr29 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 @@ -1382,7 +2350,41 @@ ; FLATSCR-V2A-NEXT: $vgpr28 = V_ACCVGPR_READ_B32_e64 $agpr3, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_av_v32 - ; MUBUF-GFX90A: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; MUBUF-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -1451,6 +2453,72 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_av_v32 ; MUBUF-GFX90A-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4, $agpr5, $agpr6, $agpr7, $agpr8, $agpr9, $agpr10, $agpr11, $agpr12, $agpr13, $agpr14, $agpr15, $agpr16, $agpr17, $agpr18, $agpr19, $agpr20, $agpr21, $agpr22, $agpr23, $agpr24, $agpr25, $agpr26, $agpr27, $agpr28, $agpr29, $agpr30, $agpr31 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 ; MUBUF-GFX90A-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $agpr31 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 ; MUBUF-GFX90A-V2A-NEXT: $agpr30 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec @@ -1518,7 +2586,41 @@ ; MUBUF-GFX90A-V2A-NEXT: $vgpr31 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_av_v32 - ; FLATSCR-GFX90A: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; FLATSCR-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr0_vgpr1_vgpr2_vgpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr4_vgpr5_vgpr6_vgpr7, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr :: (store (s128) into %stack.0 + 16, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr8_vgpr9_vgpr10_vgpr11, $sgpr32, 32, 0, implicit $exec, implicit $flat_scr :: (store (s128) into %stack.0 + 32, align 4, addrspace 5) @@ -1539,6 +2641,72 @@ ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_av_v32 ; FLATSCR-GFX90A-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4, $agpr5, $agpr6, $agpr7, $agpr8, $agpr9, $agpr10, $agpr11, $agpr12, $agpr13, $agpr14, $agpr15, $agpr16, $agpr17, $agpr18, $agpr19, $agpr20, $agpr21, $agpr22, $agpr23, $agpr24, $agpr25, $agpr26, $agpr27, $agpr28, $agpr29, $agpr30, $agpr31 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $agpr28 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 ; FLATSCR-GFX90A-V2A-NEXT: $agpr29 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 @@ -1624,7 +2792,10 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_av_a1 - ; MUBUF: $agpr0 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-NEXT: $agpr0 = IMPLICIT_DEF ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: $vgpr0 = BUFFER_LOAD_DWORD_OFFSET $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (load (s32) from %stack.0, addrspace 5) @@ -1633,12 +2804,19 @@ ; MUBUF-V2A-LABEL: name: test_spill_av_a1 ; MUBUF-V2A: liveins: $vgpr0 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 ; MUBUF-V2A-NEXT: $agpr0 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec ; MUBUF-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_av_a1 - ; FLATSCR: $agpr0 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-NEXT: $agpr0 = IMPLICIT_DEF ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec ; FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr0, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.0, addrspace 5) ; FLATSCR-NEXT: $vgpr0 = SCRATCH_LOAD_DWORD_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (load (s32) from %stack.0, addrspace 5) @@ -1647,30 +2825,48 @@ ; FLATSCR-V2A-LABEL: name: test_spill_av_a1 ; FLATSCR-V2A: liveins: $vgpr0 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 ; FLATSCR-V2A-NEXT: $agpr0 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec ; FLATSCR-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_av_a1 - ; MUBUF-GFX90A: $agpr0 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-NEXT: $agpr0 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: $agpr0 = BUFFER_LOAD_DWORD_OFFSET $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (load (s32) from %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_av_a1 ; MUBUF-GFX90A-V2A: liveins: $vgpr0 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 ; MUBUF-GFX90A-V2A-NEXT: $agpr0 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec ; MUBUF-GFX90A-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_av_a1 - ; FLATSCR-GFX90A: $agpr0 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-NEXT: $agpr0 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr0, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.0, addrspace 5) ; FLATSCR-GFX90A-NEXT: $agpr0 = SCRATCH_LOAD_DWORD_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (load (s32) from %stack.0, addrspace 5) ; FLATSCR-GFX90A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_av_a1 ; FLATSCR-GFX90A-V2A: liveins: $vgpr0 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $agpr0 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec ; FLATSCR-GFX90A-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec @@ -1694,7 +2890,11 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_av_a2 - ; MUBUF: $agpr0_agpr1 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-NEXT: $agpr0_agpr1 = IMPLICIT_DEF ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1 ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit $agpr0_agpr1 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1707,6 +2907,12 @@ ; MUBUF-V2A-LABEL: name: test_spill_av_a2 ; MUBUF-V2A: liveins: $vgpr0, $vgpr1 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 ; MUBUF-V2A-NEXT: $agpr0_agpr1 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1, implicit $agpr0_agpr1 ; MUBUF-V2A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec, implicit killed $agpr0_agpr1 @@ -1714,7 +2920,11 @@ ; MUBUF-V2A-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_av_a2 - ; FLATSCR: $agpr0_agpr1 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-NEXT: $agpr0_agpr1 = IMPLICIT_DEF ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1 ; FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr0, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit $agpr0_agpr1 :: (store (s32) into %stack.0, addrspace 5) ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1727,6 +2937,12 @@ ; FLATSCR-V2A-LABEL: name: test_spill_av_a2 ; FLATSCR-V2A: liveins: $vgpr0, $vgpr1 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 ; FLATSCR-V2A-NEXT: $agpr0_agpr1 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1, implicit $agpr0_agpr1 ; FLATSCR-V2A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec, implicit killed $agpr0_agpr1 @@ -1734,7 +2950,11 @@ ; FLATSCR-V2A-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_av_a2 - ; MUBUF-GFX90A: $agpr0_agpr1 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-NEXT: $agpr0_agpr1 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $agpr0_agpr1, implicit $agpr0_agpr1 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec, implicit killed $agpr0_agpr1 :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: $agpr0 = BUFFER_LOAD_DWORD_OFFSET $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $agpr0_agpr1 :: (load (s32) from %stack.0, addrspace 5) @@ -1743,6 +2963,12 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_av_a2 ; MUBUF-GFX90A-V2A: liveins: $vgpr0, $vgpr1 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 ; MUBUF-GFX90A-V2A-NEXT: $agpr0_agpr1 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1, implicit $agpr0_agpr1 ; MUBUF-GFX90A-V2A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec, implicit killed $agpr0_agpr1 @@ -1750,13 +2976,23 @@ ; MUBUF-GFX90A-V2A-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_av_a2 - ; FLATSCR-GFX90A: $agpr0_agpr1 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-NEXT: $agpr0_agpr1 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX2_SADDR killed $agpr0_agpr1, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s64) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: $agpr0_agpr1 = SCRATCH_LOAD_DWORDX2_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (load (s64) from %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_av_a2 ; FLATSCR-GFX90A-V2A: liveins: $vgpr0, $vgpr1 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $agpr0_agpr1 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec, implicit-def $agpr0_agpr1, implicit $agpr0_agpr1 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit killed $agpr0_agpr1 @@ -1782,7 +3018,12 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_av_a3 - ; MUBUF: $agpr0_agpr1_agpr2 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-NEXT: $agpr0_agpr1_agpr2 = IMPLICIT_DEF ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2 ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit $agpr0_agpr1_agpr2 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1799,6 +3040,14 @@ ; MUBUF-V2A-LABEL: name: test_spill_av_a3 ; MUBUF-V2A: liveins: $vgpr0, $vgpr1, $vgpr2 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 ; MUBUF-V2A-NEXT: $agpr0_agpr1_agpr2 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2, implicit $agpr0_agpr1_agpr2 ; MUBUF-V2A-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1808,7 +3057,12 @@ ; MUBUF-V2A-NEXT: $agpr2 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_av_a3 - ; FLATSCR: $agpr0_agpr1_agpr2 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-NEXT: $agpr0_agpr1_agpr2 = IMPLICIT_DEF ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2 ; FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr0, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit $agpr0_agpr1_agpr2 :: (store (s32) into %stack.0, addrspace 5) ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1825,6 +3079,14 @@ ; FLATSCR-V2A-LABEL: name: test_spill_av_a3 ; FLATSCR-V2A: liveins: $vgpr0, $vgpr1, $vgpr2 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 ; FLATSCR-V2A-NEXT: $agpr0_agpr1_agpr2 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2, implicit $agpr0_agpr1_agpr2 ; FLATSCR-V2A-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1834,7 +3096,12 @@ ; FLATSCR-V2A-NEXT: $agpr2 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_av_a3 - ; MUBUF-GFX90A: $agpr0_agpr1_agpr2 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-NEXT: $agpr0_agpr1_agpr2 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $agpr0_agpr1_agpr2, implicit $agpr0_agpr1_agpr2 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec, implicit killed $agpr0_agpr1_agpr2 :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -1845,6 +3112,14 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_av_a3 ; MUBUF-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 ; MUBUF-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2, implicit $agpr0_agpr1_agpr2 ; MUBUF-GFX90A-V2A-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1854,13 +3129,26 @@ ; MUBUF-GFX90A-V2A-NEXT: $agpr2 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_av_a3 - ; FLATSCR-GFX90A: $agpr0_agpr1_agpr2 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-NEXT: $agpr0_agpr1_agpr2 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX3_SADDR killed $agpr0_agpr1_agpr2, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s96) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: $agpr0_agpr1_agpr2 = SCRATCH_LOAD_DWORDX3_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (load (s96) from %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_av_a3 ; FLATSCR-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr2, implicit $exec, implicit-def $agpr0_agpr1_agpr2, implicit $agpr0_agpr1_agpr2 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec, implicit $agpr0_agpr1_agpr2 @@ -1888,7 +3176,13 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_av_a4 - ; MUBUF: $agpr0_agpr1_agpr2_agpr3 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-NEXT: $agpr0_agpr1_agpr2_agpr3 = IMPLICIT_DEF ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3 ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1909,6 +3203,16 @@ ; MUBUF-V2A-LABEL: name: test_spill_av_a4 ; MUBUF-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 ; MUBUF-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $vgpr3 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3, implicit $agpr0_agpr1_agpr2_agpr3 ; MUBUF-V2A-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1920,7 +3224,13 @@ ; MUBUF-V2A-NEXT: $agpr3 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_av_a4 - ; FLATSCR: $agpr0_agpr1_agpr2_agpr3 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-NEXT: $agpr0_agpr1_agpr2_agpr3 = IMPLICIT_DEF ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3 ; FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr0, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit $agpr0_agpr1_agpr2_agpr3 :: (store (s32) into %stack.0, addrspace 5) ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1941,6 +3251,16 @@ ; FLATSCR-V2A-LABEL: name: test_spill_av_a4 ; FLATSCR-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 ; FLATSCR-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $vgpr3 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3, implicit $agpr0_agpr1_agpr2_agpr3 ; FLATSCR-V2A-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1952,7 +3272,13 @@ ; FLATSCR-V2A-NEXT: $agpr3 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_av_a4 - ; MUBUF-GFX90A: $agpr0_agpr1_agpr2_agpr3 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3, implicit $agpr0_agpr1_agpr2_agpr3 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -1965,6 +3291,16 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_av_a4 ; MUBUF-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 ; MUBUF-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $vgpr3 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3, implicit $agpr0_agpr1_agpr2_agpr3 ; MUBUF-GFX90A-V2A-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1976,13 +3312,29 @@ ; MUBUF-GFX90A-V2A-NEXT: $agpr3 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_av_a4 - ; FLATSCR-GFX90A: $agpr0_agpr1_agpr2_agpr3 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $agpr0_agpr1_agpr2_agpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3 = SCRATCH_LOAD_DWORDX4_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (load (s128) from %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_av_a4 ; FLATSCR-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr3, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3, implicit $agpr0_agpr1_agpr2_agpr3 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr2, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3 @@ -2012,7 +3364,14 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_av_a5 - ; MUBUF: $agpr0_agpr1_agpr2_agpr3_agpr4 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4 = IMPLICIT_DEF ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4 ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2037,6 +3396,18 @@ ; MUBUF-V2A-LABEL: name: test_spill_av_a5 ; MUBUF-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 ; MUBUF-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4, implicit $agpr0_agpr1_agpr2_agpr3_agpr4 ; MUBUF-V2A-NEXT: $vgpr3 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2050,7 +3421,14 @@ ; MUBUF-V2A-NEXT: $agpr4 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_av_a5 - ; FLATSCR: $agpr0_agpr1_agpr2_agpr3_agpr4 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4 = IMPLICIT_DEF ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4 ; FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr0, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit $agpr0_agpr1_agpr2_agpr3_agpr4 :: (store (s32) into %stack.0, addrspace 5) ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2075,6 +3453,18 @@ ; FLATSCR-V2A-LABEL: name: test_spill_av_a5 ; FLATSCR-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 ; FLATSCR-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4, implicit $agpr0_agpr1_agpr2_agpr3_agpr4 ; FLATSCR-V2A-NEXT: $vgpr3 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2088,7 +3478,14 @@ ; FLATSCR-V2A-NEXT: $agpr4 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_av_a5 - ; MUBUF-GFX90A: $agpr0_agpr1_agpr2_agpr3_agpr4 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4, implicit $agpr0_agpr1_agpr2_agpr3_agpr4 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -2103,6 +3500,18 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_av_a5 ; MUBUF-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 ; MUBUF-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4, implicit $agpr0_agpr1_agpr2_agpr3_agpr4 ; MUBUF-GFX90A-V2A-NEXT: $vgpr3 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2116,7 +3525,14 @@ ; MUBUF-GFX90A-V2A-NEXT: $agpr4 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_av_a5 - ; FLATSCR-GFX90A: $agpr0_agpr1_agpr2_agpr3_agpr4 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $agpr0_agpr1_agpr2_agpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4, implicit $agpr0_agpr1_agpr2_agpr3_agpr4 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr4, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr, implicit killed $agpr0_agpr1_agpr2_agpr3_agpr4 :: (store (s32) into %stack.0 + 16, addrspace 5) ; FLATSCR-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3 = SCRATCH_LOAD_DWORDX4_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4 :: (load (s128) from %stack.0, align 4, addrspace 5) @@ -2125,6 +3541,18 @@ ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_av_a5 ; FLATSCR-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr3, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4, implicit $agpr0_agpr1_agpr2_agpr3_agpr4 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 killed $agpr2, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4 @@ -2156,7 +3584,15 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_av_a6 - ; MUBUF: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 = IMPLICIT_DEF ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2185,6 +3621,20 @@ ; MUBUF-V2A-LABEL: name: test_spill_av_a6 ; MUBUF-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 ; MUBUF-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $vgpr5 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 ; MUBUF-V2A-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2200,7 +3650,15 @@ ; MUBUF-V2A-NEXT: $agpr5 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_av_a6 - ; FLATSCR: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 = IMPLICIT_DEF ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 ; FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr0, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 :: (store (s32) into %stack.0, addrspace 5) ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2229,6 +3687,20 @@ ; FLATSCR-V2A-LABEL: name: test_spill_av_a6 ; FLATSCR-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 ; FLATSCR-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $vgpr5 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 ; FLATSCR-V2A-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2244,7 +3716,15 @@ ; FLATSCR-V2A-NEXT: $agpr5 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_av_a6 - ; MUBUF-GFX90A: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -2261,6 +3741,20 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_av_a6 ; MUBUF-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 ; MUBUF-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $vgpr5 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 ; MUBUF-GFX90A-V2A-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2276,7 +3770,15 @@ ; MUBUF-GFX90A-V2A-NEXT: $agpr5 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_av_a6 - ; FLATSCR-GFX90A: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $agpr0_agpr1_agpr2_agpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX2_SADDR killed $agpr4_agpr5, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr, implicit killed $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 :: (store (s64) into %stack.0 + 16, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3 = SCRATCH_LOAD_DWORDX4_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 :: (load (s128) from %stack.0, align 4, addrspace 5) @@ -2285,6 +3787,20 @@ ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_av_a6 ; FLATSCR-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 killed $agpr3, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr3 = V_ACCVGPR_READ_B32_e64 killed $agpr2, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 @@ -2318,7 +3834,16 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_av_a7 - ; MUBUF: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6 = IMPLICIT_DEF ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6 ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2351,6 +3876,22 @@ ; MUBUF-V2A-LABEL: name: test_spill_av_a7 ; MUBUF-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 ; MUBUF-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $vgpr6 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6 ; MUBUF-V2A-NEXT: $vgpr5 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2368,7 +3909,16 @@ ; MUBUF-V2A-NEXT: $agpr6 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_av_a7 - ; FLATSCR: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6 = IMPLICIT_DEF ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6 ; FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr0, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6 :: (store (s32) into %stack.0, addrspace 5) ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2401,6 +3951,22 @@ ; FLATSCR-V2A-LABEL: name: test_spill_av_a7 ; FLATSCR-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 ; FLATSCR-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $vgpr6 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6 ; FLATSCR-V2A-NEXT: $vgpr5 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2418,7 +3984,16 @@ ; FLATSCR-V2A-NEXT: $agpr6 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_av_a7 - ; MUBUF-GFX90A: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -2437,6 +4012,22 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_av_a7 ; MUBUF-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 ; MUBUF-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $vgpr6 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6 ; MUBUF-GFX90A-V2A-NEXT: $vgpr5 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2454,7 +4045,16 @@ ; MUBUF-GFX90A-V2A-NEXT: $agpr6 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_av_a7 - ; FLATSCR-GFX90A: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $agpr0_agpr1_agpr2_agpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX3_SADDR killed $agpr4_agpr5_agpr6, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr, implicit killed $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6 :: (store (s96) into %stack.0 + 16, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3 = SCRATCH_LOAD_DWORDX4_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6 :: (load (s128) from %stack.0, align 4, addrspace 5) @@ -2463,6 +4063,22 @@ ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_av_a7 ; FLATSCR-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $vgpr3 = V_ACCVGPR_READ_B32_e64 killed $agpr3, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 killed $agpr2, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6 @@ -2498,7 +4114,17 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_av_a8 - ; MUBUF: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 = IMPLICIT_DEF ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2535,6 +4161,24 @@ ; MUBUF-V2A-LABEL: name: test_spill_av_a8 ; MUBUF-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 ; MUBUF-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $vgpr7 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 ; MUBUF-V2A-NEXT: $vgpr6 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2554,7 +4198,17 @@ ; MUBUF-V2A-NEXT: $agpr7 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_av_a8 - ; FLATSCR: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 = IMPLICIT_DEF ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 ; FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr0, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 :: (store (s32) into %stack.0, addrspace 5) ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2591,6 +4245,24 @@ ; FLATSCR-V2A-LABEL: name: test_spill_av_a8 ; FLATSCR-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 ; FLATSCR-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $vgpr7 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 ; FLATSCR-V2A-NEXT: $vgpr6 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2610,7 +4282,17 @@ ; FLATSCR-V2A-NEXT: $agpr7 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_av_a8 - ; MUBUF-GFX90A: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -2631,6 +4313,24 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_av_a8 ; MUBUF-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 ; MUBUF-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $vgpr7 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 ; MUBUF-GFX90A-V2A-NEXT: $vgpr6 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2650,7 +4350,17 @@ ; MUBUF-GFX90A-V2A-NEXT: $agpr7 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_av_a8 - ; FLATSCR-GFX90A: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $agpr0_agpr1_agpr2_agpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $agpr4_agpr5_agpr6_agpr7, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr, implicit killed $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 :: (store (s128) into %stack.0 + 16, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3 = SCRATCH_LOAD_DWORDX4_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 :: (load (s128) from %stack.0, align 4, addrspace 5) @@ -2659,6 +4369,24 @@ ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_av_a8 ; FLATSCR-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 killed $agpr3, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr5 = V_ACCVGPR_READ_B32_e64 killed $agpr2, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 @@ -2696,7 +4424,18 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_av_a9 - ; MUBUF: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8 = IMPLICIT_DEF ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8 ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2737,6 +4476,26 @@ ; MUBUF-V2A-LABEL: name: test_spill_av_a9 ; MUBUF-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 ; MUBUF-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $vgpr8 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8 ; MUBUF-V2A-NEXT: $vgpr7 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2758,7 +4517,18 @@ ; MUBUF-V2A-NEXT: $agpr8 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_av_a9 - ; FLATSCR: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8 = IMPLICIT_DEF ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8 ; FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr0, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8 :: (store (s32) into %stack.0, addrspace 5) ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2799,6 +4569,26 @@ ; FLATSCR-V2A-LABEL: name: test_spill_av_a9 ; FLATSCR-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 ; FLATSCR-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $vgpr8 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8 ; FLATSCR-V2A-NEXT: $vgpr7 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2820,7 +4610,18 @@ ; FLATSCR-V2A-NEXT: $agpr8 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_av_a9 - ; MUBUF-GFX90A: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -2843,6 +4644,26 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_av_a9 ; MUBUF-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 ; MUBUF-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $vgpr8 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8 ; MUBUF-GFX90A-V2A-NEXT: $vgpr7 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2864,7 +4685,18 @@ ; MUBUF-GFX90A-V2A-NEXT: $agpr8 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_av_a9 - ; FLATSCR-GFX90A: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $agpr0_agpr1_agpr2_agpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $agpr4_agpr5_agpr6_agpr7, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr :: (store (s128) into %stack.0 + 16, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr8, $sgpr32, 32, 0, implicit $exec, implicit $flat_scr, implicit killed $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8 :: (store (s32) into %stack.0 + 32, addrspace 5) @@ -2875,6 +4707,26 @@ ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_av_a9 ; FLATSCR-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $vgpr5 = V_ACCVGPR_READ_B32_e64 killed $agpr3, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr6 = V_ACCVGPR_READ_B32_e64 killed $agpr2, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8 @@ -2914,7 +4766,19 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_av_a10 - ; MUBUF: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; MUBUF-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9 = IMPLICIT_DEF ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9 ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2959,6 +4823,28 @@ ; MUBUF-V2A-LABEL: name: test_spill_av_a10 ; MUBUF-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 ; MUBUF-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $vgpr9 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9 ; MUBUF-V2A-NEXT: $vgpr8 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2982,7 +4868,19 @@ ; MUBUF-V2A-NEXT: $agpr9 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_av_a10 - ; FLATSCR: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; FLATSCR-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9 = IMPLICIT_DEF ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9 ; FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr0, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9 :: (store (s32) into %stack.0, addrspace 5) ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -3027,6 +4925,28 @@ ; FLATSCR-V2A-LABEL: name: test_spill_av_a10 ; FLATSCR-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 ; FLATSCR-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $vgpr9 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9 ; FLATSCR-V2A-NEXT: $vgpr8 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -3050,7 +4970,19 @@ ; FLATSCR-V2A-NEXT: $agpr9 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_av_a10 - ; MUBUF-GFX90A: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; MUBUF-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -3075,6 +5007,28 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_av_a10 ; MUBUF-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 ; MUBUF-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $vgpr9 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9 ; MUBUF-GFX90A-V2A-NEXT: $vgpr8 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -3098,7 +5052,19 @@ ; MUBUF-GFX90A-V2A-NEXT: $agpr9 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_av_a10 - ; FLATSCR-GFX90A: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; FLATSCR-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $agpr0_agpr1_agpr2_agpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $agpr4_agpr5_agpr6_agpr7, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr :: (store (s128) into %stack.0 + 16, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX2_SADDR killed $agpr8_agpr9, $sgpr32, 32, 0, implicit $exec, implicit $flat_scr, implicit killed $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9 :: (store (s64) into %stack.0 + 32, align 4, addrspace 5) @@ -3109,6 +5075,28 @@ ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_av_a10 ; FLATSCR-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $vgpr6 = V_ACCVGPR_READ_B32_e64 killed $agpr3, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr7 = V_ACCVGPR_READ_B32_e64 killed $agpr2, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9 @@ -3150,7 +5138,20 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_av_a11 - ; MUBUF: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; MUBUF-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10 = IMPLICIT_DEF ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10 ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -3199,6 +5200,30 @@ ; MUBUF-V2A-LABEL: name: test_spill_av_a11 ; MUBUF-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 ; MUBUF-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $vgpr10 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10 ; MUBUF-V2A-NEXT: $vgpr9 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -3224,7 +5249,20 @@ ; MUBUF-V2A-NEXT: $agpr10 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_av_a11 - ; FLATSCR: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; FLATSCR-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10 = IMPLICIT_DEF ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10 ; FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr0, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10 :: (store (s32) into %stack.0, addrspace 5) ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -3273,6 +5311,30 @@ ; FLATSCR-V2A-LABEL: name: test_spill_av_a11 ; FLATSCR-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 ; FLATSCR-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $vgpr10 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10 ; FLATSCR-V2A-NEXT: $vgpr9 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -3298,7 +5360,20 @@ ; FLATSCR-V2A-NEXT: $agpr10 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_av_a11 - ; MUBUF-GFX90A: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; MUBUF-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -3325,6 +5400,30 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_av_a11 ; MUBUF-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 ; MUBUF-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $vgpr10 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10 ; MUBUF-GFX90A-V2A-NEXT: $vgpr9 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -3350,7 +5449,20 @@ ; MUBUF-GFX90A-V2A-NEXT: $agpr10 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_av_a11 - ; FLATSCR-GFX90A: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; FLATSCR-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $agpr0_agpr1_agpr2_agpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $agpr4_agpr5_agpr6_agpr7, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr :: (store (s128) into %stack.0 + 16, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX3_SADDR killed $agpr8_agpr9_agpr10, $sgpr32, 32, 0, implicit $exec, implicit $flat_scr, implicit killed $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10 :: (store (s96) into %stack.0 + 32, align 4, addrspace 5) @@ -3361,6 +5473,30 @@ ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_av_a11 ; FLATSCR-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $vgpr7 = V_ACCVGPR_READ_B32_e64 killed $agpr3, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr8 = V_ACCVGPR_READ_B32_e64 killed $agpr2, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10 @@ -3404,7 +5540,21 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_av_a12 - ; MUBUF: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; MUBUF-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11 = IMPLICIT_DEF ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11 ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -3457,6 +5607,32 @@ ; MUBUF-V2A-LABEL: name: test_spill_av_a12 ; MUBUF-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 ; MUBUF-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $vgpr11 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11 ; MUBUF-V2A-NEXT: $vgpr10 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -3484,7 +5660,21 @@ ; MUBUF-V2A-NEXT: $agpr11 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_av_a12 - ; FLATSCR: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; FLATSCR-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11 = IMPLICIT_DEF ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11 ; FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr0, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11 :: (store (s32) into %stack.0, addrspace 5) ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -3537,6 +5727,32 @@ ; FLATSCR-V2A-LABEL: name: test_spill_av_a12 ; FLATSCR-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 ; FLATSCR-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $vgpr11 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11 ; FLATSCR-V2A-NEXT: $vgpr10 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -3564,7 +5780,21 @@ ; FLATSCR-V2A-NEXT: $agpr11 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_av_a12 - ; MUBUF-GFX90A: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; MUBUF-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -3593,6 +5823,32 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_av_a12 ; MUBUF-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 ; MUBUF-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $vgpr11 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11 ; MUBUF-GFX90A-V2A-NEXT: $vgpr10 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -3620,7 +5876,21 @@ ; MUBUF-GFX90A-V2A-NEXT: $agpr11 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_av_a12 - ; FLATSCR-GFX90A: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; FLATSCR-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $agpr0_agpr1_agpr2_agpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $agpr4_agpr5_agpr6_agpr7, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr :: (store (s128) into %stack.0 + 16, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $agpr8_agpr9_agpr10_agpr11, $sgpr32, 32, 0, implicit $exec, implicit $flat_scr, implicit killed $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11 :: (store (s128) into %stack.0 + 32, align 4, addrspace 5) @@ -3631,6 +5901,32 @@ ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_av_a12 ; FLATSCR-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $vgpr8 = V_ACCVGPR_READ_B32_e64 killed $agpr3, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr9 = V_ACCVGPR_READ_B32_e64 killed $agpr2, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11 @@ -3676,7 +5972,25 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_av_a16 - ; MUBUF: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; MUBUF-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 = IMPLICIT_DEF ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -3745,6 +6059,40 @@ ; MUBUF-V2A-LABEL: name: test_spill_av_a16 ; MUBUF-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 ; MUBUF-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $vgpr15 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 ; MUBUF-V2A-NEXT: $vgpr14 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -3780,7 +6128,25 @@ ; MUBUF-V2A-NEXT: $agpr15 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_av_a16 - ; FLATSCR: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; FLATSCR-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 = IMPLICIT_DEF ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 ; FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr0, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 :: (store (s32) into %stack.0, addrspace 5) ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -3849,6 +6215,40 @@ ; FLATSCR-V2A-LABEL: name: test_spill_av_a16 ; FLATSCR-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 ; FLATSCR-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $vgpr15 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 ; FLATSCR-V2A-NEXT: $vgpr14 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -3884,7 +6284,25 @@ ; FLATSCR-V2A-NEXT: $agpr15 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_av_a16 - ; MUBUF-GFX90A: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; MUBUF-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -3921,6 +6339,40 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_av_a16 ; MUBUF-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 ; MUBUF-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $vgpr15 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 ; MUBUF-GFX90A-V2A-NEXT: $vgpr14 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -3956,7 +6408,25 @@ ; MUBUF-GFX90A-V2A-NEXT: $agpr15 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_av_a16 - ; FLATSCR-GFX90A: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; FLATSCR-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $agpr0_agpr1_agpr2_agpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $agpr4_agpr5_agpr6_agpr7, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr :: (store (s128) into %stack.0 + 16, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $agpr8_agpr9_agpr10_agpr11, $sgpr32, 32, 0, implicit $exec, implicit $flat_scr :: (store (s128) into %stack.0 + 32, align 4, addrspace 5) @@ -3969,6 +6439,40 @@ ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_av_a16 ; FLATSCR-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $vgpr12 = V_ACCVGPR_READ_B32_e64 killed $agpr3, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr13 = V_ACCVGPR_READ_B32_e64 killed $agpr2, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 @@ -4022,7 +6526,41 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_av_a32 - ; MUBUF: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 + ; MUBUF-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 = IMPLICIT_DEF ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -4155,6 +6693,72 @@ ; MUBUF-V2A-LABEL: name: test_spill_av_a32 ; MUBUF-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15, $vgpr16, $vgpr17, $vgpr18, $vgpr19, $vgpr20, $vgpr21, $vgpr22, $vgpr23, $vgpr24, $vgpr25, $vgpr26, $vgpr27, $vgpr28, $vgpr29, $vgpr30, $vgpr31 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 ; MUBUF-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $vgpr31 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 ; MUBUF-V2A-NEXT: $vgpr30 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -4222,7 +6826,41 @@ ; MUBUF-V2A-NEXT: $agpr31 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_av_a32 - ; FLATSCR: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 + ; FLATSCR-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 = IMPLICIT_DEF ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 ; FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr0, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 :: (store (s32) into %stack.0, addrspace 5) ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -4355,6 +6993,72 @@ ; FLATSCR-V2A-LABEL: name: test_spill_av_a32 ; FLATSCR-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15, $vgpr16, $vgpr17, $vgpr18, $vgpr19, $vgpr20, $vgpr21, $vgpr22, $vgpr23, $vgpr24, $vgpr25, $vgpr26, $vgpr27, $vgpr28, $vgpr29, $vgpr30, $vgpr31 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 ; FLATSCR-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $vgpr31 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 ; FLATSCR-V2A-NEXT: $vgpr30 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -4422,7 +7126,41 @@ ; FLATSCR-V2A-NEXT: $agpr31 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_av_a32 - ; MUBUF-GFX90A: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 + ; MUBUF-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -4491,6 +7229,72 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_av_a32 ; MUBUF-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15, $vgpr16, $vgpr17, $vgpr18, $vgpr19, $vgpr20, $vgpr21, $vgpr22, $vgpr23, $vgpr24, $vgpr25, $vgpr26, $vgpr27, $vgpr28, $vgpr29, $vgpr30, $vgpr31 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 ; MUBUF-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $vgpr31 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 ; MUBUF-GFX90A-V2A-NEXT: $vgpr30 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -4558,7 +7362,41 @@ ; MUBUF-GFX90A-V2A-NEXT: $agpr31 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_av_a32 - ; FLATSCR-GFX90A: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 + ; FLATSCR-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $agpr0_agpr1_agpr2_agpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $agpr4_agpr5_agpr6_agpr7, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr :: (store (s128) into %stack.0 + 16, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $agpr8_agpr9_agpr10_agpr11, $sgpr32, 32, 0, implicit $exec, implicit $flat_scr :: (store (s128) into %stack.0 + 32, align 4, addrspace 5) @@ -4579,6 +7417,72 @@ ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_av_a32 ; FLATSCR-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15, $vgpr16, $vgpr17, $vgpr18, $vgpr19, $vgpr20, $vgpr21, $vgpr22, $vgpr23, $vgpr24, $vgpr25, $vgpr26, $vgpr27, $vgpr28, $vgpr29, $vgpr30, $vgpr31 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $vgpr28 = V_ACCVGPR_READ_B32_e64 killed $agpr3, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr29 = V_ACCVGPR_READ_B32_e64 killed $agpr2, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 diff --git a/llvm/test/CodeGen/AMDGPU/pei-build-spill-partial-agpr.mir b/llvm/test/CodeGen/AMDGPU/pei-build-spill-partial-agpr.mir --- a/llvm/test/CodeGen/AMDGPU/pei-build-spill-partial-agpr.mir +++ b/llvm/test/CodeGen/AMDGPU/pei-build-spill-partial-agpr.mir @@ -59,6 +59,10 @@ ; MUBUF-V2A-LABEL: name: test_spill_v2_partial_agpr ; MUBUF-V2A: liveins: $agpr0 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 ; MUBUF-V2A-NEXT: $vgpr0_vgpr1 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $vgpr0_vgpr1 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec, implicit killed $vgpr0_vgpr1 @@ -68,6 +72,10 @@ ; FLATSCR-V2A-LABEL: name: test_spill_v2_partial_agpr ; FLATSCR-V2A: liveins: $agpr0 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 ; FLATSCR-V2A-NEXT: $vgpr0_vgpr1 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $vgpr0_vgpr1 ; FLATSCR-V2A-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr0, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit killed $vgpr0_vgpr1 :: (store (s32) into %stack.0, addrspace 5) @@ -95,6 +103,11 @@ ; MUBUF-V2A-LABEL: name: test_spill_v3_partial_agpr ; MUBUF-V2A: liveins: $agpr0 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 ; MUBUF-V2A-NEXT: $vgpr0_vgpr1_vgpr2 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2, implicit $vgpr0_vgpr1_vgpr2 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-V2A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) @@ -106,6 +119,11 @@ ; FLATSCR-V2A-LABEL: name: test_spill_v3_partial_agpr ; FLATSCR-V2A: liveins: $agpr0 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 ; FLATSCR-V2A-NEXT: $vgpr0_vgpr1_vgpr2 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2, implicit $vgpr0_vgpr1_vgpr2 ; FLATSCR-V2A-NEXT: SCRATCH_STORE_DWORDX2_SADDR killed $vgpr0_vgpr1, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit killed $vgpr0_vgpr1_vgpr2 :: (store (s64) into %stack.0, align 4, addrspace 5) @@ -133,6 +151,12 @@ ; MUBUF-V2A-LABEL: name: test_spill_v4_partial_agpr ; MUBUF-V2A: liveins: $agpr0, $agpr1, $agpr2 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 ; MUBUF-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $vgpr0_vgpr1_vgpr2_vgpr3 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-V2A-NEXT: $agpr2 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec @@ -146,6 +170,12 @@ ; FLATSCR-V2A-LABEL: name: test_spill_v4_partial_agpr ; FLATSCR-V2A: liveins: $agpr0, $agpr1, $agpr2 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 ; FLATSCR-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $vgpr0_vgpr1_vgpr2_vgpr3 ; FLATSCR-V2A-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3 @@ -177,6 +207,13 @@ ; MUBUF-V2A-LABEL: name: test_spill_v5_partial_agpr ; MUBUF-V2A: liveins: $agpr0, $agpr1, $agpr2 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 ; MUBUF-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-V2A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) @@ -192,6 +229,13 @@ ; FLATSCR-V2A-LABEL: name: test_spill_v5_partial_agpr ; FLATSCR-V2A: liveins: $agpr0, $agpr1, $agpr2 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 ; FLATSCR-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 ; FLATSCR-V2A-NEXT: $agpr2 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 @@ -223,6 +267,14 @@ ; MUBUF-V2A-LABEL: name: test_spill_v6_partial_agpr ; MUBUF-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 ; MUBUF-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-V2A-NEXT: $agpr4 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec @@ -240,6 +292,14 @@ ; FLATSCR-V2A-LABEL: name: test_spill_v6_partial_agpr ; FLATSCR-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 ; FLATSCR-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $agpr2 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 ; FLATSCR-V2A-NEXT: $agpr3 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 @@ -275,6 +335,16 @@ ; MUBUF-V2A-LABEL: name: test_spill_v8_partial_agpr ; MUBUF-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 ; MUBUF-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-V2A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) @@ -296,6 +366,16 @@ ; FLATSCR-V2A-LABEL: name: test_spill_v8_partial_agpr ; FLATSCR-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 ; FLATSCR-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr0_vgpr1_vgpr2_vgpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr7, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 @@ -329,6 +409,24 @@ ; MUBUF-V2A-LABEL: name: test_spill_v16_partial_agpr ; MUBUF-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 ; MUBUF-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-V2A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) @@ -366,6 +464,24 @@ ; FLATSCR-V2A-LABEL: name: test_spill_v16_partial_agpr ; FLATSCR-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 ; FLATSCR-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr0_vgpr1_vgpr2_vgpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-V2A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr4_vgpr5_vgpr6_vgpr7, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr :: (store (s128) into %stack.0 + 16, align 4, addrspace 5) diff --git a/llvm/test/CodeGen/AMDGPU/pei-build-spill.mir b/llvm/test/CodeGen/AMDGPU/pei-build-spill.mir --- a/llvm/test/CodeGen/AMDGPU/pei-build-spill.mir +++ b/llvm/test/CodeGen/AMDGPU/pei-build-spill.mir @@ -20,49 +20,77 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_v1 - ; MUBUF: $vgpr0 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-NEXT: $vgpr0 = IMPLICIT_DEF ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: $vgpr0 = BUFFER_LOAD_DWORD_OFFSET $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (load (s32) from %stack.0, addrspace 5) ; MUBUF-NEXT: S_ENDPGM 0 ; MUBUF-V2A-LABEL: name: test_spill_v1 ; MUBUF-V2A: liveins: $agpr0 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 ; MUBUF-V2A-NEXT: $vgpr0 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec ; MUBUF-V2A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_v1 - ; FLATSCR: $vgpr0 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-NEXT: $vgpr0 = IMPLICIT_DEF ; FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr0, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.0, addrspace 5) ; FLATSCR-NEXT: $vgpr0 = SCRATCH_LOAD_DWORD_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (load (s32) from %stack.0, addrspace 5) ; FLATSCR-NEXT: S_ENDPGM 0 ; FLATSCR-V2A-LABEL: name: test_spill_v1 ; FLATSCR-V2A: liveins: $agpr0 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 ; FLATSCR-V2A-NEXT: $vgpr0 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec ; FLATSCR-V2A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_v1 - ; MUBUF-GFX90A: $vgpr0 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-NEXT: $vgpr0 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: $vgpr0 = BUFFER_LOAD_DWORD_OFFSET $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (load (s32) from %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_v1 ; MUBUF-GFX90A-V2A: liveins: $agpr0 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 ; MUBUF-GFX90A-V2A-NEXT: $vgpr0 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec ; MUBUF-GFX90A-V2A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_v1 - ; FLATSCR-GFX90A: $vgpr0 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-NEXT: $vgpr0 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr0, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.0, addrspace 5) ; FLATSCR-GFX90A-NEXT: $vgpr0 = SCRATCH_LOAD_DWORD_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (load (s32) from %stack.0, addrspace 5) ; FLATSCR-GFX90A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_v1 ; FLATSCR-GFX90A-V2A: liveins: $agpr0 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr0 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec ; FLATSCR-GFX90A-V2A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec @@ -86,7 +114,11 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_v2 - ; MUBUF: $vgpr0_vgpr1 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-NEXT: $vgpr0_vgpr1 = IMPLICIT_DEF ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $vgpr0_vgpr1 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec, implicit killed $vgpr0_vgpr1 :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-NEXT: $vgpr0 = BUFFER_LOAD_DWORD_OFFSET $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1 :: (load (s32) from %stack.0, addrspace 5) @@ -95,6 +127,12 @@ ; MUBUF-V2A-LABEL: name: test_spill_v2 ; MUBUF-V2A: liveins: $agpr0, $agpr1 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 ; MUBUF-V2A-NEXT: $vgpr0_vgpr1 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $vgpr0_vgpr1 ; MUBUF-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec, implicit killed $vgpr0_vgpr1 @@ -102,13 +140,23 @@ ; MUBUF-V2A-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $vgpr0_vgpr1 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_v2 - ; FLATSCR: $vgpr0_vgpr1 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-NEXT: $vgpr0_vgpr1 = IMPLICIT_DEF ; FLATSCR-NEXT: SCRATCH_STORE_DWORDX2_SADDR killed $vgpr0_vgpr1, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s64) into %stack.0, align 4, addrspace 5) ; FLATSCR-NEXT: $vgpr0_vgpr1 = SCRATCH_LOAD_DWORDX2_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (load (s64) from %stack.0, align 4, addrspace 5) ; FLATSCR-NEXT: S_ENDPGM 0 ; FLATSCR-V2A-LABEL: name: test_spill_v2 ; FLATSCR-V2A: liveins: $agpr0, $agpr1 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 ; FLATSCR-V2A-NEXT: $vgpr0_vgpr1 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $vgpr0_vgpr1 ; FLATSCR-V2A-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit killed $vgpr0_vgpr1 @@ -116,7 +164,11 @@ ; FLATSCR-V2A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 $agpr1, implicit $exec, implicit $vgpr0_vgpr1 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_v2 - ; MUBUF-GFX90A: $vgpr0_vgpr1 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-NEXT: $vgpr0_vgpr1 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $vgpr0_vgpr1 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec, implicit killed $vgpr0_vgpr1 :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: $vgpr0 = BUFFER_LOAD_DWORD_OFFSET $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1 :: (load (s32) from %stack.0, addrspace 5) @@ -125,6 +177,12 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_v2 ; MUBUF-GFX90A-V2A: liveins: $agpr0, $agpr1 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 ; MUBUF-GFX90A-V2A-NEXT: $vgpr0_vgpr1 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $vgpr0_vgpr1 ; MUBUF-GFX90A-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec, implicit killed $vgpr0_vgpr1 @@ -132,13 +190,23 @@ ; MUBUF-GFX90A-V2A-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $vgpr0_vgpr1 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_v2 - ; FLATSCR-GFX90A: $vgpr0_vgpr1 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-NEXT: $vgpr0_vgpr1 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX2_SADDR killed $vgpr0_vgpr1, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s64) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: $vgpr0_vgpr1 = SCRATCH_LOAD_DWORDX2_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (load (s64) from %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_v2 ; FLATSCR-GFX90A-V2A: liveins: $agpr0, $agpr1 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr0_vgpr1 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $vgpr0_vgpr1 ; FLATSCR-GFX90A-V2A-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit killed $vgpr0_vgpr1 @@ -164,7 +232,12 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_v3 - ; MUBUF: $vgpr0_vgpr1_vgpr2 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-NEXT: $vgpr0_vgpr1_vgpr2 = IMPLICIT_DEF ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2, implicit $vgpr0_vgpr1_vgpr2 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec, implicit killed $vgpr0_vgpr1_vgpr2 :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -175,6 +248,14 @@ ; MUBUF-V2A-LABEL: name: test_spill_v3 ; MUBUF-V2A: liveins: $agpr0, $agpr1, $agpr2 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 ; MUBUF-V2A-NEXT: $vgpr0_vgpr1_vgpr2 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $agpr2 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2, implicit $vgpr0_vgpr1_vgpr2 ; MUBUF-V2A-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec @@ -184,13 +265,26 @@ ; MUBUF-V2A-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $vgpr0_vgpr1_vgpr2 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_v3 - ; FLATSCR: $vgpr0_vgpr1_vgpr2 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-NEXT: $vgpr0_vgpr1_vgpr2 = IMPLICIT_DEF ; FLATSCR-NEXT: SCRATCH_STORE_DWORDX3_SADDR killed $vgpr0_vgpr1_vgpr2, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s96) into %stack.0, align 4, addrspace 5) ; FLATSCR-NEXT: $vgpr0_vgpr1_vgpr2 = SCRATCH_LOAD_DWORDX3_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (load (s96) from %stack.0, align 4, addrspace 5) ; FLATSCR-NEXT: S_ENDPGM 0 ; FLATSCR-V2A-LABEL: name: test_spill_v3 ; FLATSCR-V2A: liveins: $agpr0, $agpr1, $agpr2 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 ; FLATSCR-V2A-NEXT: $vgpr0_vgpr1_vgpr2 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2, implicit $vgpr0_vgpr1_vgpr2 ; FLATSCR-V2A-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec, implicit $vgpr0_vgpr1_vgpr2 @@ -200,7 +294,12 @@ ; FLATSCR-V2A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 $agpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_v3 - ; MUBUF-GFX90A: $vgpr0_vgpr1_vgpr2 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2, implicit $vgpr0_vgpr1_vgpr2 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec, implicit killed $vgpr0_vgpr1_vgpr2 :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -211,6 +310,14 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_v3 ; MUBUF-GFX90A-V2A: liveins: $agpr0, $agpr1, $agpr2 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 ; MUBUF-GFX90A-V2A-NEXT: $vgpr0_vgpr1_vgpr2 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $agpr2 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2, implicit $vgpr0_vgpr1_vgpr2 ; MUBUF-GFX90A-V2A-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec @@ -220,13 +327,26 @@ ; MUBUF-GFX90A-V2A-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $vgpr0_vgpr1_vgpr2 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_v3 - ; FLATSCR-GFX90A: $vgpr0_vgpr1_vgpr2 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX3_SADDR killed $vgpr0_vgpr1_vgpr2, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s96) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2 = SCRATCH_LOAD_DWORDX3_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (load (s96) from %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_v3 ; FLATSCR-GFX90A-V2A: liveins: $agpr0, $agpr1, $agpr2 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr0_vgpr1_vgpr2 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2, implicit $vgpr0_vgpr1_vgpr2 ; FLATSCR-GFX90A-V2A-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec, implicit $vgpr0_vgpr1_vgpr2 @@ -254,7 +374,13 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_v4 - ; MUBUF: $vgpr0_vgpr1_vgpr2_vgpr3 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = IMPLICIT_DEF ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $vgpr0_vgpr1_vgpr2_vgpr3 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -267,6 +393,16 @@ ; MUBUF-V2A-LABEL: name: test_spill_v4 ; MUBUF-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 ; MUBUF-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $agpr3 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $vgpr0_vgpr1_vgpr2_vgpr3 ; MUBUF-V2A-NEXT: $agpr2 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec @@ -278,13 +414,29 @@ ; MUBUF-V2A-NEXT: $vgpr3 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_v4 - ; FLATSCR: $vgpr0_vgpr1_vgpr2_vgpr3 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = IMPLICIT_DEF ; FLATSCR-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr0_vgpr1_vgpr2_vgpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = SCRATCH_LOAD_DWORDX4_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (load (s128) from %stack.0, align 4, addrspace 5) ; FLATSCR-NEXT: S_ENDPGM 0 ; FLATSCR-V2A-LABEL: name: test_spill_v4 ; FLATSCR-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 ; FLATSCR-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $vgpr0_vgpr1_vgpr2_vgpr3 ; FLATSCR-V2A-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3 @@ -296,7 +448,13 @@ ; FLATSCR-V2A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 $agpr3, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_v4 - ; MUBUF-GFX90A: $vgpr0_vgpr1_vgpr2_vgpr3 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $vgpr0_vgpr1_vgpr2_vgpr3 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -309,6 +467,16 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_v4 ; MUBUF-GFX90A-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 ; MUBUF-GFX90A-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $agpr3 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $vgpr0_vgpr1_vgpr2_vgpr3 ; MUBUF-GFX90A-V2A-NEXT: $agpr2 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec @@ -320,13 +488,29 @@ ; MUBUF-GFX90A-V2A-NEXT: $vgpr3 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_v4 - ; FLATSCR-GFX90A: $vgpr0_vgpr1_vgpr2_vgpr3 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr0_vgpr1_vgpr2_vgpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = SCRATCH_LOAD_DWORDX4_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (load (s128) from %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_v4 ; FLATSCR-GFX90A-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $vgpr0_vgpr1_vgpr2_vgpr3 ; FLATSCR-GFX90A-V2A-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3 @@ -356,7 +540,14 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_v5 - ; MUBUF: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 = IMPLICIT_DEF ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -371,6 +562,18 @@ ; MUBUF-V2A-LABEL: name: test_spill_v5 ; MUBUF-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 ; MUBUF-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $agpr4 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 ; MUBUF-V2A-NEXT: $agpr3 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec @@ -384,7 +587,14 @@ ; MUBUF-V2A-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_v5 - ; FLATSCR: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 = IMPLICIT_DEF ; FLATSCR-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr0_vgpr1_vgpr2_vgpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr4, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr, implicit killed $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 :: (store (s32) into %stack.0 + 16, addrspace 5) ; FLATSCR-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = SCRATCH_LOAD_DWORDX4_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 :: (load (s128) from %stack.0, align 4, addrspace 5) @@ -393,6 +603,18 @@ ; FLATSCR-V2A-LABEL: name: test_spill_v5 ; FLATSCR-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 ; FLATSCR-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 ; FLATSCR-V2A-NEXT: $agpr2 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 @@ -406,7 +628,14 @@ ; FLATSCR-V2A-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_v5 - ; MUBUF-GFX90A: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -421,6 +650,18 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_v5 ; MUBUF-GFX90A-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 ; MUBUF-GFX90A-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $agpr4 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 ; MUBUF-GFX90A-V2A-NEXT: $agpr3 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec @@ -434,7 +675,14 @@ ; MUBUF-GFX90A-V2A-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_v5 - ; FLATSCR-GFX90A: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr0_vgpr1_vgpr2_vgpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr4, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr, implicit killed $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 :: (store (s32) into %stack.0 + 16, addrspace 5) ; FLATSCR-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = SCRATCH_LOAD_DWORDX4_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 :: (load (s128) from %stack.0, align 4, addrspace 5) @@ -443,6 +691,18 @@ ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_v5 ; FLATSCR-GFX90A-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 ; FLATSCR-GFX90A-V2A-NEXT: $agpr2 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4 @@ -474,7 +734,15 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_v6 - ; MUBUF: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 = IMPLICIT_DEF ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -491,6 +759,20 @@ ; MUBUF-V2A-LABEL: name: test_spill_v6 ; MUBUF-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4, $agpr5 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 ; MUBUF-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $agpr5 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 ; MUBUF-V2A-NEXT: $agpr4 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec @@ -506,7 +788,15 @@ ; MUBUF-V2A-NEXT: $vgpr5 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_v6 - ; FLATSCR: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 = IMPLICIT_DEF ; FLATSCR-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr0_vgpr1_vgpr2_vgpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-NEXT: SCRATCH_STORE_DWORDX2_SADDR killed $vgpr4_vgpr5, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr, implicit killed $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 :: (store (s64) into %stack.0 + 16, align 4, addrspace 5) ; FLATSCR-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = SCRATCH_LOAD_DWORDX4_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 :: (load (s128) from %stack.0, align 4, addrspace 5) @@ -515,6 +805,20 @@ ; FLATSCR-V2A-LABEL: name: test_spill_v6 ; FLATSCR-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4, $agpr5 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 ; FLATSCR-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $agpr2 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 ; FLATSCR-V2A-NEXT: $agpr3 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 @@ -530,7 +834,15 @@ ; FLATSCR-V2A-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 $agpr1, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_v6 - ; MUBUF-GFX90A: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -547,6 +859,20 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_v6 ; MUBUF-GFX90A-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4, $agpr5 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 ; MUBUF-GFX90A-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $agpr5 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 ; MUBUF-GFX90A-V2A-NEXT: $agpr4 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec @@ -562,7 +888,15 @@ ; MUBUF-GFX90A-V2A-NEXT: $vgpr5 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_v6 - ; FLATSCR-GFX90A: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr0_vgpr1_vgpr2_vgpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX2_SADDR killed $vgpr4_vgpr5, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr, implicit killed $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 :: (store (s64) into %stack.0 + 16, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = SCRATCH_LOAD_DWORDX4_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 :: (load (s128) from %stack.0, align 4, addrspace 5) @@ -571,6 +905,20 @@ ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_v6 ; FLATSCR-GFX90A-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4, $agpr5 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $agpr2 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 ; FLATSCR-GFX90A-V2A-NEXT: $agpr3 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5 @@ -604,7 +952,17 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_v8 - ; MUBUF: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = IMPLICIT_DEF ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -625,6 +983,24 @@ ; MUBUF-V2A-LABEL: name: test_spill_v8 ; MUBUF-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4, $agpr5, $agpr6, $agpr7 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 ; MUBUF-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $agpr7 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 ; MUBUF-V2A-NEXT: $agpr6 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec @@ -644,7 +1020,17 @@ ; MUBUF-V2A-NEXT: $vgpr7 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_v8 - ; FLATSCR: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = IMPLICIT_DEF ; FLATSCR-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr0_vgpr1_vgpr2_vgpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr4_vgpr5_vgpr6_vgpr7, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr, implicit killed $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 :: (store (s128) into %stack.0 + 16, align 4, addrspace 5) ; FLATSCR-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = SCRATCH_LOAD_DWORDX4_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 :: (load (s128) from %stack.0, align 4, addrspace 5) @@ -653,6 +1039,24 @@ ; FLATSCR-V2A-LABEL: name: test_spill_v8 ; FLATSCR-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4, $agpr5, $agpr6, $agpr7 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 ; FLATSCR-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $agpr4 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 ; FLATSCR-V2A-NEXT: $agpr5 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 @@ -672,7 +1076,17 @@ ; FLATSCR-V2A-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 $agpr3, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_v8 - ; MUBUF-GFX90A: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -693,6 +1107,24 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_v8 ; MUBUF-GFX90A-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4, $agpr5, $agpr6, $agpr7 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 ; MUBUF-GFX90A-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $agpr7 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 ; MUBUF-GFX90A-V2A-NEXT: $agpr6 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec @@ -712,7 +1144,17 @@ ; MUBUF-GFX90A-V2A-NEXT: $vgpr7 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_v8 - ; FLATSCR-GFX90A: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr0_vgpr1_vgpr2_vgpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr4_vgpr5_vgpr6_vgpr7, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr, implicit killed $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 :: (store (s128) into %stack.0 + 16, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = SCRATCH_LOAD_DWORDX4_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 :: (load (s128) from %stack.0, align 4, addrspace 5) @@ -721,6 +1163,24 @@ ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_v8 ; FLATSCR-GFX90A-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4, $agpr5, $agpr6, $agpr7 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $agpr4 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 ; FLATSCR-GFX90A-V2A-NEXT: $agpr5 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7 @@ -758,7 +1218,25 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_v16 - ; MUBUF: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; MUBUF-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 = IMPLICIT_DEF ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -795,6 +1273,40 @@ ; MUBUF-V2A-LABEL: name: test_spill_v16 ; MUBUF-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4, $agpr5, $agpr6, $agpr7, $agpr8, $agpr9, $agpr10, $agpr11, $agpr12, $agpr13, $agpr14, $agpr15 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 ; MUBUF-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $agpr15 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 ; MUBUF-V2A-NEXT: $agpr14 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec @@ -830,7 +1342,25 @@ ; MUBUF-V2A-NEXT: $vgpr15 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_v16 - ; FLATSCR: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; FLATSCR-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 = IMPLICIT_DEF ; FLATSCR-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr0_vgpr1_vgpr2_vgpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr4_vgpr5_vgpr6_vgpr7, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr :: (store (s128) into %stack.0 + 16, align 4, addrspace 5) ; FLATSCR-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr8_vgpr9_vgpr10_vgpr11, $sgpr32, 32, 0, implicit $exec, implicit $flat_scr :: (store (s128) into %stack.0 + 32, align 4, addrspace 5) @@ -843,6 +1373,40 @@ ; FLATSCR-V2A-LABEL: name: test_spill_v16 ; FLATSCR-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4, $agpr5, $agpr6, $agpr7, $agpr8, $agpr9, $agpr10, $agpr11, $agpr12, $agpr13, $agpr14, $agpr15 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 ; FLATSCR-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $agpr12 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 ; FLATSCR-V2A-NEXT: $agpr13 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 @@ -878,7 +1442,25 @@ ; FLATSCR-V2A-NEXT: $vgpr12 = V_ACCVGPR_READ_B32_e64 $agpr3, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_v16 - ; MUBUF-GFX90A: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; MUBUF-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -915,6 +1497,40 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_v16 ; MUBUF-GFX90A-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4, $agpr5, $agpr6, $agpr7, $agpr8, $agpr9, $agpr10, $agpr11, $agpr12, $agpr13, $agpr14, $agpr15 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 ; MUBUF-GFX90A-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $agpr15 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 ; MUBUF-GFX90A-V2A-NEXT: $agpr14 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec @@ -950,7 +1566,25 @@ ; MUBUF-GFX90A-V2A-NEXT: $vgpr15 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_v16 - ; FLATSCR-GFX90A: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; FLATSCR-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr0_vgpr1_vgpr2_vgpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr4_vgpr5_vgpr6_vgpr7, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr :: (store (s128) into %stack.0 + 16, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr8_vgpr9_vgpr10_vgpr11, $sgpr32, 32, 0, implicit $exec, implicit $flat_scr :: (store (s128) into %stack.0 + 32, align 4, addrspace 5) @@ -963,6 +1597,40 @@ ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_v16 ; FLATSCR-GFX90A-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4, $agpr5, $agpr6, $agpr7, $agpr8, $agpr9, $agpr10, $agpr11, $agpr12, $agpr13, $agpr14, $agpr15 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $agpr12 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 ; FLATSCR-GFX90A-V2A-NEXT: $agpr13 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15 @@ -1016,7 +1684,41 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_v32 - ; MUBUF: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; MUBUF-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 = IMPLICIT_DEF ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -1085,6 +1787,72 @@ ; MUBUF-V2A-LABEL: name: test_spill_v32 ; MUBUF-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4, $agpr5, $agpr6, $agpr7, $agpr8, $agpr9, $agpr10, $agpr11, $agpr12, $agpr13, $agpr14, $agpr15, $agpr16, $agpr17, $agpr18, $agpr19, $agpr20, $agpr21, $agpr22, $agpr23, $agpr24, $agpr25, $agpr26, $agpr27, $agpr28, $agpr29, $agpr30, $agpr31 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 ; MUBUF-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $agpr31 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 ; MUBUF-V2A-NEXT: $agpr30 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec @@ -1152,7 +1920,41 @@ ; MUBUF-V2A-NEXT: $vgpr31 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_v32 - ; FLATSCR: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; FLATSCR-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 = IMPLICIT_DEF ; FLATSCR-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr0_vgpr1_vgpr2_vgpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr4_vgpr5_vgpr6_vgpr7, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr :: (store (s128) into %stack.0 + 16, align 4, addrspace 5) ; FLATSCR-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr8_vgpr9_vgpr10_vgpr11, $sgpr32, 32, 0, implicit $exec, implicit $flat_scr :: (store (s128) into %stack.0 + 32, align 4, addrspace 5) @@ -1173,6 +1975,72 @@ ; FLATSCR-V2A-LABEL: name: test_spill_v32 ; FLATSCR-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4, $agpr5, $agpr6, $agpr7, $agpr8, $agpr9, $agpr10, $agpr11, $agpr12, $agpr13, $agpr14, $agpr15, $agpr16, $agpr17, $agpr18, $agpr19, $agpr20, $agpr21, $agpr22, $agpr23, $agpr24, $agpr25, $agpr26, $agpr27, $agpr28, $agpr29, $agpr30, $agpr31 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 ; FLATSCR-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $agpr28 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 ; FLATSCR-V2A-NEXT: $agpr29 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 @@ -1240,7 +2108,41 @@ ; FLATSCR-V2A-NEXT: $vgpr28 = V_ACCVGPR_READ_B32_e64 $agpr3, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_v32 - ; MUBUF-GFX90A: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; MUBUF-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -1309,6 +2211,72 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_v32 ; MUBUF-GFX90A-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4, $agpr5, $agpr6, $agpr7, $agpr8, $agpr9, $agpr10, $agpr11, $agpr12, $agpr13, $agpr14, $agpr15, $agpr16, $agpr17, $agpr18, $agpr19, $agpr20, $agpr21, $agpr22, $agpr23, $agpr24, $agpr25, $agpr26, $agpr27, $agpr28, $agpr29, $agpr30, $agpr31 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 ; MUBUF-GFX90A-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $agpr31 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 ; MUBUF-GFX90A-V2A-NEXT: $agpr30 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec @@ -1376,7 +2344,41 @@ ; MUBUF-GFX90A-V2A-NEXT: $vgpr31 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_v32 - ; FLATSCR-GFX90A: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; FLATSCR-GFX90A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr0_vgpr1_vgpr2_vgpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr4_vgpr5_vgpr6_vgpr7, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr :: (store (s128) into %stack.0 + 16, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $vgpr8_vgpr9_vgpr10_vgpr11, $sgpr32, 32, 0, implicit $exec, implicit $flat_scr :: (store (s128) into %stack.0 + 32, align 4, addrspace 5) @@ -1397,6 +2399,72 @@ ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_v32 ; FLATSCR-GFX90A-V2A: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $agpr4, $agpr5, $agpr6, $agpr7, $agpr8, $agpr9, $agpr10, $agpr11, $agpr12, $agpr13, $agpr14, $agpr15, $agpr16, $agpr17, $agpr18, $agpr19, $agpr20, $agpr21, $agpr22, $agpr23, $agpr24, $agpr25, $agpr26, $agpr27, $agpr28, $agpr29, $agpr30, $agpr31 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $agpr28 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 ; FLATSCR-GFX90A-V2A-NEXT: $agpr29 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15_vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31 @@ -1482,7 +2550,10 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_a1 - ; MUBUF: $agpr0 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-NEXT: $agpr0 = IMPLICIT_DEF ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: $vgpr0 = BUFFER_LOAD_DWORD_OFFSET $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (load (s32) from %stack.0, addrspace 5) @@ -1491,12 +2562,19 @@ ; MUBUF-V2A-LABEL: name: test_spill_a1 ; MUBUF-V2A: liveins: $vgpr0 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 ; MUBUF-V2A-NEXT: $agpr0 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec ; MUBUF-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_a1 - ; FLATSCR: $agpr0 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-NEXT: $agpr0 = IMPLICIT_DEF ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec ; FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr0, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.0, addrspace 5) ; FLATSCR-NEXT: $vgpr0 = SCRATCH_LOAD_DWORD_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (load (s32) from %stack.0, addrspace 5) @@ -1505,30 +2583,48 @@ ; FLATSCR-V2A-LABEL: name: test_spill_a1 ; FLATSCR-V2A: liveins: $vgpr0 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 ; FLATSCR-V2A-NEXT: $agpr0 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec ; FLATSCR-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_a1 - ; MUBUF-GFX90A: $agpr0 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-NEXT: $agpr0 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: $agpr0 = BUFFER_LOAD_DWORD_OFFSET $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (load (s32) from %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_a1 ; MUBUF-GFX90A-V2A: liveins: $vgpr0 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 ; MUBUF-GFX90A-V2A-NEXT: $agpr0 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec ; MUBUF-GFX90A-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_a1 - ; FLATSCR-GFX90A: $agpr0 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-NEXT: $agpr0 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr0, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.0, addrspace 5) ; FLATSCR-GFX90A-NEXT: $agpr0 = SCRATCH_LOAD_DWORD_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (load (s32) from %stack.0, addrspace 5) ; FLATSCR-GFX90A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_a1 ; FLATSCR-GFX90A-V2A: liveins: $vgpr0 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $agpr0 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec ; FLATSCR-GFX90A-V2A-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec @@ -1552,7 +2648,11 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_a2 - ; MUBUF: $agpr0_agpr1 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-NEXT: $agpr0_agpr1 = IMPLICIT_DEF ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1 ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit $agpr0_agpr1 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1565,6 +2665,12 @@ ; MUBUF-V2A-LABEL: name: test_spill_a2 ; MUBUF-V2A: liveins: $vgpr0, $vgpr1 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 ; MUBUF-V2A-NEXT: $agpr0_agpr1 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1, implicit $agpr0_agpr1 ; MUBUF-V2A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec, implicit killed $agpr0_agpr1 @@ -1572,7 +2678,11 @@ ; MUBUF-V2A-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_a2 - ; FLATSCR: $agpr0_agpr1 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-NEXT: $agpr0_agpr1 = IMPLICIT_DEF ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1 ; FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr0, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit $agpr0_agpr1 :: (store (s32) into %stack.0, addrspace 5) ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1585,6 +2695,12 @@ ; FLATSCR-V2A-LABEL: name: test_spill_a2 ; FLATSCR-V2A: liveins: $vgpr0, $vgpr1 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 ; FLATSCR-V2A-NEXT: $agpr0_agpr1 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1, implicit $agpr0_agpr1 ; FLATSCR-V2A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec, implicit killed $agpr0_agpr1 @@ -1592,7 +2708,11 @@ ; FLATSCR-V2A-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_a2 - ; MUBUF-GFX90A: $agpr0_agpr1 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-NEXT: $agpr0_agpr1 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $agpr0_agpr1, implicit $agpr0_agpr1 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec, implicit killed $agpr0_agpr1 :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: $agpr0 = BUFFER_LOAD_DWORD_OFFSET $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $agpr0_agpr1 :: (load (s32) from %stack.0, addrspace 5) @@ -1601,6 +2721,12 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_a2 ; MUBUF-GFX90A-V2A: liveins: $vgpr0, $vgpr1 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 ; MUBUF-GFX90A-V2A-NEXT: $agpr0_agpr1 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1, implicit $agpr0_agpr1 ; MUBUF-GFX90A-V2A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec, implicit killed $agpr0_agpr1 @@ -1608,13 +2734,23 @@ ; MUBUF-GFX90A-V2A-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_a2 - ; FLATSCR-GFX90A: $agpr0_agpr1 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-NEXT: $agpr0_agpr1 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX2_SADDR killed $agpr0_agpr1, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s64) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: $agpr0_agpr1 = SCRATCH_LOAD_DWORDX2_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (load (s64) from %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_a2 ; FLATSCR-GFX90A-V2A: liveins: $vgpr0, $vgpr1 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $agpr0_agpr1 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec, implicit-def $agpr0_agpr1, implicit $agpr0_agpr1 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit killed $agpr0_agpr1 @@ -1640,7 +2776,12 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_a3 - ; MUBUF: $agpr0_agpr1_agpr2 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-NEXT: $agpr0_agpr1_agpr2 = IMPLICIT_DEF ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2 ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit $agpr0_agpr1_agpr2 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1657,6 +2798,14 @@ ; MUBUF-V2A-LABEL: name: test_spill_a3 ; MUBUF-V2A: liveins: $vgpr0, $vgpr1, $vgpr2 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 ; MUBUF-V2A-NEXT: $agpr0_agpr1_agpr2 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2, implicit $agpr0_agpr1_agpr2 ; MUBUF-V2A-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1666,7 +2815,12 @@ ; MUBUF-V2A-NEXT: $agpr2 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_a3 - ; FLATSCR: $agpr0_agpr1_agpr2 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-NEXT: $agpr0_agpr1_agpr2 = IMPLICIT_DEF ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2 ; FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr0, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit $agpr0_agpr1_agpr2 :: (store (s32) into %stack.0, addrspace 5) ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1683,6 +2837,14 @@ ; FLATSCR-V2A-LABEL: name: test_spill_a3 ; FLATSCR-V2A: liveins: $vgpr0, $vgpr1, $vgpr2 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 ; FLATSCR-V2A-NEXT: $agpr0_agpr1_agpr2 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2, implicit $agpr0_agpr1_agpr2 ; FLATSCR-V2A-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1692,7 +2854,12 @@ ; FLATSCR-V2A-NEXT: $agpr2 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_a3 - ; MUBUF-GFX90A: $agpr0_agpr1_agpr2 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-NEXT: $agpr0_agpr1_agpr2 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $agpr0_agpr1_agpr2, implicit $agpr0_agpr1_agpr2 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec, implicit killed $agpr0_agpr1_agpr2 :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -1703,6 +2870,14 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_a3 ; MUBUF-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 ; MUBUF-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2, implicit $agpr0_agpr1_agpr2 ; MUBUF-GFX90A-V2A-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1712,13 +2887,26 @@ ; MUBUF-GFX90A-V2A-NEXT: $agpr2 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_a3 - ; FLATSCR-GFX90A: $agpr0_agpr1_agpr2 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-NEXT: $agpr0_agpr1_agpr2 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX3_SADDR killed $agpr0_agpr1_agpr2, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s96) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: $agpr0_agpr1_agpr2 = SCRATCH_LOAD_DWORDX3_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (load (s96) from %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_a3 ; FLATSCR-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr2, implicit $exec, implicit-def $agpr0_agpr1_agpr2, implicit $agpr0_agpr1_agpr2 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec, implicit $agpr0_agpr1_agpr2 @@ -1746,7 +2934,13 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_a4 - ; MUBUF: $agpr0_agpr1_agpr2_agpr3 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-NEXT: $agpr0_agpr1_agpr2_agpr3 = IMPLICIT_DEF ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3 ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1767,6 +2961,16 @@ ; MUBUF-V2A-LABEL: name: test_spill_a4 ; MUBUF-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 ; MUBUF-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $vgpr3 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3, implicit $agpr0_agpr1_agpr2_agpr3 ; MUBUF-V2A-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1778,7 +2982,13 @@ ; MUBUF-V2A-NEXT: $agpr3 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_a4 - ; FLATSCR: $agpr0_agpr1_agpr2_agpr3 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-NEXT: $agpr0_agpr1_agpr2_agpr3 = IMPLICIT_DEF ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3 ; FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr0, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit $agpr0_agpr1_agpr2_agpr3 :: (store (s32) into %stack.0, addrspace 5) ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1799,6 +3009,16 @@ ; FLATSCR-V2A-LABEL: name: test_spill_a4 ; FLATSCR-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 ; FLATSCR-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $vgpr3 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3, implicit $agpr0_agpr1_agpr2_agpr3 ; FLATSCR-V2A-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1810,7 +3030,13 @@ ; FLATSCR-V2A-NEXT: $agpr3 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_a4 - ; MUBUF-GFX90A: $agpr0_agpr1_agpr2_agpr3 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3, implicit $agpr0_agpr1_agpr2_agpr3 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -1823,6 +3049,16 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_a4 ; MUBUF-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 ; MUBUF-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $vgpr3 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3, implicit $agpr0_agpr1_agpr2_agpr3 ; MUBUF-GFX90A-V2A-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1834,13 +3070,29 @@ ; MUBUF-GFX90A-V2A-NEXT: $agpr3 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_a4 - ; FLATSCR-GFX90A: $agpr0_agpr1_agpr2_agpr3 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $agpr0_agpr1_agpr2_agpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3 = SCRATCH_LOAD_DWORDX4_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (load (s128) from %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_a4 ; FLATSCR-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr3, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3, implicit $agpr0_agpr1_agpr2_agpr3 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr2, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3 @@ -1870,7 +3122,14 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_a5 - ; MUBUF: $agpr0_agpr1_agpr2_agpr3_agpr4 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4 = IMPLICIT_DEF ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4 ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1895,6 +3154,18 @@ ; MUBUF-V2A-LABEL: name: test_spill_a5 ; MUBUF-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 ; MUBUF-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4, implicit $agpr0_agpr1_agpr2_agpr3_agpr4 ; MUBUF-V2A-NEXT: $vgpr3 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1908,7 +3179,14 @@ ; MUBUF-V2A-NEXT: $agpr4 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_a5 - ; FLATSCR: $agpr0_agpr1_agpr2_agpr3_agpr4 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4 = IMPLICIT_DEF ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4 ; FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr0, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit $agpr0_agpr1_agpr2_agpr3_agpr4 :: (store (s32) into %stack.0, addrspace 5) ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1933,6 +3211,18 @@ ; FLATSCR-V2A-LABEL: name: test_spill_a5 ; FLATSCR-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 ; FLATSCR-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4, implicit $agpr0_agpr1_agpr2_agpr3_agpr4 ; FLATSCR-V2A-NEXT: $vgpr3 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1946,7 +3236,14 @@ ; FLATSCR-V2A-NEXT: $agpr4 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_a5 - ; MUBUF-GFX90A: $agpr0_agpr1_agpr2_agpr3_agpr4 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4, implicit $agpr0_agpr1_agpr2_agpr3_agpr4 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -1961,6 +3258,18 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_a5 ; MUBUF-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 ; MUBUF-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4, implicit $agpr0_agpr1_agpr2_agpr3_agpr4 ; MUBUF-GFX90A-V2A-NEXT: $vgpr3 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1974,7 +3283,14 @@ ; MUBUF-GFX90A-V2A-NEXT: $agpr4 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_a5 - ; FLATSCR-GFX90A: $agpr0_agpr1_agpr2_agpr3_agpr4 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $agpr0_agpr1_agpr2_agpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4, implicit $agpr0_agpr1_agpr2_agpr3_agpr4 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORD_SADDR killed $agpr4, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr, implicit killed $agpr0_agpr1_agpr2_agpr3_agpr4 :: (store (s32) into %stack.0 + 16, addrspace 5) ; FLATSCR-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3 = SCRATCH_LOAD_DWORDX4_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4 :: (load (s128) from %stack.0, align 4, addrspace 5) @@ -1983,6 +3299,18 @@ ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_a5 ; FLATSCR-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr3, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4, implicit $agpr0_agpr1_agpr2_agpr3_agpr4 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 killed $agpr2, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4 @@ -2014,7 +3342,15 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_a6 - ; MUBUF: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 = IMPLICIT_DEF ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2043,6 +3379,20 @@ ; MUBUF-V2A-LABEL: name: test_spill_a6 ; MUBUF-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 ; MUBUF-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $vgpr5 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 ; MUBUF-V2A-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2058,7 +3408,15 @@ ; MUBUF-V2A-NEXT: $agpr5 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_a6 - ; FLATSCR: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 = IMPLICIT_DEF ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 ; FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr0, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 :: (store (s32) into %stack.0, addrspace 5) ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2087,6 +3445,20 @@ ; FLATSCR-V2A-LABEL: name: test_spill_a6 ; FLATSCR-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 ; FLATSCR-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $vgpr5 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 ; FLATSCR-V2A-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2102,7 +3474,15 @@ ; FLATSCR-V2A-NEXT: $agpr5 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_a6 - ; MUBUF-GFX90A: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -2119,6 +3499,20 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_a6 ; MUBUF-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 ; MUBUF-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $vgpr5 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 ; MUBUF-GFX90A-V2A-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2134,7 +3528,15 @@ ; MUBUF-GFX90A-V2A-NEXT: $agpr5 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_a6 - ; FLATSCR-GFX90A: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $agpr0_agpr1_agpr2_agpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX2_SADDR killed $agpr4_agpr5, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr, implicit killed $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 :: (store (s64) into %stack.0 + 16, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3 = SCRATCH_LOAD_DWORDX4_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 :: (load (s128) from %stack.0, align 4, addrspace 5) @@ -2143,6 +3545,20 @@ ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_a6 ; FLATSCR-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 killed $agpr3, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr3 = V_ACCVGPR_READ_B32_e64 killed $agpr2, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 @@ -2176,7 +3592,17 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_a8 - ; MUBUF: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 = IMPLICIT_DEF ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2213,6 +3639,24 @@ ; MUBUF-V2A-LABEL: name: test_spill_a8 ; MUBUF-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 ; MUBUF-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $vgpr7 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 ; MUBUF-V2A-NEXT: $vgpr6 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2232,7 +3676,17 @@ ; MUBUF-V2A-NEXT: $agpr7 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_a8 - ; FLATSCR: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 = IMPLICIT_DEF ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 ; FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr0, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 :: (store (s32) into %stack.0, addrspace 5) ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2269,6 +3723,24 @@ ; FLATSCR-V2A-LABEL: name: test_spill_a8 ; FLATSCR-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 ; FLATSCR-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $vgpr7 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 ; FLATSCR-V2A-NEXT: $vgpr6 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2288,7 +3760,17 @@ ; FLATSCR-V2A-NEXT: $agpr7 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_a8 - ; MUBUF-GFX90A: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -2309,6 +3791,24 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_a8 ; MUBUF-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 ; MUBUF-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $vgpr7 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 ; MUBUF-GFX90A-V2A-NEXT: $vgpr6 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2328,7 +3828,17 @@ ; MUBUF-GFX90A-V2A-NEXT: $agpr7 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_a8 - ; FLATSCR-GFX90A: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $agpr0_agpr1_agpr2_agpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $agpr4_agpr5_agpr6_agpr7, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr, implicit killed $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 :: (store (s128) into %stack.0 + 16, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3 = SCRATCH_LOAD_DWORDX4_SADDR $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 :: (load (s128) from %stack.0, align 4, addrspace 5) @@ -2337,6 +3847,24 @@ ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_a8 ; FLATSCR-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 killed $agpr3, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr5 = V_ACCVGPR_READ_B32_e64 killed $agpr2, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 @@ -2374,7 +3902,25 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_a16 - ; MUBUF: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; MUBUF-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 = IMPLICIT_DEF ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2443,6 +3989,40 @@ ; MUBUF-V2A-LABEL: name: test_spill_a16 ; MUBUF-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 ; MUBUF-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $vgpr15 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 ; MUBUF-V2A-NEXT: $vgpr14 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2478,7 +4058,25 @@ ; MUBUF-V2A-NEXT: $agpr15 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_a16 - ; FLATSCR: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; FLATSCR-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 = IMPLICIT_DEF ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 ; FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr0, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 :: (store (s32) into %stack.0, addrspace 5) ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2547,6 +4145,40 @@ ; FLATSCR-V2A-LABEL: name: test_spill_a16 ; FLATSCR-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 ; FLATSCR-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $vgpr15 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 ; FLATSCR-V2A-NEXT: $vgpr14 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2582,7 +4214,25 @@ ; FLATSCR-V2A-NEXT: $agpr15 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_a16 - ; MUBUF-GFX90A: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; MUBUF-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -2619,6 +4269,40 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_a16 ; MUBUF-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 ; MUBUF-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $vgpr15 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 ; MUBUF-GFX90A-V2A-NEXT: $vgpr14 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2654,7 +4338,25 @@ ; MUBUF-GFX90A-V2A-NEXT: $agpr15 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_a16 - ; FLATSCR-GFX90A: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; FLATSCR-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $agpr0_agpr1_agpr2_agpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $agpr4_agpr5_agpr6_agpr7, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr :: (store (s128) into %stack.0 + 16, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $agpr8_agpr9_agpr10_agpr11, $sgpr32, 32, 0, implicit $exec, implicit $flat_scr :: (store (s128) into %stack.0 + 32, align 4, addrspace 5) @@ -2667,6 +4369,40 @@ ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_a16 ; FLATSCR-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $vgpr12 = V_ACCVGPR_READ_B32_e64 killed $agpr3, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr13 = V_ACCVGPR_READ_B32_e64 killed $agpr2, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 @@ -2720,7 +4456,41 @@ body: | bb.0.entry: ; MUBUF-LABEL: name: test_spill_a32 - ; MUBUF: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 = IMPLICIT_DEF + ; MUBUF: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 + ; MUBUF-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 = IMPLICIT_DEF ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2853,6 +4623,72 @@ ; MUBUF-V2A-LABEL: name: test_spill_a32 ; MUBUF-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15, $vgpr16, $vgpr17, $vgpr18, $vgpr19, $vgpr20, $vgpr21, $vgpr22, $vgpr23, $vgpr24, $vgpr25, $vgpr26, $vgpr27, $vgpr28, $vgpr29, $vgpr30, $vgpr31 ; MUBUF-V2A-NEXT: {{ $}} + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; MUBUF-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 ; MUBUF-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 = IMPLICIT_DEF ; MUBUF-V2A-NEXT: $vgpr31 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 ; MUBUF-V2A-NEXT: $vgpr30 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2920,7 +4756,41 @@ ; MUBUF-V2A-NEXT: $agpr31 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 ; MUBUF-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: test_spill_a32 - ; FLATSCR: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 = IMPLICIT_DEF + ; FLATSCR: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 + ; FLATSCR-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 = IMPLICIT_DEF ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 ; FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr0, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 :: (store (s32) into %stack.0, addrspace 5) ; FLATSCR-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -3053,6 +4923,72 @@ ; FLATSCR-V2A-LABEL: name: test_spill_a32 ; FLATSCR-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15, $vgpr16, $vgpr17, $vgpr18, $vgpr19, $vgpr20, $vgpr21, $vgpr22, $vgpr23, $vgpr24, $vgpr25, $vgpr26, $vgpr27, $vgpr28, $vgpr29, $vgpr30, $vgpr31 ; FLATSCR-V2A-NEXT: {{ $}} + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; FLATSCR-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 ; FLATSCR-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 = IMPLICIT_DEF ; FLATSCR-V2A-NEXT: $vgpr31 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 ; FLATSCR-V2A-NEXT: $vgpr30 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -3120,7 +5056,41 @@ ; FLATSCR-V2A-NEXT: $agpr31 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 ; FLATSCR-V2A-NEXT: S_ENDPGM 0 ; MUBUF-GFX90A-LABEL: name: test_spill_a32 - ; MUBUF-GFX90A: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 = IMPLICIT_DEF + ; MUBUF-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; MUBUF-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 + ; MUBUF-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 = IMPLICIT_DEF ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 :: (store (s32) into %stack.0, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; MUBUF-GFX90A-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) @@ -3189,6 +5159,72 @@ ; MUBUF-GFX90A-V2A-LABEL: name: test_spill_a32 ; MUBUF-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15, $vgpr16, $vgpr17, $vgpr18, $vgpr19, $vgpr20, $vgpr21, $vgpr22, $vgpr23, $vgpr24, $vgpr25, $vgpr26, $vgpr27, $vgpr28, $vgpr29, $vgpr30, $vgpr31 ; MUBUF-GFX90A-V2A-NEXT: {{ $}} + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; MUBUF-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 ; MUBUF-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 = IMPLICIT_DEF ; MUBUF-GFX90A-V2A-NEXT: $vgpr31 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 ; MUBUF-GFX90A-V2A-NEXT: $vgpr30 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -3256,7 +5292,41 @@ ; MUBUF-GFX90A-V2A-NEXT: $agpr31 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 ; MUBUF-GFX90A-V2A-NEXT: S_ENDPGM 0 ; FLATSCR-GFX90A-LABEL: name: test_spill_a32 - ; FLATSCR-GFX90A: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 = IMPLICIT_DEF + ; FLATSCR-GFX90A: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; FLATSCR-GFX90A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 + ; FLATSCR-GFX90A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 = IMPLICIT_DEF ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $agpr0_agpr1_agpr2_agpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 :: (store (s128) into %stack.0, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $agpr4_agpr5_agpr6_agpr7, $sgpr32, 16, 0, implicit $exec, implicit $flat_scr :: (store (s128) into %stack.0 + 16, align 4, addrspace 5) ; FLATSCR-GFX90A-NEXT: SCRATCH_STORE_DWORDX4_SADDR killed $agpr8_agpr9_agpr10_agpr11, $sgpr32, 32, 0, implicit $exec, implicit $flat_scr :: (store (s128) into %stack.0 + 32, align 4, addrspace 5) @@ -3277,6 +5347,72 @@ ; FLATSCR-GFX90A-V2A-LABEL: name: test_spill_a32 ; FLATSCR-GFX90A-V2A: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15, $vgpr16, $vgpr17, $vgpr18, $vgpr19, $vgpr20, $vgpr21, $vgpr22, $vgpr23, $vgpr24, $vgpr25, $vgpr26, $vgpr27, $vgpr28, $vgpr29, $vgpr30, $vgpr31 ; FLATSCR-GFX90A-V2A-NEXT: {{ $}} + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; FLATSCR-GFX90A-V2A-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 ; FLATSCR-GFX90A-V2A-NEXT: $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 = IMPLICIT_DEF ; FLATSCR-GFX90A-V2A-NEXT: $vgpr28 = V_ACCVGPR_READ_B32_e64 killed $agpr3, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 ; FLATSCR-GFX90A-V2A-NEXT: $vgpr29 = V_ACCVGPR_READ_B32_e64 killed $agpr2, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 diff --git a/llvm/test/CodeGen/AMDGPU/pei-cfi-saves-bug.ll b/llvm/test/CodeGen/AMDGPU/pei-cfi-saves-bug.ll new file mode 100644 --- /dev/null +++ b/llvm/test/CodeGen/AMDGPU/pei-cfi-saves-bug.ll @@ -0,0 +1,120 @@ +; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py +; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx900 -amdgpu-spill-cfi-saved-regs < %s | FileCheck %s +; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx908 -amdgpu-spill-cfi-saved-regs < %s | FileCheck %s + +; Function Attrs: noinline optnone +define fastcc void @tail_callee() #2 { +; CHECK-LABEL: tail_callee: +; CHECK: ; %bb.0: +; CHECK-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) +; CHECK-NEXT: s_xor_saveexec_b64 s[4:5], -1 +; CHECK-NEXT: buffer_store_dword v0, off, s[0:3], s32 ; 4-byte Folded Spill +; CHECK-NEXT: s_mov_b64 exec, s[4:5] +; CHECK-NEXT: v_writelane_b32 v0, exec_lo, 0 +; CHECK-NEXT: v_writelane_b32 v0, exec_hi, 1 +; CHECK-NEXT: s_xor_saveexec_b64 s[4:5], -1 +; CHECK-NEXT: buffer_load_dword v0, off, s[0:3], s32 ; 4-byte Folded Reload +; CHECK-NEXT: s_mov_b64 exec, s[4:5] +; CHECK-NEXT: s_waitcnt vmcnt(0) +; CHECK-NEXT: s_setpc_b64 s[30:31] + ret void +} + +; Function Attrs: noinline +define fastcc void @callee_no_fp() #0 { +; CHECK-LABEL: callee_no_fp: +; CHECK: ; %bb.0: ; %entry +; CHECK-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) +; CHECK-NEXT: s_mov_b32 s33, s32 +; CHECK-NEXT: s_xor_saveexec_b64 s[16:17], -1 +; CHECK-NEXT: buffer_store_dword v1, off, s[0:3], s33 ; 4-byte Folded Spill +; CHECK-NEXT: buffer_store_dword v2, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill +; CHECK-NEXT: s_mov_b64 exec, s[16:17] +; CHECK-NEXT: v_writelane_b32 v2, exec_lo, 0 +; CHECK-NEXT: v_writelane_b32 v2, exec_hi, 1 +; CHECK-NEXT: v_writelane_b32 v1, s30, 0 +; CHECK-NEXT: s_addk_i32 s32, 0x400 +; CHECK-NEXT: v_writelane_b32 v1, s31, 1 +; CHECK-NEXT: s_getpc_b64 s[16:17] +; CHECK-NEXT: s_add_u32 s16, s16, tail_callee@gotpcrel32@lo+4 +; CHECK-NEXT: s_addc_u32 s17, s17, tail_callee@gotpcrel32@hi+12 +; CHECK-NEXT: s_load_dwordx2 s[16:17], s[16:17], 0x0 +; CHECK-NEXT: s_waitcnt lgkmcnt(0) +; CHECK-NEXT: s_swappc_b64 s[30:31], s[16:17] +entry: + tail call fastcc void @tail_callee() #3 + unreachable +} + +define protected amdgpu_kernel void @kernel() #1 { +; CHECK-LABEL: kernel: +; CHECK: ; %bb.0: ; %entry +; CHECK-NEXT: s_add_u32 flat_scratch_lo, s12, s17 +; CHECK-NEXT: s_addc_u32 flat_scratch_hi, s13, 0 +; CHECK-NEXT: s_add_u32 s0, s0, s17 +; CHECK-NEXT: s_addc_u32 s1, s1, 0 +; CHECK-NEXT: s_mov_b32 s32, 0 +; CHECK-NEXT: s_cbranch_scc0 .LBB2_2 +; CHECK-NEXT: ; %bb.1: ; %end +; CHECK-NEXT: s_endpgm +; CHECK-NEXT: .LBB2_2: ; %body +; CHECK-NEXT: s_getpc_b64 s[12:13] +; CHECK-NEXT: s_add_u32 s12, s12, callee_no_fp@gotpcrel32@lo+4 +; CHECK-NEXT: s_addc_u32 s13, s13, callee_no_fp@gotpcrel32@hi+12 +; CHECK-NEXT: s_load_dwordx2 s[18:19], s[12:13], 0x0 +; CHECK-NEXT: v_lshlrev_b32_e32 v2, 20, v2 +; CHECK-NEXT: v_lshlrev_b32_e32 v1, 10, v1 +; CHECK-NEXT: v_or3_b32 v31, v0, v1, v2 +; CHECK-NEXT: s_mov_b32 s12, s14 +; CHECK-NEXT: s_mov_b32 s13, s15 +; CHECK-NEXT: s_mov_b32 s14, s16 +; CHECK-NEXT: s_waitcnt lgkmcnt(0) +; CHECK-NEXT: s_swappc_b64 s[30:31], s[18:19] +entry: + br i1 undef, label %end, label %body + +body: ; preds = %entry + tail call fastcc void @callee_no_fp() #3 + unreachable + +end: ; preds = %entry + ret void +} + +; When we have calls, spilling a CSR VGPR for CFI saves should force FP usage +; Function Attrs: noinline +define dso_local fastcc void @func_needs_fp() unnamed_addr #0 { +; CHECK-LABEL: func_needs_fp: +; CHECK: func_needs_fp$local: +; CHECK-NEXT: .type func_needs_fp$local,@function +; CHECK-NEXT: ; %bb.0: ; %entry +; CHECK-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) +; CHECK-NEXT: s_mov_b32 s16, s33 +; CHECK-NEXT: s_mov_b32 s33, s32 +; CHECK-NEXT: s_or_saveexec_b64 s[18:19], -1 +; CHECK-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill +; CHECK-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill +; CHECK-NEXT: s_mov_b64 exec, s[18:19] +; CHECK-NEXT: v_writelane_b32 v41, exec_lo, 0 +; CHECK-NEXT: v_writelane_b32 v41, exec_hi, 1 +; CHECK-NEXT: v_writelane_b32 v41, s16, 2 +; CHECK-NEXT: v_writelane_b32 v40, s30, 0 +; CHECK-NEXT: s_addk_i32 s32, 0x400 +; CHECK-NEXT: v_writelane_b32 v40, s31, 1 +; CHECK-NEXT: s_getpc_b64 s[16:17] +; CHECK-NEXT: s_add_u32 s16, s16, tail_callee_fp@rel32@lo+4 +; CHECK-NEXT: s_addc_u32 s17, s17, tail_callee_fp@rel32@hi+12 +; CHECK-NEXT: s_swappc_b64 s[30:31], s[16:17] +entry: + tail call fastcc void @tail_callee_fp() #3 + unreachable +} + +; Function Attrs: noinline optnone +declare dso_local fastcc void @tail_callee_fp() unnamed_addr #2 + +attributes #0 = { noinline } +attributes #1 = { "use-soft-float"="false" } +attributes #2 = { noinline optnone } +attributes #3 = { convergent nounwind } + diff --git a/llvm/test/CodeGen/AMDGPU/pei-reg-scavenger-position.mir b/llvm/test/CodeGen/AMDGPU/pei-reg-scavenger-position.mir --- a/llvm/test/CodeGen/AMDGPU/pei-reg-scavenger-position.mir +++ b/llvm/test/CodeGen/AMDGPU/pei-reg-scavenger-position.mir @@ -27,6 +27,8 @@ ; CHECK-NEXT: successors: %bb.1(0x80000000) ; CHECK-NEXT: liveins: $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr4 ; CHECK-NEXT: {{ $}} + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x0f, 0x04, 0x30, 0x36, 0xe9, 0x02 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $pc_reg ; CHECK-NEXT: $sgpr0 = S_ADD_U32 $sgpr0, $sgpr4, implicit-def $scc, implicit-def $sgpr0_sgpr1_sgpr2_sgpr3 ; CHECK-NEXT: $sgpr1 = S_ADDC_U32 $sgpr1, 0, implicit-def dead $scc, implicit $scc, implicit-def $sgpr0_sgpr1_sgpr2_sgpr3 ; CHECK-NEXT: $sgpr4 = S_MOV_B32 524288 diff --git a/llvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr-carry-out.mir b/llvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr-carry-out.mir --- a/llvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr-carry-out.mir +++ b/llvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr-carry-out.mir @@ -29,14 +29,46 @@ ; CHECK-LABEL: name: scavenge_sgpr_pei_no_sgprs ; CHECK: liveins: $vgpr1, $vgpr2 ; CHECK-NEXT: {{ $}} + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; CHECK-NEXT: $sgpr4 = COPY $sgpr33 ; CHECK-NEXT: $sgpr33 = frame-setup S_ADD_I32 $sgpr32, 524224, implicit-def $scc ; CHECK-NEXT: $sgpr33 = frame-setup S_AND_B32 killed $sgpr33, 4294443008, implicit-def dead $scc ; CHECK-NEXT: $sgpr6_sgpr7 = S_XOR_SAVEEXEC_B64 -1, implicit-def $exec, implicit-def dead $scc, implicit $exec ; CHECK-NEXT: $sgpr5 = S_ADD_I32 $sgpr33, 1048832, implicit-def dead $scc ; CHECK-NEXT: BUFFER_STORE_DWORD_OFFSET $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, killed $sgpr5, 0, 0, 0, implicit $exec :: (store (s32) into %stack.3, addrspace 5) + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION offset $vgpr2_lo16, 1048832 ; CHECK-NEXT: $exec = S_MOV_B64 killed $sgpr6_sgpr7 ; CHECK-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr4, 0, undef $vgpr2 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x41, 0x06, 0x90, 0x82, 0x14, 0xe9, 0x05, 0x00 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION def_cfa_register $sgpr33_lo16 ; CHECK-NEXT: $sgpr32 = frame-setup S_ADD_I32 $sgpr32, 2097152, implicit-def dead $scc ; CHECK-NEXT: S_NOP 0, implicit-def $sgpr4, implicit-def $sgpr5, implicit-def $sgpr6, implicit-def $sgpr7, implicit-def $sgpr8, implicit-def $sgpr9, implicit-def $sgpr10, implicit-def $sgpr11, implicit-def $sgpr12, implicit-def $sgpr13, implicit-def $sgpr14, implicit-def $sgpr15, implicit-def $sgpr16, implicit-def $sgpr17, implicit-def $sgpr18, implicit-def $sgpr19, implicit-def $sgpr20, implicit-def $sgpr21, implicit-def $sgpr22, implicit-def $sgpr23, implicit-def $sgpr24, implicit-def $sgpr25, implicit-def $sgpr26, implicit-def $sgpr27, implicit-def $sgpr28, implicit-def $sgpr29, implicit-def $sgpr30, implicit-def $sgpr31, implicit-def $vcc ; CHECK-NEXT: $sgpr33 = S_LSHR_B32 $sgpr33, 6, implicit-def $scc @@ -56,6 +88,7 @@ ; CHECK-NEXT: $vgpr2 = BUFFER_LOAD_DWORD_OFFSET $sgpr0_sgpr1_sgpr2_sgpr3, killed $sgpr5, 0, 0, 0, implicit $exec :: (load (s32) from %stack.3, addrspace 5) ; CHECK-NEXT: $exec = S_MOV_B64 killed $sgpr6_sgpr7 ; CHECK-NEXT: $sgpr32 = frame-destroy S_ADD_I32 $sgpr32, -2097152, implicit-def dead $scc + ; CHECK-NEXT: frame-destroy CFI_INSTRUCTION def_cfa_register $sgpr32_lo16 ; CHECK-NEXT: $sgpr33 = COPY $sgpr4 ; CHECK-NEXT: S_ENDPGM 0, implicit $vcc S_NOP 0, implicit-def $sgpr4, implicit-def $sgpr5, implicit-def $sgpr6, implicit-def $sgpr7, implicit-def $sgpr8, implicit-def $sgpr9, implicit-def $sgpr10, implicit-def $sgpr11, implicit-def $sgpr12, implicit-def $sgpr13, implicit-def $sgpr14, implicit-def $sgpr15, implicit-def $sgpr16, implicit-def $sgpr17, implicit-def $sgpr18, implicit-def $sgpr19, implicit-def $sgpr20, implicit-def $sgpr21, implicit-def $sgpr22, implicit-def $sgpr23, implicit-def $sgpr24, implicit-def $sgpr25, implicit-def $sgpr26, implicit-def $sgpr27, implicit-def $sgpr28, implicit-def $sgpr29, implicit-def $sgpr30, implicit-def $sgpr31, implicit-def $vcc @@ -88,9 +121,39 @@ ; CHECK-LABEL: name: scavenge_sgpr_pei_one_sgpr ; CHECK: liveins: $sgpr29, $vgpr1 ; CHECK-NEXT: {{ $}} + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 ; CHECK-NEXT: $sgpr29 = frame-setup COPY $sgpr33 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION register $sgpr33_lo16, $sgpr29_lo16 ; CHECK-NEXT: $sgpr33 = frame-setup S_ADD_I32 $sgpr32, 524224, implicit-def $scc ; CHECK-NEXT: $sgpr33 = frame-setup S_AND_B32 killed $sgpr33, 4294443008, implicit-def dead $scc + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION def_cfa_register $sgpr33_lo16 ; CHECK-NEXT: $sgpr32 = frame-setup S_ADD_I32 $sgpr32, 2097152, implicit-def dead $scc ; CHECK-NEXT: S_NOP 0, implicit-def $sgpr4, implicit-def $sgpr5, implicit-def $sgpr6, implicit-def $sgpr7, implicit-def $sgpr8, implicit-def $sgpr9, implicit-def $sgpr10, implicit-def $sgpr11, implicit-def $sgpr12, implicit-def $sgpr13, implicit-def $sgpr14, implicit-def $sgpr15, implicit-def $sgpr16, implicit-def $sgpr17, implicit-def $sgpr18, implicit-def $sgpr19, implicit-def $sgpr20, implicit-def $sgpr21, implicit-def $sgpr22, implicit-def $sgpr23, implicit-def $sgpr24, implicit-def $sgpr25, implicit-def $sgpr26, implicit-def $sgpr27, implicit-def $sgpr28, implicit-def $sgpr30, implicit-def $sgpr31, implicit-def $vcc ; CHECK-NEXT: $sgpr33 = S_LSHR_B32 $sgpr33, 6, implicit-def $scc @@ -105,6 +168,7 @@ ; CHECK-NEXT: $sgpr33 = S_LSHL_B32 $sgpr33, 6, implicit-def $scc ; CHECK-NEXT: $vgpr0 = V_OR_B32_e32 killed $vgpr2, $vgpr1, implicit $exec, implicit $sgpr4, implicit $sgpr5, implicit $sgpr6, implicit $sgpr7, implicit $sgpr8, implicit $sgpr9, implicit $sgpr10, implicit $sgpr11, implicit $sgpr12, implicit $sgpr13, implicit $sgpr14, implicit $sgpr15, implicit $sgpr16, implicit $sgpr17, implicit $sgpr18, implicit $sgpr19, implicit $sgpr20, implicit $sgpr21, implicit $sgpr22, implicit $sgpr23, implicit $sgpr24, implicit $sgpr25, implicit $sgpr26, implicit $sgpr27, implicit $sgpr28, implicit $sgpr31 ; CHECK-NEXT: $sgpr32 = frame-destroy S_ADD_I32 $sgpr32, -2097152, implicit-def dead $scc + ; CHECK-NEXT: frame-destroy CFI_INSTRUCTION def_cfa_register $sgpr32_lo16 ; CHECK-NEXT: $sgpr33 = frame-destroy COPY $sgpr29 ; CHECK-NEXT: S_ENDPGM 0, implicit $vcc S_NOP 0, implicit-def $sgpr4, implicit-def $sgpr5, implicit-def $sgpr6, implicit-def $sgpr7, implicit-def $sgpr8, implicit-def $sgpr9, implicit-def $sgpr10, implicit-def $sgpr11, implicit-def $sgpr12, implicit-def $sgpr13, implicit-def $sgpr14, implicit-def $sgpr15, implicit-def $sgpr16, implicit-def $sgpr17, implicit-def $sgpr18, implicit-def $sgpr19, implicit-def $sgpr20, implicit-def $sgpr21, implicit-def $sgpr22, implicit-def $sgpr23, implicit-def $sgpr24, implicit-def $sgpr25, implicit-def $sgpr26, implicit-def $sgpr27, implicit-def $sgpr28, implicit-def $sgpr30, implicit-def $sgpr31, implicit-def $vcc @@ -137,9 +201,38 @@ ; CHECK-LABEL: name: scavenge_sgpr_pei_one_sgpr_64 ; CHECK: liveins: $sgpr28, $vgpr1 ; CHECK-NEXT: {{ $}} + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 ; CHECK-NEXT: $sgpr28 = frame-setup COPY $sgpr33 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION register $sgpr33_lo16, $sgpr28_lo16 ; CHECK-NEXT: $sgpr33 = frame-setup S_ADD_I32 $sgpr32, 524224, implicit-def $scc ; CHECK-NEXT: $sgpr33 = frame-setup S_AND_B32 killed $sgpr33, 4294443008, implicit-def dead $scc + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION def_cfa_register $sgpr33_lo16 ; CHECK-NEXT: $sgpr32 = frame-setup S_ADD_I32 $sgpr32, 2097152, implicit-def dead $scc ; CHECK-NEXT: S_NOP 0, implicit-def $sgpr4, implicit-def $sgpr5, implicit-def $sgpr6, implicit-def $sgpr7, implicit-def $sgpr8, implicit-def $sgpr9, implicit-def $sgpr10, implicit-def $sgpr11, implicit-def $sgpr12, implicit-def $sgpr13, implicit-def $sgpr14, implicit-def $sgpr15, implicit-def $sgpr16, implicit-def $sgpr17, implicit-def $sgpr18, implicit-def $sgpr19, implicit-def $sgpr20, implicit-def $sgpr21, implicit-def $sgpr22, implicit-def $sgpr23, implicit-def $sgpr24, implicit-def $sgpr25, implicit-def $sgpr26, implicit-def $sgpr27, implicit-def $sgpr30, implicit-def $sgpr31, implicit-def $vcc ; CHECK-NEXT: $sgpr29 = S_LSHR_B32 $sgpr33, 6, implicit-def $scc @@ -150,6 +243,7 @@ ; CHECK-NEXT: $vgpr2 = COPY killed $sgpr29 ; CHECK-NEXT: $vgpr0 = V_OR_B32_e32 killed $vgpr2, $vgpr1, implicit $exec, implicit $sgpr4, implicit $sgpr5, implicit $sgpr6, implicit $sgpr7, implicit $sgpr8, implicit $sgpr9, implicit $sgpr10, implicit $sgpr11, implicit $sgpr12, implicit $sgpr13, implicit $sgpr14, implicit $sgpr15, implicit $sgpr16, implicit $sgpr17, implicit $sgpr18, implicit $sgpr19, implicit $sgpr20, implicit $sgpr21, implicit $sgpr22, implicit $sgpr23, implicit $sgpr24, implicit $sgpr25, implicit $sgpr26, implicit $sgpr27, implicit $sgpr31 ; CHECK-NEXT: $sgpr32 = frame-destroy S_ADD_I32 $sgpr32, -2097152, implicit-def dead $scc + ; CHECK-NEXT: frame-destroy CFI_INSTRUCTION def_cfa_register $sgpr32_lo16 ; CHECK-NEXT: $sgpr33 = frame-destroy COPY $sgpr28 ; CHECK-NEXT: S_ENDPGM 0, implicit $vcc S_NOP 0, implicit-def $sgpr4, implicit-def $sgpr5, implicit-def $sgpr6, implicit-def $sgpr7, implicit-def $sgpr8, implicit-def $sgpr9, implicit-def $sgpr10, implicit-def $sgpr11, implicit-def $sgpr12, implicit-def $sgpr13, implicit-def $sgpr14, implicit-def $sgpr15, implicit-def $sgpr16, implicit-def $sgpr17, implicit-def $sgpr18, implicit-def $sgpr19, implicit-def $sgpr20, implicit-def $sgpr21, implicit-def $sgpr22, implicit-def $sgpr23, implicit-def $sgpr24, implicit-def $sgpr25, implicit-def $sgpr26, implicit-def $sgpr27, implicit-def $sgpr30, implicit-def $sgpr31, implicit-def $vcc @@ -181,9 +275,38 @@ ; CHECK-LABEL: name: scavenge_sgpr_pei_prefer_vcc ; CHECK: liveins: $sgpr28, $vgpr1 ; CHECK-NEXT: {{ $}} + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 ; CHECK-NEXT: $sgpr28 = frame-setup COPY $sgpr33 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION register $sgpr33_lo16, $sgpr28_lo16 ; CHECK-NEXT: $sgpr33 = frame-setup S_ADD_I32 $sgpr32, 524224, implicit-def $scc ; CHECK-NEXT: $sgpr33 = frame-setup S_AND_B32 killed $sgpr33, 4294443008, implicit-def dead $scc + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION def_cfa_register $sgpr33_lo16 ; CHECK-NEXT: $sgpr32 = frame-setup S_ADD_I32 $sgpr32, 2097152, implicit-def dead $scc ; CHECK-NEXT: S_NOP 0, implicit-def $sgpr4, implicit-def $sgpr5, implicit-def $sgpr6, implicit-def $sgpr7, implicit-def $sgpr8, implicit-def $sgpr9, implicit-def $sgpr10, implicit-def $sgpr11, implicit-def $sgpr12, implicit-def $sgpr13, implicit-def $sgpr14, implicit-def $sgpr15, implicit-def $sgpr16, implicit-def $sgpr17, implicit-def $sgpr18, implicit-def $sgpr19, implicit-def $sgpr20, implicit-def $sgpr21, implicit-def $sgpr22, implicit-def $sgpr23, implicit-def $sgpr24, implicit-def $sgpr25, implicit-def $sgpr26, implicit-def $sgpr27, implicit-def $sgpr30, implicit-def $sgpr31 ; CHECK-NEXT: $vgpr0 = V_LSHRREV_B32_e64 6, $sgpr33, implicit $exec @@ -194,6 +317,7 @@ ; CHECK-NEXT: $vgpr2, dead $vcc = V_ADD_CO_U32_e64 killed $vcc_lo, killed $vgpr2, 0, implicit $exec ; CHECK-NEXT: $vgpr0 = V_OR_B32_e32 killed $vgpr2, $vgpr1, implicit $exec, implicit $sgpr4, implicit $sgpr5, implicit $sgpr6, implicit $sgpr7, implicit $sgpr8, implicit $sgpr9, implicit $sgpr10, implicit $sgpr11, implicit $sgpr12, implicit $sgpr13, implicit $sgpr14, implicit $sgpr15, implicit $sgpr16, implicit $sgpr17, implicit $sgpr18, implicit $sgpr19, implicit $sgpr20, implicit $sgpr21, implicit $sgpr22, implicit $sgpr23, implicit $sgpr24, implicit $sgpr25, implicit $sgpr26, implicit $sgpr27, implicit $sgpr31 ; CHECK-NEXT: $sgpr32 = frame-destroy S_ADD_I32 $sgpr32, -2097152, implicit-def dead $scc + ; CHECK-NEXT: frame-destroy CFI_INSTRUCTION def_cfa_register $sgpr32_lo16 ; CHECK-NEXT: $sgpr33 = frame-destroy COPY $sgpr28 ; CHECK-NEXT: S_ENDPGM 0 S_NOP 0, implicit-def $sgpr4, implicit-def $sgpr5, implicit-def $sgpr6, implicit-def $sgpr7, implicit-def $sgpr8, implicit-def $sgpr9, implicit-def $sgpr10, implicit-def $sgpr11, implicit-def $sgpr12, implicit-def $sgpr13, implicit-def $sgpr14, implicit-def $sgpr15, implicit-def $sgpr16, implicit-def $sgpr17, implicit-def $sgpr18, implicit-def $sgpr19, implicit-def $sgpr20, implicit-def $sgpr21, implicit-def $sgpr22, implicit-def $sgpr23, implicit-def $sgpr24, implicit-def $sgpr25, implicit-def $sgpr26, implicit-def $sgpr27, implicit-def $sgpr30, implicit-def $sgpr31 diff --git a/llvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr-gfx9.mir b/llvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr-gfx9.mir --- a/llvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr-gfx9.mir +++ b/llvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr-gfx9.mir @@ -25,14 +25,46 @@ ; MUBUF-LABEL: name: scavenge_sgpr_pei_no_sgprs ; MUBUF: liveins: $vgpr1, $vgpr2 ; MUBUF-NEXT: {{ $}} + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; MUBUF-NEXT: $sgpr4 = COPY $sgpr33 ; MUBUF-NEXT: $sgpr33 = frame-setup S_ADD_I32 $sgpr32, 524224, implicit-def $scc ; MUBUF-NEXT: $sgpr33 = frame-setup S_AND_B32 killed $sgpr33, 4294443008, implicit-def dead $scc ; MUBUF-NEXT: $sgpr6_sgpr7 = S_XOR_SAVEEXEC_B64 -1, implicit-def $exec, implicit-def dead $scc, implicit $exec ; MUBUF-NEXT: $sgpr5 = S_ADD_I32 $sgpr33, 1048832, implicit-def dead $scc ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, killed $sgpr5, 0, 0, 0, implicit $exec :: (store (s32) into %stack.3, addrspace 5) + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION offset $vgpr2_lo16, 1048832 ; MUBUF-NEXT: $exec = S_MOV_B64 killed $sgpr6_sgpr7 ; MUBUF-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr4, 0, undef $vgpr2 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x41, 0x06, 0x90, 0x82, 0x14, 0xe9, 0x05, 0x00 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION def_cfa_register $sgpr33_lo16 ; MUBUF-NEXT: $sgpr32 = frame-setup S_ADD_I32 $sgpr32, 2097152, implicit-def dead $scc ; MUBUF-NEXT: S_NOP 0, implicit-def $sgpr4, implicit-def $sgpr5, implicit-def $sgpr6, implicit-def $sgpr7, implicit-def $sgpr8, implicit-def $sgpr9, implicit-def $sgpr10, implicit-def $sgpr11, implicit-def $sgpr12, implicit-def $sgpr13, implicit-def $sgpr14, implicit-def $sgpr15, implicit-def $sgpr16, implicit-def $sgpr17, implicit-def $sgpr18, implicit-def $sgpr19, implicit-def $sgpr20, implicit-def $sgpr21, implicit-def $sgpr22, implicit-def $sgpr23, implicit-def $sgpr24, implicit-def $sgpr25, implicit-def $sgpr26, implicit-def $sgpr27, implicit-def $sgpr28, implicit-def $sgpr29, implicit-def $sgpr30, implicit-def $sgpr31, implicit-def $vcc ; MUBUF-NEXT: $vgpr0 = V_LSHRREV_B32_e64 6, $sgpr33, implicit $exec @@ -46,19 +78,52 @@ ; MUBUF-NEXT: $vgpr2 = BUFFER_LOAD_DWORD_OFFSET $sgpr0_sgpr1_sgpr2_sgpr3, killed $sgpr5, 0, 0, 0, implicit $exec :: (load (s32) from %stack.3, addrspace 5) ; MUBUF-NEXT: $exec = S_MOV_B64 killed $sgpr6_sgpr7 ; MUBUF-NEXT: $sgpr32 = frame-destroy S_ADD_I32 $sgpr32, -2097152, implicit-def dead $scc + ; MUBUF-NEXT: frame-destroy CFI_INSTRUCTION def_cfa_register $sgpr32_lo16 ; MUBUF-NEXT: $sgpr33 = COPY $sgpr4 ; MUBUF-NEXT: S_ENDPGM 0, implicit $vcc ; FLATSCR-LABEL: name: scavenge_sgpr_pei_no_sgprs ; FLATSCR: liveins: $vgpr1, $vgpr2 ; FLATSCR-NEXT: {{ $}} + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; FLATSCR-NEXT: $sgpr4 = COPY $sgpr33 ; FLATSCR-NEXT: $sgpr33 = frame-setup S_ADD_I32 $sgpr32, 8191, implicit-def $scc ; FLATSCR-NEXT: $sgpr33 = frame-setup S_AND_B32 killed $sgpr33, 4294959104, implicit-def dead $scc ; FLATSCR-NEXT: $sgpr6_sgpr7 = S_XOR_SAVEEXEC_B64 -1, implicit-def $exec, implicit-def dead $scc, implicit $exec ; FLATSCR-NEXT: $sgpr5 = S_ADD_I32 $sgpr33, 16388, implicit-def dead $scc ; FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR $vgpr2, killed $sgpr5, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.3, addrspace 5) + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION offset $vgpr2_lo16, 1048832 ; FLATSCR-NEXT: $exec = S_MOV_B64 killed $sgpr6_sgpr7 ; FLATSCR-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr4, 0, undef $vgpr2 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x41, 0x06, 0x90, 0x82, 0x14, 0xe9, 0x05, 0x00 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION def_cfa_register $sgpr33_lo16 ; FLATSCR-NEXT: $sgpr32 = frame-setup S_ADD_I32 $sgpr32, 32768, implicit-def dead $scc ; FLATSCR-NEXT: S_NOP 0, implicit-def $sgpr4, implicit-def $sgpr5, implicit-def $sgpr6, implicit-def $sgpr7, implicit-def $sgpr8, implicit-def $sgpr9, implicit-def $sgpr10, implicit-def $sgpr11, implicit-def $sgpr12, implicit-def $sgpr13, implicit-def $sgpr14, implicit-def $sgpr15, implicit-def $sgpr16, implicit-def $sgpr17, implicit-def $sgpr18, implicit-def $sgpr19, implicit-def $sgpr20, implicit-def $sgpr21, implicit-def $sgpr22, implicit-def $sgpr23, implicit-def $sgpr24, implicit-def $sgpr25, implicit-def $sgpr26, implicit-def $sgpr27, implicit-def $sgpr28, implicit-def $sgpr29, implicit-def $sgpr30, implicit-def $sgpr31, implicit-def $vcc ; FLATSCR-NEXT: $sgpr33 = S_ADD_I32 $sgpr33, 8192, implicit-def $scc @@ -73,6 +138,7 @@ ; FLATSCR-NEXT: $vgpr2 = SCRATCH_LOAD_DWORD_SADDR killed $sgpr5, 0, 0, implicit $exec, implicit $flat_scr :: (load (s32) from %stack.3, addrspace 5) ; FLATSCR-NEXT: $exec = S_MOV_B64 killed $sgpr6_sgpr7 ; FLATSCR-NEXT: $sgpr32 = frame-destroy S_ADD_I32 $sgpr32, -32768, implicit-def dead $scc + ; FLATSCR-NEXT: frame-destroy CFI_INSTRUCTION def_cfa_register $sgpr32_lo16 ; FLATSCR-NEXT: $sgpr33 = COPY $sgpr4 ; FLATSCR-NEXT: S_ENDPGM 0, implicit $vcc S_NOP 0, implicit-def $sgpr4, implicit-def $sgpr5, implicit-def $sgpr6, implicit-def $sgpr7, implicit-def $sgpr8, implicit-def $sgpr9, implicit-def $sgpr10, implicit-def $sgpr11, implicit-def $sgpr12, implicit-def $sgpr13, implicit-def $sgpr14, implicit-def $sgpr15, implicit-def $sgpr16, implicit-def $sgpr17, implicit-def $sgpr18, implicit-def $sgpr19, implicit-def $sgpr20, implicit-def $sgpr21, implicit-def $sgpr22, implicit-def $sgpr23, implicit-def $sgpr24, implicit-def $sgpr25, implicit-def $sgpr26, implicit-def $sgpr27, implicit-def $sgpr28, implicit-def $sgpr29, implicit-def $sgpr30, implicit-def $sgpr31, implicit-def $vcc diff --git a/llvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr.mir b/llvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr.mir --- a/llvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr.mir +++ b/llvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr.mir @@ -24,14 +24,46 @@ ; CHECK-LABEL: name: scavenge_sgpr_pei ; CHECK: liveins: $vgpr1, $vgpr2 ; CHECK-NEXT: {{ $}} + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; CHECK-NEXT: $sgpr4 = COPY $sgpr33 ; CHECK-NEXT: $sgpr33 = frame-setup S_ADD_I32 $sgpr32, 262080, implicit-def $scc ; CHECK-NEXT: $sgpr33 = frame-setup S_AND_B32 killed $sgpr33, 4294705152, implicit-def dead $scc ; CHECK-NEXT: $sgpr6_sgpr7 = S_XOR_SAVEEXEC_B64 -1, implicit-def $exec, implicit-def dead $scc, implicit $exec ; CHECK-NEXT: $sgpr5 = S_ADD_I32 $sgpr33, 262400, implicit-def dead $scc ; CHECK-NEXT: BUFFER_STORE_DWORD_OFFSET $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, killed $sgpr5, 0, 0, 0, implicit $exec :: (store (s32) into %stack.2, addrspace 5) + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION offset $vgpr2_lo16, 262400 ; CHECK-NEXT: $exec = S_MOV_B64 killed $sgpr6_sgpr7 ; CHECK-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr4, 0, undef $vgpr2 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x41, 0x06, 0x90, 0x82, 0x14, 0xe9, 0x05, 0x00 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION def_cfa_register $sgpr33_lo16 ; CHECK-NEXT: $sgpr32 = frame-setup S_ADD_I32 $sgpr32, 786432, implicit-def dead $scc ; CHECK-NEXT: S_NOP 0, implicit-def $sgpr4, implicit-def $sgpr5, implicit-def $sgpr6, implicit-def $sgpr7, implicit-def $sgpr8, implicit-def $sgpr9, implicit-def $sgpr10, implicit-def $sgpr11, implicit-def $sgpr12, implicit-def $sgpr13, implicit-def $sgpr14, implicit-def $sgpr15, implicit-def $sgpr16, implicit-def $sgpr17, implicit-def $sgpr18, implicit-def $sgpr19, implicit-def $sgpr20, implicit-def $sgpr21, implicit-def $sgpr22, implicit-def $sgpr23, implicit-def $sgpr24, implicit-def $sgpr25, implicit-def $sgpr26, implicit-def $sgpr27, implicit-def $sgpr28, implicit-def $sgpr29, implicit-def $sgpr30, implicit-def $sgpr31, implicit-def $vcc ; CHECK-NEXT: $sgpr33 = S_LSHR_B32 $sgpr33, 6, implicit-def $scc @@ -46,6 +78,7 @@ ; CHECK-NEXT: $vgpr2 = BUFFER_LOAD_DWORD_OFFSET $sgpr0_sgpr1_sgpr2_sgpr3, killed $sgpr5, 0, 0, 0, implicit $exec :: (load (s32) from %stack.2, addrspace 5) ; CHECK-NEXT: $exec = S_MOV_B64 killed $sgpr6_sgpr7 ; CHECK-NEXT: $sgpr32 = frame-destroy S_ADD_I32 $sgpr32, -786432, implicit-def dead $scc + ; CHECK-NEXT: frame-destroy CFI_INSTRUCTION def_cfa_register $sgpr32_lo16 ; CHECK-NEXT: $sgpr33 = COPY $sgpr4 ; CHECK-NEXT: S_ENDPGM 0, implicit $vcc S_NOP 0, implicit-def $sgpr4, implicit-def $sgpr5, implicit-def $sgpr6, implicit-def $sgpr7, implicit-def $sgpr8, implicit-def $sgpr9, implicit-def $sgpr10, implicit-def $sgpr11, implicit-def $sgpr12, implicit-def $sgpr13, implicit-def $sgpr14, implicit-def $sgpr15, implicit-def $sgpr16, implicit-def $sgpr17, implicit-def $sgpr18, implicit-def $sgpr19, implicit-def $sgpr20, implicit-def $sgpr21, implicit-def $sgpr22, implicit-def $sgpr23, implicit-def $sgpr24, implicit-def $sgpr25, implicit-def $sgpr26, implicit-def $sgpr27, implicit-def $sgpr28, implicit-def $sgpr29, implicit-def $sgpr30, implicit-def $sgpr31, implicit-def $vcc diff --git a/llvm/test/CodeGen/AMDGPU/pei-scavenge-vgpr-spill.mir b/llvm/test/CodeGen/AMDGPU/pei-scavenge-vgpr-spill.mir --- a/llvm/test/CodeGen/AMDGPU/pei-scavenge-vgpr-spill.mir +++ b/llvm/test/CodeGen/AMDGPU/pei-scavenge-vgpr-spill.mir @@ -20,86 +20,226 @@ stackPtrOffsetReg: $sgpr32 body: | + ; GFX8-LABEL: name: pei_scavenge_vgpr_spill + ; GFX8: bb.0: + ; GFX8-NEXT: successors: %bb.1(0x80000000) + ; GFX8-NEXT: liveins: $vgpr2, $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 + ; GFX8-NEXT: {{ $}} + ; GFX8-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX8-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 + ; GFX8-NEXT: $sgpr4 = COPY $sgpr33 + ; GFX8-NEXT: $sgpr33 = frame-setup S_ADD_I32 $sgpr32, 524224, implicit-def $scc + ; GFX8-NEXT: $sgpr33 = frame-setup S_AND_B32 killed $sgpr33, 4294443008, implicit-def dead $scc + ; GFX8-NEXT: $sgpr6_sgpr7 = S_XOR_SAVEEXEC_B64 -1, implicit-def $exec, implicit-def dead $scc, implicit $exec + ; GFX8-NEXT: $sgpr5 = S_ADD_I32 $sgpr33, 1048832, implicit-def dead $scc + ; GFX8-NEXT: BUFFER_STORE_DWORD_OFFSET $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, killed $sgpr5, 0, 0, 0, implicit $exec :: (store (s32) into %stack.3, addrspace 5) + ; GFX8-NEXT: frame-setup CFI_INSTRUCTION offset $vgpr2_lo16, 1048832 + ; GFX8-NEXT: $exec = S_MOV_B64 killed $sgpr6_sgpr7 + ; GFX8-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr4, 0, undef $vgpr2 + ; GFX8-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x41, 0x06, 0x90, 0x82, 0x14, 0xe9, 0x05, 0x00 + ; GFX8-NEXT: frame-setup CFI_INSTRUCTION def_cfa_register $sgpr33_lo16 + ; GFX8-NEXT: $sgpr32 = frame-setup S_ADD_I32 $sgpr32, 2097152, implicit-def dead $scc + ; GFX8-NEXT: $vgpr0 = V_LSHRREV_B32_e64 6, $sgpr33, implicit $exec + ; GFX8-NEXT: $vcc_lo = S_MOV_B32 8192 + ; GFX8-NEXT: $vgpr0, dead $vcc = V_ADD_CO_U32_e64 killed $vcc_lo, killed $vgpr0, 0, implicit $exec + ; GFX8-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr33, 0, 0, 0, implicit $exec :: (store (s32) into %stack.4, addrspace 5) + ; GFX8-NEXT: $vgpr2 = V_LSHRREV_B32_e64 6, $sgpr33, implicit $exec + ; GFX8-NEXT: $vcc_lo = S_MOV_B32 16384 + ; GFX8-NEXT: $vgpr2, dead $vcc = V_ADD_CO_U32_e64 killed $vcc_lo, killed $vgpr2, 0, implicit $exec + ; GFX8-NEXT: $vgpr0 = V_OR_B32_e32 killed $vgpr2, $vgpr1, implicit $exec + ; GFX8-NEXT: $vgpr2 = BUFFER_LOAD_DWORD_OFFSET $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr33, 0, 0, 0, implicit $exec :: (load (s32) from %stack.4, addrspace 5) + ; GFX8-NEXT: S_BRANCH %bb.1 + ; GFX8-NEXT: {{ $}} + ; GFX8-NEXT: bb.1: + ; GFX8-NEXT: liveins: $vgpr2, $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 + ; GFX8-NEXT: {{ $}} + ; GFX8-NEXT: $sgpr4 = V_READLANE_B32 $vgpr2, 0 + ; GFX8-NEXT: $sgpr6_sgpr7 = S_XOR_SAVEEXEC_B64 -1, implicit-def $exec, implicit-def dead $scc, implicit $exec + ; GFX8-NEXT: $sgpr5 = S_ADD_I32 $sgpr33, 1048832, implicit-def dead $scc + ; GFX8-NEXT: $vgpr2 = BUFFER_LOAD_DWORD_OFFSET $sgpr0_sgpr1_sgpr2_sgpr3, killed $sgpr5, 0, 0, 0, implicit $exec :: (load (s32) from %stack.3, addrspace 5) + ; GFX8-NEXT: $exec = S_MOV_B64 killed $sgpr6_sgpr7 + ; GFX8-NEXT: $sgpr32 = frame-destroy S_ADD_I32 $sgpr32, -2097152, implicit-def dead $scc + ; GFX8-NEXT: frame-destroy CFI_INSTRUCTION def_cfa_register $sgpr32_lo16 + ; GFX8-NEXT: $sgpr33 = COPY $sgpr4 + ; GFX8-NEXT: S_ENDPGM 0, amdgpu_allvgprs + ; GFX9-LABEL: name: pei_scavenge_vgpr_spill + ; GFX9: bb.0: + ; GFX9-NEXT: successors: %bb.1(0x80000000) + ; GFX9-NEXT: liveins: $vgpr2, $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 + ; GFX9-NEXT: {{ $}} + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 + ; GFX9-NEXT: $sgpr4 = COPY $sgpr33 + ; GFX9-NEXT: $sgpr33 = frame-setup S_ADD_I32 $sgpr32, 524224, implicit-def $scc + ; GFX9-NEXT: $sgpr33 = frame-setup S_AND_B32 killed $sgpr33, 4294443008, implicit-def dead $scc + ; GFX9-NEXT: $sgpr6_sgpr7 = S_XOR_SAVEEXEC_B64 -1, implicit-def $exec, implicit-def dead $scc, implicit $exec + ; GFX9-NEXT: $sgpr5 = S_ADD_I32 $sgpr33, 1048832, implicit-def dead $scc + ; GFX9-NEXT: BUFFER_STORE_DWORD_OFFSET $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, killed $sgpr5, 0, 0, 0, implicit $exec :: (store (s32) into %stack.3, addrspace 5) + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION offset $vgpr2_lo16, 1048832 + ; GFX9-NEXT: $exec = S_MOV_B64 killed $sgpr6_sgpr7 + ; GFX9-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr4, 0, undef $vgpr2 + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x41, 0x06, 0x90, 0x82, 0x14, 0xe9, 0x05, 0x00 + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION def_cfa_register $sgpr33_lo16 + ; GFX9-NEXT: $sgpr32 = frame-setup S_ADD_I32 $sgpr32, 2097152, implicit-def dead $scc + ; GFX9-NEXT: $vgpr0 = V_LSHRREV_B32_e64 6, $sgpr33, implicit $exec + ; GFX9-NEXT: $vgpr0 = V_ADD_U32_e32 8192, killed $vgpr0, implicit $exec + ; GFX9-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr33, 0, 0, 0, implicit $exec :: (store (s32) into %stack.4, addrspace 5) + ; GFX9-NEXT: $vgpr2 = V_LSHRREV_B32_e64 6, $sgpr33, implicit $exec + ; GFX9-NEXT: $vgpr2 = V_ADD_U32_e32 16384, killed $vgpr2, implicit $exec + ; GFX9-NEXT: $vgpr0 = V_OR_B32_e32 killed $vgpr2, $vgpr1, implicit $exec + ; GFX9-NEXT: $vgpr2 = BUFFER_LOAD_DWORD_OFFSET $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr33, 0, 0, 0, implicit $exec :: (load (s32) from %stack.4, addrspace 5) + ; GFX9-NEXT: S_BRANCH %bb.1 + ; GFX9-NEXT: {{ $}} + ; GFX9-NEXT: bb.1: + ; GFX9-NEXT: liveins: $vgpr2, $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 + ; GFX9-NEXT: {{ $}} + ; GFX9-NEXT: $sgpr4 = V_READLANE_B32 $vgpr2, 0 + ; GFX9-NEXT: $sgpr6_sgpr7 = S_XOR_SAVEEXEC_B64 -1, implicit-def $exec, implicit-def dead $scc, implicit $exec + ; GFX9-NEXT: $sgpr5 = S_ADD_I32 $sgpr33, 1048832, implicit-def dead $scc + ; GFX9-NEXT: $vgpr2 = BUFFER_LOAD_DWORD_OFFSET $sgpr0_sgpr1_sgpr2_sgpr3, killed $sgpr5, 0, 0, 0, implicit $exec :: (load (s32) from %stack.3, addrspace 5) + ; GFX9-NEXT: $exec = S_MOV_B64 killed $sgpr6_sgpr7 + ; GFX9-NEXT: $sgpr32 = frame-destroy S_ADD_I32 $sgpr32, -2097152, implicit-def dead $scc + ; GFX9-NEXT: frame-destroy CFI_INSTRUCTION def_cfa_register $sgpr32_lo16 + ; GFX9-NEXT: $sgpr33 = COPY $sgpr4 + ; GFX9-NEXT: S_ENDPGM 0, amdgpu_allvgprs + ; GFX9-FLATSCR-LABEL: name: pei_scavenge_vgpr_spill + ; GFX9-FLATSCR: bb.0: + ; GFX9-FLATSCR-NEXT: successors: %bb.1(0x80000000) + ; GFX9-FLATSCR-NEXT: liveins: $vgpr2, $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 + ; GFX9-FLATSCR-NEXT: {{ $}} + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 + ; GFX9-FLATSCR-NEXT: $sgpr4 = COPY $sgpr33 + ; GFX9-FLATSCR-NEXT: $sgpr33 = frame-setup S_ADD_I32 $sgpr32, 8191, implicit-def $scc + ; GFX9-FLATSCR-NEXT: $sgpr33 = frame-setup S_AND_B32 killed $sgpr33, 4294959104, implicit-def dead $scc + ; GFX9-FLATSCR-NEXT: $sgpr6_sgpr7 = S_XOR_SAVEEXEC_B64 -1, implicit-def $exec, implicit-def dead $scc, implicit $exec + ; GFX9-FLATSCR-NEXT: $sgpr5 = S_ADD_I32 $sgpr33, 16388, implicit-def dead $scc + ; GFX9-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR $vgpr2, killed $sgpr5, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.3, addrspace 5) + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION offset $vgpr2_lo16, 1048832 + ; GFX9-FLATSCR-NEXT: $exec = S_MOV_B64 killed $sgpr6_sgpr7 + ; GFX9-FLATSCR-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr4, 0, undef $vgpr2 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x41, 0x06, 0x90, 0x82, 0x14, 0xe9, 0x05, 0x00 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION def_cfa_register $sgpr33_lo16 + ; GFX9-FLATSCR-NEXT: $sgpr32 = frame-setup S_ADD_I32 $sgpr32, 32768, implicit-def dead $scc + ; GFX9-FLATSCR-NEXT: $vcc_lo = S_ADD_I32 $sgpr33, 8192, implicit-def $scc + ; GFX9-FLATSCR-NEXT: $vgpr0 = V_MOV_B32_e32 killed $vcc_lo, implicit $exec + ; GFX9-FLATSCR-NEXT: $vcc_hi = S_ADD_I32 $sgpr33, 16384, implicit-def $scc + ; GFX9-FLATSCR-NEXT: $vgpr0 = V_OR_B32_e32 killed $vcc_hi, $vgpr1, implicit $exec + ; GFX9-FLATSCR-NEXT: S_BRANCH %bb.1 + ; GFX9-FLATSCR-NEXT: {{ $}} + ; GFX9-FLATSCR-NEXT: bb.1: + ; GFX9-FLATSCR-NEXT: liveins: $vgpr2, $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 + ; GFX9-FLATSCR-NEXT: {{ $}} + ; GFX9-FLATSCR-NEXT: $sgpr4 = V_READLANE_B32 $vgpr2, 0 + ; GFX9-FLATSCR-NEXT: $sgpr6_sgpr7 = S_XOR_SAVEEXEC_B64 -1, implicit-def $exec, implicit-def dead $scc, implicit $exec + ; GFX9-FLATSCR-NEXT: $sgpr5 = S_ADD_I32 $sgpr33, 16388, implicit-def dead $scc + ; GFX9-FLATSCR-NEXT: $vgpr2 = SCRATCH_LOAD_DWORD_SADDR killed $sgpr5, 0, 0, implicit $exec, implicit $flat_scr :: (load (s32) from %stack.3, addrspace 5) + ; GFX9-FLATSCR-NEXT: $exec = S_MOV_B64 killed $sgpr6_sgpr7 + ; GFX9-FLATSCR-NEXT: $sgpr32 = frame-destroy S_ADD_I32 $sgpr32, -32768, implicit-def dead $scc + ; GFX9-FLATSCR-NEXT: frame-destroy CFI_INSTRUCTION def_cfa_register $sgpr32_lo16 + ; GFX9-FLATSCR-NEXT: $sgpr33 = COPY $sgpr4 + ; GFX9-FLATSCR-NEXT: S_ENDPGM 0, amdgpu_allvgprs bb.0: liveins: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255 - ; GFX8-LABEL: name: pei_scavenge_vgpr_spill - ; GFX8: liveins: $vgpr2, $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 - ; GFX8-NEXT: {{ $}} - ; GFX8-NEXT: $sgpr4 = COPY $sgpr33 - ; GFX8-NEXT: $sgpr33 = frame-setup S_ADD_I32 $sgpr32, 524224, implicit-def $scc - ; GFX8-NEXT: $sgpr33 = frame-setup S_AND_B32 killed $sgpr33, 4294443008, implicit-def dead $scc - ; GFX8-NEXT: $sgpr6_sgpr7 = S_XOR_SAVEEXEC_B64 -1, implicit-def $exec, implicit-def dead $scc, implicit $exec - ; GFX8-NEXT: $sgpr5 = S_ADD_I32 $sgpr33, 1048832, implicit-def dead $scc - ; GFX8-NEXT: BUFFER_STORE_DWORD_OFFSET $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, killed $sgpr5, 0, 0, 0, implicit $exec :: (store (s32) into %stack.3, addrspace 5) - ; GFX8-NEXT: $exec = S_MOV_B64 killed $sgpr6_sgpr7 - ; GFX8-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr4, 0, undef $vgpr2 - ; GFX8-NEXT: $sgpr32 = frame-setup S_ADD_I32 $sgpr32, 2097152, implicit-def dead $scc - ; GFX8-NEXT: $vgpr0 = V_LSHRREV_B32_e64 6, $sgpr33, implicit $exec - ; GFX8-NEXT: $vcc_lo = S_MOV_B32 8192 - ; GFX8-NEXT: $vgpr0, dead $vcc = V_ADD_CO_U32_e64 killed $vcc_lo, killed $vgpr0, 0, implicit $exec - ; GFX8-NEXT: $vgpr3 = V_LSHRREV_B32_e64 6, $sgpr33, implicit $exec - ; GFX8-NEXT: $vcc_lo = S_MOV_B32 16384 - ; GFX8-NEXT: $vgpr3, dead $vcc = V_ADD_CO_U32_e64 killed $vcc_lo, killed $vgpr3, 0, implicit $exec - ; GFX8-NEXT: $vgpr0 = V_OR_B32_e32 killed $vgpr3, $vgpr1, implicit $exec - ; GFX8-NEXT: $sgpr4 = V_READLANE_B32 $vgpr2, 0 - ; GFX8-NEXT: $sgpr6_sgpr7 = S_XOR_SAVEEXEC_B64 -1, implicit-def $exec, implicit-def dead $scc, implicit $exec - ; GFX8-NEXT: $sgpr5 = S_ADD_I32 $sgpr33, 1048832, implicit-def dead $scc - ; GFX8-NEXT: $vgpr2 = BUFFER_LOAD_DWORD_OFFSET $sgpr0_sgpr1_sgpr2_sgpr3, killed $sgpr5, 0, 0, 0, implicit $exec :: (load (s32) from %stack.3, addrspace 5) - ; GFX8-NEXT: $exec = S_MOV_B64 killed $sgpr6_sgpr7 - ; GFX8-NEXT: $sgpr32 = frame-destroy S_ADD_I32 $sgpr32, -2097152, implicit-def dead $scc - ; GFX8-NEXT: $sgpr33 = COPY $sgpr4 - ; GFX8-NEXT: S_ENDPGM 0, amdgpu_allvgprs - ; GFX9-LABEL: name: pei_scavenge_vgpr_spill - ; GFX9: liveins: $vgpr2, $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 - ; GFX9-NEXT: {{ $}} - ; GFX9-NEXT: $sgpr4 = COPY $sgpr33 - ; GFX9-NEXT: $sgpr33 = frame-setup S_ADD_I32 $sgpr32, 524224, implicit-def $scc - ; GFX9-NEXT: $sgpr33 = frame-setup S_AND_B32 killed $sgpr33, 4294443008, implicit-def dead $scc - ; GFX9-NEXT: $sgpr6_sgpr7 = S_XOR_SAVEEXEC_B64 -1, implicit-def $exec, implicit-def dead $scc, implicit $exec - ; GFX9-NEXT: $sgpr5 = S_ADD_I32 $sgpr33, 1048832, implicit-def dead $scc - ; GFX9-NEXT: BUFFER_STORE_DWORD_OFFSET $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, killed $sgpr5, 0, 0, 0, implicit $exec :: (store (s32) into %stack.3, addrspace 5) - ; GFX9-NEXT: $exec = S_MOV_B64 killed $sgpr6_sgpr7 - ; GFX9-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr4, 0, undef $vgpr2 - ; GFX9-NEXT: $sgpr32 = frame-setup S_ADD_I32 $sgpr32, 2097152, implicit-def dead $scc - ; GFX9-NEXT: $vgpr0 = V_LSHRREV_B32_e64 6, $sgpr33, implicit $exec - ; GFX9-NEXT: $vgpr0 = V_ADD_U32_e32 8192, killed $vgpr0, implicit $exec - ; GFX9-NEXT: $vgpr3 = V_LSHRREV_B32_e64 6, $sgpr33, implicit $exec - ; GFX9-NEXT: $vgpr3 = V_ADD_U32_e32 16384, killed $vgpr3, implicit $exec - ; GFX9-NEXT: $vgpr0 = V_OR_B32_e32 killed $vgpr3, $vgpr1, implicit $exec - ; GFX9-NEXT: $sgpr4 = V_READLANE_B32 $vgpr2, 0 - ; GFX9-NEXT: $sgpr6_sgpr7 = S_XOR_SAVEEXEC_B64 -1, implicit-def $exec, implicit-def dead $scc, implicit $exec - ; GFX9-NEXT: $sgpr5 = S_ADD_I32 $sgpr33, 1048832, implicit-def dead $scc - ; GFX9-NEXT: $vgpr2 = BUFFER_LOAD_DWORD_OFFSET $sgpr0_sgpr1_sgpr2_sgpr3, killed $sgpr5, 0, 0, 0, implicit $exec :: (load (s32) from %stack.3, addrspace 5) - ; GFX9-NEXT: $exec = S_MOV_B64 killed $sgpr6_sgpr7 - ; GFX9-NEXT: $sgpr32 = frame-destroy S_ADD_I32 $sgpr32, -2097152, implicit-def dead $scc - ; GFX9-NEXT: $sgpr33 = COPY $sgpr4 - ; GFX9-NEXT: S_ENDPGM 0, amdgpu_allvgprs - ; GFX9-FLATSCR-LABEL: name: pei_scavenge_vgpr_spill - ; GFX9-FLATSCR: liveins: $vgpr2, $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 - ; GFX9-FLATSCR-NEXT: {{ $}} - ; GFX9-FLATSCR-NEXT: $sgpr4 = COPY $sgpr33 - ; GFX9-FLATSCR-NEXT: $sgpr33 = frame-setup S_ADD_I32 $sgpr32, 8191, implicit-def $scc - ; GFX9-FLATSCR-NEXT: $sgpr33 = frame-setup S_AND_B32 killed $sgpr33, 4294959104, implicit-def dead $scc - ; GFX9-FLATSCR-NEXT: $sgpr6_sgpr7 = S_XOR_SAVEEXEC_B64 -1, implicit-def $exec, implicit-def dead $scc, implicit $exec - ; GFX9-FLATSCR-NEXT: $sgpr5 = S_ADD_I32 $sgpr33, 16388, implicit-def dead $scc - ; GFX9-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR $vgpr2, killed $sgpr5, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.3, addrspace 5) - ; GFX9-FLATSCR-NEXT: $exec = S_MOV_B64 killed $sgpr6_sgpr7 - ; GFX9-FLATSCR-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr4, 0, undef $vgpr2 - ; GFX9-FLATSCR-NEXT: $sgpr32 = frame-setup S_ADD_I32 $sgpr32, 32768, implicit-def dead $scc - ; GFX9-FLATSCR-NEXT: $vcc_lo = S_ADD_I32 $sgpr33, 8192, implicit-def $scc - ; GFX9-FLATSCR-NEXT: $vgpr0 = V_MOV_B32_e32 killed $vcc_lo, implicit $exec - ; GFX9-FLATSCR-NEXT: $vcc_hi = S_ADD_I32 $sgpr33, 16384, implicit-def $scc - ; GFX9-FLATSCR-NEXT: $vgpr0 = V_OR_B32_e32 killed $vcc_hi, $vgpr1, implicit $exec - ; GFX9-FLATSCR-NEXT: $sgpr4 = V_READLANE_B32 $vgpr2, 0 - ; GFX9-FLATSCR-NEXT: $sgpr6_sgpr7 = S_XOR_SAVEEXEC_B64 -1, implicit-def $exec, implicit-def dead $scc, implicit $exec - ; GFX9-FLATSCR-NEXT: $sgpr5 = S_ADD_I32 $sgpr33, 16388, implicit-def dead $scc - ; GFX9-FLATSCR-NEXT: $vgpr2 = SCRATCH_LOAD_DWORD_SADDR killed $sgpr5, 0, 0, implicit $exec, implicit $flat_scr :: (load (s32) from %stack.3, addrspace 5) - ; GFX9-FLATSCR-NEXT: $exec = S_MOV_B64 killed $sgpr6_sgpr7 - ; GFX9-FLATSCR-NEXT: $sgpr32 = frame-destroy S_ADD_I32 $sgpr32, -32768, implicit-def dead $scc - ; GFX9-FLATSCR-NEXT: $sgpr33 = COPY $sgpr4 - ; GFX9-FLATSCR-NEXT: S_ENDPGM 0, amdgpu_allvgprs $vgpr0 = V_MOV_B32_e32 %stack.0, implicit $exec $vgpr0 = V_OR_B32_e32 %stack.1, $vgpr1, implicit $exec + S_BRANCH %bb.1 + + bb.1: + liveins: $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255 S_ENDPGM 0, amdgpu_allvgprs ... diff --git a/llvm/test/CodeGen/AMDGPU/preserve-only-inactive-lane.mir b/llvm/test/CodeGen/AMDGPU/preserve-only-inactive-lane.mir --- a/llvm/test/CodeGen/AMDGPU/preserve-only-inactive-lane.mir +++ b/llvm/test/CodeGen/AMDGPU/preserve-only-inactive-lane.mir @@ -20,8 +20,12 @@ ; GCN-LABEL: name: preserve_scratch_vgpr_inactive_lanes ; GCN: liveins: $sgpr35, $vgpr0, $sgpr30_sgpr31 ; GCN-NEXT: {{ $}} + ; GCN-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 ; GCN-NEXT: $sgpr4_sgpr5 = S_XOR_SAVEEXEC_B64 -1, implicit-def $exec, implicit-def dead $scc, implicit $exec ; GCN-NEXT: BUFFER_STORE_DWORD_OFFSET $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.0, addrspace 5) + ; GCN-NEXT: frame-setup CFI_INSTRUCTION offset $vgpr0_lo16, 0 ; GCN-NEXT: $exec = S_MOV_B64 killed $sgpr4_sgpr5 ; GCN-NEXT: renamable $vgpr0 = V_WRITELANE_B32 $sgpr35, 0, killed $vgpr0 ; GCN-NEXT: $sgpr35 = S_MOV_B32 5 diff --git a/llvm/test/CodeGen/AMDGPU/prologue-epilogue-markers.ll b/llvm/test/CodeGen/AMDGPU/prologue-epilogue-markers.ll --- a/llvm/test/CodeGen/AMDGPU/prologue-epilogue-markers.ll +++ b/llvm/test/CodeGen/AMDGPU/prologue-epilogue-markers.ll @@ -14,6 +14,8 @@ ; CHECK-NEXT: .cfi_sections .debug_frame ; CHECK-NEXT: .cfi_startproc ; CHECK-NEXT: ; %bb.0: ; %entry +; CHECK-NEXT: .cfi_llvm_def_aspace_cfa 64, 0, 6 +; CHECK-NEXT: .cfi_escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 ; ; CHECK-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) ; CHECK-NEXT: .Ltmp0: ; CHECK-NEXT: .loc 0 7 3 prologue_end ; file.cpp:7:3 diff --git a/llvm/test/CodeGen/AMDGPU/ptr-arg-dbg-value.ll b/llvm/test/CodeGen/AMDGPU/ptr-arg-dbg-value.ll --- a/llvm/test/CodeGen/AMDGPU/ptr-arg-dbg-value.ll +++ b/llvm/test/CodeGen/AMDGPU/ptr-arg-dbg-value.ll @@ -9,10 +9,14 @@ define hidden void @ptr_arg_split_subregs(ptr %arg1) #0 !dbg !9 { ; CHECK-LABEL: ptr_arg_split_subregs: ; CHECK: .Lfunc_begin0: -; CHECK: .loc 1 5 0 ; example.cpp:5:0 +; CHECK-NEXT: .file 1 "temp" "example.cpp" +; CHECK-NEXT: .loc 1 5 0 ; example.cpp:5:0 ; CHECK-NEXT: .cfi_sections .debug_frame ; CHECK-NEXT: .cfi_startproc ; CHECK-NEXT: ; %bb.0: +; CHECK-NEXT: .cfi_llvm_def_aspace_cfa 64, 0, 6 +; CHECK-NEXT: .cfi_escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 ; +; CHECK-NEXT: .cfi_undefined 2562 ; CHECK-NEXT: ;DEBUG_VALUE: ptr_arg_split_subregs:a <- [DW_OP_LLVM_fragment 32 32] [$vgpr1+0] ; CHECK-NEXT: ;DEBUG_VALUE: ptr_arg_split_subregs:a <- [DW_OP_LLVM_fragment 0 32] [$vgpr0+0] ; CHECK-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) @@ -24,7 +28,6 @@ ; CHECK-NEXT: s_waitcnt vmcnt(0) lgkmcnt(0) ; CHECK-NEXT: s_setpc_b64 s[30:31] ; CHECK-NEXT: .Ltmp1: -; CHECK: .cfi_endproc call void @llvm.dbg.declare(metadata ptr %arg1, metadata !20, metadata !DIExpression()), !dbg !21 %gep1 = getelementptr inbounds %struct.A, ptr %arg1, i32 0, i32 0, i32 99, !dbg !22 store i32 1, ptr %gep1, align 4, !dbg !23 @@ -43,9 +46,13 @@ ; CHECK-NEXT: .loc 1 10 0 ; example.cpp:10:0 ; CHECK-NEXT: .cfi_startproc ; CHECK-NEXT: ; %bb.0: +; CHECK-NEXT: .cfi_llvm_def_aspace_cfa 64, 0, 6 +; CHECK-NEXT: .cfi_escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 ; +; CHECK-NEXT: .cfi_undefined 2560 +; CHECK-NEXT: .cfi_undefined 2591 ; CHECK-NEXT: ;DEBUG_VALUE: ptr_arg_split_reg_mem:b <- [$vgpr30+0] ; CHECK-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) -; CHECK-NEXT: buffer_load_dword v31, off, s[0:3], s32{{$}} +; CHECK-NEXT: buffer_load_dword v31, off, s[0:3], s32 ; CHECK-NEXT: v_mov_b32_e32 v0, 1 ; CHECK-NEXT: .Ltmp2: ; CHECK-NEXT: .loc 1 12 13 prologue_end ; example.cpp:12:13 @@ -55,7 +62,6 @@ ; CHECK-NEXT: s_waitcnt vmcnt(0) lgkmcnt(0) ; CHECK-NEXT: s_setpc_b64 s[30:31] ; CHECK-NEXT: .Ltmp3: -; CHECK: .cfi_endproc call void @llvm.dbg.declare(metadata ptr %arg2, metadata !26, metadata !DIExpression()), !dbg !27 %gep2 = getelementptr inbounds %struct.A, ptr %arg2, i32 0, i32 0, i32 99, !dbg !28 store i32 1, ptr %gep2, align 4, !dbg !29 @@ -70,6 +76,11 @@ ; CHECK-NEXT: .loc 1 15 0 ; example.cpp:15:0 ; CHECK-NEXT: .cfi_startproc ; CHECK-NEXT: ; %bb.0: +; CHECK-NEXT: .cfi_llvm_def_aspace_cfa 64, 0, 6 +; CHECK-NEXT: .cfi_escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 ; +; CHECK-NEXT: .cfi_undefined 2560 +; CHECK-NEXT: .cfi_undefined 2561 +; CHECK-NEXT: .cfi_undefined 2562 ; CHECK-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) ; CHECK-NEXT: buffer_load_dword v1, off, s[0:3], s32 offset:8 ; CHECK-NEXT: buffer_load_dword v0, off, s[0:3], s32 offset:4 @@ -82,7 +93,6 @@ ; CHECK-NEXT: s_waitcnt vmcnt(0) lgkmcnt(0) ; CHECK-NEXT: s_setpc_b64 s[30:31] ; CHECK-NEXT: .Ltmp5: -; CHECK: .cfi_endproc call void @llvm.dbg.declare(metadata ptr %arg3, metadata !32, metadata !DIExpression()), !dbg !33 %gep3 = getelementptr inbounds %struct.A, ptr %arg3, i32 0, i32 0, i32 99, !dbg !34 store i32 1, ptr %gep3, align 4, !dbg !35 diff --git a/llvm/test/CodeGen/AMDGPU/regalloc-introduces-copy-sgpr-to-agpr.mir b/llvm/test/CodeGen/AMDGPU/regalloc-introduces-copy-sgpr-to-agpr.mir --- a/llvm/test/CodeGen/AMDGPU/regalloc-introduces-copy-sgpr-to-agpr.mir +++ b/llvm/test/CodeGen/AMDGPU/regalloc-introduces-copy-sgpr-to-agpr.mir @@ -36,6 +36,8 @@ ; GFX908-LABEL: name: regalloc_introduces_s_to_a_copy ; GFX908: liveins: $sgpr0_sgpr1_sgpr2_sgpr3_sgpr4_sgpr5_sgpr6_sgpr7_sgpr8_sgpr9_sgpr10_sgpr11_sgpr12_sgpr13_sgpr14_sgpr15, $sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27_sgpr28_sgpr29_sgpr30_sgpr31, $sgpr32_sgpr33_sgpr34_sgpr35_sgpr36_sgpr37_sgpr38_sgpr39_sgpr40_sgpr41_sgpr42_sgpr43_sgpr44_sgpr45_sgpr46_sgpr47, $sgpr48_sgpr49_sgpr50_sgpr51_sgpr52_sgpr53_sgpr54_sgpr55_sgpr56_sgpr57_sgpr58_sgpr59_sgpr60_sgpr61_sgpr62_sgpr63, $vgpr32_vgpr33_vgpr34_vgpr35, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr7 ; GFX908-NEXT: {{ $}} + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION escape 0x0f, 0x04, 0x30, 0x36, 0xe9, 0x02 + ; GFX908-NEXT: frame-setup CFI_INSTRUCTION undefined $pc_reg ; GFX908-NEXT: $sgpr0 = S_ADD_U32 $sgpr0, $sgpr7, implicit-def $scc, implicit-def $sgpr0_sgpr1_sgpr2_sgpr3 ; GFX908-NEXT: $sgpr1 = S_ADDC_U32 $sgpr1, 0, implicit-def dead $scc, implicit $scc, implicit-def $sgpr0_sgpr1_sgpr2_sgpr3 ; GFX908-NEXT: renamable $vgpr34 = GLOBAL_LOAD_DWORD undef $vgpr0_vgpr1, 0, 0, implicit $exec diff --git a/llvm/test/CodeGen/AMDGPU/same-slot-agpr-sgpr.mir b/llvm/test/CodeGen/AMDGPU/same-slot-agpr-sgpr.mir --- a/llvm/test/CodeGen/AMDGPU/same-slot-agpr-sgpr.mir +++ b/llvm/test/CodeGen/AMDGPU/same-slot-agpr-sgpr.mir @@ -15,6 +15,12 @@ ; CHECK-LABEL: name: same_slot_agpr_sgpr ; CHECK: liveins: $agpr0, $agpr1 ; CHECK-NEXT: {{ $}} + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 ; CHECK-NEXT: $vgpr0 = IMPLICIT_DEF ; CHECK-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec ; CHECK-NEXT: $sgpr4_sgpr5 = IMPLICIT_DEF @@ -48,6 +54,12 @@ ; CHECK-LABEL: name: diff_slot_agpr_sgpr ; CHECK: liveins: $agpr0 ; CHECK-NEXT: {{ $}} + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 ; CHECK-NEXT: $vgpr0 = IMPLICIT_DEF ; CHECK-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec ; CHECK-NEXT: $sgpr4_sgpr5 = IMPLICIT_DEF @@ -79,6 +91,10 @@ ; CHECK-LABEL: name: dead_vgpr_slot ; CHECK: liveins: $agpr0 ; CHECK-NEXT: {{ $}} + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 ; CHECK-NEXT: $vgpr0 = IMPLICIT_DEF ; CHECK-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec ; CHECK-NEXT: S_ENDPGM 0 diff --git a/llvm/test/CodeGen/AMDGPU/sgpr-spill-to-vmem-scc-clobber.mir b/llvm/test/CodeGen/AMDGPU/sgpr-spill-to-vmem-scc-clobber.mir --- a/llvm/test/CodeGen/AMDGPU/sgpr-spill-to-vmem-scc-clobber.mir +++ b/llvm/test/CodeGen/AMDGPU/sgpr-spill-to-vmem-scc-clobber.mir @@ -23,6 +23,8 @@ ; VMEM-GFX8-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; VMEM-GFX8-NEXT: liveins: $sgpr8 ; VMEM-GFX8-NEXT: {{ $}} + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 ; VMEM-GFX8-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; VMEM-GFX8-NEXT: $sgpr4_sgpr5 = S_MOV_B64 $exec ; VMEM-GFX8-NEXT: $exec = S_MOV_B64 1, implicit-def $vgpr0 @@ -73,6 +75,8 @@ ; VMEM-GFX8-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; VMEM-GFX8-NEXT: liveins: $sgpr8_sgpr9 ; VMEM-GFX8-NEXT: {{ $}} + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 ; VMEM-GFX8-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; VMEM-GFX8-NEXT: $sgpr4_sgpr5 = S_MOV_B64 $exec ; VMEM-GFX8-NEXT: $exec = S_MOV_B64 3, implicit-def $vgpr0 @@ -122,6 +126,9 @@ ; VMEM-GFX8: bb.0: ; VMEM-GFX8-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; VMEM-GFX8-NEXT: {{ $}} + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 ; VMEM-GFX8-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; VMEM-GFX8-NEXT: $sgpr4_sgpr5 = S_MOV_B64 $exec ; VMEM-GFX8-NEXT: $exec = S_MOV_B64 1, implicit-def $vgpr0 @@ -170,6 +177,10 @@ ; VMEM-GFX8: bb.0: ; VMEM-GFX8-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; VMEM-GFX8-NEXT: {{ $}} + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 ; VMEM-GFX8-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; VMEM-GFX8-NEXT: $sgpr4_sgpr5 = S_MOV_B64 $exec ; VMEM-GFX8-NEXT: $exec = S_MOV_B64 3, implicit-def $vgpr0 @@ -220,6 +231,38 @@ ; VMEM-GFX8-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; VMEM-GFX8-NEXT: liveins: $sgpr8, $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; VMEM-GFX8-NEXT: {{ $}} + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; VMEM-GFX8-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; VMEM-GFX8-NEXT: $sgpr4_sgpr5 = S_MOV_B64 $exec ; VMEM-GFX8-NEXT: $exec = S_MOV_B64 1 @@ -273,6 +316,38 @@ ; VMEM-GFX8-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; VMEM-GFX8-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; VMEM-GFX8-NEXT: {{ $}} + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; VMEM-GFX8-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; VMEM-GFX8-NEXT: $sgpr4_sgpr5 = S_MOV_B64 $exec ; VMEM-GFX8-NEXT: $exec = S_MOV_B64 1 @@ -329,6 +404,38 @@ ; VMEM-GFX8-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; VMEM-GFX8-NEXT: liveins: $sgpr8_sgpr9, $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; VMEM-GFX8-NEXT: {{ $}} + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; VMEM-GFX8-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; VMEM-GFX8-NEXT: $sgpr4_sgpr5 = S_MOV_B64 $exec ; VMEM-GFX8-NEXT: $exec = S_MOV_B64 3 @@ -383,6 +490,38 @@ ; VMEM-GFX8-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; VMEM-GFX8-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; VMEM-GFX8-NEXT: {{ $}} + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; VMEM-GFX8-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; VMEM-GFX8-NEXT: $sgpr4_sgpr5 = S_MOV_B64 $exec ; VMEM-GFX8-NEXT: $exec = S_MOV_B64 3 @@ -443,6 +582,38 @@ ; VMEM-GFX8-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; VMEM-GFX8-NEXT: liveins: $sgpr8, $sgpr9, $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; VMEM-GFX8-NEXT: {{ $}} + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; VMEM-GFX8-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; VMEM-GFX8-NEXT: $sgpr6_sgpr7 = S_MOV_B64 $exec ; VMEM-GFX8-NEXT: $exec = S_MOV_B64 1 @@ -507,6 +678,38 @@ ; VMEM-GFX8-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; VMEM-GFX8-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; VMEM-GFX8-NEXT: {{ $}} + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; VMEM-GFX8-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; VMEM-GFX8-NEXT: $sgpr6_sgpr7 = S_MOV_B64 $exec ; VMEM-GFX8-NEXT: $exec = S_MOV_B64 1 diff --git a/llvm/test/CodeGen/AMDGPU/sgpr-spill-vmem-large-frame.mir b/llvm/test/CodeGen/AMDGPU/sgpr-spill-vmem-large-frame.mir --- a/llvm/test/CodeGen/AMDGPU/sgpr-spill-vmem-large-frame.mir +++ b/llvm/test/CodeGen/AMDGPU/sgpr-spill-vmem-large-frame.mir @@ -25,6 +25,9 @@ ; CHECK-LABEL: name: test ; CHECK: liveins: $sgpr10, $sgpr11, $sgpr30_sgpr31 ; CHECK-NEXT: {{ $}} + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 ; CHECK-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; CHECK-NEXT: $sgpr6_sgpr7 = S_MOV_B64 $exec ; CHECK-NEXT: $exec = S_MOV_B64 1, implicit-def $vgpr2 diff --git a/llvm/test/CodeGen/AMDGPU/sgpr-spill.mir b/llvm/test/CodeGen/AMDGPU/sgpr-spill.mir --- a/llvm/test/CodeGen/AMDGPU/sgpr-spill.mir +++ b/llvm/test/CodeGen/AMDGPU/sgpr-spill.mir @@ -447,6 +447,8 @@ ; GCN64-MUBUF-LABEL: name: check_spill ; GCN64-MUBUF: liveins: $sgpr8, $sgpr4_sgpr5, $sgpr6_sgpr7, $sgpr11 ; GCN64-MUBUF-NEXT: {{ $}} + ; GCN64-MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x0f, 0x04, 0x30, 0x36, 0xe9, 0x02 + ; GCN64-MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $pc_reg ; GCN64-MUBUF-NEXT: $sgpr33 = S_MOV_B32 0 ; GCN64-MUBUF-NEXT: $sgpr28 = S_MOV_B32 &SCRATCH_RSRC_DWORD0, implicit-def $sgpr28_sgpr29_sgpr30_sgpr31 ; GCN64-MUBUF-NEXT: $sgpr29 = S_MOV_B32 &SCRATCH_RSRC_DWORD1, implicit-def $sgpr28_sgpr29_sgpr30_sgpr31 @@ -474,7 +476,7 @@ ; GCN64-MUBUF-NEXT: $sgpr4_sgpr5 = S_MOV_B64 $exec ; GCN64-MUBUF-NEXT: $exec = S_MOV_B64 3, implicit-def $vgpr2 ; GCN64-MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr28_sgpr29_sgpr30_sgpr31, $sgpr33, 0, 0, 0, implicit $exec :: (store (s32) into %fixed-stack.0, align 16, addrspace 5) - ; GCN64-MUBUF-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr2 + ; GCN64-MUBUF-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr2, implicit $sgpr12_sgpr13 ; GCN64-MUBUF-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr13, 1, $vgpr2, implicit killed $sgpr12_sgpr13 ; GCN64-MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr28_sgpr29_sgpr30_sgpr31, $sgpr33, 8, 0, 0, implicit $exec :: (store (s32) into %stack.1, addrspace 5) ; GCN64-MUBUF-NEXT: $vgpr2 = BUFFER_LOAD_DWORD_OFFSET $sgpr28_sgpr29_sgpr30_sgpr31, $sgpr33, 0, 0, 0, implicit $exec :: (load (s32) from %fixed-stack.0, align 16, addrspace 5) @@ -483,7 +485,7 @@ ; GCN64-MUBUF-NEXT: $sgpr2_sgpr3 = S_MOV_B64 $exec ; GCN64-MUBUF-NEXT: $exec = S_MOV_B64 3, implicit-def $vgpr3 ; GCN64-MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr3, $sgpr28_sgpr29_sgpr30_sgpr31, $sgpr33, 0, 0, 0, implicit $exec :: (store (s32) into %fixed-stack.0, align 16, addrspace 5) - ; GCN64-MUBUF-NEXT: $vgpr3 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr3 + ; GCN64-MUBUF-NEXT: $vgpr3 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr3, implicit $sgpr12_sgpr13 ; GCN64-MUBUF-NEXT: $vgpr3 = V_WRITELANE_B32 $sgpr13, 1, $vgpr3, implicit $sgpr12_sgpr13 ; GCN64-MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr3, $sgpr28_sgpr29_sgpr30_sgpr31, $sgpr33, 8, 0, 0, implicit $exec :: (store (s32) into %stack.1, addrspace 5) ; GCN64-MUBUF-NEXT: $vgpr3 = BUFFER_LOAD_DWORD_OFFSET $sgpr28_sgpr29_sgpr30_sgpr31, $sgpr33, 0, 0, 0, implicit $exec :: (load (s32) from %fixed-stack.0, align 16, addrspace 5) @@ -492,8 +494,8 @@ ; GCN64-MUBUF-NEXT: $sgpr6_sgpr7 = S_MOV_B64 $exec ; GCN64-MUBUF-NEXT: $exec = S_MOV_B64 7, implicit-def $vgpr1 ; GCN64-MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr28_sgpr29_sgpr30_sgpr31, $sgpr33, 0, 0, 0, implicit $exec :: (store (s32) into %fixed-stack.0, align 16, addrspace 5) - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr13, 1, $vgpr1 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr1, implicit $sgpr12_sgpr13_sgpr14 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr13, 1, $vgpr1, implicit $sgpr12_sgpr13_sgpr14 ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr14, 2, $vgpr1, implicit killed $sgpr12_sgpr13_sgpr14 ; GCN64-MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr28_sgpr29_sgpr30_sgpr31, $sgpr33, 16, 0, 0, implicit $exec :: (store (s32) into %stack.2, addrspace 5) ; GCN64-MUBUF-NEXT: $vgpr1 = BUFFER_LOAD_DWORD_OFFSET $sgpr28_sgpr29_sgpr30_sgpr31, $sgpr33, 0, 0, 0, implicit $exec :: (load (s32) from %fixed-stack.0, align 16, addrspace 5) @@ -502,9 +504,9 @@ ; GCN64-MUBUF-NEXT: $sgpr0_sgpr1 = S_MOV_B64 $exec ; GCN64-MUBUF-NEXT: $exec = S_MOV_B64 15, implicit-def $vgpr0 ; GCN64-MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr28_sgpr29_sgpr30_sgpr31, $sgpr33, 0, 0, 0, implicit $exec :: (store (s32) into %fixed-stack.0, align 16, addrspace 5) - ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr0 - ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr13, 1, $vgpr0 - ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr14, 2, $vgpr0 + ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15 + ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr13, 1, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15 + ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr14, 2, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15 ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr15, 3, $vgpr0, implicit killed $sgpr12_sgpr13_sgpr14_sgpr15 ; GCN64-MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr28_sgpr29_sgpr30_sgpr31, $sgpr33, 28, 0, 0, implicit $exec :: (store (s32) into %stack.3, addrspace 5) ; GCN64-MUBUF-NEXT: $vgpr0 = BUFFER_LOAD_DWORD_OFFSET $sgpr28_sgpr29_sgpr30_sgpr31, $sgpr33, 0, 0, 0, implicit $exec :: (load (s32) from %fixed-stack.0, align 16, addrspace 5) @@ -513,10 +515,10 @@ ; GCN64-MUBUF-NEXT: $sgpr4_sgpr5 = S_MOV_B64 $exec ; GCN64-MUBUF-NEXT: $exec = S_MOV_B64 31, implicit-def $vgpr2 ; GCN64-MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr28_sgpr29_sgpr30_sgpr31, $sgpr33, 0, 0, 0, implicit $exec :: (store (s32) into %fixed-stack.0, align 16, addrspace 5) - ; GCN64-MUBUF-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr2 - ; GCN64-MUBUF-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr13, 1, $vgpr2 - ; GCN64-MUBUF-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr14, 2, $vgpr2 - ; GCN64-MUBUF-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr15, 3, $vgpr2 + ; GCN64-MUBUF-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr2, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16 + ; GCN64-MUBUF-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr13, 1, $vgpr2, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16 + ; GCN64-MUBUF-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr14, 2, $vgpr2, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16 + ; GCN64-MUBUF-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr15, 3, $vgpr2, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16 ; GCN64-MUBUF-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr16, 4, $vgpr2, implicit killed $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16 ; GCN64-MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr28_sgpr29_sgpr30_sgpr31, $sgpr33, 44, 0, 0, implicit $exec :: (store (s32) into %stack.4, addrspace 5) ; GCN64-MUBUF-NEXT: $vgpr2 = BUFFER_LOAD_DWORD_OFFSET $sgpr28_sgpr29_sgpr30_sgpr31, $sgpr33, 0, 0, 0, implicit $exec :: (load (s32) from %fixed-stack.0, align 16, addrspace 5) @@ -525,13 +527,13 @@ ; GCN64-MUBUF-NEXT: $sgpr2_sgpr3 = S_MOV_B64 $exec ; GCN64-MUBUF-NEXT: $exec = S_MOV_B64 255, implicit-def $vgpr1 ; GCN64-MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr28_sgpr29_sgpr30_sgpr31, $sgpr33, 0, 0, 0, implicit $exec :: (store (s32) into %fixed-stack.0, align 16, addrspace 5) - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr13, 1, $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr14, 2, $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr15, 3, $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr16, 4, $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr17, 5, $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr18, 6, $vgpr1 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr1, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr13, 1, $vgpr1, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr14, 2, $vgpr1, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr15, 3, $vgpr1, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr16, 4, $vgpr1, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr17, 5, $vgpr1, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr18, 6, $vgpr1, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19 ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr19, 7, $vgpr1, implicit killed $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19 ; GCN64-MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr28_sgpr29_sgpr30_sgpr31, $sgpr33, 64, 0, 0, implicit $exec :: (store (s32) into %stack.5, addrspace 5) ; GCN64-MUBUF-NEXT: $vgpr1 = BUFFER_LOAD_DWORD_OFFSET $sgpr28_sgpr29_sgpr30_sgpr31, $sgpr33, 0, 0, 0, implicit $exec :: (load (s32) from %fixed-stack.0, align 16, addrspace 5) @@ -540,21 +542,21 @@ ; GCN64-MUBUF-NEXT: $sgpr0_sgpr1 = S_MOV_B64 $exec ; GCN64-MUBUF-NEXT: $exec = S_MOV_B64 65535, implicit-def $vgpr0 ; GCN64-MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr28_sgpr29_sgpr30_sgpr31, $sgpr33, 0, 0, 0, implicit $exec :: (store (s32) into %fixed-stack.0, align 16, addrspace 5) - ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr0 - ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr13, 1, $vgpr0 - ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr14, 2, $vgpr0 - ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr15, 3, $vgpr0 - ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr16, 4, $vgpr0 - ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr17, 5, $vgpr0 - ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr18, 6, $vgpr0 - ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr19, 7, $vgpr0 - ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr20, 8, $vgpr0 - ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr21, 9, $vgpr0 - ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr22, 10, $vgpr0 - ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr23, 11, $vgpr0 - ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr24, 12, $vgpr0 - ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr25, 13, $vgpr0 - ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr26, 14, $vgpr0 + ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr13, 1, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr14, 2, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr15, 3, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr16, 4, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr17, 5, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr18, 6, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr19, 7, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr20, 8, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr21, 9, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr22, 10, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr23, 11, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr24, 12, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr25, 13, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr26, 14, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 ; GCN64-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr27, 15, $vgpr0, implicit killed $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 ; GCN64-MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr28_sgpr29_sgpr30_sgpr31, $sgpr33, 96, 0, 0, implicit $exec :: (store (s32) into %stack.6, addrspace 5) ; GCN64-MUBUF-NEXT: $vgpr0 = BUFFER_LOAD_DWORD_OFFSET $sgpr28_sgpr29_sgpr30_sgpr31, $sgpr33, 0, 0, 0, implicit $exec :: (load (s32) from %fixed-stack.0, align 16, addrspace 5) @@ -563,37 +565,37 @@ ; GCN64-MUBUF-NEXT: $sgpr4_sgpr5 = S_MOV_B64 $exec ; GCN64-MUBUF-NEXT: $exec = S_MOV_B64 4294967295, implicit-def $vgpr1 ; GCN64-MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr28_sgpr29_sgpr30_sgpr31, $sgpr33, 0, 0, 0, implicit $exec :: (store (s32) into %fixed-stack.0, align 16, addrspace 5) - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr64, 0, undef $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr65, 1, $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr66, 2, $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr67, 3, $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr68, 4, $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr69, 5, $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr70, 6, $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr71, 7, $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr72, 8, $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr73, 9, $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr74, 10, $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr75, 11, $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr76, 12, $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr77, 13, $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr78, 14, $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr79, 15, $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr80, 16, $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr81, 17, $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr82, 18, $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr83, 19, $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr84, 20, $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr85, 21, $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr86, 22, $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr87, 23, $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr88, 24, $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr89, 25, $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr90, 26, $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr91, 27, $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr92, 28, $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr93, 29, $vgpr1 - ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr94, 30, $vgpr1 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr64, 0, undef $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr65, 1, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr66, 2, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr67, 3, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr68, 4, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr69, 5, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr70, 6, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr71, 7, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr72, 8, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr73, 9, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr74, 10, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr75, 11, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr76, 12, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr77, 13, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr78, 14, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr79, 15, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr80, 16, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr81, 17, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr82, 18, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr83, 19, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr84, 20, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr85, 21, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr86, 22, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr87, 23, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr88, 24, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr89, 25, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr90, 26, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr91, 27, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr92, 28, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr93, 29, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr94, 30, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 ; GCN64-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr95, 31, $vgpr1, implicit killed $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 ; GCN64-MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr28_sgpr29_sgpr30_sgpr31, $sgpr33, 160, 0, 0, implicit $exec :: (store (s32) into %stack.7, addrspace 5) ; GCN64-MUBUF-NEXT: $vgpr1 = BUFFER_LOAD_DWORD_OFFSET $sgpr28_sgpr29_sgpr30_sgpr31, $sgpr33, 0, 0, 0, implicit $exec :: (load (s32) from %fixed-stack.0, align 16, addrspace 5) @@ -610,6 +612,8 @@ ; GCN32-MUBUF-LABEL: name: check_spill ; GCN32-MUBUF: liveins: $sgpr8, $sgpr4_sgpr5, $sgpr6_sgpr7, $sgpr11 ; GCN32-MUBUF-NEXT: {{ $}} + ; GCN32-MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x0f, 0x04, 0x30, 0x36, 0xe9, 0x02 + ; GCN32-MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $pc_reg ; GCN32-MUBUF-NEXT: $sgpr33 = S_MOV_B32 0 ; GCN32-MUBUF-NEXT: $sgpr96 = S_MOV_B32 &SCRATCH_RSRC_DWORD0, implicit-def $sgpr96_sgpr97_sgpr98_sgpr99 ; GCN32-MUBUF-NEXT: $sgpr97 = S_MOV_B32 &SCRATCH_RSRC_DWORD1, implicit-def $sgpr96_sgpr97_sgpr98_sgpr99 @@ -637,7 +641,7 @@ ; GCN32-MUBUF-NEXT: $sgpr2 = S_MOV_B32 $exec_lo ; GCN32-MUBUF-NEXT: $exec_lo = S_MOV_B32 3, implicit-def $vgpr2 ; GCN32-MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr96_sgpr97_sgpr98_sgpr99, $sgpr33, 0, 0, 0, implicit $exec :: (store (s32) into %fixed-stack.0, align 16, addrspace 5) - ; GCN32-MUBUF-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr2 + ; GCN32-MUBUF-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr2, implicit $sgpr12_sgpr13 ; GCN32-MUBUF-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr13, 1, $vgpr2, implicit killed $sgpr12_sgpr13 ; GCN32-MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr96_sgpr97_sgpr98_sgpr99, $sgpr33, 8, 0, 0, implicit $exec :: (store (s32) into %stack.1, addrspace 5) ; GCN32-MUBUF-NEXT: $vgpr2 = BUFFER_LOAD_DWORD_OFFSET $sgpr96_sgpr97_sgpr98_sgpr99, $sgpr33, 0, 0, 0, implicit $exec :: (load (s32) from %fixed-stack.0, align 16, addrspace 5) @@ -646,7 +650,7 @@ ; GCN32-MUBUF-NEXT: $sgpr1 = S_MOV_B32 $exec_lo ; GCN32-MUBUF-NEXT: $exec_lo = S_MOV_B32 3, implicit-def $vgpr3 ; GCN32-MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr3, $sgpr96_sgpr97_sgpr98_sgpr99, $sgpr33, 0, 0, 0, implicit $exec :: (store (s32) into %fixed-stack.0, align 16, addrspace 5) - ; GCN32-MUBUF-NEXT: $vgpr3 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr3 + ; GCN32-MUBUF-NEXT: $vgpr3 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr3, implicit $sgpr12_sgpr13 ; GCN32-MUBUF-NEXT: $vgpr3 = V_WRITELANE_B32 $sgpr13, 1, $vgpr3, implicit $sgpr12_sgpr13 ; GCN32-MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr3, $sgpr96_sgpr97_sgpr98_sgpr99, $sgpr33, 8, 0, 0, implicit $exec :: (store (s32) into %stack.1, addrspace 5) ; GCN32-MUBUF-NEXT: $vgpr3 = BUFFER_LOAD_DWORD_OFFSET $sgpr96_sgpr97_sgpr98_sgpr99, $sgpr33, 0, 0, 0, implicit $exec :: (load (s32) from %fixed-stack.0, align 16, addrspace 5) @@ -655,8 +659,8 @@ ; GCN32-MUBUF-NEXT: $sgpr3 = S_MOV_B32 $exec_lo ; GCN32-MUBUF-NEXT: $exec_lo = S_MOV_B32 7, implicit-def $vgpr1 ; GCN32-MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr96_sgpr97_sgpr98_sgpr99, $sgpr33, 0, 0, 0, implicit $exec :: (store (s32) into %fixed-stack.0, align 16, addrspace 5) - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr13, 1, $vgpr1 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr1, implicit $sgpr12_sgpr13_sgpr14 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr13, 1, $vgpr1, implicit $sgpr12_sgpr13_sgpr14 ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr14, 2, $vgpr1, implicit killed $sgpr12_sgpr13_sgpr14 ; GCN32-MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr96_sgpr97_sgpr98_sgpr99, $sgpr33, 16, 0, 0, implicit $exec :: (store (s32) into %stack.2, addrspace 5) ; GCN32-MUBUF-NEXT: $vgpr1 = BUFFER_LOAD_DWORD_OFFSET $sgpr96_sgpr97_sgpr98_sgpr99, $sgpr33, 0, 0, 0, implicit $exec :: (load (s32) from %fixed-stack.0, align 16, addrspace 5) @@ -665,9 +669,9 @@ ; GCN32-MUBUF-NEXT: $sgpr0 = S_MOV_B32 $exec_lo ; GCN32-MUBUF-NEXT: $exec_lo = S_MOV_B32 15, implicit-def $vgpr0 ; GCN32-MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr96_sgpr97_sgpr98_sgpr99, $sgpr33, 0, 0, 0, implicit $exec :: (store (s32) into %fixed-stack.0, align 16, addrspace 5) - ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr0 - ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr13, 1, $vgpr0 - ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr14, 2, $vgpr0 + ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15 + ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr13, 1, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15 + ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr14, 2, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15 ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr15, 3, $vgpr0, implicit killed $sgpr12_sgpr13_sgpr14_sgpr15 ; GCN32-MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr96_sgpr97_sgpr98_sgpr99, $sgpr33, 28, 0, 0, implicit $exec :: (store (s32) into %stack.3, addrspace 5) ; GCN32-MUBUF-NEXT: $vgpr0 = BUFFER_LOAD_DWORD_OFFSET $sgpr96_sgpr97_sgpr98_sgpr99, $sgpr33, 0, 0, 0, implicit $exec :: (load (s32) from %fixed-stack.0, align 16, addrspace 5) @@ -676,10 +680,10 @@ ; GCN32-MUBUF-NEXT: $sgpr2 = S_MOV_B32 $exec_lo ; GCN32-MUBUF-NEXT: $exec_lo = S_MOV_B32 31, implicit-def $vgpr2 ; GCN32-MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr96_sgpr97_sgpr98_sgpr99, $sgpr33, 0, 0, 0, implicit $exec :: (store (s32) into %fixed-stack.0, align 16, addrspace 5) - ; GCN32-MUBUF-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr2 - ; GCN32-MUBUF-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr13, 1, $vgpr2 - ; GCN32-MUBUF-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr14, 2, $vgpr2 - ; GCN32-MUBUF-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr15, 3, $vgpr2 + ; GCN32-MUBUF-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr2, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16 + ; GCN32-MUBUF-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr13, 1, $vgpr2, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16 + ; GCN32-MUBUF-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr14, 2, $vgpr2, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16 + ; GCN32-MUBUF-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr15, 3, $vgpr2, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16 ; GCN32-MUBUF-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr16, 4, $vgpr2, implicit killed $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16 ; GCN32-MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr96_sgpr97_sgpr98_sgpr99, $sgpr33, 44, 0, 0, implicit $exec :: (store (s32) into %stack.4, addrspace 5) ; GCN32-MUBUF-NEXT: $vgpr2 = BUFFER_LOAD_DWORD_OFFSET $sgpr96_sgpr97_sgpr98_sgpr99, $sgpr33, 0, 0, 0, implicit $exec :: (load (s32) from %fixed-stack.0, align 16, addrspace 5) @@ -688,13 +692,13 @@ ; GCN32-MUBUF-NEXT: $sgpr1 = S_MOV_B32 $exec_lo ; GCN32-MUBUF-NEXT: $exec_lo = S_MOV_B32 255, implicit-def $vgpr1 ; GCN32-MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr96_sgpr97_sgpr98_sgpr99, $sgpr33, 0, 0, 0, implicit $exec :: (store (s32) into %fixed-stack.0, align 16, addrspace 5) - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr13, 1, $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr14, 2, $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr15, 3, $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr16, 4, $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr17, 5, $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr18, 6, $vgpr1 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr1, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr13, 1, $vgpr1, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr14, 2, $vgpr1, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr15, 3, $vgpr1, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr16, 4, $vgpr1, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr17, 5, $vgpr1, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr18, 6, $vgpr1, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19 ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr19, 7, $vgpr1, implicit killed $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19 ; GCN32-MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr96_sgpr97_sgpr98_sgpr99, $sgpr33, 64, 0, 0, implicit $exec :: (store (s32) into %stack.5, addrspace 5) ; GCN32-MUBUF-NEXT: $vgpr1 = BUFFER_LOAD_DWORD_OFFSET $sgpr96_sgpr97_sgpr98_sgpr99, $sgpr33, 0, 0, 0, implicit $exec :: (load (s32) from %fixed-stack.0, align 16, addrspace 5) @@ -703,21 +707,21 @@ ; GCN32-MUBUF-NEXT: $sgpr0 = S_MOV_B32 $exec_lo ; GCN32-MUBUF-NEXT: $exec_lo = S_MOV_B32 65535, implicit-def $vgpr0 ; GCN32-MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr96_sgpr97_sgpr98_sgpr99, $sgpr33, 0, 0, 0, implicit $exec :: (store (s32) into %fixed-stack.0, align 16, addrspace 5) - ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr0 - ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr13, 1, $vgpr0 - ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr14, 2, $vgpr0 - ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr15, 3, $vgpr0 - ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr16, 4, $vgpr0 - ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr17, 5, $vgpr0 - ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr18, 6, $vgpr0 - ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr19, 7, $vgpr0 - ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr20, 8, $vgpr0 - ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr21, 9, $vgpr0 - ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr22, 10, $vgpr0 - ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr23, 11, $vgpr0 - ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr24, 12, $vgpr0 - ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr25, 13, $vgpr0 - ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr26, 14, $vgpr0 + ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr13, 1, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr14, 2, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr15, 3, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr16, 4, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr17, 5, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr18, 6, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr19, 7, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr20, 8, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr21, 9, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr22, 10, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr23, 11, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr24, 12, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr25, 13, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr26, 14, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 ; GCN32-MUBUF-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr27, 15, $vgpr0, implicit killed $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 ; GCN32-MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr96_sgpr97_sgpr98_sgpr99, $sgpr33, 96, 0, 0, implicit $exec :: (store (s32) into %stack.6, addrspace 5) ; GCN32-MUBUF-NEXT: $vgpr0 = BUFFER_LOAD_DWORD_OFFSET $sgpr96_sgpr97_sgpr98_sgpr99, $sgpr33, 0, 0, 0, implicit $exec :: (load (s32) from %fixed-stack.0, align 16, addrspace 5) @@ -726,37 +730,37 @@ ; GCN32-MUBUF-NEXT: $sgpr2 = S_MOV_B32 $exec_lo ; GCN32-MUBUF-NEXT: $exec_lo = S_MOV_B32 4294967295, implicit-def $vgpr1 ; GCN32-MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr96_sgpr97_sgpr98_sgpr99, $sgpr33, 0, 0, 0, implicit $exec :: (store (s32) into %fixed-stack.0, align 16, addrspace 5) - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr64, 0, undef $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr65, 1, $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr66, 2, $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr67, 3, $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr68, 4, $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr69, 5, $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr70, 6, $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr71, 7, $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr72, 8, $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr73, 9, $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr74, 10, $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr75, 11, $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr76, 12, $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr77, 13, $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr78, 14, $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr79, 15, $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr80, 16, $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr81, 17, $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr82, 18, $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr83, 19, $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr84, 20, $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr85, 21, $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr86, 22, $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr87, 23, $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr88, 24, $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr89, 25, $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr90, 26, $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr91, 27, $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr92, 28, $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr93, 29, $vgpr1 - ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr94, 30, $vgpr1 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr64, 0, undef $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr65, 1, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr66, 2, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr67, 3, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr68, 4, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr69, 5, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr70, 6, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr71, 7, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr72, 8, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr73, 9, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr74, 10, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr75, 11, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr76, 12, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr77, 13, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr78, 14, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr79, 15, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr80, 16, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr81, 17, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr82, 18, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr83, 19, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr84, 20, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr85, 21, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr86, 22, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr87, 23, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr88, 24, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr89, 25, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr90, 26, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr91, 27, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr92, 28, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr93, 29, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr94, 30, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 ; GCN32-MUBUF-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr95, 31, $vgpr1, implicit killed $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 ; GCN32-MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr96_sgpr97_sgpr98_sgpr99, $sgpr33, 160, 0, 0, implicit $exec :: (store (s32) into %stack.7, addrspace 5) ; GCN32-MUBUF-NEXT: $vgpr1 = BUFFER_LOAD_DWORD_OFFSET $sgpr96_sgpr97_sgpr98_sgpr99, $sgpr33, 0, 0, 0, implicit $exec :: (load (s32) from %fixed-stack.0, align 16, addrspace 5) @@ -773,6 +777,8 @@ ; GCN64-FLATSCR-LABEL: name: check_spill ; GCN64-FLATSCR: liveins: $sgpr8, $sgpr4_sgpr5, $sgpr6_sgpr7, $sgpr11, $sgpr0_sgpr1 ; GCN64-FLATSCR-NEXT: {{ $}} + ; GCN64-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x0f, 0x04, 0x30, 0x36, 0xe9, 0x02 + ; GCN64-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $pc_reg ; GCN64-FLATSCR-NEXT: $sgpr33 = S_MOV_B32 0 ; GCN64-FLATSCR-NEXT: $flat_scr_lo = S_ADD_U32 $sgpr0, $sgpr11, implicit-def $scc ; GCN64-FLATSCR-NEXT: $flat_scr_hi = S_ADDC_U32 $sgpr1, 0, implicit-def dead $scc, implicit $scc @@ -796,7 +802,7 @@ ; GCN64-FLATSCR-NEXT: $sgpr4_sgpr5 = S_MOV_B64 $exec ; GCN64-FLATSCR-NEXT: $exec = S_MOV_B64 3, implicit-def $vgpr2 ; GCN64-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr2, $sgpr33, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %fixed-stack.0, align 16, addrspace 5) - ; GCN64-FLATSCR-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr2 + ; GCN64-FLATSCR-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr2, implicit $sgpr12_sgpr13 ; GCN64-FLATSCR-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr13, 1, $vgpr2, implicit killed $sgpr12_sgpr13 ; GCN64-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr2, $sgpr33, 8, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.1, addrspace 5) ; GCN64-FLATSCR-NEXT: $vgpr2 = SCRATCH_LOAD_DWORD_SADDR $sgpr33, 0, 0, implicit $exec, implicit $flat_scr :: (load (s32) from %fixed-stack.0, align 16, addrspace 5) @@ -805,7 +811,7 @@ ; GCN64-FLATSCR-NEXT: $sgpr2_sgpr3 = S_MOV_B64 $exec ; GCN64-FLATSCR-NEXT: $exec = S_MOV_B64 3, implicit-def $vgpr3 ; GCN64-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr3, $sgpr33, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %fixed-stack.0, align 16, addrspace 5) - ; GCN64-FLATSCR-NEXT: $vgpr3 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr3 + ; GCN64-FLATSCR-NEXT: $vgpr3 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr3, implicit $sgpr12_sgpr13 ; GCN64-FLATSCR-NEXT: $vgpr3 = V_WRITELANE_B32 $sgpr13, 1, $vgpr3, implicit $sgpr12_sgpr13 ; GCN64-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr3, $sgpr33, 8, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.1, addrspace 5) ; GCN64-FLATSCR-NEXT: $vgpr3 = SCRATCH_LOAD_DWORD_SADDR $sgpr33, 0, 0, implicit $exec, implicit $flat_scr :: (load (s32) from %fixed-stack.0, align 16, addrspace 5) @@ -814,8 +820,8 @@ ; GCN64-FLATSCR-NEXT: $sgpr6_sgpr7 = S_MOV_B64 $exec ; GCN64-FLATSCR-NEXT: $exec = S_MOV_B64 7, implicit-def $vgpr1 ; GCN64-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr1, $sgpr33, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %fixed-stack.0, align 16, addrspace 5) - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr13, 1, $vgpr1 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr1, implicit $sgpr12_sgpr13_sgpr14 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr13, 1, $vgpr1, implicit $sgpr12_sgpr13_sgpr14 ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr14, 2, $vgpr1, implicit killed $sgpr12_sgpr13_sgpr14 ; GCN64-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr1, $sgpr33, 16, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.2, addrspace 5) ; GCN64-FLATSCR-NEXT: $vgpr1 = SCRATCH_LOAD_DWORD_SADDR $sgpr33, 0, 0, implicit $exec, implicit $flat_scr :: (load (s32) from %fixed-stack.0, align 16, addrspace 5) @@ -824,9 +830,9 @@ ; GCN64-FLATSCR-NEXT: $sgpr0_sgpr1 = S_MOV_B64 $exec ; GCN64-FLATSCR-NEXT: $exec = S_MOV_B64 15, implicit-def $vgpr0 ; GCN64-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr0, $sgpr33, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %fixed-stack.0, align 16, addrspace 5) - ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr0 - ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr13, 1, $vgpr0 - ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr14, 2, $vgpr0 + ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15 + ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr13, 1, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15 + ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr14, 2, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15 ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr15, 3, $vgpr0, implicit killed $sgpr12_sgpr13_sgpr14_sgpr15 ; GCN64-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr0, $sgpr33, 28, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.3, addrspace 5) ; GCN64-FLATSCR-NEXT: $vgpr0 = SCRATCH_LOAD_DWORD_SADDR $sgpr33, 0, 0, implicit $exec, implicit $flat_scr :: (load (s32) from %fixed-stack.0, align 16, addrspace 5) @@ -835,10 +841,10 @@ ; GCN64-FLATSCR-NEXT: $sgpr4_sgpr5 = S_MOV_B64 $exec ; GCN64-FLATSCR-NEXT: $exec = S_MOV_B64 31, implicit-def $vgpr2 ; GCN64-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr2, $sgpr33, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %fixed-stack.0, align 16, addrspace 5) - ; GCN64-FLATSCR-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr2 - ; GCN64-FLATSCR-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr13, 1, $vgpr2 - ; GCN64-FLATSCR-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr14, 2, $vgpr2 - ; GCN64-FLATSCR-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr15, 3, $vgpr2 + ; GCN64-FLATSCR-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr2, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16 + ; GCN64-FLATSCR-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr13, 1, $vgpr2, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16 + ; GCN64-FLATSCR-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr14, 2, $vgpr2, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16 + ; GCN64-FLATSCR-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr15, 3, $vgpr2, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16 ; GCN64-FLATSCR-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr16, 4, $vgpr2, implicit killed $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16 ; GCN64-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr2, $sgpr33, 44, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.4, addrspace 5) ; GCN64-FLATSCR-NEXT: $vgpr2 = SCRATCH_LOAD_DWORD_SADDR $sgpr33, 0, 0, implicit $exec, implicit $flat_scr :: (load (s32) from %fixed-stack.0, align 16, addrspace 5) @@ -847,13 +853,13 @@ ; GCN64-FLATSCR-NEXT: $sgpr2_sgpr3 = S_MOV_B64 $exec ; GCN64-FLATSCR-NEXT: $exec = S_MOV_B64 255, implicit-def $vgpr1 ; GCN64-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr1, $sgpr33, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %fixed-stack.0, align 16, addrspace 5) - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr13, 1, $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr14, 2, $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr15, 3, $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr16, 4, $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr17, 5, $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr18, 6, $vgpr1 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr1, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr13, 1, $vgpr1, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr14, 2, $vgpr1, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr15, 3, $vgpr1, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr16, 4, $vgpr1, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr17, 5, $vgpr1, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr18, 6, $vgpr1, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19 ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr19, 7, $vgpr1, implicit killed $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19 ; GCN64-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr1, $sgpr33, 64, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.5, addrspace 5) ; GCN64-FLATSCR-NEXT: $vgpr1 = SCRATCH_LOAD_DWORD_SADDR $sgpr33, 0, 0, implicit $exec, implicit $flat_scr :: (load (s32) from %fixed-stack.0, align 16, addrspace 5) @@ -862,21 +868,21 @@ ; GCN64-FLATSCR-NEXT: $sgpr0_sgpr1 = S_MOV_B64 $exec ; GCN64-FLATSCR-NEXT: $exec = S_MOV_B64 65535, implicit-def $vgpr0 ; GCN64-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr0, $sgpr33, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %fixed-stack.0, align 16, addrspace 5) - ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr0 - ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr13, 1, $vgpr0 - ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr14, 2, $vgpr0 - ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr15, 3, $vgpr0 - ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr16, 4, $vgpr0 - ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr17, 5, $vgpr0 - ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr18, 6, $vgpr0 - ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr19, 7, $vgpr0 - ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr20, 8, $vgpr0 - ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr21, 9, $vgpr0 - ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr22, 10, $vgpr0 - ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr23, 11, $vgpr0 - ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr24, 12, $vgpr0 - ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr25, 13, $vgpr0 - ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr26, 14, $vgpr0 + ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr12, 0, undef $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr13, 1, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr14, 2, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr15, 3, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr16, 4, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr17, 5, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr18, 6, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr19, 7, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr20, 8, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr21, 9, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr22, 10, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr23, 11, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr24, 12, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr25, 13, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 + ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr26, 14, $vgpr0, implicit $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 ; GCN64-FLATSCR-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr27, 15, $vgpr0, implicit killed $sgpr12_sgpr13_sgpr14_sgpr15_sgpr16_sgpr17_sgpr18_sgpr19_sgpr20_sgpr21_sgpr22_sgpr23_sgpr24_sgpr25_sgpr26_sgpr27 ; GCN64-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr0, $sgpr33, 96, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.6, addrspace 5) ; GCN64-FLATSCR-NEXT: $vgpr0 = SCRATCH_LOAD_DWORD_SADDR $sgpr33, 0, 0, implicit $exec, implicit $flat_scr :: (load (s32) from %fixed-stack.0, align 16, addrspace 5) @@ -885,37 +891,37 @@ ; GCN64-FLATSCR-NEXT: $sgpr4_sgpr5 = S_MOV_B64 $exec ; GCN64-FLATSCR-NEXT: $exec = S_MOV_B64 4294967295, implicit-def $vgpr1 ; GCN64-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr1, $sgpr33, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %fixed-stack.0, align 16, addrspace 5) - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr64, 0, undef $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr65, 1, $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr66, 2, $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr67, 3, $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr68, 4, $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr69, 5, $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr70, 6, $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr71, 7, $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr72, 8, $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr73, 9, $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr74, 10, $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr75, 11, $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr76, 12, $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr77, 13, $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr78, 14, $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr79, 15, $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr80, 16, $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr81, 17, $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr82, 18, $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr83, 19, $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr84, 20, $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr85, 21, $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr86, 22, $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr87, 23, $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr88, 24, $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr89, 25, $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr90, 26, $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr91, 27, $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr92, 28, $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr93, 29, $vgpr1 - ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr94, 30, $vgpr1 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr64, 0, undef $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr65, 1, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr66, 2, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr67, 3, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr68, 4, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr69, 5, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr70, 6, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr71, 7, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr72, 8, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr73, 9, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr74, 10, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr75, 11, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr76, 12, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr77, 13, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr78, 14, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr79, 15, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr80, 16, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr81, 17, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr82, 18, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr83, 19, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr84, 20, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr85, 21, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr86, 22, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr87, 23, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr88, 24, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr89, 25, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr90, 26, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr91, 27, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr92, 28, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr93, 29, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 + ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr94, 30, $vgpr1, implicit $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 ; GCN64-FLATSCR-NEXT: $vgpr1 = V_WRITELANE_B32 $sgpr95, 31, $vgpr1, implicit killed $sgpr64_sgpr65_sgpr66_sgpr67_sgpr68_sgpr69_sgpr70_sgpr71_sgpr72_sgpr73_sgpr74_sgpr75_sgpr76_sgpr77_sgpr78_sgpr79_sgpr80_sgpr81_sgpr82_sgpr83_sgpr84_sgpr85_sgpr86_sgpr87_sgpr88_sgpr89_sgpr90_sgpr91_sgpr92_sgpr93_sgpr94_sgpr95 ; GCN64-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr1, $sgpr33, 160, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.7, addrspace 5) ; GCN64-FLATSCR-NEXT: $vgpr1 = SCRATCH_LOAD_DWORD_SADDR $sgpr33, 0, 0, implicit $exec, implicit $flat_scr :: (load (s32) from %fixed-stack.0, align 16, addrspace 5) @@ -1004,6 +1010,8 @@ ; GCN64-MUBUF-LABEL: name: check_reload ; GCN64-MUBUF: liveins: $sgpr8, $sgpr4_sgpr5, $sgpr6_sgpr7, $sgpr11 ; GCN64-MUBUF-NEXT: {{ $}} + ; GCN64-MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x0f, 0x04, 0x30, 0x36, 0xe9, 0x02 + ; GCN64-MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $pc_reg ; GCN64-MUBUF-NEXT: $sgpr33 = S_MOV_B32 0 ; GCN64-MUBUF-NEXT: $sgpr28 = S_MOV_B32 &SCRATCH_RSRC_DWORD0, implicit-def $sgpr28_sgpr29_sgpr30_sgpr31 ; GCN64-MUBUF-NEXT: $sgpr29 = S_MOV_B32 &SCRATCH_RSRC_DWORD1, implicit-def $sgpr28_sgpr29_sgpr30_sgpr31 @@ -1141,6 +1149,8 @@ ; GCN32-MUBUF-LABEL: name: check_reload ; GCN32-MUBUF: liveins: $sgpr8, $sgpr4_sgpr5, $sgpr6_sgpr7, $sgpr11 ; GCN32-MUBUF-NEXT: {{ $}} + ; GCN32-MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x0f, 0x04, 0x30, 0x36, 0xe9, 0x02 + ; GCN32-MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $pc_reg ; GCN32-MUBUF-NEXT: $sgpr33 = S_MOV_B32 0 ; GCN32-MUBUF-NEXT: $sgpr96 = S_MOV_B32 &SCRATCH_RSRC_DWORD0, implicit-def $sgpr96_sgpr97_sgpr98_sgpr99 ; GCN32-MUBUF-NEXT: $sgpr97 = S_MOV_B32 &SCRATCH_RSRC_DWORD1, implicit-def $sgpr96_sgpr97_sgpr98_sgpr99 @@ -1278,6 +1288,8 @@ ; GCN64-FLATSCR-LABEL: name: check_reload ; GCN64-FLATSCR: liveins: $sgpr8, $sgpr4_sgpr5, $sgpr6_sgpr7, $sgpr11, $sgpr0_sgpr1 ; GCN64-FLATSCR-NEXT: {{ $}} + ; GCN64-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x0f, 0x04, 0x30, 0x36, 0xe9, 0x02 + ; GCN64-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $pc_reg ; GCN64-FLATSCR-NEXT: $sgpr33 = S_MOV_B32 0 ; GCN64-FLATSCR-NEXT: $flat_scr_lo = S_ADD_U32 $sgpr0, $sgpr11, implicit-def $scc ; GCN64-FLATSCR-NEXT: $flat_scr_hi = S_ADDC_U32 $sgpr1, 0, implicit-def dead $scc, implicit $scc diff --git a/llvm/test/CodeGen/AMDGPU/sgpr-spills-split-regalloc.ll b/llvm/test/CodeGen/AMDGPU/sgpr-spills-split-regalloc.ll --- a/llvm/test/CodeGen/AMDGPU/sgpr-spills-split-regalloc.ll +++ b/llvm/test/CodeGen/AMDGPU/sgpr-spills-split-regalloc.ll @@ -150,8 +150,8 @@ ; GCN-NEXT: s_mov_b64 s[2:3], s[10:11] ; GCN-NEXT: s_waitcnt lgkmcnt(0) ; GCN-NEXT: s_swappc_b64 s[30:31], s[4:5] -; GCN-NEXT: v_readlane_b32 s31, v255, 1 ; GCN-NEXT: v_readlane_b32 s30, v255, 0 +; GCN-NEXT: v_readlane_b32 s31, v255, 1 ; GCN-NEXT: buffer_load_dword v254, off, s[0:3], s33 ; 4-byte Folded Reload ; GCN-NEXT: buffer_load_dword v253, off, s[0:3], s33 offset:4 ; 4-byte Folded Reload ; GCN-NEXT: buffer_load_dword v252, off, s[0:3], s33 offset:8 ; 4-byte Folded Reload @@ -441,8 +441,8 @@ ; GCN-NEXT: s_mov_b64 s[2:3], s[10:11] ; GCN-NEXT: s_waitcnt lgkmcnt(0) ; GCN-NEXT: s_swappc_b64 s[30:31], s[4:5] -; GCN-NEXT: v_readlane_b32 s31, v254, 1 ; GCN-NEXT: v_readlane_b32 s30, v254, 0 +; GCN-NEXT: v_readlane_b32 s31, v254, 1 ; GCN-NEXT: buffer_load_dword v253, off, s[0:3], s33 ; 4-byte Folded Reload ; GCN-NEXT: buffer_load_dword v252, off, s[0:3], s33 offset:4 ; 4-byte Folded Reload ; GCN-NEXT: buffer_load_dword v251, off, s[0:3], s33 offset:8 ; 4-byte Folded Reload @@ -1623,19 +1623,12 @@ ; GCN-NEXT: buffer_store_dword v253, off, s[0:3], s33 offset:8 ; 4-byte Folded Spill ; GCN-NEXT: buffer_store_dword v254, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GCN-NEXT: buffer_store_dword v255, off, s[0:3], s33 ; 4-byte Folded Spill -; GCN-NEXT: s_mov_b64 s[14:15], exec -; GCN-NEXT: s_mov_b64 exec, 1 -; GCN-NEXT: buffer_store_dword v1, off, s[0:3], s33 offset:456 -; GCN-NEXT: v_writelane_b32 v1, s30, 0 -; GCN-NEXT: buffer_store_dword v1, off, s[0:3], s33 offset:448 ; 4-byte Folded Spill -; GCN-NEXT: buffer_load_dword v1, off, s[0:3], s33 offset:456 -; GCN-NEXT: s_waitcnt vmcnt(0) -; GCN-NEXT: s_mov_b64 exec, s[14:15] ; GCN-NEXT: s_mov_b64 s[12:13], exec -; GCN-NEXT: s_mov_b64 exec, 1 +; GCN-NEXT: s_mov_b64 exec, 3 ; GCN-NEXT: buffer_store_dword v0, off, s[0:3], s33 offset:456 -; GCN-NEXT: v_writelane_b32 v0, s31, 0 -; GCN-NEXT: buffer_store_dword v0, off, s[0:3], s33 offset:452 ; 4-byte Folded Spill +; GCN-NEXT: v_writelane_b32 v0, s30, 0 +; GCN-NEXT: v_writelane_b32 v0, s31, 1 +; GCN-NEXT: buffer_store_dword v0, off, s[0:3], s33 offset:448 ; 4-byte Folded Spill ; GCN-NEXT: buffer_load_dword v0, off, s[0:3], s33 offset:456 ; GCN-NEXT: s_waitcnt vmcnt(0) ; GCN-NEXT: s_mov_b64 exec, s[12:13] @@ -1647,21 +1640,13 @@ ; GCN-NEXT: s_mov_b64 s[0:1], s[8:9] ; GCN-NEXT: s_mov_b64 s[2:3], s[10:11] ; GCN-NEXT: s_swappc_b64 s[30:31], s[4:5] -; GCN-NEXT: s_mov_b64 s[8:9], exec -; GCN-NEXT: s_mov_b64 exec, 1 -; GCN-NEXT: buffer_store_dword v1, off, s[0:3], s33 offset:456 -; GCN-NEXT: buffer_load_dword v1, off, s[0:3], s33 offset:452 ; 4-byte Folded Reload -; GCN-NEXT: s_waitcnt vmcnt(0) -; GCN-NEXT: v_readlane_b32 s31, v1, 0 -; GCN-NEXT: buffer_load_dword v1, off, s[0:3], s33 offset:456 -; GCN-NEXT: s_waitcnt vmcnt(0) -; GCN-NEXT: s_mov_b64 exec, s[8:9] ; GCN-NEXT: s_mov_b64 s[4:5], exec -; GCN-NEXT: s_mov_b64 exec, 1 +; GCN-NEXT: s_mov_b64 exec, 3 ; GCN-NEXT: buffer_store_dword v0, off, s[0:3], s33 offset:456 ; GCN-NEXT: buffer_load_dword v0, off, s[0:3], s33 offset:448 ; 4-byte Folded Reload ; GCN-NEXT: s_waitcnt vmcnt(0) ; GCN-NEXT: v_readlane_b32 s30, v0, 0 +; GCN-NEXT: v_readlane_b32 s31, v0, 1 ; GCN-NEXT: buffer_load_dword v0, off, s[0:3], s33 offset:456 ; GCN-NEXT: s_waitcnt vmcnt(0) ; GCN-NEXT: s_mov_b64 exec, s[4:5] diff --git a/llvm/test/CodeGen/AMDGPU/si-lower-sgpr-spills.mir b/llvm/test/CodeGen/AMDGPU/si-lower-sgpr-spills.mir --- a/llvm/test/CodeGen/AMDGPU/si-lower-sgpr-spills.mir +++ b/llvm/test/CodeGen/AMDGPU/si-lower-sgpr-spills.mir @@ -2,9 +2,13 @@ # CHECK-LABEL: name: empty_entry_block # CHECK: V_WRITELANE +# CHECK-NEXT: CFI_INSTRUCTION # CHECK-NEXT: V_WRITELANE +# CHECK-NEXT: CFI_INSTRUCTION # CHECK-NEXT: V_WRITELANE +# CHECK-NEXT: CFI_INSTRUCTION # CHECK-NEXT: V_WRITELANE +# CHECK-NEXT: CFI_INSTRUCTION # CHECK: V_READLANE # CHECK-NEXT: V_READLANE # CHECK-NEXT: V_READLANE diff --git a/llvm/test/CodeGen/AMDGPU/sibling-call.ll b/llvm/test/CodeGen/AMDGPU/sibling-call.ll --- a/llvm/test/CodeGen/AMDGPU/sibling-call.ll +++ b/llvm/test/CodeGen/AMDGPU/sibling-call.ll @@ -204,8 +204,8 @@ ; GCN-NEXT: buffer_store_dword [[CSRV:v[0-9]+]], off, s[0:3], s33 offset:8 ; 4-byte Folded Spill ; GCN-NEXT: buffer_store_dword [[CSRV_1:v[0-9]+]], off, s[0:3], s33 offset:12 ; 4-byte Folded Spill ; GCN-NEXT: s_mov_b64 exec -; GCN-DAG: s_addk_i32 s32, 0x800 ; GCN: v_writelane_b32 [[CSRV_1]], [[FP_SCRATCH_COPY]], 0 +; GCN-DAG: s_addk_i32 s32, 0x800 ; GCN-DAG: s_getpc_b64 s[4:5] ; GCN-DAG: s_add_u32 s4, s4, i32_fastcc_i32_i32@gotpcrel32@lo+4 @@ -222,11 +222,12 @@ ; GCN-DAG: buffer_load_dword v42, off, s[0:3], s33 ; 4-byte Folded Reload ; GCN-DAG: buffer_load_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Reload -; GCN: s_getpc_b64 s[4:5] +; GCN: v_readlane_b32 s30, [[CSRV]], 0 +; GCN-NEXT: s_getpc_b64 s[4:5] ; GCN-NEXT: s_add_u32 s4, s4, sibling_call_i32_fastcc_i32_i32@rel32@lo+4 ; GCN-NEXT: s_addc_u32 s5, s5, sibling_call_i32_fastcc_i32_i32@rel32@hi+12 + ; GCN-NEXT: v_readlane_b32 s31, [[CSRV]], 1 -; GCN-NEXT: v_readlane_b32 s30, [[CSRV]], 0 ; GCN-NEXT: v_readlane_b32 [[FP_SCRATCH_COPY:s[0-9]+]], [[CSRV_1]], 0 ; GCN-NEXT: s_or_saveexec_b64 s[8:9], -1 ; GCN-NEXT: buffer_load_dword [[CSRV]], off, s[0:3], s33 offset:8 ; 4-byte Folded Reload diff --git a/llvm/test/CodeGen/AMDGPU/spill-agpr-partially-undef.mir b/llvm/test/CodeGen/AMDGPU/spill-agpr-partially-undef.mir --- a/llvm/test/CodeGen/AMDGPU/spill-agpr-partially-undef.mir +++ b/llvm/test/CodeGen/AMDGPU/spill-agpr-partially-undef.mir @@ -17,6 +17,8 @@ ; CHECK-LABEL: name: spill_a64_kill ; CHECK: liveins: $agpr0_agpr1 ; CHECK-NEXT: {{ $}} + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 ; CHECK-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1 ; CHECK-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit $agpr0_agpr1 :: (store (s32) into %stack.0, addrspace 5) ; CHECK-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -42,6 +44,8 @@ ; CHECK-LABEL: name: spill_a64_undef_sub1_killed ; CHECK: liveins: $agpr0 ; CHECK-NEXT: {{ $}} + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 ; CHECK-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1 ; CHECK-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit $agpr0_agpr1 :: (store (s32) into %stack.0, addrspace 5) ; CHECK-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -65,6 +69,8 @@ ; CHECK-LABEL: name: spill_a64_undef_sub0_killed ; CHECK: liveins: $agpr1 ; CHECK-NEXT: {{ $}} + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 ; CHECK-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1 ; CHECK-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit $agpr0_agpr1 :: (store (s32) into %stack.0, addrspace 5) ; CHECK-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec diff --git a/llvm/test/CodeGen/AMDGPU/spill-agpr.mir b/llvm/test/CodeGen/AMDGPU/spill-agpr.mir --- a/llvm/test/CodeGen/AMDGPU/spill-agpr.mir +++ b/llvm/test/CodeGen/AMDGPU/spill-agpr.mir @@ -35,6 +35,12 @@ ; GFX908-EXPANDED-NEXT: successors: %bb.1(0x80000000) ; GFX908-EXPANDED-NEXT: liveins: $vgpr0, $vgpr1 ; GFX908-EXPANDED-NEXT: {{ $}} + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 ; GFX908-EXPANDED-NEXT: S_NOP 0, implicit-def renamable $agpr0 ; GFX908-EXPANDED-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec ; GFX908-EXPANDED-NEXT: S_NOP 0, implicit-def renamable $agpr0 @@ -77,6 +83,12 @@ ; GFX90A-EXPANDED-NEXT: successors: %bb.1(0x80000000) ; GFX90A-EXPANDED-NEXT: liveins: $vgpr0, $vgpr1 ; GFX90A-EXPANDED-NEXT: {{ $}} + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 ; GFX90A-EXPANDED-NEXT: S_NOP 0, implicit-def renamable $agpr0 ; GFX90A-EXPANDED-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec ; GFX90A-EXPANDED-NEXT: S_NOP 0, implicit-def renamable $agpr0 @@ -168,6 +180,12 @@ ; GFX908-EXPANDED-NEXT: successors: %bb.1(0x80000000) ; GFX908-EXPANDED-NEXT: liveins: $vgpr0, $vgpr1 ; GFX908-EXPANDED-NEXT: {{ $}} + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 ; GFX908-EXPANDED-NEXT: S_NOP 0, implicit-def renamable $agpr0_agpr1 ; GFX908-EXPANDED-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1, implicit $agpr0_agpr1 ; GFX908-EXPANDED-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec, implicit killed $agpr0_agpr1 @@ -206,6 +224,12 @@ ; GFX90A-EXPANDED-NEXT: successors: %bb.1(0x80000000) ; GFX90A-EXPANDED-NEXT: liveins: $vgpr0, $vgpr1 ; GFX90A-EXPANDED-NEXT: {{ $}} + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 ; GFX90A-EXPANDED-NEXT: S_NOP 0, implicit-def renamable $agpr0_agpr1 ; GFX90A-EXPANDED-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1, implicit $agpr0_agpr1 ; GFX90A-EXPANDED-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec, implicit killed $agpr0_agpr1 @@ -307,6 +331,9 @@ ; GFX908-EXPANDED-NEXT: successors: %bb.1(0x80000000) ; GFX908-EXPANDED-NEXT: liveins: $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr248_vgpr249_vgpr250_vgpr251_vgpr252_vgpr253_vgpr254_vgpr255, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX908-EXPANDED-NEXT: {{ $}} + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 ; GFX908-EXPANDED-NEXT: S_NOP 0, implicit-def renamable $agpr0 ; GFX908-EXPANDED-NEXT: $vgpr63 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec ; GFX908-EXPANDED-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr63, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.0, addrspace 5) @@ -373,6 +400,9 @@ ; GFX90A-EXPANDED-NEXT: successors: %bb.1(0x80000000) ; GFX90A-EXPANDED-NEXT: liveins: $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr248_vgpr249_vgpr250_vgpr251_vgpr252_vgpr253_vgpr254_vgpr255, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX90A-EXPANDED-NEXT: {{ $}} + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 ; GFX90A-EXPANDED-NEXT: S_NOP 0, implicit-def renamable $agpr0 ; GFX90A-EXPANDED-NEXT: BUFFER_STORE_DWORD_OFFSET killed $agpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.0, addrspace 5) ; GFX90A-EXPANDED-NEXT: S_CBRANCH_SCC1 %bb.1, implicit undef $scc @@ -516,6 +546,14 @@ ; GFX908-EXPANDED-NEXT: successors: %bb.1(0x80000000) ; GFX908-EXPANDED-NEXT: liveins: $vgpr0, $vgpr1, $vgpr2 ; GFX908-EXPANDED-NEXT: {{ $}} + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 ; GFX908-EXPANDED-NEXT: S_NOP 0, implicit-def renamable $agpr0_agpr1_agpr2 ; GFX908-EXPANDED-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2, implicit $agpr0_agpr1_agpr2 ; GFX908-EXPANDED-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -556,6 +594,14 @@ ; GFX90A-EXPANDED-NEXT: successors: %bb.1(0x80000000) ; GFX90A-EXPANDED-NEXT: liveins: $vgpr0, $vgpr1, $vgpr2 ; GFX90A-EXPANDED-NEXT: {{ $}} + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 ; GFX90A-EXPANDED-NEXT: S_NOP 0, implicit-def renamable $agpr0_agpr1_agpr2 ; GFX90A-EXPANDED-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2, implicit $agpr0_agpr1_agpr2 ; GFX90A-EXPANDED-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -645,6 +691,16 @@ ; GFX908-EXPANDED-NEXT: successors: %bb.1(0x80000000) ; GFX908-EXPANDED-NEXT: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3 ; GFX908-EXPANDED-NEXT: {{ $}} + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 ; GFX908-EXPANDED-NEXT: S_NOP 0, implicit-def renamable $agpr0_agpr1_agpr2_agpr3 ; GFX908-EXPANDED-NEXT: $vgpr3 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3, implicit $agpr0_agpr1_agpr2_agpr3 ; GFX908-EXPANDED-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -687,6 +743,16 @@ ; GFX90A-EXPANDED-NEXT: successors: %bb.1(0x80000000) ; GFX90A-EXPANDED-NEXT: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3 ; GFX90A-EXPANDED-NEXT: {{ $}} + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 ; GFX90A-EXPANDED-NEXT: S_NOP 0, implicit-def renamable $agpr0_agpr1_agpr2_agpr3 ; GFX90A-EXPANDED-NEXT: $vgpr3 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3, implicit $agpr0_agpr1_agpr2_agpr3 ; GFX90A-EXPANDED-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -780,6 +846,18 @@ ; GFX908-EXPANDED-NEXT: successors: %bb.1(0x80000000) ; GFX908-EXPANDED-NEXT: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4 ; GFX908-EXPANDED-NEXT: {{ $}} + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 ; GFX908-EXPANDED-NEXT: S_NOP 0, implicit-def renamable $agpr0_agpr1_agpr2_agpr3_agpr4 ; GFX908-EXPANDED-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4, implicit $agpr0_agpr1_agpr2_agpr3_agpr4 ; GFX908-EXPANDED-NEXT: $vgpr3 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -824,6 +902,18 @@ ; GFX90A-EXPANDED-NEXT: successors: %bb.1(0x80000000) ; GFX90A-EXPANDED-NEXT: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4 ; GFX90A-EXPANDED-NEXT: {{ $}} + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 ; GFX90A-EXPANDED-NEXT: S_NOP 0, implicit-def renamable $agpr0_agpr1_agpr2_agpr3_agpr4 ; GFX90A-EXPANDED-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4, implicit $agpr0_agpr1_agpr2_agpr3_agpr4 ; GFX90A-EXPANDED-NEXT: $vgpr3 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -921,6 +1011,20 @@ ; GFX908-EXPANDED-NEXT: successors: %bb.1(0x80000000) ; GFX908-EXPANDED-NEXT: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5 ; GFX908-EXPANDED-NEXT: {{ $}} + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 ; GFX908-EXPANDED-NEXT: S_NOP 0, implicit-def renamable $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 ; GFX908-EXPANDED-NEXT: $vgpr5 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 ; GFX908-EXPANDED-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -967,6 +1071,20 @@ ; GFX90A-EXPANDED-NEXT: successors: %bb.1(0x80000000) ; GFX90A-EXPANDED-NEXT: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5 ; GFX90A-EXPANDED-NEXT: {{ $}} + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 ; GFX90A-EXPANDED-NEXT: S_NOP 0, implicit-def renamable $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 ; GFX90A-EXPANDED-NEXT: $vgpr5 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5 ; GFX90A-EXPANDED-NEXT: $vgpr4 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1068,6 +1186,24 @@ ; GFX908-EXPANDED-NEXT: successors: %bb.1(0x80000000) ; GFX908-EXPANDED-NEXT: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7 ; GFX908-EXPANDED-NEXT: {{ $}} + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 ; GFX908-EXPANDED-NEXT: S_NOP 0, implicit-def renamable $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 ; GFX908-EXPANDED-NEXT: $vgpr7 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 ; GFX908-EXPANDED-NEXT: $vgpr6 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1118,6 +1254,24 @@ ; GFX90A-EXPANDED-NEXT: successors: %bb.1(0x80000000) ; GFX90A-EXPANDED-NEXT: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7 ; GFX90A-EXPANDED-NEXT: {{ $}} + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 ; GFX90A-EXPANDED-NEXT: S_NOP 0, implicit-def renamable $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 ; GFX90A-EXPANDED-NEXT: $vgpr7 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7 ; GFX90A-EXPANDED-NEXT: $vgpr6 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1227,6 +1381,26 @@ ; GFX908-EXPANDED-NEXT: successors: %bb.1(0x80000000) ; GFX908-EXPANDED-NEXT: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8 ; GFX908-EXPANDED-NEXT: {{ $}} + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 ; GFX908-EXPANDED-NEXT: S_NOP 0, implicit-def renamable $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8 ; GFX908-EXPANDED-NEXT: $vgpr8 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8 ; GFX908-EXPANDED-NEXT: $vgpr7 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1279,6 +1453,26 @@ ; GFX90A-EXPANDED-NEXT: successors: %bb.1(0x80000000) ; GFX90A-EXPANDED-NEXT: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8 ; GFX90A-EXPANDED-NEXT: {{ $}} + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 ; GFX90A-EXPANDED-NEXT: S_NOP 0, implicit-def renamable $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8 ; GFX90A-EXPANDED-NEXT: $vgpr8 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8 ; GFX90A-EXPANDED-NEXT: $vgpr7 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1349,6 +1543,28 @@ ; GFX908-EXPANDED-NEXT: successors: %bb.1(0x80000000) ; GFX908-EXPANDED-NEXT: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9 ; GFX908-EXPANDED-NEXT: {{ $}} + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 ; GFX908-EXPANDED-NEXT: S_NOP 0, implicit-def renamable $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9 ; GFX908-EXPANDED-NEXT: $vgpr9 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9 ; GFX908-EXPANDED-NEXT: $vgpr8 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1403,6 +1619,28 @@ ; GFX90A-EXPANDED-NEXT: successors: %bb.1(0x80000000) ; GFX90A-EXPANDED-NEXT: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9 ; GFX90A-EXPANDED-NEXT: {{ $}} + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 ; GFX90A-EXPANDED-NEXT: S_NOP 0, implicit-def renamable $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9 ; GFX90A-EXPANDED-NEXT: $vgpr9 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9 ; GFX90A-EXPANDED-NEXT: $vgpr8 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1475,6 +1713,30 @@ ; GFX908-EXPANDED-NEXT: successors: %bb.1(0x80000000) ; GFX908-EXPANDED-NEXT: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10 ; GFX908-EXPANDED-NEXT: {{ $}} + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 ; GFX908-EXPANDED-NEXT: S_NOP 0, implicit-def renamable $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10 ; GFX908-EXPANDED-NEXT: $vgpr10 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10 ; GFX908-EXPANDED-NEXT: $vgpr9 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1531,6 +1793,30 @@ ; GFX90A-EXPANDED-NEXT: successors: %bb.1(0x80000000) ; GFX90A-EXPANDED-NEXT: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10 ; GFX90A-EXPANDED-NEXT: {{ $}} + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 ; GFX90A-EXPANDED-NEXT: S_NOP 0, implicit-def renamable $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10 ; GFX90A-EXPANDED-NEXT: $vgpr10 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10 ; GFX90A-EXPANDED-NEXT: $vgpr9 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1605,6 +1891,32 @@ ; GFX908-EXPANDED-NEXT: successors: %bb.1(0x80000000) ; GFX908-EXPANDED-NEXT: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11 ; GFX908-EXPANDED-NEXT: {{ $}} + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 ; GFX908-EXPANDED-NEXT: S_NOP 0, implicit-def renamable $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11 ; GFX908-EXPANDED-NEXT: $vgpr11 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11 ; GFX908-EXPANDED-NEXT: $vgpr10 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1663,6 +1975,32 @@ ; GFX90A-EXPANDED-NEXT: successors: %bb.1(0x80000000) ; GFX90A-EXPANDED-NEXT: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11 ; GFX90A-EXPANDED-NEXT: {{ $}} + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 ; GFX90A-EXPANDED-NEXT: S_NOP 0, implicit-def renamable $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11 ; GFX90A-EXPANDED-NEXT: $vgpr11 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11 ; GFX90A-EXPANDED-NEXT: $vgpr10 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1739,6 +2077,40 @@ ; GFX908-EXPANDED-NEXT: successors: %bb.1(0x80000000) ; GFX908-EXPANDED-NEXT: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15 ; GFX908-EXPANDED-NEXT: {{ $}} + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 ; GFX908-EXPANDED-NEXT: S_NOP 0, implicit-def renamable $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 ; GFX908-EXPANDED-NEXT: $vgpr15 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 ; GFX908-EXPANDED-NEXT: $vgpr14 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1805,6 +2177,40 @@ ; GFX90A-EXPANDED-NEXT: successors: %bb.1(0x80000000) ; GFX90A-EXPANDED-NEXT: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15 ; GFX90A-EXPANDED-NEXT: {{ $}} + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 ; GFX90A-EXPANDED-NEXT: S_NOP 0, implicit-def renamable $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 ; GFX90A-EXPANDED-NEXT: $vgpr15 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15 ; GFX90A-EXPANDED-NEXT: $vgpr14 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -1946,6 +2352,72 @@ ; GFX908-EXPANDED-NEXT: successors: %bb.1(0x80000000) ; GFX908-EXPANDED-NEXT: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15, $vgpr16, $vgpr17, $vgpr18, $vgpr19, $vgpr20, $vgpr21, $vgpr22, $vgpr23, $vgpr24, $vgpr25, $vgpr26, $vgpr27, $vgpr28, $vgpr29, $vgpr30, $vgpr31 ; GFX908-EXPANDED-NEXT: {{ $}} + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; GFX908-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 ; GFX908-EXPANDED-NEXT: S_NOP 0, implicit-def renamable $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 ; GFX908-EXPANDED-NEXT: $vgpr31 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 ; GFX908-EXPANDED-NEXT: $vgpr30 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec @@ -2044,6 +2516,72 @@ ; GFX90A-EXPANDED-NEXT: successors: %bb.1(0x80000000) ; GFX90A-EXPANDED-NEXT: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15, $vgpr16, $vgpr17, $vgpr18, $vgpr19, $vgpr20, $vgpr21, $vgpr22, $vgpr23, $vgpr24, $vgpr25, $vgpr26, $vgpr27, $vgpr28, $vgpr29, $vgpr30, $vgpr31 ; GFX90A-EXPANDED-NEXT: {{ $}} + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr4_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr5_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr6_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr7_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr9_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr10_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr11_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr12_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr13_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr14_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr15_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr16_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr17_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr18_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr19_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr20_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr21_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr22_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr23_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr24_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr25_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr26_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr27_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr28_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr29_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr30_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr31_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr8_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr9_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr10_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr11_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr12_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr13_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr14_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr15_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr16_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr17_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr18_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr19_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr20_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr21_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr22_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr23_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr24_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr25_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr30_lo16 + ; GFX90A-EXPANDED-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr31_lo16 ; GFX90A-EXPANDED-NEXT: S_NOP 0, implicit-def renamable $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 ; GFX90A-EXPANDED-NEXT: $vgpr31 = V_ACCVGPR_READ_B32_e64 killed $agpr0, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31, implicit $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15_agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31 ; GFX90A-EXPANDED-NEXT: $vgpr30 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec diff --git a/llvm/test/CodeGen/AMDGPU/spill-reg-tuple-super-reg-use.mir b/llvm/test/CodeGen/AMDGPU/spill-reg-tuple-super-reg-use.mir --- a/llvm/test/CodeGen/AMDGPU/spill-reg-tuple-super-reg-use.mir +++ b/llvm/test/CodeGen/AMDGPU/spill-reg-tuple-super-reg-use.mir @@ -22,8 +22,17 @@ ; GCN-LABEL: name: spill_sgpr128_use_subreg ; GCN: liveins: $sgpr0, $sgpr1, $sgpr2, $sgpr3, $sgpr4, $sgpr5, $sgpr6, $sgpr7, $vgpr0, $vgpr1, $vgpr2, $vgpr3 ; GCN-NEXT: {{ $}} + ; GCN-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 ; GCN-NEXT: $sgpr8_sgpr9 = S_XOR_SAVEEXEC_B64 -1, implicit-def $exec, implicit-def dead $scc, implicit $exec ; GCN-NEXT: BUFFER_STORE_DWORD_OFFSET $vgpr0, $sgpr100_sgpr101_sgpr102_sgpr103, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.1, addrspace 5) + ; GCN-NEXT: frame-setup CFI_INSTRUCTION offset $vgpr0_lo16, 0 ; GCN-NEXT: $exec = S_MOV_B64 killed $sgpr8_sgpr9 ; GCN-NEXT: renamable $sgpr1 = COPY $sgpr2 ; GCN-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr0, 0, $vgpr0, implicit-def $sgpr0_sgpr1_sgpr2_sgpr3, implicit $sgpr0_sgpr1_sgpr2_sgpr3 @@ -59,8 +68,16 @@ ; GCN-LABEL: name: spill_sgpr128_use_kill ; GCN: liveins: $sgpr0, $sgpr1, $sgpr2, $sgpr3, $sgpr4, $sgpr5, $sgpr6, $sgpr7, $vgpr0, $vgpr1, $vgpr2, $vgpr3 ; GCN-NEXT: {{ $}} + ; GCN-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 ; GCN-NEXT: $sgpr8_sgpr9 = S_XOR_SAVEEXEC_B64 -1, implicit-def $exec, implicit-def dead $scc, implicit $exec ; GCN-NEXT: BUFFER_STORE_DWORD_OFFSET $vgpr0, $sgpr100_sgpr101_sgpr102_sgpr103, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.1, addrspace 5) + ; GCN-NEXT: frame-setup CFI_INSTRUCTION offset $vgpr0_lo16, 0 ; GCN-NEXT: $exec = S_MOV_B64 killed $sgpr8_sgpr9 ; GCN-NEXT: renamable $sgpr1 = COPY $sgpr2 ; GCN-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr0, 0, $vgpr0, implicit-def $sgpr0_sgpr1_sgpr2_sgpr3, implicit $sgpr0_sgpr1_sgpr2_sgpr3 @@ -93,6 +110,10 @@ ; GCN-LABEL: name: spill_vgpr128_use_subreg ; GCN: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7 ; GCN-NEXT: {{ $}} + ; GCN-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr8_lo16 ; GCN-NEXT: renamable $vgpr1 = COPY $vgpr2 ; GCN-NEXT: BUFFER_STORE_DWORD_OFFSET $vgpr0, $sgpr100_sgpr101_sgpr102_sgpr103, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $vgpr0_vgpr1_vgpr2_vgpr3 :: (store (s32) into %stack.0, addrspace 5) ; GCN-NEXT: BUFFER_STORE_DWORD_OFFSET $vgpr1, $sgpr100_sgpr101_sgpr102_sgpr103, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) @@ -123,6 +144,9 @@ ; GCN-LABEL: name: spill_vgpr128_use_kill ; GCN: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7 ; GCN-NEXT: {{ $}} + ; GCN-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 ; GCN-NEXT: renamable $vgpr1 = COPY $vgpr2 ; GCN-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr100_sgpr101_sgpr102_sgpr103, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $vgpr0_vgpr1_vgpr2_vgpr3 :: (store (s32) into %stack.0, addrspace 5) ; GCN-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr100_sgpr101_sgpr102_sgpr103, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) diff --git a/llvm/test/CodeGen/AMDGPU/spill-sgpr-csr-live-ins.mir b/llvm/test/CodeGen/AMDGPU/spill-sgpr-csr-live-ins.mir --- a/llvm/test/CodeGen/AMDGPU/spill-sgpr-csr-live-ins.mir +++ b/llvm/test/CodeGen/AMDGPU/spill-sgpr-csr-live-ins.mir @@ -13,6 +13,7 @@ ; CHECK: liveins: $sgpr50, $vgpr0 ; CHECK-NEXT: {{ $}} ; CHECK-NEXT: $vgpr0 = V_WRITELANE_B32 $sgpr50, 0, $vgpr0 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x52, 0x06, 0x90, 0x80, 0x14, 0xe9, 0x05, 0x00 ; CHECK-NEXT: S_NOP 0, implicit $sgpr50 ; CHECK-NEXT: $sgpr50 = S_MOV_B32 0 S_NOP 0, implicit $sgpr50 diff --git a/llvm/test/CodeGen/AMDGPU/spill-special-sgpr.mir b/llvm/test/CodeGen/AMDGPU/spill-special-sgpr.mir --- a/llvm/test/CodeGen/AMDGPU/spill-special-sgpr.mir +++ b/llvm/test/CodeGen/AMDGPU/spill-special-sgpr.mir @@ -40,6 +40,8 @@ ; GFX9-LABEL: name: check_vcc ; GFX9: liveins: $sgpr8, $sgpr4_sgpr5, $sgpr6_sgpr7, $sgpr9 ; GFX9-NEXT: {{ $}} + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION escape 0x0f, 0x04, 0x30, 0x36, 0xe9, 0x02 + ; GFX9-NEXT: frame-setup CFI_INSTRUCTION undefined $pc_reg ; GFX9-NEXT: $sgpr33 = S_MOV_B32 0 ; GFX9-NEXT: $sgpr12 = S_MOV_B32 &SCRATCH_RSRC_DWORD0, implicit-def $sgpr12_sgpr13_sgpr14_sgpr15 ; GFX9-NEXT: $sgpr13 = S_MOV_B32 &SCRATCH_RSRC_DWORD1, implicit-def $sgpr12_sgpr13_sgpr14_sgpr15 @@ -51,7 +53,7 @@ ; GFX9-NEXT: $sgpr4_sgpr5 = S_MOV_B64 $exec ; GFX9-NEXT: $exec = S_MOV_B64 3, implicit-def $vgpr2 ; GFX9-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr12_sgpr13_sgpr14_sgpr15, $sgpr33, 0, 0, 0, implicit $exec :: (store (s32) into %fixed-stack.0, align 16, addrspace 5) - ; GFX9-NEXT: $vgpr2 = V_WRITELANE_B32 $vcc_lo, 0, undef $vgpr2 + ; GFX9-NEXT: $vgpr2 = V_WRITELANE_B32 $vcc_lo, 0, undef $vgpr2, implicit $vcc ; GFX9-NEXT: $vgpr2 = V_WRITELANE_B32 $vcc_hi, 1, $vgpr2, implicit $vcc ; GFX9-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr12_sgpr13_sgpr14_sgpr15, $sgpr33, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0, addrspace 5) ; GFX9-NEXT: $vgpr2 = BUFFER_LOAD_DWORD_OFFSET $sgpr12_sgpr13_sgpr14_sgpr15, $sgpr33, 0, 0, 0, implicit $exec :: (load (s32) from %fixed-stack.0, align 16, addrspace 5) @@ -60,7 +62,7 @@ ; GFX9-NEXT: $sgpr2_sgpr3 = S_MOV_B64 $exec ; GFX9-NEXT: $exec = S_MOV_B64 3, implicit-def $vgpr1 ; GFX9-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr12_sgpr13_sgpr14_sgpr15, $sgpr33, 0, 0, 0, implicit $exec :: (store (s32) into %fixed-stack.0, align 16, addrspace 5) - ; GFX9-NEXT: $vgpr1 = V_WRITELANE_B32 $vcc_lo, 0, undef $vgpr1 + ; GFX9-NEXT: $vgpr1 = V_WRITELANE_B32 $vcc_lo, 0, undef $vgpr1, implicit $vcc ; GFX9-NEXT: $vgpr1 = V_WRITELANE_B32 $vcc_hi, 1, $vgpr1, implicit killed $vcc ; GFX9-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr12_sgpr13_sgpr14_sgpr15, $sgpr33, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0, addrspace 5) ; GFX9-NEXT: $vgpr1 = BUFFER_LOAD_DWORD_OFFSET $sgpr12_sgpr13_sgpr14_sgpr15, $sgpr33, 0, 0, 0, implicit $exec :: (load (s32) from %fixed-stack.0, align 16, addrspace 5) @@ -76,6 +78,8 @@ ; GFX10-LABEL: name: check_vcc ; GFX10: liveins: $sgpr8, $sgpr4_sgpr5, $sgpr6_sgpr7, $sgpr9 ; GFX10-NEXT: {{ $}} + ; GFX10-NEXT: frame-setup CFI_INSTRUCTION escape 0x0f, 0x04, 0x30, 0x36, 0xe9, 0x02 + ; GFX10-NEXT: frame-setup CFI_INSTRUCTION undefined $pc_reg ; GFX10-NEXT: $sgpr33 = S_MOV_B32 0 ; GFX10-NEXT: $sgpr96 = S_MOV_B32 &SCRATCH_RSRC_DWORD0, implicit-def $sgpr96_sgpr97_sgpr98_sgpr99 ; GFX10-NEXT: $sgpr97 = S_MOV_B32 &SCRATCH_RSRC_DWORD1, implicit-def $sgpr96_sgpr97_sgpr98_sgpr99 @@ -87,7 +91,7 @@ ; GFX10-NEXT: $sgpr4_sgpr5 = S_MOV_B64 $exec ; GFX10-NEXT: $exec = S_MOV_B64 3, implicit-def $vgpr2 ; GFX10-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr96_sgpr97_sgpr98_sgpr99, $sgpr33, 0, 0, 0, implicit $exec :: (store (s32) into %fixed-stack.0, align 16, addrspace 5) - ; GFX10-NEXT: $vgpr2 = V_WRITELANE_B32 $vcc_lo, 0, undef $vgpr2 + ; GFX10-NEXT: $vgpr2 = V_WRITELANE_B32 $vcc_lo, 0, undef $vgpr2, implicit $vcc ; GFX10-NEXT: $vgpr2 = V_WRITELANE_B32 $vcc_hi, 1, $vgpr2, implicit $vcc ; GFX10-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr96_sgpr97_sgpr98_sgpr99, $sgpr33, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0, addrspace 5) ; GFX10-NEXT: $vgpr2 = BUFFER_LOAD_DWORD_OFFSET $sgpr96_sgpr97_sgpr98_sgpr99, $sgpr33, 0, 0, 0, implicit $exec :: (load (s32) from %fixed-stack.0, align 16, addrspace 5) @@ -96,7 +100,7 @@ ; GFX10-NEXT: $sgpr2_sgpr3 = S_MOV_B64 $exec ; GFX10-NEXT: $exec = S_MOV_B64 3, implicit-def $vgpr1 ; GFX10-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr96_sgpr97_sgpr98_sgpr99, $sgpr33, 0, 0, 0, implicit $exec :: (store (s32) into %fixed-stack.0, align 16, addrspace 5) - ; GFX10-NEXT: $vgpr1 = V_WRITELANE_B32 $vcc_lo, 0, undef $vgpr1 + ; GFX10-NEXT: $vgpr1 = V_WRITELANE_B32 $vcc_lo, 0, undef $vgpr1, implicit $vcc ; GFX10-NEXT: $vgpr1 = V_WRITELANE_B32 $vcc_hi, 1, $vgpr1, implicit killed $vcc ; GFX10-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr96_sgpr97_sgpr98_sgpr99, $sgpr33, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0, addrspace 5) ; GFX10-NEXT: $vgpr1 = BUFFER_LOAD_DWORD_OFFSET $sgpr96_sgpr97_sgpr98_sgpr99, $sgpr33, 0, 0, 0, implicit $exec :: (load (s32) from %fixed-stack.0, align 16, addrspace 5) @@ -112,12 +116,14 @@ ; GFX11-LABEL: name: check_vcc ; GFX11: liveins: $sgpr8, $sgpr4_sgpr5, $sgpr6_sgpr7 ; GFX11-NEXT: {{ $}} + ; GFX11-NEXT: frame-setup CFI_INSTRUCTION escape 0x0f, 0x04, 0x30, 0x36, 0xe9, 0x02 + ; GFX11-NEXT: frame-setup CFI_INSTRUCTION undefined $pc_reg ; GFX11-NEXT: $sgpr33 = S_MOV_B32 0 ; GFX11-NEXT: $vcc = IMPLICIT_DEF ; GFX11-NEXT: $sgpr4_sgpr5 = S_MOV_B64 $exec ; GFX11-NEXT: $exec = S_MOV_B64 3, implicit-def $vgpr2 ; GFX11-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr2, $sgpr33, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %fixed-stack.0, align 16, addrspace 5) - ; GFX11-NEXT: $vgpr2 = V_WRITELANE_B32 $vcc_lo, 0, undef $vgpr2 + ; GFX11-NEXT: $vgpr2 = V_WRITELANE_B32 $vcc_lo, 0, undef $vgpr2, implicit $vcc ; GFX11-NEXT: $vgpr2 = V_WRITELANE_B32 $vcc_hi, 1, $vgpr2, implicit $vcc ; GFX11-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr2, $sgpr33, 4, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.0, addrspace 5) ; GFX11-NEXT: $vgpr2 = SCRATCH_LOAD_DWORD_SADDR $sgpr33, 0, 0, implicit $exec, implicit $flat_scr :: (load (s32) from %fixed-stack.0, align 16, addrspace 5) @@ -126,7 +132,7 @@ ; GFX11-NEXT: $sgpr2_sgpr3 = S_MOV_B64 $exec ; GFX11-NEXT: $exec = S_MOV_B64 3, implicit-def $vgpr1 ; GFX11-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr1, $sgpr33, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %fixed-stack.0, align 16, addrspace 5) - ; GFX11-NEXT: $vgpr1 = V_WRITELANE_B32 $vcc_lo, 0, undef $vgpr1 + ; GFX11-NEXT: $vgpr1 = V_WRITELANE_B32 $vcc_lo, 0, undef $vgpr1, implicit $vcc ; GFX11-NEXT: $vgpr1 = V_WRITELANE_B32 $vcc_hi, 1, $vgpr1, implicit killed $vcc ; GFX11-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr1, $sgpr33, 4, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.0, addrspace 5) ; GFX11-NEXT: $vgpr1 = SCRATCH_LOAD_DWORD_SADDR $sgpr33, 0, 0, implicit $exec, implicit $flat_scr :: (load (s32) from %fixed-stack.0, align 16, addrspace 5) diff --git a/llvm/test/CodeGen/AMDGPU/spill-to-agpr-partial.mir b/llvm/test/CodeGen/AMDGPU/spill-to-agpr-partial.mir --- a/llvm/test/CodeGen/AMDGPU/spill-to-agpr-partial.mir +++ b/llvm/test/CodeGen/AMDGPU/spill-to-agpr-partial.mir @@ -16,6 +16,12 @@ ; GCN-LABEL: name: partial_spill_v128_1_of_4 ; GCN: liveins: $agpr30, $agpr31, $agpr24_agpr25_agpr26_agpr27, $agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23, $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15, $agpr28_agpr29, $vgpr0_vgpr1_vgpr2_vgpr3 ; GCN-NEXT: {{ $}} + ; GCN-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 ; GCN-NEXT: $agpr31 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $vgpr0_vgpr1_vgpr2_vgpr3 ; GCN-NEXT: SCRATCH_STORE_DWORDX3_SADDR killed $vgpr0_vgpr1_vgpr2, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit killed $vgpr0_vgpr1_vgpr2_vgpr3 :: (store (s96) into %stack.0, align 4, addrspace 5) ; GCN-NEXT: $vgpr3 = V_ACCVGPR_READ_B32_e64 $agpr31, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3 @@ -41,6 +47,12 @@ ; GCN-LABEL: name: partial_spill_v128_2_of_4 ; GCN: liveins: $agpr30, $agpr31, $agpr24_agpr25_agpr26_agpr27, $agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23, $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15, $agpr28_agpr29, $vgpr0_vgpr1_vgpr2_vgpr3 ; GCN-NEXT: {{ $}} + ; GCN-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 ; GCN-NEXT: $agpr30 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $vgpr0_vgpr1_vgpr2_vgpr3 ; GCN-NEXT: $agpr31 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3 ; GCN-NEXT: SCRATCH_STORE_DWORDX2_SADDR killed $vgpr0_vgpr1, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit killed $vgpr0_vgpr1_vgpr2_vgpr3 :: (store (s64) into %stack.0, align 4, addrspace 5) @@ -68,6 +80,12 @@ ; GCN-LABEL: name: partial_spill_v128_3_of_4 ; GCN: liveins: $agpr28, $agpr29, $agpr30, $agpr31, $agpr24_agpr25_agpr26_agpr27, $agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23, $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15, $vgpr0_vgpr1_vgpr2_vgpr3 ; GCN-NEXT: {{ $}} + ; GCN-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 ; GCN-NEXT: $agpr29 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $vgpr0_vgpr1_vgpr2_vgpr3 ; GCN-NEXT: $agpr30 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3 ; GCN-NEXT: $agpr31 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3 @@ -97,6 +115,16 @@ ; GCN-LABEL: name: full_spill_v128 ; GCN: liveins: $agpr0, $agpr1, $agpr2, $agpr3, $vgpr0_vgpr1_vgpr2_vgpr3 ; GCN-NEXT: {{ $}} + ; GCN-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 ; GCN-NEXT: $agpr0 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $vgpr0_vgpr1_vgpr2_vgpr3 ; GCN-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3 ; GCN-NEXT: $agpr2 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3 @@ -126,6 +154,12 @@ ; GCN-LABEL: name: partial_spill_a128_1_of_4 ; GCN: liveins: $vgpr54, $vgpr55, $agpr0_agpr1_agpr2_agpr3, $vgpr48_vgpr49_vgpr50_vgpr51, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr52_vgpr53 ; GCN-NEXT: {{ $}} + ; GCN-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 ; GCN-NEXT: $vgpr55 = V_ACCVGPR_READ_B32_e64 killed $agpr3, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3, implicit $agpr0_agpr1_agpr2_agpr3 ; GCN-NEXT: SCRATCH_STORE_DWORDX3_SADDR killed $agpr0_agpr1_agpr2, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit killed $agpr0_agpr1_agpr2_agpr3 :: (store (s96) into %stack.0, align 4, addrspace 5) ; GCN-NEXT: $agpr3 = V_ACCVGPR_WRITE_B32_e64 $vgpr55, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3 @@ -151,6 +185,12 @@ ; GCN-LABEL: name: partial_spill_a128_2_of_4 ; GCN: liveins: $vgpr54, $vgpr55, $agpr0_agpr1_agpr2_agpr3, $vgpr48_vgpr49_vgpr50_vgpr51, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr52_vgpr53 ; GCN-NEXT: {{ $}} + ; GCN-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 ; GCN-NEXT: $vgpr54 = V_ACCVGPR_READ_B32_e64 killed $agpr3, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3, implicit $agpr0_agpr1_agpr2_agpr3 ; GCN-NEXT: $vgpr55 = V_ACCVGPR_READ_B32_e64 killed $agpr2, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3 ; GCN-NEXT: SCRATCH_STORE_DWORDX2_SADDR killed $agpr0_agpr1, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit killed $agpr0_agpr1_agpr2_agpr3 :: (store (s64) into %stack.0, align 4, addrspace 5) @@ -178,6 +218,12 @@ ; GCN-LABEL: name: partial_spill_a128_3_of_4 ; GCN: liveins: $vgpr52, $vgpr53, $vgpr54, $vgpr55, $agpr0_agpr1_agpr2_agpr3, $vgpr48_vgpr49_vgpr50_vgpr51, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47 ; GCN-NEXT: {{ $}} + ; GCN-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 ; GCN-NEXT: $vgpr53 = V_ACCVGPR_READ_B32_e64 killed $agpr3, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3, implicit $agpr0_agpr1_agpr2_agpr3 ; GCN-NEXT: $vgpr54 = V_ACCVGPR_READ_B32_e64 killed $agpr2, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3 ; GCN-NEXT: $vgpr55 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3 @@ -207,6 +253,16 @@ ; GCN-LABEL: name: full_spill_a128 ; GCN: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $agpr0_agpr1_agpr2_agpr3 ; GCN-NEXT: {{ $}} + ; GCN-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 ; GCN-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr3, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3, implicit $agpr0_agpr1_agpr2_agpr3 ; GCN-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr2, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3 ; GCN-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3 diff --git a/llvm/test/CodeGen/AMDGPU/split-arg-dbg-value.ll b/llvm/test/CodeGen/AMDGPU/split-arg-dbg-value.ll --- a/llvm/test/CodeGen/AMDGPU/split-arg-dbg-value.ll +++ b/llvm/test/CodeGen/AMDGPU/split-arg-dbg-value.ll @@ -13,6 +13,8 @@ ; GCN-NEXT: ;DEBUG_VALUE: split_v4f32_arg:arg <- [DW_OP_constu 1, DW_OP_swap, DW_OP_xderef, DW_OP_LLVM_fragment 64 32] $vgpr2 ; GCN-NEXT: ;DEBUG_VALUE: split_v4f32_arg:arg <- [DW_OP_constu 1, DW_OP_swap, DW_OP_xderef, DW_OP_LLVM_fragment 32 32] $vgpr1 ; GCN-NEXT: ;DEBUG_VALUE: split_v4f32_arg:arg <- [DW_OP_constu 1, DW_OP_swap, DW_OP_xderef, DW_OP_LLVM_fragment 0 32] $vgpr0 +; GCN-NEXT: .cfi_llvm_def_aspace_cfa 64, 0, 6 +; GCN-NEXT: .cfi_escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 ; GCN-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) ; GCN-NEXT: .Ltmp0: ; GCN-NEXT: .loc 0 4 5 prologue_end ; /tmp/dbg.cl:4:5 @@ -35,6 +37,12 @@ ; GCN-NEXT: ;DEBUG_VALUE: split_v4f32_multi_arg:arg0 <- [DW_OP_constu 1, DW_OP_swap, DW_OP_xderef, DW_OP_LLVM_fragment 64 32] $vgpr2 ; GCN-NEXT: ;DEBUG_VALUE: split_v4f32_multi_arg:arg0 <- [DW_OP_constu 1, DW_OP_swap, DW_OP_xderef, DW_OP_LLVM_fragment 32 32] $vgpr1 ; GCN-NEXT: ;DEBUG_VALUE: split_v4f32_multi_arg:arg0 <- [DW_OP_constu 1, DW_OP_swap, DW_OP_xderef, DW_OP_LLVM_fragment 0 32] $vgpr0 +; GCN-NEXT: .cfi_llvm_def_aspace_cfa 64, 0, 6 +; GCN-NEXT: .cfi_escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 +; GCN-NEXT: .cfi_undefined 2560 +; GCN-NEXT: .cfi_undefined 2561 +; GCN-NEXT: .cfi_undefined 2562 +; GCN-NEXT: .cfi_undefined 2563 ; GCN-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) ; GCN-NEXT: .Ltmp2: ; GCN-NEXT: .loc 0 8 17 prologue_end ; /tmp/dbg.cl:8:17 @@ -65,6 +73,8 @@ ; GCN-NEXT: ; %bb.0: ; GCN-NEXT: ;DEBUG_VALUE: split_v4f16_arg:arg <- [DW_OP_constu 1, DW_OP_swap, DW_OP_xderef, DW_OP_LLVM_fragment 32 32] $vgpr1 ; GCN-NEXT: ;DEBUG_VALUE: split_v4f16_arg:arg <- [DW_OP_constu 1, DW_OP_swap, DW_OP_xderef, DW_OP_LLVM_fragment 0 32] $vgpr0 +; GCN-NEXT: .cfi_llvm_def_aspace_cfa 64, 0, 6 +; GCN-NEXT: .cfi_escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 ; GCN-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) ; GCN-NEXT: .Ltmp8: ; GCN-NEXT: .loc 0 12 5 prologue_end ; /tmp/dbg.cl:12:5 @@ -83,6 +93,8 @@ ; GCN-NEXT: ; %bb.0: ; GCN-NEXT: ;DEBUG_VALUE: split_f64_arg:arg <- [DW_OP_constu 1, DW_OP_swap, DW_OP_xderef, DW_OP_LLVM_fragment 32 32] $vgpr1 ; GCN-NEXT: ;DEBUG_VALUE: split_f64_arg:arg <- [DW_OP_constu 1, DW_OP_swap, DW_OP_xderef, DW_OP_LLVM_fragment 0 32] $vgpr0 +; GCN-NEXT: .cfi_llvm_def_aspace_cfa 64, 0, 6 +; GCN-NEXT: .cfi_escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 ; GCN-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) ; GCN-NEXT: .Ltmp10: ; GCN-NEXT: .loc 0 16 5 prologue_end ; /tmp/dbg.cl:16:5 @@ -103,6 +115,8 @@ ; GCN-NEXT: ;DEBUG_VALUE: split_v2f64_arg:arg <- [DW_OP_constu 1, DW_OP_swap, DW_OP_xderef, DW_OP_LLVM_fragment 64 32] $vgpr2 ; GCN-NEXT: ;DEBUG_VALUE: split_v2f64_arg:arg <- [DW_OP_constu 1, DW_OP_swap, DW_OP_xderef, DW_OP_LLVM_fragment 32 32] $vgpr1 ; GCN-NEXT: ;DEBUG_VALUE: split_v2f64_arg:arg <- [DW_OP_constu 1, DW_OP_swap, DW_OP_xderef, DW_OP_LLVM_fragment 0 32] $vgpr0 +; GCN-NEXT: .cfi_llvm_def_aspace_cfa 64, 0, 6 +; GCN-NEXT: .cfi_escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 ; GCN-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) ; GCN-NEXT: .Ltmp12: ; GCN-NEXT: .loc 0 20 5 prologue_end ; /tmp/dbg.cl:20:5 @@ -121,6 +135,8 @@ ; GCN-NEXT: ; %bb.0: ; GCN-NEXT: ;DEBUG_VALUE: split_i64_arg:arg <- [DW_OP_constu 1, DW_OP_swap, DW_OP_xderef, DW_OP_LLVM_fragment 32 32] $vgpr1 ; GCN-NEXT: ;DEBUG_VALUE: split_i64_arg:arg <- [DW_OP_constu 1, DW_OP_swap, DW_OP_xderef, DW_OP_LLVM_fragment 0 32] $vgpr0 +; GCN-NEXT: .cfi_llvm_def_aspace_cfa 64, 0, 6 +; GCN-NEXT: .cfi_escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 ; GCN-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) ; GCN-NEXT: .Ltmp14: ; GCN-NEXT: .loc 0 24 5 prologue_end ; /tmp/dbg.cl:24:5 @@ -139,6 +155,8 @@ ; GCN-NEXT: ; %bb.0: ; GCN-NEXT: ;DEBUG_VALUE: split_ptr_arg:arg <- [DW_OP_constu 1, DW_OP_swap, DW_OP_xderef, DW_OP_LLVM_fragment 32 32] $vgpr1 ; GCN-NEXT: ;DEBUG_VALUE: split_ptr_arg:arg <- [DW_OP_constu 1, DW_OP_swap, DW_OP_xderef, DW_OP_LLVM_fragment 0 32] $vgpr0 +; GCN-NEXT: .cfi_llvm_def_aspace_cfa 64, 0, 6 +; GCN-NEXT: .cfi_escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 ; GCN-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) ; GCN-NEXT: .Ltmp16: ; GCN-NEXT: .loc 0 28 5 prologue_end ; /tmp/dbg.cl:28:5 diff --git a/llvm/test/CodeGen/AMDGPU/stack-realign.ll b/llvm/test/CodeGen/AMDGPU/stack-realign.ll --- a/llvm/test/CodeGen/AMDGPU/stack-realign.ll +++ b/llvm/test/CodeGen/AMDGPU/stack-realign.ll @@ -159,23 +159,24 @@ ; GCN: s_mov_b32 [[FP_SCRATCH_COPY:s[0-9]+]], s33 ; GCN-NEXT: s_add_i32 [[SCRATCH_REG:s[0-9]+]], s32, 0xffc0 ; GCN-NEXT: s_and_b32 s33, [[SCRATCH_REG]], 0xffff0000 -; GCN-NEXT: s_or_saveexec_b64 s[18:19], -1 -; GCN-NEXT: buffer_store_dword [[VGPR_REG:v[0-9]+]], off, s[0:3], s33 offset:1028 ; 4-byte Folded Spill +; GCN: buffer_store_dword [[VGPR_REG:v[0-9]+]], off, s[0:3], s33 offset:1028 ; 4-byte Folded Spill ; GCN-NEXT: buffer_store_dword [[VGPR_REG_1:v[0-9]+]], off, s[0:3], s33 offset:1032 ; 4-byte Folded Spill -; GCN-NEXT: s_mov_b64 exec, s[18:19] -; GCN-NEXT: v_mov_b32_e32 v32, 0 -; GCN-DAG: v_writelane_b32 [[VGPR_REG_1]], s34, 1 +; GCN-NEXT: s_mov_b64 exec +; GCN: v_writelane_b32 [[VGPR_REG_1]], s34, 1 +; GCN: v_writelane_b32 [[VGPR_REG_1]], [[FP_SCRATCH_COPY]], 0 ; GCN: s_mov_b32 s34, s32 +; GCN: v_writelane_b32 [[VGPR_REG]], s30, 0 +; GCN: s_add_i32 s32, s32, 0x30000 +; GCN: v_writelane_b32 [[VGPR_REG]], s31, 1 +; GCN: v_mov_b32_e32 v32, 0 ; GCN: buffer_store_dword v32, off, s[0:3], s33 offset:1024 -; GCN-NEXT: s_waitcnt vmcnt(0) -; GCN-NEXT: buffer_load_dword v{{[0-9]+}}, off, s[0:3], s34 -; GCN-DAG: s_add_i32 s32, s32, 0x30000 -; GCN: v_writelane_b32 [[VGPR_REG_1]], [[FP_SCRATCH_COPY]], 0 +; GCN: s_waitcnt vmcnt(0) +; GCN: buffer_load_dword v{{[0-9]+}}, off, s[0:3], s34 ; GCN: buffer_store_dword v{{[0-9]+}}, off, s[0:3], s32 ; GCN: s_swappc_b64 s[30:31], -; GCN: v_readlane_b32 s31, [[VGPR_REG]], 1 ; GCN: v_readlane_b32 s30, [[VGPR_REG]], 0 +; GCN: v_readlane_b32 s31, [[VGPR_REG]], 1 ; GCN-NEXT: v_readlane_b32 s34, [[VGPR_REG_1]], 1 ; GCN-NEXT: v_readlane_b32 [[FP_SCRATCH_COPY:s[0-9]+]], [[VGPR_REG_1]], 0 ; GCN-NEXT: s_or_saveexec_b64 s[6:7], -1 @@ -203,8 +204,8 @@ ; GCN: s_mov_b32 [[FP_COPY:s[0-9]+]], s33 ; GCN-NEXT: s_add_i32 s33, s32, 0xffc0 ; GCN-NEXT: s_mov_b32 [[BP_COPY:s[0-9]+]], s34 -; GCN-NEXT: s_mov_b32 s34, s32 ; GCN-NEXT: s_and_b32 s33, s33, 0xffff0000 +; GCN-NEXT: s_mov_b32 s34, s32 ; GCN-NEXT: v_lshrrev_b32_e64 [[VGPR_REG:v[0-9]+]], 6, s34 ; GCN-NEXT: v_mov_b32_e32 v{{[0-9]+}}, 0 ; GCN: s_add_i32 s32, s32, 0x30000 @@ -241,9 +242,8 @@ ; GCN-LABEL: no_free_scratch_sgpr_for_bp_copy: ; GCN: ; %bb.0: ; GCN: v_writelane_b32 [[VGPR_REG:v[0-9]+]], s34, 0 -; GCN-NEXT: s_mov_b32 s34, s32 -; GCN-NEXT: buffer_load_dword v{{[0-9]+}}, off, s[0:3], s34 -; GCN: v_readlane_b32 s34, [[VGPR_REG:v[0-9]+]], 0 +; GCN: s_mov_b32 s34, s32 +; GCN: buffer_load_dword v{{[0-9]+}}, off, s[0:3], s34 ; GCN: buffer_store_dword v{{[0-9]+}}, off, s[0:3], s33 offset:128 ; GCN-NEXT: s_waitcnt vmcnt(0) ; GCN-NEXT: ;;#ASMSTART @@ -266,11 +266,10 @@ ; GCN-LABEL: no_free_regs_spill_bp_to_mem ; GCN: s_mov_b32 [[FP_SCRATCH_COPY:s[0-9]+]], s33 ; GCN: s_xor_saveexec_b64 s[6:7], -1 -; GCN: buffer_store_dword v39, off, s[0:3], s33 ; GCN: v_mov_b32_e32 v0, s34 -; GCN: buffer_store_dword v0, off, s[0:3], s33 -; GCN: v_mov_b32_e32 v0, [[FP_SCRATCH_COPY]] ; GCN-DAG: buffer_store_dword v0, off, s[0:3], s33 +; GCN: v_mov_b32_e32 v0, [[FP_SCRATCH_COPY]] +; GCN: buffer_store_dword v0, off, s[0:3], s33 %local_val = alloca i32, align 128, addrspace(5) store volatile i32 %b, ptr addrspace(5) %local_val, align 128 @@ -313,7 +312,6 @@ ; GCN-NEXT: v_mov_b32_e32 v0, [[FP_SCRATCH_COPY]] ; GCN-NOT: v_mov_b32_e32 v0, 0x1088 ; GCN-NEXT: s_add_i32 s5, s33, 0x42200 -; GCN-NEXT: s_mov_b32 s34, s32 ; GCN-NEXT: buffer_store_dword v0, off, s[0:3], s5 ; 4-byte Folded Spill %local_val = alloca i32, align 128, addrspace(5) store volatile i32 %b, ptr addrspace(5) %local_val, align 128 diff --git a/llvm/test/CodeGen/AMDGPU/tail-call-amdgpu-gfx.ll b/llvm/test/CodeGen/AMDGPU/tail-call-amdgpu-gfx.ll --- a/llvm/test/CodeGen/AMDGPU/tail-call-amdgpu-gfx.ll +++ b/llvm/test/CodeGen/AMDGPU/tail-call-amdgpu-gfx.ll @@ -22,18 +22,18 @@ ; GCN-NEXT: s_xor_saveexec_b64 s[34:35], -1 ; GCN-NEXT: buffer_store_dword v1, off, s[0:3], s33 ; 4-byte Folded Spill ; GCN-NEXT: s_mov_b64 exec, s[34:35] -; GCN-NEXT: v_writelane_b32 v1, s4, 0 ; GCN-NEXT: s_addk_i32 s32, 0x400 +; GCN-NEXT: v_writelane_b32 v1, s4, 0 ; GCN-NEXT: v_writelane_b32 v1, s30, 1 +; GCN-NEXT: v_writelane_b32 v1, s31, 2 ; GCN-NEXT: v_add_f32_e32 v0, 1.0, v0 ; GCN-NEXT: s_mov_b32 s4, 2.0 -; GCN-NEXT: v_writelane_b32 v1, s31, 2 ; GCN-NEXT: s_getpc_b64 s[34:35] ; GCN-NEXT: s_add_u32 s34, s34, callee@rel32@lo+4 ; GCN-NEXT: s_addc_u32 s35, s35, callee@rel32@hi+12 ; GCN-NEXT: s_swappc_b64 s[30:31], s[34:35] -; GCN-NEXT: v_readlane_b32 s31, v1, 2 ; GCN-NEXT: v_readlane_b32 s30, v1, 1 +; GCN-NEXT: v_readlane_b32 s31, v1, 2 ; GCN-NEXT: v_readlane_b32 s4, v1, 0 ; GCN-NEXT: s_xor_saveexec_b64 s[34:35], -1 ; GCN-NEXT: buffer_load_dword v1, off, s[0:3], s33 ; 4-byte Folded Reload diff --git a/llvm/test/CodeGen/AMDGPU/track-spilled-vgpr-liveness.mir b/llvm/test/CodeGen/AMDGPU/track-spilled-vgpr-liveness.mir --- a/llvm/test/CodeGen/AMDGPU/track-spilled-vgpr-liveness.mir +++ b/llvm/test/CodeGen/AMDGPU/track-spilled-vgpr-liveness.mir @@ -18,8 +18,12 @@ ; GCN-LABEL: name: vgpr_use_after_prolog_spill ; GCN: liveins: $sgpr42, $vgpr0, $sgpr30_sgpr31 ; GCN-NEXT: {{ $}} + ; GCN-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 ; GCN-NEXT: $sgpr4_sgpr5 = S_XOR_SAVEEXEC_B64 -1, implicit-def $exec, implicit-def dead $scc, implicit $exec ; GCN-NEXT: BUFFER_STORE_DWORD_OFFSET $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.0, addrspace 5) + ; GCN-NEXT: frame-setup CFI_INSTRUCTION offset $vgpr0_lo16, 0 ; GCN-NEXT: $exec = S_MOV_B64 killed $sgpr4_sgpr5 ; GCN-NEXT: $vgpr0 = V_ADD_U32_e32 8192, killed $vgpr0, implicit $exec ; GCN-NEXT: $vgpr0 = V_WRITELANE_B32 killed $sgpr42, 0, $vgpr0 @@ -48,8 +52,12 @@ ; GCN-LABEL: name: livein_vgpr_def_after_prolog_spill ; GCN: liveins: $sgpr42, $vgpr0, $vgpr1, $sgpr30_sgpr31 ; GCN-NEXT: {{ $}} + ; GCN-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 ; GCN-NEXT: $sgpr4_sgpr5 = S_XOR_SAVEEXEC_B64 -1, implicit-def $exec, implicit-def dead $scc, implicit $exec ; GCN-NEXT: BUFFER_STORE_DWORD_OFFSET $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.0, addrspace 5) + ; GCN-NEXT: frame-setup CFI_INSTRUCTION offset $vgpr0_lo16, 0 ; GCN-NEXT: $exec = S_MOV_B64 killed $sgpr4_sgpr5 ; GCN-NEXT: $vgpr0 = V_ADD_U32_e32 8192, killed $vgpr1, implicit $exec ; GCN-NEXT: $vgpr0 = V_WRITELANE_B32 killed $sgpr42, 0, $vgpr0 @@ -77,8 +85,12 @@ ; GCN-NEXT: successors: %bb.1(0x80000000) ; GCN-NEXT: liveins: $sgpr42, $vgpr0, $sgpr30_sgpr31 ; GCN-NEXT: {{ $}} + ; GCN-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 ; GCN-NEXT: $sgpr4_sgpr5 = S_XOR_SAVEEXEC_B64 -1, implicit-def $exec, implicit-def dead $scc, implicit $exec ; GCN-NEXT: BUFFER_STORE_DWORD_OFFSET $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.0, addrspace 5) + ; GCN-NEXT: frame-setup CFI_INSTRUCTION offset $vgpr0_lo16, 0 ; GCN-NEXT: $exec = S_MOV_B64 killed $sgpr4_sgpr5 ; GCN-NEXT: S_NOP 0 ; GCN-NEXT: S_BRANCH %bb.1 diff --git a/llvm/test/CodeGen/AMDGPU/tuple-allocation-failure.ll b/llvm/test/CodeGen/AMDGPU/tuple-allocation-failure.ll --- a/llvm/test/CodeGen/AMDGPU/tuple-allocation-failure.ll +++ b/llvm/test/CodeGen/AMDGPU/tuple-allocation-failure.ll @@ -14,14 +14,14 @@ ; GFX90A-NEXT: buffer_store_dword v40, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX90A-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX90A-NEXT: s_mov_b64 exec, s[18:19] -; GFX90A-NEXT: s_addk_i32 s32, 0x400 ; GFX90A-NEXT: v_writelane_b32 v41, s16, 0 +; GFX90A-NEXT: v_writelane_b32 v40, s30, 0 +; GFX90A-NEXT: s_addk_i32 s32, 0x400 +; GFX90A-NEXT: v_writelane_b32 v40, s31, 1 ; GFX90A-NEXT: s_getpc_b64 s[16:17] ; GFX90A-NEXT: s_add_u32 s16, s16, wobble@gotpcrel32@lo+4 ; GFX90A-NEXT: s_addc_u32 s17, s17, wobble@gotpcrel32@hi+12 ; GFX90A-NEXT: s_load_dwordx2 s[16:17], s[16:17], 0x0 -; GFX90A-NEXT: v_writelane_b32 v40, s30, 0 -; GFX90A-NEXT: v_writelane_b32 v40, s31, 1 ; GFX90A-NEXT: s_waitcnt lgkmcnt(0) ; GFX90A-NEXT: s_swappc_b64 s[30:31], s[16:17] bb: diff --git a/llvm/test/CodeGen/AMDGPU/unstructured-cfg-def-use-issue.ll b/llvm/test/CodeGen/AMDGPU/unstructured-cfg-def-use-issue.ll --- a/llvm/test/CodeGen/AMDGPU/unstructured-cfg-def-use-issue.ll +++ b/llvm/test/CodeGen/AMDGPU/unstructured-cfg-def-use-issue.ll @@ -15,22 +15,22 @@ ; GCN-NEXT: v_writelane_b32 v42, s16, 0 ; GCN-NEXT: s_addk_i32 s32, 0x400 ; GCN-NEXT: buffer_store_dword v41, off, s[0:3], s33 ; 4-byte Folded Spill -; GCN-NEXT: v_writelane_b32 v40, s30, 0 -; GCN-NEXT: v_writelane_b32 v40, s31, 1 -; GCN-NEXT: v_writelane_b32 v40, s34, 2 -; GCN-NEXT: v_writelane_b32 v40, s35, 3 -; GCN-NEXT: v_writelane_b32 v40, s36, 4 -; GCN-NEXT: v_writelane_b32 v40, s37, 5 -; GCN-NEXT: v_writelane_b32 v40, s38, 6 -; GCN-NEXT: v_writelane_b32 v40, s39, 7 -; GCN-NEXT: v_writelane_b32 v40, s40, 8 -; GCN-NEXT: v_writelane_b32 v40, s41, 9 -; GCN-NEXT: v_writelane_b32 v40, s42, 10 -; GCN-NEXT: v_writelane_b32 v40, s43, 11 -; GCN-NEXT: v_writelane_b32 v40, s44, 12 -; GCN-NEXT: v_writelane_b32 v40, s45, 13 -; GCN-NEXT: v_writelane_b32 v40, s46, 14 -; GCN-NEXT: v_writelane_b32 v40, s47, 15 +; GCN-NEXT: v_writelane_b32 v40, s34, 0 +; GCN-NEXT: v_writelane_b32 v40, s35, 1 +; GCN-NEXT: v_writelane_b32 v40, s36, 2 +; GCN-NEXT: v_writelane_b32 v40, s37, 3 +; GCN-NEXT: v_writelane_b32 v40, s38, 4 +; GCN-NEXT: v_writelane_b32 v40, s39, 5 +; GCN-NEXT: v_writelane_b32 v40, s40, 6 +; GCN-NEXT: v_writelane_b32 v40, s41, 7 +; GCN-NEXT: v_writelane_b32 v40, s42, 8 +; GCN-NEXT: v_writelane_b32 v40, s43, 9 +; GCN-NEXT: v_writelane_b32 v40, s44, 10 +; GCN-NEXT: v_writelane_b32 v40, s45, 11 +; GCN-NEXT: v_writelane_b32 v40, s46, 12 +; GCN-NEXT: v_writelane_b32 v40, s47, 13 +; GCN-NEXT: v_writelane_b32 v40, s30, 14 +; GCN-NEXT: v_writelane_b32 v40, s31, 15 ; GCN-NEXT: v_mov_b32_e32 v41, v31 ; GCN-NEXT: s_mov_b32 s42, s15 ; GCN-NEXT: s_mov_b32 s43, s14 @@ -103,22 +103,22 @@ ; GCN-NEXT: v_mov_b32_e32 v31, v41 ; GCN-NEXT: s_swappc_b64 s[30:31], s[16:17] ; GCN-NEXT: .LBB0_8: ; %UnifiedReturnBlock -; GCN-NEXT: v_readlane_b32 s47, v40, 15 -; GCN-NEXT: v_readlane_b32 s46, v40, 14 -; GCN-NEXT: v_readlane_b32 s45, v40, 13 -; GCN-NEXT: v_readlane_b32 s44, v40, 12 -; GCN-NEXT: v_readlane_b32 s43, v40, 11 -; GCN-NEXT: v_readlane_b32 s42, v40, 10 -; GCN-NEXT: v_readlane_b32 s41, v40, 9 -; GCN-NEXT: v_readlane_b32 s40, v40, 8 -; GCN-NEXT: v_readlane_b32 s39, v40, 7 -; GCN-NEXT: v_readlane_b32 s38, v40, 6 -; GCN-NEXT: v_readlane_b32 s37, v40, 5 -; GCN-NEXT: v_readlane_b32 s36, v40, 4 -; GCN-NEXT: v_readlane_b32 s35, v40, 3 -; GCN-NEXT: v_readlane_b32 s34, v40, 2 -; GCN-NEXT: v_readlane_b32 s31, v40, 1 -; GCN-NEXT: v_readlane_b32 s30, v40, 0 +; GCN-NEXT: v_readlane_b32 s30, v40, 14 +; GCN-NEXT: v_readlane_b32 s31, v40, 15 +; GCN-NEXT: v_readlane_b32 s47, v40, 13 +; GCN-NEXT: v_readlane_b32 s46, v40, 12 +; GCN-NEXT: v_readlane_b32 s45, v40, 11 +; GCN-NEXT: v_readlane_b32 s44, v40, 10 +; GCN-NEXT: v_readlane_b32 s43, v40, 9 +; GCN-NEXT: v_readlane_b32 s42, v40, 8 +; GCN-NEXT: v_readlane_b32 s41, v40, 7 +; GCN-NEXT: v_readlane_b32 s40, v40, 6 +; GCN-NEXT: v_readlane_b32 s39, v40, 5 +; GCN-NEXT: v_readlane_b32 s38, v40, 4 +; GCN-NEXT: v_readlane_b32 s37, v40, 3 +; GCN-NEXT: v_readlane_b32 s36, v40, 2 +; GCN-NEXT: v_readlane_b32 s35, v40, 1 +; GCN-NEXT: v_readlane_b32 s34, v40, 0 ; GCN-NEXT: buffer_load_dword v41, off, s[0:3], s33 ; 4-byte Folded Reload ; GCN-NEXT: v_readlane_b32 s4, v42, 0 ; GCN-NEXT: s_or_saveexec_b64 s[6:7], -1 @@ -278,34 +278,34 @@ ; GCN-NEXT: buffer_store_dword v43, off, s[0:3], s33 offset:8 ; 4-byte Folded Spill ; GCN-NEXT: buffer_store_dword v44, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GCN-NEXT: buffer_store_dword v45, off, s[0:3], s33 ; 4-byte Folded Spill -; GCN-NEXT: v_writelane_b32 v40, s30, 0 -; GCN-NEXT: v_writelane_b32 v40, s31, 1 -; GCN-NEXT: v_writelane_b32 v40, s34, 2 -; GCN-NEXT: v_writelane_b32 v40, s35, 3 -; GCN-NEXT: v_writelane_b32 v40, s36, 4 -; GCN-NEXT: v_writelane_b32 v40, s37, 5 -; GCN-NEXT: v_writelane_b32 v40, s38, 6 -; GCN-NEXT: v_writelane_b32 v40, s39, 7 -; GCN-NEXT: v_writelane_b32 v40, s40, 8 -; GCN-NEXT: v_writelane_b32 v40, s41, 9 -; GCN-NEXT: v_writelane_b32 v40, s42, 10 -; GCN-NEXT: v_writelane_b32 v40, s43, 11 -; GCN-NEXT: v_writelane_b32 v40, s44, 12 -; GCN-NEXT: v_writelane_b32 v40, s45, 13 -; GCN-NEXT: v_writelane_b32 v40, s46, 14 -; GCN-NEXT: v_writelane_b32 v40, s47, 15 -; GCN-NEXT: v_writelane_b32 v40, s48, 16 -; GCN-NEXT: v_writelane_b32 v40, s49, 17 -; GCN-NEXT: v_writelane_b32 v40, s50, 18 -; GCN-NEXT: v_writelane_b32 v40, s51, 19 -; GCN-NEXT: v_writelane_b32 v40, s52, 20 -; GCN-NEXT: v_writelane_b32 v40, s53, 21 -; GCN-NEXT: v_writelane_b32 v40, s54, 22 -; GCN-NEXT: v_writelane_b32 v40, s55, 23 -; GCN-NEXT: v_writelane_b32 v40, s56, 24 -; GCN-NEXT: v_writelane_b32 v40, s57, 25 -; GCN-NEXT: v_writelane_b32 v40, s58, 26 -; GCN-NEXT: v_writelane_b32 v40, s59, 27 +; GCN-NEXT: v_writelane_b32 v40, s34, 0 +; GCN-NEXT: v_writelane_b32 v40, s35, 1 +; GCN-NEXT: v_writelane_b32 v40, s36, 2 +; GCN-NEXT: v_writelane_b32 v40, s37, 3 +; GCN-NEXT: v_writelane_b32 v40, s38, 4 +; GCN-NEXT: v_writelane_b32 v40, s39, 5 +; GCN-NEXT: v_writelane_b32 v40, s40, 6 +; GCN-NEXT: v_writelane_b32 v40, s41, 7 +; GCN-NEXT: v_writelane_b32 v40, s42, 8 +; GCN-NEXT: v_writelane_b32 v40, s43, 9 +; GCN-NEXT: v_writelane_b32 v40, s44, 10 +; GCN-NEXT: v_writelane_b32 v40, s45, 11 +; GCN-NEXT: v_writelane_b32 v40, s46, 12 +; GCN-NEXT: v_writelane_b32 v40, s47, 13 +; GCN-NEXT: v_writelane_b32 v40, s48, 14 +; GCN-NEXT: v_writelane_b32 v40, s49, 15 +; GCN-NEXT: v_writelane_b32 v40, s50, 16 +; GCN-NEXT: v_writelane_b32 v40, s51, 17 +; GCN-NEXT: v_writelane_b32 v40, s52, 18 +; GCN-NEXT: v_writelane_b32 v40, s53, 19 +; GCN-NEXT: v_writelane_b32 v40, s54, 20 +; GCN-NEXT: v_writelane_b32 v40, s55, 21 +; GCN-NEXT: v_writelane_b32 v40, s56, 22 +; GCN-NEXT: v_writelane_b32 v40, s57, 23 +; GCN-NEXT: v_writelane_b32 v40, s58, 24 +; GCN-NEXT: v_writelane_b32 v40, s59, 25 +; GCN-NEXT: v_writelane_b32 v40, s30, 26 +; GCN-NEXT: v_writelane_b32 v40, s31, 27 ; GCN-NEXT: v_mov_b32_e32 v41, v31 ; GCN-NEXT: s_mov_b32 s46, s15 ; GCN-NEXT: s_mov_b32 s47, s14 @@ -441,34 +441,34 @@ ; GCN-NEXT: s_branch .LBB1_1 ; GCN-NEXT: .LBB1_18: ; %DummyReturnBlock ; GCN-NEXT: s_or_b64 exec, exec, s[50:51] -; GCN-NEXT: v_readlane_b32 s59, v40, 27 -; GCN-NEXT: v_readlane_b32 s58, v40, 26 -; GCN-NEXT: v_readlane_b32 s57, v40, 25 -; GCN-NEXT: v_readlane_b32 s56, v40, 24 -; GCN-NEXT: v_readlane_b32 s55, v40, 23 -; GCN-NEXT: v_readlane_b32 s54, v40, 22 -; GCN-NEXT: v_readlane_b32 s53, v40, 21 -; GCN-NEXT: v_readlane_b32 s52, v40, 20 -; GCN-NEXT: v_readlane_b32 s51, v40, 19 -; GCN-NEXT: v_readlane_b32 s50, v40, 18 -; GCN-NEXT: v_readlane_b32 s49, v40, 17 -; GCN-NEXT: v_readlane_b32 s48, v40, 16 -; GCN-NEXT: v_readlane_b32 s47, v40, 15 -; GCN-NEXT: v_readlane_b32 s46, v40, 14 -; GCN-NEXT: v_readlane_b32 s45, v40, 13 -; GCN-NEXT: v_readlane_b32 s44, v40, 12 -; GCN-NEXT: v_readlane_b32 s43, v40, 11 -; GCN-NEXT: v_readlane_b32 s42, v40, 10 -; GCN-NEXT: v_readlane_b32 s41, v40, 9 -; GCN-NEXT: v_readlane_b32 s40, v40, 8 -; GCN-NEXT: v_readlane_b32 s39, v40, 7 -; GCN-NEXT: v_readlane_b32 s38, v40, 6 -; GCN-NEXT: v_readlane_b32 s37, v40, 5 -; GCN-NEXT: v_readlane_b32 s36, v40, 4 -; GCN-NEXT: v_readlane_b32 s35, v40, 3 -; GCN-NEXT: v_readlane_b32 s34, v40, 2 -; GCN-NEXT: v_readlane_b32 s31, v40, 1 -; GCN-NEXT: v_readlane_b32 s30, v40, 0 +; GCN-NEXT: v_readlane_b32 s30, v40, 26 +; GCN-NEXT: v_readlane_b32 s31, v40, 27 +; GCN-NEXT: v_readlane_b32 s59, v40, 25 +; GCN-NEXT: v_readlane_b32 s58, v40, 24 +; GCN-NEXT: v_readlane_b32 s57, v40, 23 +; GCN-NEXT: v_readlane_b32 s56, v40, 22 +; GCN-NEXT: v_readlane_b32 s55, v40, 21 +; GCN-NEXT: v_readlane_b32 s54, v40, 20 +; GCN-NEXT: v_readlane_b32 s53, v40, 19 +; GCN-NEXT: v_readlane_b32 s52, v40, 18 +; GCN-NEXT: v_readlane_b32 s51, v40, 17 +; GCN-NEXT: v_readlane_b32 s50, v40, 16 +; GCN-NEXT: v_readlane_b32 s49, v40, 15 +; GCN-NEXT: v_readlane_b32 s48, v40, 14 +; GCN-NEXT: v_readlane_b32 s47, v40, 13 +; GCN-NEXT: v_readlane_b32 s46, v40, 12 +; GCN-NEXT: v_readlane_b32 s45, v40, 11 +; GCN-NEXT: v_readlane_b32 s44, v40, 10 +; GCN-NEXT: v_readlane_b32 s43, v40, 9 +; GCN-NEXT: v_readlane_b32 s42, v40, 8 +; GCN-NEXT: v_readlane_b32 s41, v40, 7 +; GCN-NEXT: v_readlane_b32 s40, v40, 6 +; GCN-NEXT: v_readlane_b32 s39, v40, 5 +; GCN-NEXT: v_readlane_b32 s38, v40, 4 +; GCN-NEXT: v_readlane_b32 s37, v40, 3 +; GCN-NEXT: v_readlane_b32 s36, v40, 2 +; GCN-NEXT: v_readlane_b32 s35, v40, 1 +; GCN-NEXT: v_readlane_b32 s34, v40, 0 ; GCN-NEXT: buffer_load_dword v45, off, s[0:3], s33 ; 4-byte Folded Reload ; GCN-NEXT: buffer_load_dword v44, off, s[0:3], s33 offset:4 ; 4-byte Folded Reload ; GCN-NEXT: buffer_load_dword v43, off, s[0:3], s33 offset:8 ; 4-byte Folded Reload diff --git a/llvm/test/CodeGen/AMDGPU/use_restore_frame_reg.mir b/llvm/test/CodeGen/AMDGPU/use_restore_frame_reg.mir --- a/llvm/test/CodeGen/AMDGPU/use_restore_frame_reg.mir +++ b/llvm/test/CodeGen/AMDGPU/use_restore_frame_reg.mir @@ -39,14 +39,46 @@ ; MUBUF-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; MUBUF-NEXT: liveins: $vgpr1, $vgpr2 ; MUBUF-NEXT: {{ $}} + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; MUBUF-NEXT: $sgpr4 = COPY $sgpr33 ; MUBUF-NEXT: $sgpr33 = frame-setup S_ADD_I32 $sgpr32, 524224, implicit-def $scc ; MUBUF-NEXT: $sgpr33 = frame-setup S_AND_B32 killed $sgpr33, 4294443008, implicit-def dead $scc ; MUBUF-NEXT: $sgpr6_sgpr7 = S_XOR_SAVEEXEC_B64 -1, implicit-def $exec, implicit-def dead $scc, implicit $exec ; MUBUF-NEXT: $sgpr5 = S_ADD_I32 $sgpr33, 9961728, implicit-def dead $scc ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, killed $sgpr5, 0, 0, 0, implicit $exec :: (store (s32) into %stack.20, addrspace 5) + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION offset $vgpr2_lo16, 9961728 ; MUBUF-NEXT: $exec = S_MOV_B64 killed $sgpr6_sgpr7 ; MUBUF-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr4, 0, undef $vgpr2 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x41, 0x06, 0x90, 0x82, 0x14, 0xe9, 0x05, 0x00 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION def_cfa_register $sgpr33_lo16 ; MUBUF-NEXT: $sgpr32 = frame-setup S_ADD_I32 $sgpr32, 11010048, implicit-def dead $scc ; MUBUF-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; MUBUF-NEXT: S_NOP 0, implicit-def $sgpr4, implicit-def $sgpr5, implicit-def $sgpr6, implicit-def $sgpr7, implicit-def $sgpr8, implicit-def $sgpr9, implicit-def $sgpr10, implicit-def $sgpr11, implicit-def $sgpr12, implicit-def $sgpr13, implicit-def $sgpr14, implicit-def $sgpr15, implicit-def $sgpr16, implicit-def $sgpr17, implicit-def $sgpr18, implicit-def $sgpr19, implicit-def $sgpr20, implicit-def $sgpr21, implicit-def $sgpr22, implicit-def $sgpr23, implicit-def $sgpr24, implicit-def $sgpr25, implicit-def $sgpr26, implicit-def $sgpr27, implicit-def $sgpr28, implicit-def $sgpr29, implicit-def $sgpr30, implicit-def $sgpr31, implicit-def $vcc @@ -73,6 +105,7 @@ ; MUBUF-NEXT: $vgpr2 = BUFFER_LOAD_DWORD_OFFSET $sgpr0_sgpr1_sgpr2_sgpr3, killed $sgpr5, 0, 0, 0, implicit $exec :: (load (s32) from %stack.20, addrspace 5) ; MUBUF-NEXT: $exec = S_MOV_B64 killed $sgpr6_sgpr7 ; MUBUF-NEXT: $sgpr32 = frame-destroy S_ADD_I32 $sgpr32, -11010048, implicit-def dead $scc + ; MUBUF-NEXT: frame-destroy CFI_INSTRUCTION def_cfa_register $sgpr32_lo16 ; MUBUF-NEXT: $sgpr33 = COPY $sgpr4 ; MUBUF-NEXT: S_ENDPGM 0 ; FLATSCR-LABEL: name: use_restore_frame_reg @@ -80,14 +113,46 @@ ; FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; FLATSCR-NEXT: liveins: $vgpr1, $vgpr2 ; FLATSCR-NEXT: {{ $}} + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; FLATSCR-NEXT: $sgpr4 = COPY $sgpr33 ; FLATSCR-NEXT: $sgpr33 = frame-setup S_ADD_I32 $sgpr32, 8191, implicit-def $scc ; FLATSCR-NEXT: $sgpr33 = frame-setup S_AND_B32 killed $sgpr33, 4294959104, implicit-def dead $scc ; FLATSCR-NEXT: $sgpr6_sgpr7 = S_XOR_SAVEEXEC_B64 -1, implicit-def $exec, implicit-def dead $scc, implicit $exec ; FLATSCR-NEXT: $sgpr5 = S_ADD_I32 $sgpr33, 155652, implicit-def dead $scc ; FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR $vgpr2, killed $sgpr5, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.20, addrspace 5) + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION offset $vgpr2_lo16, 9961728 ; FLATSCR-NEXT: $exec = S_MOV_B64 killed $sgpr6_sgpr7 ; FLATSCR-NEXT: $vgpr2 = V_WRITELANE_B32 $sgpr4, 0, undef $vgpr2 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x41, 0x06, 0x90, 0x82, 0x14, 0xe9, 0x05, 0x00 + ; FLATSCR-NEXT: frame-setup CFI_INSTRUCTION def_cfa_register $sgpr33_lo16 ; FLATSCR-NEXT: $sgpr32 = frame-setup S_ADD_I32 $sgpr32, 172032, implicit-def dead $scc ; FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; FLATSCR-NEXT: S_NOP 0, implicit-def $sgpr4, implicit-def $sgpr5, implicit-def $sgpr6, implicit-def $sgpr7, implicit-def $sgpr8, implicit-def $sgpr9, implicit-def $sgpr10, implicit-def $sgpr11, implicit-def $sgpr12, implicit-def $sgpr13, implicit-def $sgpr14, implicit-def $sgpr15, implicit-def $sgpr16, implicit-def $sgpr17, implicit-def $sgpr18, implicit-def $sgpr19, implicit-def $sgpr20, implicit-def $sgpr21, implicit-def $sgpr22, implicit-def $sgpr23, implicit-def $sgpr24, implicit-def $sgpr25, implicit-def $sgpr26, implicit-def $sgpr27, implicit-def $sgpr28, implicit-def $sgpr29, implicit-def $sgpr30, implicit-def $sgpr31, implicit-def $vcc @@ -123,6 +188,7 @@ ; FLATSCR-NEXT: $vgpr2 = SCRATCH_LOAD_DWORD_SADDR killed $sgpr5, 0, 0, implicit $exec, implicit $flat_scr :: (load (s32) from %stack.20, addrspace 5) ; FLATSCR-NEXT: $exec = S_MOV_B64 killed $sgpr6_sgpr7 ; FLATSCR-NEXT: $sgpr32 = frame-destroy S_ADD_I32 $sgpr32, -172032, implicit-def dead $scc + ; FLATSCR-NEXT: frame-destroy CFI_INSTRUCTION def_cfa_register $sgpr32_lo16 ; FLATSCR-NEXT: $sgpr33 = COPY $sgpr4 ; FLATSCR-NEXT: S_ENDPGM 0 bb.0: diff --git a/llvm/test/CodeGen/AMDGPU/vector-spill-restore-to-other-vector-type.mir b/llvm/test/CodeGen/AMDGPU/vector-spill-restore-to-other-vector-type.mir --- a/llvm/test/CodeGen/AMDGPU/vector-spill-restore-to-other-vector-type.mir +++ b/llvm/test/CodeGen/AMDGPU/vector-spill-restore-to-other-vector-type.mir @@ -19,6 +19,12 @@ ; GCN-LABEL: name: partial_spill_a128_restore_to_v128_1_of_4 ; GCN: liveins: $vgpr52, $vgpr53, $vgpr54, $vgpr55, $agpr0_agpr1_agpr2_agpr3, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47 ; GCN-NEXT: {{ $}} + ; GCN-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr48_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr49_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr50_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr51_lo16 ; GCN-NEXT: $vgpr55 = V_ACCVGPR_READ_B32_e64 killed $agpr3, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3, implicit $agpr0_agpr1_agpr2_agpr3 ; GCN-NEXT: SCRATCH_STORE_DWORDX3_SADDR killed $agpr0_agpr1_agpr2, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit killed $agpr0_agpr1_agpr2_agpr3 :: (store (s96) into %stack.0, align 4, addrspace 5) ; GCN-NEXT: $vgpr51 = COPY $vgpr55, implicit-def $vgpr48_vgpr49_vgpr50_vgpr51 @@ -44,6 +50,12 @@ ; GCN-LABEL: name: partial_spill_a128_restore_to_v128_2_of_4 ; GCN: liveins: $vgpr52, $vgpr53, $vgpr54, $vgpr55, $agpr0_agpr1_agpr2_agpr3, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47 ; GCN-NEXT: {{ $}} + ; GCN-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr48_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr49_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr50_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr51_lo16 ; GCN-NEXT: $vgpr54 = V_ACCVGPR_READ_B32_e64 killed $agpr3, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3, implicit $agpr0_agpr1_agpr2_agpr3 ; GCN-NEXT: $vgpr55 = V_ACCVGPR_READ_B32_e64 killed $agpr2, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3 ; GCN-NEXT: SCRATCH_STORE_DWORDX2_SADDR killed $agpr0_agpr1, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit killed $agpr0_agpr1_agpr2_agpr3 :: (store (s64) into %stack.0, align 4, addrspace 5) @@ -71,6 +83,12 @@ ; GCN-LABEL: name: partial_spill_a128_restore_to_v128_3_of_4 ; GCN: liveins: $vgpr52, $vgpr53, $vgpr54, $vgpr55, $agpr0_agpr1_agpr2_agpr3, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47 ; GCN-NEXT: {{ $}} + ; GCN-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr48_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr49_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr50_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr51_lo16 ; GCN-NEXT: $vgpr53 = V_ACCVGPR_READ_B32_e64 killed $agpr3, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3, implicit $agpr0_agpr1_agpr2_agpr3 ; GCN-NEXT: $vgpr54 = V_ACCVGPR_READ_B32_e64 killed $agpr2, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3 ; GCN-NEXT: $vgpr55 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3 @@ -100,6 +118,20 @@ ; GCN-LABEL: name: full_spill_a128_restore_to_v128 ; GCN: liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $agpr0_agpr1_agpr2_agpr3 ; GCN-NEXT: {{ $}} + ; GCN-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr52_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr53_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr54_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr55_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 ; GCN-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 killed $agpr3, implicit $exec, implicit-def $agpr0_agpr1_agpr2_agpr3, implicit $agpr0_agpr1_agpr2_agpr3 ; GCN-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 killed $agpr2, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3 ; GCN-NEXT: $vgpr2 = V_ACCVGPR_READ_B32_e64 killed $agpr1, implicit $exec, implicit $agpr0_agpr1_agpr2_agpr3 @@ -129,6 +161,12 @@ ; GCN-LABEL: name: partial_spill_v128_restore_to_a128_1_of_4 ; GCN: liveins: $agpr30, $agpr31, $agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23, $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15, $agpr24_agpr25, $vgpr0_vgpr1_vgpr2_vgpr3 ; GCN-NEXT: {{ $}} + ; GCN-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 ; GCN-NEXT: $agpr30 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $vgpr0_vgpr1_vgpr2_vgpr3 ; GCN-NEXT: SCRATCH_STORE_DWORDX3_SADDR killed $vgpr0_vgpr1_vgpr2, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit killed $vgpr0_vgpr1_vgpr2_vgpr3 :: (store (s96) into %stack.0, align 4, addrspace 5) ; GCN-NEXT: $agpr29 = COPY $agpr30, implicit-def $agpr26_agpr27_agpr28_agpr29 @@ -154,6 +192,12 @@ ; GCN-LABEL: name: partial_spill_v128_restore_to_a128_2_of_4 ; GCN: liveins: $agpr30, $agpr31, $agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23, $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15, $agpr24_agpr25, $vgpr0_vgpr1_vgpr2_vgpr3 ; GCN-NEXT: {{ $}} + ; GCN-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 ; GCN-NEXT: $agpr30 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $vgpr0_vgpr1_vgpr2_vgpr3 ; GCN-NEXT: $agpr31 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3 ; GCN-NEXT: SCRATCH_STORE_DWORDX2_SADDR killed $vgpr0_vgpr1, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr, implicit killed $vgpr0_vgpr1_vgpr2_vgpr3 :: (store (s64) into %stack.0, align 4, addrspace 5) @@ -181,6 +225,12 @@ ; GCN-LABEL: name: partial_spill_v128_restore_to_a128_3_of_4 ; GCN: liveins: $agpr24, $agpr25, $agpr30, $agpr31, $agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23, $agpr0_agpr1_agpr2_agpr3_agpr4_agpr5_agpr6_agpr7_agpr8_agpr9_agpr10_agpr11_agpr12_agpr13_agpr14_agpr15, $vgpr0_vgpr1_vgpr2_vgpr3 ; GCN-NEXT: {{ $}} + ; GCN-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr26_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr27_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr28_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr29_lo16 ; GCN-NEXT: $agpr25 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $vgpr0_vgpr1_vgpr2_vgpr3 ; GCN-NEXT: $agpr30 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3 ; GCN-NEXT: $agpr31 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3 @@ -210,6 +260,20 @@ ; GCN-LABEL: name: full_spill_v128_restore_to_a128 ; GCN: liveins: $agpr4, $agpr5, $agpr6, $agpr7, $vgpr0_vgpr1_vgpr2_vgpr3 ; GCN-NEXT: {{ $}} + ; GCN-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr3_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr0_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr1_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr2_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr3_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr4_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr5_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr6_lo16 + ; GCN-NEXT: frame-setup CFI_INSTRUCTION undefined $agpr7_lo16 ; GCN-NEXT: $agpr4 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr3, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $vgpr0_vgpr1_vgpr2_vgpr3 ; GCN-NEXT: $agpr5 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr2, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3 ; GCN-NEXT: $agpr6 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr1, implicit $exec, implicit $vgpr0_vgpr1_vgpr2_vgpr3 diff --git a/llvm/test/CodeGen/AMDGPU/vgpr-spill-scc-clobber.mir b/llvm/test/CodeGen/AMDGPU/vgpr-spill-scc-clobber.mir --- a/llvm/test/CodeGen/AMDGPU/vgpr-spill-scc-clobber.mir +++ b/llvm/test/CodeGen/AMDGPU/vgpr-spill-scc-clobber.mir @@ -26,6 +26,8 @@ ; MUBUF-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; MUBUF-NEXT: liveins: $vgpr0 ; MUBUF-NEXT: {{ $}} + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 ; MUBUF-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; MUBUF-NEXT: $vgpr1 = V_MOV_B32_e32 8200, implicit $exec ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFEN $vgpr0, killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.1, addrspace 5) @@ -43,6 +45,8 @@ ; GFX9-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX9-FLATSCR-NEXT: liveins: $vgpr0 ; GFX9-FLATSCR-NEXT: {{ $}} + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 ; GFX9-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX9-FLATSCR-NEXT: $vgpr1 = V_MOV_B32_e32 $sgpr32, implicit $exec ; GFX9-FLATSCR-NEXT: $vgpr1 = V_ADD_U32_e32 8200, $vgpr1, implicit $exec @@ -61,6 +65,8 @@ ; GFX10-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX10-FLATSCR-NEXT: liveins: $vgpr0 ; GFX10-FLATSCR-NEXT: {{ $}} + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 ; GFX10-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX10-FLATSCR-NEXT: $vgpr1 = V_ADD_U32_e64 $sgpr32, 8200, 0, implicit $exec ; GFX10-FLATSCR-NEXT: SCRATCH_STORE_DWORD $vgpr0, killed $vgpr1, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.1, addrspace 5) @@ -78,6 +84,8 @@ ; VMEM-GFX8-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; VMEM-GFX8-NEXT: liveins: $vgpr0 ; VMEM-GFX8-NEXT: {{ $}} + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 ; VMEM-GFX8-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; VMEM-GFX8-NEXT: $vgpr1 = V_MOV_B32_e32 8200, implicit $exec ; VMEM-GFX8-NEXT: BUFFER_STORE_DWORD_OFFEN $vgpr0, killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.1, addrspace 5) @@ -122,6 +130,8 @@ ; MUBUF-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; MUBUF-NEXT: liveins: $vgpr0_vgpr1 ; MUBUF-NEXT: {{ $}} + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 ; MUBUF-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; MUBUF-NEXT: $vgpr2 = V_MOV_B32_e32 8200, implicit $exec ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFEN $vgpr0, $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $vgpr0_vgpr1 :: (store (s32) into %stack.1, addrspace 5) @@ -140,6 +150,8 @@ ; GFX9-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX9-FLATSCR-NEXT: liveins: $vgpr0_vgpr1 ; GFX9-FLATSCR-NEXT: {{ $}} + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 ; GFX9-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX9-FLATSCR-NEXT: $vgpr2 = V_MOV_B32_e32 $sgpr32, implicit $exec ; GFX9-FLATSCR-NEXT: $vgpr2 = V_ADD_U32_e32 8200, $vgpr2, implicit $exec @@ -158,6 +170,8 @@ ; GFX10-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX10-FLATSCR-NEXT: liveins: $vgpr0_vgpr1 ; GFX10-FLATSCR-NEXT: {{ $}} + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 ; GFX10-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX10-FLATSCR-NEXT: $vgpr2 = V_ADD_U32_e64 $sgpr32, 8200, 0, implicit $exec ; GFX10-FLATSCR-NEXT: SCRATCH_STORE_DWORDX2 $vgpr0_vgpr1, killed $vgpr2, 0, 0, implicit $exec, implicit $flat_scr :: (store (s64) into %stack.1, align 4, addrspace 5) @@ -175,6 +189,8 @@ ; VMEM-GFX8-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; VMEM-GFX8-NEXT: liveins: $vgpr0_vgpr1 ; VMEM-GFX8-NEXT: {{ $}} + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 ; VMEM-GFX8-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; VMEM-GFX8-NEXT: $vgpr2 = V_MOV_B32_e32 8200, implicit $exec ; VMEM-GFX8-NEXT: BUFFER_STORE_DWORD_OFFEN $vgpr0, $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $vgpr0_vgpr1 :: (store (s32) into %stack.1, addrspace 5) @@ -218,6 +234,9 @@ ; MUBUF: bb.0: ; MUBUF-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; MUBUF-NEXT: {{ $}} + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 ; MUBUF-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; MUBUF-NEXT: $vgpr1 = V_MOV_B32_e32 8200, implicit $exec ; MUBUF-NEXT: $vgpr0 = BUFFER_LOAD_DWORD_OFFEN killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (load (s32) from %stack.1, addrspace 5) @@ -234,6 +253,9 @@ ; GFX9-FLATSCR: bb.0: ; GFX9-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX9-FLATSCR-NEXT: {{ $}} + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 ; GFX9-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX9-FLATSCR-NEXT: $vgpr1 = V_MOV_B32_e32 $sgpr32, implicit $exec ; GFX9-FLATSCR-NEXT: $vgpr1 = V_ADD_U32_e32 8200, $vgpr1, implicit $exec @@ -251,6 +273,9 @@ ; GFX10-FLATSCR: bb.0: ; GFX10-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX10-FLATSCR-NEXT: {{ $}} + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined ; GFX10-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX10-FLATSCR-NEXT: $vgpr1 = V_ADD_U32_e64 $sgpr32, 8200, 0, implicit $exec ; GFX10-FLATSCR-NEXT: $vgpr0 = SCRATCH_LOAD_DWORD killed $vgpr1, 0, 0, implicit $exec, implicit $flat_scr :: (load (s32) from %stack.1, addrspace 5) @@ -267,6 +292,9 @@ ; VMEM-GFX8: bb.0: ; VMEM-GFX8-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; VMEM-GFX8-NEXT: {{ $}} + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 ; VMEM-GFX8-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; VMEM-GFX8-NEXT: $vgpr1 = V_MOV_B32_e32 8200, implicit $exec ; VMEM-GFX8-NEXT: $vgpr0 = BUFFER_LOAD_DWORD_OFFEN killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (load (s32) from %stack.1, addrspace 5) @@ -309,6 +337,10 @@ ; MUBUF: bb.0: ; MUBUF-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; MUBUF-NEXT: {{ $}} + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 ; MUBUF-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; MUBUF-NEXT: $vgpr2 = V_MOV_B32_e32 8200, implicit $exec ; MUBUF-NEXT: $vgpr0 = BUFFER_LOAD_DWORD_OFFEN $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1 :: (load (s32) from %stack.1, addrspace 5) @@ -326,6 +358,10 @@ ; GFX9-FLATSCR: bb.0: ; GFX9-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX9-FLATSCR-NEXT: {{ $}} + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 ; GFX9-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX9-FLATSCR-NEXT: $vgpr2 = V_MOV_B32_e32 $sgpr32, implicit $exec ; GFX9-FLATSCR-NEXT: $vgpr2 = V_ADD_U32_e32 8200, $vgpr2, implicit $exec @@ -343,6 +379,10 @@ ; GFX10-FLATSCR: bb.0: ; GFX10-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX10-FLATSCR-NEXT: {{ $}} + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined ; GFX10-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX10-FLATSCR-NEXT: $vgpr2 = V_ADD_U32_e64 $sgpr32, 8200, 0, implicit $exec ; GFX10-FLATSCR-NEXT: $vgpr0_vgpr1 = SCRATCH_LOAD_DWORDX2 killed $vgpr2, 0, 0, implicit $exec, implicit $flat_scr :: (load (s64) from %stack.1, align 4, addrspace 5) @@ -359,6 +399,10 @@ ; VMEM-GFX8: bb.0: ; VMEM-GFX8-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; VMEM-GFX8-NEXT: {{ $}} + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 ; VMEM-GFX8-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; VMEM-GFX8-NEXT: $vgpr2 = V_MOV_B32_e32 8200, implicit $exec ; VMEM-GFX8-NEXT: $vgpr0 = BUFFER_LOAD_DWORD_OFFEN $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1 :: (load (s32) from %stack.1, addrspace 5) @@ -403,6 +447,39 @@ ; MUBUF-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; MUBUF-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; MUBUF-NEXT: {{ $}} + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; MUBUF-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.2, addrspace 5) ; MUBUF-NEXT: $vgpr1 = V_MOV_B32_e32 8200, implicit $exec @@ -423,6 +500,39 @@ ; GFX9-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX9-FLATSCR-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX9-FLATSCR-NEXT: {{ $}} + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX9-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX9-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr1, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.2, addrspace 5) ; GFX9-FLATSCR-NEXT: $vgpr1 = V_MOV_B32_e32 $sgpr32, implicit $exec @@ -444,6 +554,39 @@ ; GFX10-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX10-FLATSCR-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX10-FLATSCR-NEXT: {{ $}} + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX10-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX10-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr1, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.2, addrspace 5) ; GFX10-FLATSCR-NEXT: $vgpr1 = V_ADD_U32_e64 $sgpr32, 8200, 0, implicit $exec @@ -464,6 +607,39 @@ ; VMEM-GFX8-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; VMEM-GFX8-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; VMEM-GFX8-NEXT: {{ $}} + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; VMEM-GFX8-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; VMEM-GFX8-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.2, addrspace 5) ; VMEM-GFX8-NEXT: $vgpr1 = V_MOV_B32_e32 8200, implicit $exec @@ -512,6 +688,40 @@ ; MUBUF-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; MUBUF-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; MUBUF-NEXT: {{ $}} + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; MUBUF-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.2, addrspace 5) ; MUBUF-NEXT: $vgpr2 = V_MOV_B32_e32 8200, implicit $exec @@ -533,6 +743,40 @@ ; GFX9-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX9-FLATSCR-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX9-FLATSCR-NEXT: {{ $}} + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX9-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX9-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr2, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.2, addrspace 5) ; GFX9-FLATSCR-NEXT: $vgpr2 = V_MOV_B32_e32 $sgpr32, implicit $exec @@ -554,6 +798,40 @@ ; GFX10-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX10-FLATSCR-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX10-FLATSCR-NEXT: {{ $}} + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX10-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX10-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr2, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.2, addrspace 5) ; GFX10-FLATSCR-NEXT: $vgpr2 = V_ADD_U32_e64 $sgpr32, 8200, 0, implicit $exec @@ -574,6 +852,40 @@ ; VMEM-GFX8-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; VMEM-GFX8-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; VMEM-GFX8-NEXT: {{ $}} + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; VMEM-GFX8-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; VMEM-GFX8-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.2, addrspace 5) ; VMEM-GFX8-NEXT: $vgpr2 = V_MOV_B32_e32 8200, implicit $exec @@ -623,6 +935,41 @@ ; MUBUF-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; MUBUF-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; MUBUF-NEXT: {{ $}} + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; MUBUF-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr3, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.2, addrspace 5) ; MUBUF-NEXT: $vgpr3 = V_MOV_B32_e32 8200, implicit $exec @@ -645,6 +992,41 @@ ; GFX9-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX9-FLATSCR-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX9-FLATSCR-NEXT: {{ $}} + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX9-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX9-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.2, addrspace 5) ; GFX9-FLATSCR-NEXT: $vgpr3 = V_MOV_B32_e32 $sgpr32, implicit $exec @@ -666,6 +1048,41 @@ ; GFX10-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX10-FLATSCR-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX10-FLATSCR-NEXT: {{ $}} + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX10-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX10-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.2, addrspace 5) ; GFX10-FLATSCR-NEXT: $vgpr3 = V_ADD_U32_e64 $sgpr32, 8200, 0, implicit $exec @@ -686,6 +1103,41 @@ ; VMEM-GFX8-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; VMEM-GFX8-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; VMEM-GFX8-NEXT: {{ $}} + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr1_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr2_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; VMEM-GFX8-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; VMEM-GFX8-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr3, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.2, addrspace 5) ; VMEM-GFX8-NEXT: $vgpr3 = V_MOV_B32_e32 8200, implicit $exec @@ -736,6 +1188,38 @@ ; MUBUF-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; MUBUF-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; MUBUF-NEXT: {{ $}} + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; MUBUF-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.2, addrspace 5) ; MUBUF-NEXT: $vgpr1 = V_MOV_B32_e32 8200, implicit $exec @@ -756,6 +1240,38 @@ ; GFX9-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX9-FLATSCR-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX9-FLATSCR-NEXT: {{ $}} + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX9-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX9-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr1, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.2, addrspace 5) ; GFX9-FLATSCR-NEXT: $vgpr1 = V_MOV_B32_e32 $sgpr32, implicit $exec @@ -777,6 +1293,38 @@ ; GFX10-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX10-FLATSCR-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX10-FLATSCR-NEXT: {{ $}} + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX10-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX10-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr1, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.2, addrspace 5) ; GFX10-FLATSCR-NEXT: $vgpr1 = V_ADD_U32_e64 $sgpr32, 8200, 0, implicit $exec @@ -797,6 +1345,38 @@ ; VMEM-GFX8-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; VMEM-GFX8-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; VMEM-GFX8-NEXT: {{ $}} + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; VMEM-GFX8-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; VMEM-GFX8-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.2, addrspace 5) ; VMEM-GFX8-NEXT: $vgpr1 = V_MOV_B32_e32 8200, implicit $exec @@ -845,6 +1425,38 @@ ; MUBUF-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; MUBUF-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; MUBUF-NEXT: {{ $}} + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; MUBUF-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.2, addrspace 5) ; MUBUF-NEXT: $vgpr2 = V_MOV_B32_e32 8200, implicit $exec @@ -866,6 +1478,38 @@ ; GFX9-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX9-FLATSCR-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX9-FLATSCR-NEXT: {{ $}} + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX9-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX9-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr2, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.2, addrspace 5) ; GFX9-FLATSCR-NEXT: $vgpr2 = V_MOV_B32_e32 $sgpr32, implicit $exec @@ -887,6 +1531,38 @@ ; GFX10-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX10-FLATSCR-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX10-FLATSCR-NEXT: {{ $}} + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX10-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX10-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr2, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.2, addrspace 5) ; GFX10-FLATSCR-NEXT: $vgpr2 = V_ADD_U32_e64 $sgpr32, 8200, 0, implicit $exec @@ -907,6 +1583,38 @@ ; VMEM-GFX8-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; VMEM-GFX8-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; VMEM-GFX8-NEXT: {{ $}} + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; VMEM-GFX8-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; VMEM-GFX8-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.2, addrspace 5) ; VMEM-GFX8-NEXT: $vgpr2 = V_MOV_B32_e32 8200, implicit $exec @@ -956,6 +1664,38 @@ ; MUBUF-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; MUBUF-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; MUBUF-NEXT: {{ $}} + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; MUBUF-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr3, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.2, addrspace 5) ; MUBUF-NEXT: $vgpr3 = V_MOV_B32_e32 8200, implicit $exec @@ -978,6 +1718,38 @@ ; GFX9-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX9-FLATSCR-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX9-FLATSCR-NEXT: {{ $}} + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX9-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX9-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.2, addrspace 5) ; GFX9-FLATSCR-NEXT: $vgpr3 = V_MOV_B32_e32 $sgpr32, implicit $exec @@ -999,6 +1771,38 @@ ; GFX10-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX10-FLATSCR-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX10-FLATSCR-NEXT: {{ $}} + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX10-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX10-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr3, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.2, addrspace 5) ; GFX10-FLATSCR-NEXT: $vgpr3 = V_ADD_U32_e64 $sgpr32, 8200, 0, implicit $exec @@ -1019,6 +1823,38 @@ ; VMEM-GFX8-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; VMEM-GFX8-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; VMEM-GFX8-NEXT: {{ $}} + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; VMEM-GFX8-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; VMEM-GFX8-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr3, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.2, addrspace 5) ; VMEM-GFX8-NEXT: $vgpr3 = V_MOV_B32_e32 8200, implicit $exec @@ -1068,6 +1904,39 @@ ; MUBUF: bb.0: ; MUBUF-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; MUBUF-NEXT: {{ $}} + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; MUBUF-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; MUBUF-NEXT: $vgpr1 = V_MOV_B32_e32 8200, implicit $exec ; MUBUF-NEXT: $vgpr0 = BUFFER_LOAD_DWORD_OFFEN killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (load (s32) from %stack.1, addrspace 5) @@ -1084,6 +1953,39 @@ ; GFX9-FLATSCR: bb.0: ; GFX9-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX9-FLATSCR-NEXT: {{ $}} + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX9-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX9-FLATSCR-NEXT: $vcc_hi = S_ADDC_U32 $sgpr32, 8200, implicit-def $scc, implicit $scc ; GFX9-FLATSCR-NEXT: S_BITCMP1_B32 $vcc_hi, 0, implicit-def $scc @@ -1103,6 +2005,39 @@ ; GFX10-FLATSCR: bb.0: ; GFX10-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX10-FLATSCR-NEXT: {{ $}} + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX10-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX10-FLATSCR-NEXT: $vcc_lo = S_ADDC_U32 $sgpr32, 8200, implicit-def $scc, implicit $scc ; GFX10-FLATSCR-NEXT: S_BITCMP1_B32 $vcc_lo, 0, implicit-def $scc @@ -1122,6 +2057,39 @@ ; VMEM-GFX8: bb.0: ; VMEM-GFX8-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; VMEM-GFX8-NEXT: {{ $}} + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; VMEM-GFX8-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; VMEM-GFX8-NEXT: $vgpr1 = V_MOV_B32_e32 8200, implicit $exec ; VMEM-GFX8-NEXT: $vgpr0 = BUFFER_LOAD_DWORD_OFFEN killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (load (s32) from %stack.1, addrspace 5) @@ -1169,6 +2137,39 @@ ; MUBUF-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; MUBUF-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; MUBUF-NEXT: {{ $}} + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; MUBUF-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; MUBUF-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.2, addrspace 5) ; MUBUF-NEXT: $vgpr1 = V_MOV_B32_e32 8200, implicit $exec @@ -1189,6 +2190,39 @@ ; GFX9-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX9-FLATSCR-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX9-FLATSCR-NEXT: {{ $}} + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX9-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX9-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr1, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.2, addrspace 5) ; GFX9-FLATSCR-NEXT: $vcc_hi = S_ADDC_U32 $sgpr32, 8200, implicit-def $scc, implicit $scc @@ -1212,6 +2246,39 @@ ; GFX10-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX10-FLATSCR-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; GFX10-FLATSCR-NEXT: {{ $}} + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; GFX10-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX10-FLATSCR-NEXT: SCRATCH_STORE_DWORD_SADDR killed $vgpr1, $sgpr32, 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into %stack.2, addrspace 5) ; GFX10-FLATSCR-NEXT: $vcc_lo = S_ADDC_U32 $sgpr32, 8200, implicit-def $scc, implicit $scc @@ -1235,6 +2302,39 @@ ; VMEM-GFX8-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; VMEM-GFX8-NEXT: liveins: $vgpr248_vgpr249_vgpr250_vgpr251, $vgpr252_vgpr253_vgpr254_vgpr255, $vgpr240_vgpr241_vgpr242_vgpr243_vgpr244_vgpr245_vgpr246_vgpr247, $vgpr0_vgpr1_vgpr2_vgpr3_vgpr4_vgpr5_vgpr6_vgpr7_vgpr8_vgpr9_vgpr10_vgpr11_vgpr12_vgpr13_vgpr14_vgpr15, $vgpr16_vgpr17_vgpr18_vgpr19_vgpr20_vgpr21_vgpr22_vgpr23_vgpr24_vgpr25_vgpr26_vgpr27_vgpr28_vgpr29_vgpr30_vgpr31, $vgpr32_vgpr33_vgpr34_vgpr35_vgpr36_vgpr37_vgpr38_vgpr39_vgpr40_vgpr41_vgpr42_vgpr43_vgpr44_vgpr45_vgpr46_vgpr47, $vgpr48_vgpr49_vgpr50_vgpr51_vgpr52_vgpr53_vgpr54_vgpr55_vgpr56_vgpr57_vgpr58_vgpr59_vgpr60_vgpr61_vgpr62_vgpr63, $vgpr64_vgpr65_vgpr66_vgpr67_vgpr68_vgpr69_vgpr70_vgpr71_vgpr72_vgpr73_vgpr74_vgpr75_vgpr76_vgpr77_vgpr78_vgpr79, $vgpr80_vgpr81_vgpr82_vgpr83_vgpr84_vgpr85_vgpr86_vgpr87_vgpr88_vgpr89_vgpr90_vgpr91_vgpr92_vgpr93_vgpr94_vgpr95, $vgpr96_vgpr97_vgpr98_vgpr99_vgpr100_vgpr101_vgpr102_vgpr103_vgpr104_vgpr105_vgpr106_vgpr107_vgpr108_vgpr109_vgpr110_vgpr111, $vgpr112_vgpr113_vgpr114_vgpr115_vgpr116_vgpr117_vgpr118_vgpr119_vgpr120_vgpr121_vgpr122_vgpr123_vgpr124_vgpr125_vgpr126_vgpr127, $vgpr128_vgpr129_vgpr130_vgpr131_vgpr132_vgpr133_vgpr134_vgpr135_vgpr136_vgpr137_vgpr138_vgpr139_vgpr140_vgpr141_vgpr142_vgpr143, $vgpr144_vgpr145_vgpr146_vgpr147_vgpr148_vgpr149_vgpr150_vgpr151_vgpr152_vgpr153_vgpr154_vgpr155_vgpr156_vgpr157_vgpr158_vgpr159, $vgpr160_vgpr161_vgpr162_vgpr163_vgpr164_vgpr165_vgpr166_vgpr167_vgpr168_vgpr169_vgpr170_vgpr171_vgpr172_vgpr173_vgpr174_vgpr175, $vgpr176_vgpr177_vgpr178_vgpr179_vgpr180_vgpr181_vgpr182_vgpr183_vgpr184_vgpr185_vgpr186_vgpr187_vgpr188_vgpr189_vgpr190_vgpr191, $vgpr192_vgpr193_vgpr194_vgpr195_vgpr196_vgpr197_vgpr198_vgpr199_vgpr200_vgpr201_vgpr202_vgpr203_vgpr204_vgpr205_vgpr206_vgpr207, $vgpr208_vgpr209_vgpr210_vgpr211_vgpr212_vgpr213_vgpr214_vgpr215_vgpr216_vgpr217_vgpr218_vgpr219_vgpr220_vgpr221_vgpr222_vgpr223, $vgpr224_vgpr225_vgpr226_vgpr227_vgpr228_vgpr229_vgpr230_vgpr231_vgpr232_vgpr233_vgpr234_vgpr235_vgpr236_vgpr237_vgpr238_vgpr239 ; VMEM-GFX8-NEXT: {{ $}} + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr0_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr1_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr2_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr3_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr4_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr5_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr6_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr7_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr8_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr9_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr10_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr11_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr12_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr13_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr14_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr15_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr16_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr17_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr18_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr19_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr20_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr21_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr22_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr23_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr24_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr25_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr26_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr27_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr28_lo16 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $sgpr29_lo16 ; VMEM-GFX8-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; VMEM-GFX8-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.2, addrspace 5) ; VMEM-GFX8-NEXT: $vgpr1 = V_MOV_B32_e32 8200, implicit $exec @@ -1283,6 +2383,9 @@ ; MUBUF: bb.0: ; MUBUF-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; MUBUF-NEXT: {{ $}} + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; MUBUF-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 ; MUBUF-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; MUBUF-NEXT: $vgpr0 = V_LSHRREV_B32_e64 6, $sgpr32, implicit $exec ; MUBUF-NEXT: $vcc_lo = S_MOV_B32 8200 @@ -1302,6 +2405,9 @@ ; GFX9-FLATSCR: bb.0: ; GFX9-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX9-FLATSCR-NEXT: {{ $}} + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX9-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 ; GFX9-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX9-FLATSCR-NEXT: $vcc_hi = S_ADDC_U32 $sgpr32, 8200, implicit-def $scc, implicit $scc ; GFX9-FLATSCR-NEXT: S_BITCMP1_B32 $vcc_hi, 0, implicit-def $scc @@ -1322,6 +2428,9 @@ ; GFX10-FLATSCR: bb.0: ; GFX10-FLATSCR-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; GFX10-FLATSCR-NEXT: {{ $}} + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; GFX10-FLATSCR-NEXT: frame-setup CFI_INSTRUCTION undefined ; GFX10-FLATSCR-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; GFX10-FLATSCR-NEXT: $vcc_lo = S_ADDC_U32 $sgpr32, 8200, implicit-def $scc, implicit $scc ; GFX10-FLATSCR-NEXT: S_BITCMP1_B32 $vcc_lo, 0, implicit-def $scc @@ -1342,6 +2451,9 @@ ; VMEM-GFX8: bb.0: ; VMEM-GFX8-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000) ; VMEM-GFX8-NEXT: {{ $}} + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 + ; VMEM-GFX8-NEXT: frame-setup CFI_INSTRUCTION undefined $vgpr0_lo16 ; VMEM-GFX8-NEXT: S_CMP_EQ_U32 0, 0, implicit-def $scc ; VMEM-GFX8-NEXT: $vgpr0 = V_LSHRREV_B32_e64 6, $sgpr32, implicit $exec ; VMEM-GFX8-NEXT: $vcc_lo = S_MOV_B32 8200 diff --git a/llvm/test/CodeGen/AMDGPU/vgpr-spill.mir b/llvm/test/CodeGen/AMDGPU/vgpr-spill.mir --- a/llvm/test/CodeGen/AMDGPU/vgpr-spill.mir +++ b/llvm/test/CodeGen/AMDGPU/vgpr-spill.mir @@ -17,6 +17,8 @@ ; CHECK-LABEL: name: spill_v32 ; CHECK: liveins: $vgpr0 ; CHECK-NEXT: {{ $}} + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 ; CHECK-NEXT: BUFFER_STORE_DWORD_OFFSET $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.0, addrspace 5) ; CHECK-NEXT: S_NOP 0, implicit $vgpr0 SI_SPILL_V32_SAVE $vgpr0, %stack.0, $sgpr32, 0, implicit $exec :: (store (s32) into %stack.0, addrspace 5) @@ -39,6 +41,8 @@ ; CHECK-LABEL: name: spill_v32_kill ; CHECK: liveins: $vgpr0 ; CHECK-NEXT: {{ $}} + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 ; CHECK-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into %stack.0, addrspace 5) SI_SPILL_V32_SAVE killed $vgpr0, %stack.0, $sgpr32, 0, implicit $exec :: (store (s32) into %stack.0, addrspace 5) ... @@ -59,6 +63,8 @@ ; CHECK-LABEL: name: spill_v64 ; CHECK: liveins: $vgpr0_vgpr1 ; CHECK-NEXT: {{ $}} + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 ; CHECK-NEXT: BUFFER_STORE_DWORD_OFFSET $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $vgpr0_vgpr1 :: (store (s32) into %stack.0, addrspace 5) ; CHECK-NEXT: BUFFER_STORE_DWORD_OFFSET $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec, implicit $vgpr0_vgpr1 :: (store (s32) into %stack.0 + 4, addrspace 5) ; CHECK-NEXT: S_NOP 0, implicit $vgpr0_vgpr1 @@ -82,6 +88,8 @@ ; CHECK-LABEL: name: spill_v64_kill ; CHECK: liveins: $vgpr0_vgpr1 ; CHECK-NEXT: {{ $}} + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 ; CHECK-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $vgpr0_vgpr1 :: (store (s32) into %stack.0, addrspace 5) ; CHECK-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec, implicit killed $vgpr0_vgpr1 :: (store (s32) into %stack.0 + 4, addrspace 5) SI_SPILL_V64_SAVE killed $vgpr0_vgpr1, %stack.0, $sgpr32, 0, implicit $exec :: (store (s64) into %stack.0, addrspace 5) @@ -105,6 +113,8 @@ ; CHECK-LABEL: name: spill_v64_undef_sub1_killed ; CHECK: liveins: $vgpr0 ; CHECK-NEXT: {{ $}} + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 ; CHECK-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $vgpr0_vgpr1 :: (store (s32) into %stack.0, addrspace 5) ; CHECK-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec, implicit killed $vgpr0_vgpr1 :: (store (s32) into %stack.0 + 4, addrspace 5) SI_SPILL_V64_SAVE killed $vgpr0_vgpr1, %stack.0, $sgpr32, 0, implicit $exec :: (store (s64) into %stack.0, addrspace 5) @@ -126,6 +136,8 @@ ; CHECK-LABEL: name: spill_v64_undef_sub0_killed ; CHECK: liveins: $vgpr1 ; CHECK-NEXT: {{ $}} + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 ; CHECK-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1, implicit $vgpr0_vgpr1 :: (store (s32) into %stack.0, addrspace 5) ; CHECK-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec, implicit killed $vgpr0_vgpr1 :: (store (s32) into %stack.0 + 4, addrspace 5) SI_SPILL_V64_SAVE killed $vgpr0_vgpr1, %stack.0, $sgpr32, 0, implicit $exec :: (store (s64) into %stack.0, addrspace 5) @@ -147,6 +159,8 @@ ; CHECK-LABEL: name: spill_v128_kill ; CHECK: liveins: $vgpr0_vgpr1_vgpr2_vgpr3 ; CHECK-NEXT: {{ $}} + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION llvm_def_aspace_cfa $sgpr32_lo16, 0, 6 + ; CHECK-NEXT: frame-setup CFI_INSTRUCTION escape 0x10, 0x10, 0x08, 0x90, 0x3e, 0x93, 0x04, 0x90, 0x3f, 0x93, 0x04 ; CHECK-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr0, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 0, 0, 0, implicit $exec, implicit-def $vgpr0_vgpr1_vgpr2_vgpr3, implicit $vgpr0_vgpr1_vgpr2_vgpr3 :: (store (s32) into %stack.0, addrspace 5) ; CHECK-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr1, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 4, addrspace 5) ; CHECK-NEXT: BUFFER_STORE_DWORD_OFFSET killed $vgpr2, $sgpr0_sgpr1_sgpr2_sgpr3, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into %stack.0 + 8, addrspace 5) diff --git a/llvm/test/CodeGen/AMDGPU/vgpr-tuple-allocation.ll b/llvm/test/CodeGen/AMDGPU/vgpr-tuple-allocation.ll --- a/llvm/test/CodeGen/AMDGPU/vgpr-tuple-allocation.ll +++ b/llvm/test/CodeGen/AMDGPU/vgpr-tuple-allocation.ll @@ -17,15 +17,19 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 offset:16 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v45, off, s[0:3], s33 offset:20 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[6:7] +; GFX9-NEXT: v_writelane_b32 v45, s4, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x800 +; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:12 ; 4-byte Folded Spill +; GFX9-NEXT: buffer_store_dword v42, off, s[0:3], s33 offset:8 ; 4-byte Folded Spill +; GFX9-NEXT: buffer_store_dword v43, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill +; GFX9-NEXT: buffer_store_dword v44, off, s[0:3], s33 ; 4-byte Folded Spill +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: v_mov_b32_e32 v36, v16 ; GFX9-NEXT: v_mov_b32_e32 v35, v15 ; GFX9-NEXT: v_mov_b32_e32 v34, v14 ; GFX9-NEXT: v_mov_b32_e32 v33, v13 ; GFX9-NEXT: v_mov_b32_e32 v32, v12 -; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:12 ; 4-byte Folded Spill -; GFX9-NEXT: buffer_store_dword v42, off, s[0:3], s33 offset:8 ; 4-byte Folded Spill -; GFX9-NEXT: buffer_store_dword v43, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill -; GFX9-NEXT: buffer_store_dword v44, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX9-NEXT: ;;#ASMSTART ; GFX9-NEXT: ;;#ASMEND ; GFX9-NEXT: ;;#ASMSTART @@ -35,14 +39,10 @@ ; GFX9-NEXT: ;;#ASMSTART ; GFX9-NEXT: ;;#ASMEND ; GFX9-NEXT: image_gather4_c_b_cl v[41:44], v[32:36], s[4:11], s[4:7] dmask:0x1 -; GFX9-NEXT: s_addk_i32 s32, 0x800 -; GFX9-NEXT: v_writelane_b32 v45, s4, 0 ; GFX9-NEXT: s_getpc_b64 s[4:5] ; GFX9-NEXT: s_add_u32 s4, s4, extern_func@gotpcrel32@lo+4 ; GFX9-NEXT: s_addc_u32 s5, s5, extern_func@gotpcrel32@hi+12 ; GFX9-NEXT: s_load_dwordx2 s[4:5], s[4:5], 0x0 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_waitcnt lgkmcnt(0) ; GFX9-NEXT: s_swappc_b64 s[30:31], s[4:5] ; GFX9-NEXT: v_mov_b32_e32 v0, v41 @@ -53,8 +53,8 @@ ; GFX9-NEXT: buffer_load_dword v43, off, s[0:3], s33 offset:4 ; 4-byte Folded Reload ; GFX9-NEXT: buffer_load_dword v42, off, s[0:3], s33 offset:8 ; 4-byte Folded Reload ; GFX9-NEXT: buffer_load_dword v41, off, s[0:3], s33 offset:12 ; 4-byte Folded Reload -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s4, v45, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[6:7], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 offset:16 ; 4-byte Folded Reload @@ -76,15 +76,19 @@ ; GFX10-NEXT: buffer_store_dword v45, off, s[0:3], s33 offset:20 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s5 +; GFX10-NEXT: v_writelane_b32 v45, s4, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x400 +; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:12 ; 4-byte Folded Spill +; GFX10-NEXT: buffer_store_dword v42, off, s[0:3], s33 offset:8 ; 4-byte Folded Spill +; GFX10-NEXT: buffer_store_dword v43, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill +; GFX10-NEXT: buffer_store_dword v44, off, s[0:3], s33 ; 4-byte Folded Spill +; GFX10-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: v_mov_b32_e32 v36, v16 ; GFX10-NEXT: v_mov_b32_e32 v35, v15 ; GFX10-NEXT: v_mov_b32_e32 v34, v14 ; GFX10-NEXT: v_mov_b32_e32 v33, v13 ; GFX10-NEXT: v_mov_b32_e32 v32, v12 -; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:12 ; 4-byte Folded Spill -; GFX10-NEXT: buffer_store_dword v42, off, s[0:3], s33 offset:8 ; 4-byte Folded Spill -; GFX10-NEXT: buffer_store_dword v43, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill -; GFX10-NEXT: buffer_store_dword v44, off, s[0:3], s33 ; 4-byte Folded Spill ; GFX10-NEXT: ;;#ASMSTART ; GFX10-NEXT: ;;#ASMEND ; GFX10-NEXT: ;;#ASMSTART @@ -94,14 +98,11 @@ ; GFX10-NEXT: ;;#ASMSTART ; GFX10-NEXT: ;;#ASMEND ; GFX10-NEXT: image_gather4_c_b_cl v[41:44], v[32:36], s[4:11], s[4:7] dmask:0x1 dim:SQ_RSRC_IMG_2D -; GFX10-NEXT: s_addk_i32 s32, 0x400 -; GFX10-NEXT: v_writelane_b32 v45, s4, 0 +; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_getpc_b64 s[4:5] ; GFX10-NEXT: s_add_u32 s4, s4, extern_func@gotpcrel32@lo+4 ; GFX10-NEXT: s_addc_u32 s5, s5, extern_func@gotpcrel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s30, 0 ; GFX10-NEXT: s_load_dwordx2 s[4:5], s[4:5], 0x0 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: s_waitcnt lgkmcnt(0) ; GFX10-NEXT: s_swappc_b64 s[30:31], s[4:5] ; GFX10-NEXT: v_mov_b32_e32 v0, v41 @@ -113,8 +114,8 @@ ; GFX10-NEXT: buffer_load_dword v43, off, s[0:3], s33 offset:4 ; GFX10-NEXT: buffer_load_dword v42, off, s[0:3], s33 offset:8 ; GFX10-NEXT: buffer_load_dword v41, off, s[0:3], s33 offset:12 -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s4, v45, 0 ; GFX10-NEXT: s_or_saveexec_b32 s5, -1 ; GFX10-NEXT: s_clause 0x1 @@ -136,16 +137,24 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 offset:16 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v45, s33 offset:20 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 -; GFX11-NEXT: v_dual_mov_b32 v36, v16 :: v_dual_mov_b32 v35, v15 -; GFX11-NEXT: v_dual_mov_b32 v34, v14 :: v_dual_mov_b32 v33, v13 -; GFX11-NEXT: v_mov_b32_e32 v32, v12 +; GFX11-NEXT: v_writelane_b32 v45, s0, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 32 ; GFX11-NEXT: s_clause 0x3 ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:12 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v42, s33 offset:8 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v43, s33 offset:4 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v44, s33 +; GFX11-NEXT: v_writelane_b32 v40, s30, 0 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 +; GFX11-NEXT: v_dual_mov_b32 v36, v16 :: v_dual_mov_b32 v35, v15 +; GFX11-NEXT: v_dual_mov_b32 v34, v14 :: v_dual_mov_b32 v33, v13 +; GFX11-NEXT: v_mov_b32_e32 v32, v12 ; GFX11-NEXT: ;;#ASMSTART ; GFX11-NEXT: ;;#ASMEND ; GFX11-NEXT: ;;#ASMSTART @@ -155,14 +164,10 @@ ; GFX11-NEXT: ;;#ASMSTART ; GFX11-NEXT: ;;#ASMEND ; GFX11-NEXT: image_gather4_c_b_cl v[41:44], v[32:36], s[0:7], s[0:3] dmask:0x1 dim:SQ_RSRC_IMG_2D -; GFX11-NEXT: s_add_i32 s32, s32, 32 -; GFX11-NEXT: v_writelane_b32 v45, s0, 0 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, extern_func@gotpcrel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, extern_func@gotpcrel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s30, 0 ; GFX11-NEXT: s_load_b64 s[0:1], s[0:1], 0x0 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 ; GFX11-NEXT: s_waitcnt lgkmcnt(0) ; GFX11-NEXT: s_swappc_b64 s[30:31], s[0:1] ; GFX11-NEXT: v_dual_mov_b32 v0, v41 :: v_dual_mov_b32 v1, v42 @@ -172,8 +177,8 @@ ; GFX11-NEXT: scratch_load_b32 v43, off, s33 offset:4 ; GFX11-NEXT: scratch_load_b32 v42, off, s33 offset:8 ; GFX11-NEXT: scratch_load_b32 v41, off, s33 offset:12 -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v45, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 @@ -218,25 +223,25 @@ ; GFX9-NEXT: buffer_store_dword v40, off, s[0:3], s33 offset:20 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v46, off, s[0:3], s33 offset:24 ; 4-byte Folded Spill ; GFX9-NEXT: s_mov_b64 exec, s[6:7] +; GFX9-NEXT: v_writelane_b32 v46, s4, 0 +; GFX9-NEXT: s_addk_i32 s32, 0x800 ; GFX9-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:16 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v42, off, s[0:3], s33 offset:12 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v43, off, s[0:3], s33 offset:8 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v44, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX9-NEXT: buffer_store_dword v45, off, s[0:3], s33 ; 4-byte Folded Spill +; GFX9-NEXT: v_writelane_b32 v40, s30, 0 +; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: v_mov_b32_e32 v45, v16 ; GFX9-NEXT: v_mov_b32_e32 v44, v15 ; GFX9-NEXT: v_mov_b32_e32 v43, v14 ; GFX9-NEXT: v_mov_b32_e32 v42, v13 ; GFX9-NEXT: v_mov_b32_e32 v41, v12 ; GFX9-NEXT: image_gather4_c_b_cl v[0:3], v[41:45], s[4:11], s[4:7] dmask:0x1 -; GFX9-NEXT: s_addk_i32 s32, 0x800 -; GFX9-NEXT: v_writelane_b32 v46, s4, 0 ; GFX9-NEXT: s_getpc_b64 s[4:5] ; GFX9-NEXT: s_add_u32 s4, s4, extern_func@gotpcrel32@lo+4 ; GFX9-NEXT: s_addc_u32 s5, s5, extern_func@gotpcrel32@hi+12 ; GFX9-NEXT: s_load_dwordx2 s[4:5], s[4:5], 0x0 -; GFX9-NEXT: v_writelane_b32 v40, s30, 0 -; GFX9-NEXT: v_writelane_b32 v40, s31, 1 ; GFX9-NEXT: s_waitcnt vmcnt(0) ; GFX9-NEXT: global_store_dwordx4 v[0:1], v[0:3], off ; GFX9-NEXT: s_waitcnt lgkmcnt(0) @@ -248,8 +253,8 @@ ; GFX9-NEXT: buffer_load_dword v43, off, s[0:3], s33 offset:8 ; 4-byte Folded Reload ; GFX9-NEXT: buffer_load_dword v42, off, s[0:3], s33 offset:12 ; 4-byte Folded Reload ; GFX9-NEXT: buffer_load_dword v41, off, s[0:3], s33 offset:16 ; 4-byte Folded Reload -; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s30, v40, 0 +; GFX9-NEXT: v_readlane_b32 s31, v40, 1 ; GFX9-NEXT: v_readlane_b32 s4, v46, 0 ; GFX9-NEXT: s_or_saveexec_b64 s[6:7], -1 ; GFX9-NEXT: buffer_load_dword v40, off, s[0:3], s33 offset:20 ; 4-byte Folded Reload @@ -271,23 +276,24 @@ ; GFX10-NEXT: buffer_store_dword v46, off, s[0:3], s33 offset:24 ; 4-byte Folded Spill ; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_mov_b32 exec_lo, s5 +; GFX10-NEXT: v_writelane_b32 v46, s4, 0 +; GFX10-NEXT: s_addk_i32 s32, 0x400 ; GFX10-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:16 ; 4-byte Folded Spill ; GFX10-NEXT: buffer_store_dword v42, off, s[0:3], s33 offset:12 ; 4-byte Folded Spill ; GFX10-NEXT: buffer_store_dword v43, off, s[0:3], s33 offset:8 ; 4-byte Folded Spill ; GFX10-NEXT: buffer_store_dword v44, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX10-NEXT: buffer_store_dword v45, off, s[0:3], s33 ; 4-byte Folded Spill +; GFX10-NEXT: v_writelane_b32 v40, s30, 0 +; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: image_gather4_c_b_cl v[0:3], v[12:16], s[4:11], s[4:7] dmask:0x1 dim:SQ_RSRC_IMG_2D -; GFX10-NEXT: s_addk_i32 s32, 0x400 -; GFX10-NEXT: v_writelane_b32 v46, s4, 0 +; GFX10-NEXT: s_waitcnt_depctr 0xffe3 ; GFX10-NEXT: s_getpc_b64 s[4:5] ; GFX10-NEXT: s_add_u32 s4, s4, extern_func@gotpcrel32@lo+4 ; GFX10-NEXT: s_addc_u32 s5, s5, extern_func@gotpcrel32@hi+12 -; GFX10-NEXT: v_writelane_b32 v40, s30, 0 -; GFX10-NEXT: s_load_dwordx2 s[4:5], s[4:5], 0x0 ; GFX10-NEXT: v_mov_b32_e32 v41, v16 +; GFX10-NEXT: s_load_dwordx2 s[4:5], s[4:5], 0x0 ; GFX10-NEXT: v_mov_b32_e32 v42, v15 ; GFX10-NEXT: v_mov_b32_e32 v43, v14 -; GFX10-NEXT: v_writelane_b32 v40, s31, 1 ; GFX10-NEXT: v_mov_b32_e32 v44, v13 ; GFX10-NEXT: v_mov_b32_e32 v45, v12 ; GFX10-NEXT: s_waitcnt vmcnt(0) @@ -301,8 +307,8 @@ ; GFX10-NEXT: buffer_load_dword v43, off, s[0:3], s33 offset:8 ; GFX10-NEXT: buffer_load_dword v42, off, s[0:3], s33 offset:12 ; GFX10-NEXT: buffer_load_dword v41, off, s[0:3], s33 offset:16 -; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s30, v40, 0 +; GFX10-NEXT: v_readlane_b32 s31, v40, 1 ; GFX10-NEXT: v_readlane_b32 s4, v46, 0 ; GFX10-NEXT: s_or_saveexec_b32 s5, -1 ; GFX10-NEXT: s_clause 0x1 @@ -324,25 +330,30 @@ ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 ; GFX11-NEXT: scratch_store_b32 off, v40, s33 offset:20 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v46, s33 offset:24 ; GFX11-NEXT: s_mov_b32 exec_lo, s1 +; GFX11-NEXT: v_writelane_b32 v46, s0, 0 +; GFX11-NEXT: s_add_i32 s32, s32, 32 ; GFX11-NEXT: s_clause 0x4 ; GFX11-NEXT: scratch_store_b32 off, v41, s33 offset:16 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v42, s33 offset:12 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v43, s33 offset:8 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v44, s33 offset:4 +; GFX11-NEXT: ; meta instruction ; GFX11-NEXT: scratch_store_b32 off, v45, s33 +; GFX11-NEXT: v_writelane_b32 v40, s30, 0 +; GFX11-NEXT: v_writelane_b32 v40, s31, 1 ; GFX11-NEXT: image_gather4_c_b_cl v[0:3], v[12:16], s[0:7], s[0:3] dmask:0x1 dim:SQ_RSRC_IMG_2D -; GFX11-NEXT: s_add_i32 s32, s32, 32 -; GFX11-NEXT: v_writelane_b32 v46, s0, 0 ; GFX11-NEXT: s_getpc_b64 s[0:1] ; GFX11-NEXT: s_add_u32 s0, s0, extern_func@gotpcrel32@lo+4 ; GFX11-NEXT: s_addc_u32 s1, s1, extern_func@gotpcrel32@hi+12 -; GFX11-NEXT: v_writelane_b32 v40, s30, 0 -; GFX11-NEXT: s_load_b64 s[0:1], s[0:1], 0x0 ; GFX11-NEXT: v_dual_mov_b32 v41, v16 :: v_dual_mov_b32 v42, v15 +; GFX11-NEXT: s_load_b64 s[0:1], s[0:1], 0x0 ; GFX11-NEXT: v_dual_mov_b32 v43, v14 :: v_dual_mov_b32 v44, v13 -; GFX11-NEXT: v_writelane_b32 v40, s31, 1 ; GFX11-NEXT: v_mov_b32_e32 v45, v12 ; GFX11-NEXT: s_waitcnt vmcnt(0) ; GFX11-NEXT: global_store_b128 v[0:1], v[0:3], off @@ -355,8 +366,8 @@ ; GFX11-NEXT: scratch_load_b32 v43, off, s33 offset:8 ; GFX11-NEXT: scratch_load_b32 v42, off, s33 offset:12 ; GFX11-NEXT: scratch_load_b32 v41, off, s33 offset:16 -; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s30, v40, 0 +; GFX11-NEXT: v_readlane_b32 s31, v40, 1 ; GFX11-NEXT: v_readlane_b32 s0, v46, 0 ; GFX11-NEXT: s_or_saveexec_b32 s1, -1 ; GFX11-NEXT: s_clause 0x1 diff --git a/llvm/test/CodeGen/AMDGPU/wave32.ll b/llvm/test/CodeGen/AMDGPU/wave32.ll --- a/llvm/test/CodeGen/AMDGPU/wave32.ll +++ b/llvm/test/CodeGen/AMDGPU/wave32.ll @@ -2866,18 +2866,18 @@ ; GFX1032-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX1032-NEXT: s_waitcnt_depctr 0xffe3 ; GFX1032-NEXT: s_mov_b32 exec_lo, s17 -; GFX1032-NEXT: s_addk_i32 s32, 0x200 ; GFX1032-NEXT: v_writelane_b32 v41, s16, 0 +; GFX1032-NEXT: v_writelane_b32 v40, s30, 0 +; GFX1032-NEXT: s_addk_i32 s32, 0x200 +; GFX1032-NEXT: v_writelane_b32 v40, s31, 1 ; GFX1032-NEXT: s_getpc_b64 s[16:17] ; GFX1032-NEXT: s_add_u32 s16, s16, external_void_func_void@gotpcrel32@lo+4 ; GFX1032-NEXT: s_addc_u32 s17, s17, external_void_func_void@gotpcrel32@hi+12 -; GFX1032-NEXT: v_writelane_b32 v40, s30, 0 ; GFX1032-NEXT: s_load_dwordx2 s[16:17], s[16:17], 0x0 -; GFX1032-NEXT: v_writelane_b32 v40, s31, 1 ; GFX1032-NEXT: s_waitcnt lgkmcnt(0) ; GFX1032-NEXT: s_swappc_b64 s[30:31], s[16:17] -; GFX1032-NEXT: v_readlane_b32 s31, v40, 1 ; GFX1032-NEXT: v_readlane_b32 s30, v40, 0 +; GFX1032-NEXT: v_readlane_b32 s31, v40, 1 ; GFX1032-NEXT: v_readlane_b32 s4, v41, 0 ; GFX1032-NEXT: s_or_saveexec_b32 s5, -1 ; GFX1032-NEXT: s_clause 0x1 @@ -2901,18 +2901,18 @@ ; GFX1064-NEXT: buffer_store_dword v41, off, s[0:3], s33 offset:4 ; 4-byte Folded Spill ; GFX1064-NEXT: s_waitcnt_depctr 0xffe3 ; GFX1064-NEXT: s_mov_b64 exec, s[18:19] -; GFX1064-NEXT: s_addk_i32 s32, 0x400 ; GFX1064-NEXT: v_writelane_b32 v41, s16, 0 +; GFX1064-NEXT: v_writelane_b32 v40, s30, 0 +; GFX1064-NEXT: s_addk_i32 s32, 0x400 +; GFX1064-NEXT: v_writelane_b32 v40, s31, 1 ; GFX1064-NEXT: s_getpc_b64 s[16:17] ; GFX1064-NEXT: s_add_u32 s16, s16, external_void_func_void@gotpcrel32@lo+4 ; GFX1064-NEXT: s_addc_u32 s17, s17, external_void_func_void@gotpcrel32@hi+12 -; GFX1064-NEXT: v_writelane_b32 v40, s30, 0 ; GFX1064-NEXT: s_load_dwordx2 s[16:17], s[16:17], 0x0 -; GFX1064-NEXT: v_writelane_b32 v40, s31, 1 ; GFX1064-NEXT: s_waitcnt lgkmcnt(0) ; GFX1064-NEXT: s_swappc_b64 s[30:31], s[16:17] -; GFX1064-NEXT: v_readlane_b32 s31, v40, 1 ; GFX1064-NEXT: v_readlane_b32 s30, v40, 0 +; GFX1064-NEXT: v_readlane_b32 s31, v40, 1 ; GFX1064-NEXT: v_readlane_b32 s4, v41, 0 ; GFX1064-NEXT: s_or_saveexec_b64 s[6:7], -1 ; GFX1064-NEXT: s_clause 0x1 diff --git a/llvm/test/CodeGen/AMDGPU/wwm-reserved-spill.ll b/llvm/test/CodeGen/AMDGPU/wwm-reserved-spill.ll --- a/llvm/test/CodeGen/AMDGPU/wwm-reserved-spill.ll +++ b/llvm/test/CodeGen/AMDGPU/wwm-reserved-spill.ll @@ -368,8 +368,8 @@ ; GFX9-O0-NEXT: s_mov_b64 exec, s[40:41] ; GFX9-O0-NEXT: v_mov_b32_e32 v0, v1 ; GFX9-O0-NEXT: buffer_store_dword v0, off, s[36:39], s34 offset:4 -; GFX9-O0-NEXT: v_readlane_b32 s31, v3, 1 ; GFX9-O0-NEXT: v_readlane_b32 s30, v3, 0 +; GFX9-O0-NEXT: v_readlane_b32 s31, v3, 1 ; GFX9-O0-NEXT: s_xor_saveexec_b64 s[36:37], -1 ; GFX9-O0-NEXT: buffer_load_dword v3, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX9-O0-NEXT: buffer_load_dword v2, off, s[0:3], s33 offset:4 ; 4-byte Folded Reload @@ -407,9 +407,9 @@ ; GFX9-O3-NEXT: v_add_u32_e32 v1, v1, v2 ; GFX9-O3-NEXT: s_mov_b64 exec, s[34:35] ; GFX9-O3-NEXT: v_mov_b32_e32 v0, v1 +; GFX9-O3-NEXT: v_readlane_b32 s30, v3, 0 ; GFX9-O3-NEXT: buffer_store_dword v0, off, s[4:7], 0 offset:4 ; GFX9-O3-NEXT: v_readlane_b32 s31, v3, 1 -; GFX9-O3-NEXT: v_readlane_b32 s30, v3, 0 ; GFX9-O3-NEXT: s_xor_saveexec_b64 s[34:35], -1 ; GFX9-O3-NEXT: buffer_load_dword v3, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX9-O3-NEXT: buffer_load_dword v2, off, s[0:3], s33 offset:4 ; 4-byte Folded Reload @@ -596,8 +596,8 @@ ; GFX9-O0-NEXT: v_mov_b32_e32 v1, v3 ; GFX9-O0-NEXT: s_mov_b32 s34, 0 ; GFX9-O0-NEXT: buffer_store_dwordx2 v[0:1], off, s[36:39], s34 offset:4 -; GFX9-O0-NEXT: v_readlane_b32 s31, v10, 1 ; GFX9-O0-NEXT: v_readlane_b32 s30, v10, 0 +; GFX9-O0-NEXT: v_readlane_b32 s31, v10, 1 ; GFX9-O0-NEXT: s_xor_saveexec_b64 s[34:35], -1 ; GFX9-O0-NEXT: buffer_load_dword v10, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX9-O0-NEXT: s_nop 0 @@ -668,9 +668,9 @@ ; GFX9-O3-NEXT: s_mov_b64 exec, s[38:39] ; GFX9-O3-NEXT: v_mov_b32_e32 v0, v2 ; GFX9-O3-NEXT: v_mov_b32_e32 v1, v3 +; GFX9-O3-NEXT: v_readlane_b32 s30, v8, 0 ; GFX9-O3-NEXT: buffer_store_dwordx2 v[0:1], off, s[4:7], 0 offset:4 ; GFX9-O3-NEXT: v_readlane_b32 s31, v8, 1 -; GFX9-O3-NEXT: v_readlane_b32 s30, v8, 0 ; GFX9-O3-NEXT: s_xor_saveexec_b64 s[34:35], -1 ; GFX9-O3-NEXT: buffer_load_dword v8, off, s[0:3], s33 ; 4-byte Folded Reload ; GFX9-O3-NEXT: s_nop 0 diff --git a/llvm/test/DebugInfo/AMDGPU/cfi.ll b/llvm/test/DebugInfo/AMDGPU/cfi.ll --- a/llvm/test/DebugInfo/AMDGPU/cfi.ll +++ b/llvm/test/DebugInfo/AMDGPU/cfi.ll @@ -1,10 +1,10 @@ ; RUN: llc -mcpu=gfx900 -mtriple=amdgcn-amd-amdhsa -filetype=obj -o - %s | llvm-dwarfdump -debug-frame - | FileCheck %s ; CHECK: .debug_frame contents: -; CHECK: 00000000 0000000c ffffffff CIE +; CHECK: 00000000 0000001c ffffffff CIE ; CHECK-NEXT: Format: DWARF32 ; CHECK-NEXT: Version: 4 -; CHECK-NEXT: Augmentation: "" +; CHECK-NEXT: Augmentation: "[llvm:v0.0]" ; CHECK-NEXT: Address size: 8 ; CHECK-NEXT: Segment desc size: 0 ; CHECK-NEXT: Code alignment factor: 4 @@ -12,9 +12,17 @@ ; CHECK-NEXT: Return address column: 16 ; CHECK-EMPTY: ; CHECK: DW_CFA_nop: +; CHECK: DW_CFA_nop: +; CHECK: DW_CFA_nop: +; CHECK: DW_CFA_nop: +; CHECK: DW_CFA_nop: +; CHECK: DW_CFA_nop: ; CHECK-EMPTY: -; CHECK: 00000010 {{[0-9]+}} 00000000 FDE cie=00000000 pc=00000000...{{[0-9]+}} +; CHECK: 00000020 {{[0-9]+}} 00000000 FDE cie=00000000 pc=00000000...{{[0-9]+}} ; CHECK-NEXT: Format: DWARF32 +; CHECK-NEXT: DW_CFA_LLVM_def_aspace_cfa: SGPR32_LO16 +0 in addrspace6 +; CHECK-NEXT: DW_CFA_expression: PC_REG DW_OP_regx SGPR30_LO16, DW_OP_piece 0x4, DW_OP_regx SGPR31_LO16, DW_OP_piece 0x4 +; CHECK-NEXT: DW_CFA_nop: ; CHECK-EMPTY: ; CHECK: .eh_frame contents: ; CHECK-NOT: CIE diff --git a/llvm/test/DebugInfo/AMDGPU/cu-augmentation.ll b/llvm/test/DebugInfo/AMDGPU/cu-augmentation.ll new file mode 100644 --- /dev/null +++ b/llvm/test/DebugInfo/AMDGPU/cu-augmentation.ll @@ -0,0 +1,21 @@ +; RUN: llc -mcpu=gfx900 -mtriple=amdgcn-amd-amdhsa -filetype=obj -o - %s | llvm-dwarfdump --debug-info - | FileCheck %s + +; CHECK: DW_TAG_compile_unit +; CHECK: DW_AT_LLVM_augmentation ("[llvm:v0.0]") +; CHECK: DW_TAG_subprogram +define void @func() #0 !dbg !4 { + ret void +} + +attributes #0 = { nounwind } + +!llvm.module.flags = !{!0, !1} +!llvm.dbg.cu = !{!2} + +!0 = !{i32 2, !"Dwarf Version", i32 4} +!1 = !{i32 2, !"Debug Info Version", i32 3} +!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, emissionKind: FullDebug) +!3 = !DIFile(filename: "file", directory: "dir") +!4 = distinct !DISubprogram(name: "func", scope: !3, file: !3, line: 0, type: !5, scopeLine: 0, unit: !2) +!5 = !DISubroutineType(types: !6) +!6 = !{} diff --git a/llvm/test/MC/ELF/AMDGPU/cfi.s b/llvm/test/MC/ELF/AMDGPU/cfi.s --- a/llvm/test/MC/ELF/AMDGPU/cfi.s +++ b/llvm/test/MC/ELF/AMDGPU/cfi.s @@ -16,14 +16,15 @@ # READELF: Section Headers: # READELF: Name Type Address Off Size ES Flg Lk Inf Al -# READELF: .debug_frame PROGBITS 0000000000000000 000048 000028 00 0 0 8 +# READELF: .debug_frame PROGBITS 0000000000000000 000048 000038 00 0 0 8 -# READELF: Relocation section '.rela.debug_frame' at offset 0xd0 contains 2 entries: +# READELF: Relocation section '.rela.debug_frame' at offset 0xe0 contains 2 entries: # READELF-NEXT: Offset Info Type Symbol's Value Symbol's Name + Addend -# READELF-NEXT: 0000000000000014 0000000300000006 R_AMDGPU_ABS32 0000000000000000 .debug_frame + 0 -# READELF-NEXT: 0000000000000018 0000000100000003 R_AMDGPU_ABS64 0000000000000000 .text + 0 +# READELF-NEXT: 0000000000000024 0000000300000006 R_AMDGPU_ABS32 0000000000000000 .debug_frame + 0 +# READELF-NEXT: 0000000000000028 0000000100000003 R_AMDGPU_ABS64 0000000000000000 .text + 0 # READELF: Hex dump of section '.debug_frame': -# READELF-NEXT: 0x00000000 0c000000 ffffffff 04000800 04041000 ................ -# READELF-NEXT: 0x00000010 14000000 00000000 00000000 00000000 ................ -# READELF-NEXT: 0x00000020 04000000 00000000 ........ +# READELF-NEXT: 0x00000000 1c000000 ffffffff 045b6c6c 766d3a76 .........[llvm:v +# READELF-NEXT: 0x00000010 302e305d 00080004 04100000 00000000 0.0]............ +# READELF-NEXT: 0x00000020 14000000 00000000 00000000 00000000 ................ +# READELF-NEXT: 0x00000030 04000000 00000000 ........