Skip to content

Commit a928e9d

Browse files
author
joaosaffran
committed
addressing comments
1 parent efe76aa commit a928e9d

File tree

4 files changed

+12
-28
lines changed

4 files changed

+12
-28
lines changed

llvm/include/llvm/MC/DXContainerRootSignature.h

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,7 @@ struct RootParameter {
1919
dxbc::RootParameterHeader Header;
2020
union {
2121
dxbc::RootConstants Constants;
22-
dxbc::RST0::v0::RootDescriptor Descriptor_V10;
23-
dxbc::RST0::v1::RootDescriptor Descriptor_V11;
22+
dxbc::RST0::v1::RootDescriptor Descriptor;
2423
};
2524
};
2625
struct RootSignatureDesc {

llvm/include/llvm/ObjectYAML/DXContainerYAML.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ struct RootParameterYamlDesc {
9595
uint32_t Type;
9696
uint32_t Visibility;
9797
uint32_t Offset;
98-
RootParameterYamlDesc() {};
98+
RootParameterYamlDesc(){};
9999
RootParameterYamlDesc(uint32_t T) : Type(T) {
100100
switch (T) {
101101

llvm/lib/MC/DXContainerRootSignature.cpp

Lines changed: 6 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -92,19 +92,13 @@ void RootSignatureDesc::write(raw_ostream &OS) const {
9292
case llvm::to_underlying(dxbc::RootParameterType::CBV):
9393
case llvm::to_underlying(dxbc::RootParameterType::SRV):
9494
case llvm::to_underlying(dxbc::RootParameterType::UAV):
95-
if (Version == 1) {
96-
support::endian::write(BOS, P.Descriptor_V10.ShaderRegister,
97-
llvm::endianness::little);
98-
support::endian::write(BOS, P.Descriptor_V10.RegisterSpace,
99-
llvm::endianness::little);
100-
} else {
101-
support::endian::write(BOS, P.Descriptor_V11.ShaderRegister,
102-
llvm::endianness::little);
103-
support::endian::write(BOS, P.Descriptor_V11.RegisterSpace,
104-
llvm::endianness::little);
105-
support::endian::write(BOS, P.Descriptor_V11.Flags,
95+
support::endian::write(BOS, P.Descriptor.ShaderRegister,
96+
llvm::endianness::little);
97+
support::endian::write(BOS, P.Descriptor.RegisterSpace,
98+
llvm::endianness::little);
99+
if (Version > 1)
100+
support::endian::write(BOS, P.Descriptor.Flags,
106101
llvm::endianness::little);
107-
}
108102
}
109103
}
110104
assert(Storage.size() == getSize());

llvm/lib/ObjectYAML/DXContainerEmitter.cpp

Lines changed: 4 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -287,19 +287,10 @@ void DXContainerWriter::writeParts(raw_ostream &OS) {
287287
case llvm::to_underlying(dxbc::RootParameterType::SRV):
288288
case llvm::to_underlying(dxbc::RootParameterType::UAV):
289289
case llvm::to_underlying(dxbc::RootParameterType::CBV):
290-
if (RS.Version == 1) {
291-
NewParam.Descriptor_V10.RegisterSpace =
292-
Param.Descriptor.RegisterSpace;
293-
NewParam.Descriptor_V10.ShaderRegister =
294-
Param.Descriptor.ShaderRegister;
295-
} else {
296-
NewParam.Descriptor_V11.RegisterSpace =
297-
Param.Descriptor.RegisterSpace;
298-
NewParam.Descriptor_V11.ShaderRegister =
299-
Param.Descriptor.ShaderRegister;
300-
NewParam.Descriptor_V11.Flags = Param.Descriptor.getEncodedFlags();
301-
}
302-
290+
NewParam.Descriptor.RegisterSpace = Param.Descriptor.RegisterSpace;
291+
NewParam.Descriptor.ShaderRegister = Param.Descriptor.ShaderRegister;
292+
if (P.RootSignature->Version > 1)
293+
NewParam.Descriptor.Flags = Param.Descriptor.getEncodedFlags();
303294
break;
304295
}
305296

0 commit comments

Comments
 (0)