[llvm] [AMDGPUSwLowerLDS] Fix non-deterministic global ordering (PR #226184)

Nikita Popov via llvm-commits llvm-commits at lists.llvm.org
Thu Sep 24 08:06:50 PDT 2026


https://github.com/nikic created https://github.com/llvm/llvm-project/pull/226184

Ran into this when generated UTC checks kept changing order.

>From 0dac5dd75a44a381e2cea44a7f052e5f2e7a8b44 Mon Sep 17 00:00:00 2001
From: Nikita Popov <npopov at redhat.com>
Date: Thu, 24 Sep 2026 16:46:40 +0200
Subject: [PATCH] [AMDGPUSwLowerLDS] Fix non-deterministic global ordering

Ran into this when generated UTC checks kept changing order.
---
 llvm/lib/Target/AMDGPU/AMDGPUSwLowerLDS.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/llvm/lib/Target/AMDGPU/AMDGPUSwLowerLDS.cpp b/llvm/lib/Target/AMDGPU/AMDGPUSwLowerLDS.cpp
index b11329e5ef6bc..823612d5d7505 100644
--- a/llvm/lib/Target/AMDGPU/AMDGPUSwLowerLDS.cpp
+++ b/llvm/lib/Target/AMDGPU/AMDGPUSwLowerLDS.cpp
@@ -158,7 +158,7 @@ struct AsanInstrumentInfo {
 };
 
 struct FunctionsAndLDSAccess {
-  DenseMap<Function *, KernelLDSParameters> KernelToLDSParametersMap;
+  MapVector<Function *, KernelLDSParameters> KernelToLDSParametersMap;
   SetVector<Function *> KernelsWithIndirectLDSAccess;
   SetVector<Function *> NonKernelsWithLDSArgument;
   SetVector<GlobalVariable *> AllNonKernelLDSAccess;



More information about the llvm-commits mailing list