Skip to content

Commit 0bd8d30

Browse files
committed
reland fix: rename Filter to SamplerFilter
- there were many compilations failures when using gcc due to naming ambiguity of using Filter Filter in StaticSampler - this commit removes the ambiguity by renaming Filter to SamplerFilter - this fix has been verified locally using both clang and gcc for compilation of commit
1 parent d050e0c commit 0bd8d30

File tree

4 files changed

+10
-9
lines changed

4 files changed

+10
-9
lines changed

clang/include/clang/Parse/ParseHLSLRootSignature.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ class RootSignatureParser {
111111

112112
struct ParsedStaticSamplerParams {
113113
std::optional<llvm::hlsl::rootsig::Register> Reg;
114-
std::optional<llvm::hlsl::rootsig::Filter> Filter;
114+
std::optional<llvm::hlsl::rootsig::SamplerFilter> Filter;
115115
std::optional<llvm::hlsl::rootsig::TextureAddressMode> AddressU;
116116
std::optional<llvm::hlsl::rootsig::TextureAddressMode> AddressV;
117117
std::optional<llvm::hlsl::rootsig::TextureAddressMode> AddressW;
@@ -133,7 +133,7 @@ class RootSignatureParser {
133133

134134
/// Parsing methods of various enums
135135
std::optional<llvm::hlsl::rootsig::ShaderVisibility> parseShaderVisibility();
136-
std::optional<llvm::hlsl::rootsig::Filter> parseFilter();
136+
std::optional<llvm::hlsl::rootsig::SamplerFilter> parseSamplerFilter();
137137
std::optional<llvm::hlsl::rootsig::TextureAddressMode>
138138
parseTextureAddressMode();
139139
std::optional<llvm::hlsl::rootsig::ComparisonFunc> parseComparisonFunc();

clang/lib/Parse/ParseHLSLRootSignature.cpp

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -710,7 +710,7 @@ RootSignatureParser::parseStaticSamplerParams() {
710710
if (consumeExpectedToken(TokenKind::pu_equal))
711711
return std::nullopt;
712712

713-
auto Filter = parseFilter();
713+
auto Filter = parseSamplerFilter();
714714
if (!Filter.has_value())
715715
return std::nullopt;
716716
Params.Filter = Filter;
@@ -1009,7 +1009,8 @@ RootSignatureParser::parseShaderVisibility() {
10091009
return std::nullopt;
10101010
}
10111011

1012-
std::optional<llvm::hlsl::rootsig::Filter> RootSignatureParser::parseFilter() {
1012+
std::optional<llvm::hlsl::rootsig::SamplerFilter>
1013+
RootSignatureParser::parseSamplerFilter() {
10131014
assert(CurToken.TokKind == TokenKind::pu_equal &&
10141015
"Expects to only be invoked starting at given keyword");
10151016

@@ -1024,7 +1025,7 @@ std::optional<llvm::hlsl::rootsig::Filter> RootSignatureParser::parseFilter() {
10241025
switch (CurToken.TokKind) {
10251026
#define FILTER_ENUM(NAME, LIT) \
10261027
case TokenKind::en_##NAME: \
1027-
return Filter::NAME; \
1028+
return SamplerFilter::NAME; \
10281029
break;
10291030
#include "clang/Lex/HLSLRootSignatureTokenKinds.def"
10301031
default:

clang/unittests/Parse/ParseHLSLRootSignatureTest.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -258,7 +258,7 @@ TEST_F(ParseHLSLRootSignatureTest, ValidParseStaticSamplerTest) {
258258
ASSERT_TRUE(std::holds_alternative<StaticSampler>(Elem));
259259
ASSERT_EQ(std::get<StaticSampler>(Elem).Reg.ViewType, RegisterType::SReg);
260260
ASSERT_EQ(std::get<StaticSampler>(Elem).Reg.Number, 0u);
261-
ASSERT_EQ(std::get<StaticSampler>(Elem).Filter, Filter::Anisotropic);
261+
ASSERT_EQ(std::get<StaticSampler>(Elem).Filter, SamplerFilter::Anisotropic);
262262
ASSERT_EQ(std::get<StaticSampler>(Elem).AddressU, TextureAddressMode::Wrap);
263263
ASSERT_EQ(std::get<StaticSampler>(Elem).AddressV, TextureAddressMode::Wrap);
264264
ASSERT_EQ(std::get<StaticSampler>(Elem).AddressW, TextureAddressMode::Wrap);
@@ -278,7 +278,7 @@ TEST_F(ParseHLSLRootSignatureTest, ValidParseStaticSamplerTest) {
278278
ASSERT_EQ(std::get<StaticSampler>(Elem).Reg.ViewType, RegisterType::SReg);
279279
ASSERT_EQ(std::get<StaticSampler>(Elem).Reg.Number, 0u);
280280
ASSERT_EQ(std::get<StaticSampler>(Elem).Filter,
281-
Filter::MaximumMinPointMagLinearMipPoint);
281+
SamplerFilter::MaximumMinPointMagLinearMipPoint);
282282
ASSERT_EQ(std::get<StaticSampler>(Elem).AddressU, TextureAddressMode::Mirror);
283283
ASSERT_EQ(std::get<StaticSampler>(Elem).AddressV, TextureAddressMode::Border);
284284
ASSERT_EQ(std::get<StaticSampler>(Elem).AddressW, TextureAddressMode::Clamp);

llvm/include/llvm/Frontend/HLSL/HLSLRootSignature.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ enum class ShaderVisibility {
8282

8383
// D3D12_FILTER enumeration:
8484
// https://learn.microsoft.com/en-us/windows/win32/api/d3d12/ne-d3d12-d3d12_filter
85-
enum class Filter {
85+
enum class SamplerFilter {
8686
MinMagMipPoint = 0,
8787
MinMagPointMipLinear = 0x1,
8888
MinPointMagLinearMipPoint = 0x4,
@@ -230,7 +230,7 @@ LLVM_ABI raw_ostream &operator<<(raw_ostream &OS,
230230

231231
struct StaticSampler {
232232
Register Reg;
233-
Filter Filter = Filter::Anisotropic;
233+
SamplerFilter Filter = SamplerFilter::Anisotropic;
234234
TextureAddressMode AddressU = TextureAddressMode::Wrap;
235235
TextureAddressMode AddressV = TextureAddressMode::Wrap;
236236
TextureAddressMode AddressW = TextureAddressMode::Wrap;

0 commit comments

Comments
 (0)