[llvm-branch-commits] [clang] [llvm] [HLSL] Generate semantic signature metadata (PR #212892)
Justin Bogner via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Wed Aug 5 11:52:53 PDT 2026
================
@@ -101,6 +103,35 @@ void addRootSignatureMD(llvm::dxbc::RootSignatureVersion RootSigVer,
RootSignatureValMD->addOperand(MDVals);
}
+MDNode *buildSemanticSignatureMD(
+ ArrayRef<llvm::hlsl::SemanticSignatureElement> Elements, LLVMContext &Ctx) {
+ if (Elements.empty())
+ return nullptr;
+
+ SmallVector<Metadata *> ElementMD;
+ llvm::transform(Elements, std::back_inserter(ElementMD),
+ [&Ctx](const llvm::hlsl::SemanticSignatureElement &Element) {
+ return Element.toMetadata(Ctx);
+ });
----------------
bogner wrote:
I get the appeal of using `<algorithm>` when you can, but I feel like it's simpler in this case to just write the loop out
```suggestion
for (const llvm::hlsl::SemanticSignatureElement &Element : Elements)
ElementMD.push_back(Element.toMetadata(Ctx);
```
https://github.com/llvm/llvm-project/pull/212892
More information about the llvm-branch-commits
mailing list