From ef87cb6635cf0ecb3272020f43fbf1ed3c86cdfe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nathan=20Gau=C3=ABr?= Date: Wed, 19 Nov 2025 17:51:14 +0100 Subject: [PATCH] [HLSL] replace std::unordered_map with DenseMap Broke some builds because of a missing include. Changing to a DenseMap and adding the missing include. --- clang/lib/CodeGen/CGHLSLRuntime.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/clang/lib/CodeGen/CGHLSLRuntime.cpp b/clang/lib/CodeGen/CGHLSLRuntime.cpp index 0371af417bdab..9403d26576eb0 100644 --- a/clang/lib/CodeGen/CGHLSLRuntime.cpp +++ b/clang/lib/CodeGen/CGHLSLRuntime.cpp @@ -27,6 +27,7 @@ #include "clang/AST/Type.h" #include "clang/Basic/TargetOptions.h" #include "clang/Frontend/FrontendDiagnostic.h" +#include "llvm/ADT/DenseMap.h" #include "llvm/ADT/ScopeExit.h" #include "llvm/ADT/SmallString.h" #include "llvm/ADT/SmallVector.h" @@ -905,7 +906,7 @@ void CGHLSLRuntime::emitEntryFunction(const FunctionDecl *FD, OB.emplace_back("convergencectrl", bundleArgs); } - std::unordered_map OutputSemantic; + llvm::DenseMap OutputSemantic; unsigned SRetOffset = 0; for (const auto &Param : Fn->args()) { @@ -913,7 +914,7 @@ void CGHLSLRuntime::emitEntryFunction(const FunctionDecl *FD, SRetOffset = 1; llvm::Type *VarType = Param.getParamStructRetType(); llvm::Value *Var = B.CreateAlloca(VarType); - OutputSemantic.emplace(FD, Var); + OutputSemantic.try_emplace(FD, Var); Args.push_back(Var); continue; } @@ -949,7 +950,7 @@ void CGHLSLRuntime::emitEntryFunction(const FunctionDecl *FD, CI->setCallingConv(Fn->getCallingConv()); if (Fn->getReturnType() != CGM.VoidTy) - OutputSemantic.emplace(FD, CI); + OutputSemantic.try_emplace(FD, CI); for (auto &[Decl, Source] : OutputSemantic) { AllocaInst *AI = dyn_cast(Source);