New parts ISG1 and OSG1 are added but only support 0 parameter case.
2 uint32_t will be emited for empty program signature. 0 for parameter count and 8 for parameter offset.
This is enough for computer shader.
Paths
| Differential D141628
[DirectX backend] support empty program signature parts for compute shader Needs ReviewPublic Authored by python3kgae on Jan 12 2023, 12:44 PM.
Details
Diff Detail
Unit TestsFailed Event TimelineComment Actions All the other changes going into the DXContainer object and yaml support are aiming to be more full featured, and the object and yaml tooling changes are separate from the implementation change. Please follow that structure.
python3kgae marked an inline comment as done. Comment ActionsAdd test for new globals generated in DXContatinerGlobal pass.
Revision Contents
Diff 488865 llvm/include/llvm/BinaryFormat/DXContainer.h
llvm/include/llvm/BinaryFormat/DXContainerConstants.def
llvm/include/llvm/Object/DXContainer.h
llvm/include/llvm/ObjectYAML/DXContainerYAML.h
llvm/lib/Object/DXContainer.cpp
llvm/lib/ObjectYAML/DXContainerEmitter.cpp
llvm/lib/ObjectYAML/DXContainerYAML.cpp
llvm/lib/Target/DirectX/DXContainerGlobals.cpp
llvm/lib/Target/DirectX/DirectXTargetMachine.cpp
llvm/test/CodeGen/DirectX/ContainerData/EmptyProgramSignature.ll
llvm/test/tools/obj2yaml/DXContainer/EmptyProgramSignature.yaml
llvm/tools/obj2yaml/dxcontainer2yaml.cpp
|
nit: please add whitespace separating the members from the method.