[clang] [llvm] [HLSL][Clang] Start emitting @llvm.structured.alloca (PR #190157)

Nathan Gauër via cfe-commits cfe-commits at lists.llvm.org
Wed Apr 15 08:25:41 PDT 2026


================
@@ -107,7 +107,12 @@ RawAddress
 CodeGenFunction::CreateTempAllocaWithoutCast(llvm::Type *Ty, CharUnits Align,
                                              const Twine &Name,
                                              llvm::Value *ArraySize) {
-  auto Alloca = CreateTempAlloca(Ty, Name, ArraySize);
+  if (getLangOpts().EmitLogicalPointer) {
+    auto Alloca = Builder.CreateStructuredAlloca(Ty, Name);
+    return RawAddress(Alloca, Ty, Align, KnownNonNull);
+  }
----------------
Keenuts wrote:

For this case, I think we should simply refuse alloca/gep in the backend at some point.

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


More information about the cfe-commits mailing list