[llvm] Move SI Lower Control Flow Up (PR #159557)

Patrick Simmons via llvm-commits llvm-commits at lists.llvm.org
Fri Dec 12 10:12:25 PST 2025


================
@@ -0,0 +1,261 @@
+#pragma once
+
+#include "GCNSubtarget.h"
+#include "MCTargetDesc/AMDGPUMCTargetDesc.h"
+#include "llvm/ADT/SmallVector.h"
+#include "llvm/CodeGen/MachineBasicBlock.h"
+#include "llvm/CodeGen/MachineInstr.h"
+#include "llvm/Support/ErrorHandling.h"
+
+#include "SIInstrInfo.h"
+
+#include <cassert>
+#include <unordered_set>
----------------
linuxrocks123 wrote:

I know LLVM likes its private pseudo-STL, but I like the fact that STL types are transparent when printing under GDB.  There are also a few footguns in the LLVM ADT, such as `ary[x] = ary[y];` being undefined behavior in DenseMap, which make me want to avoid using those types.  We can always change before merge after everything else is finalized if we want to, because I won't care at that point since I don't have to step through the code anymore.  I have an automated script that can do that.  We'll want to manually verify none of the footguns are loaded if we use it.

https://github.com/llvm/llvm-project/pull/159557


More information about the llvm-commits mailing list