Skip to content

Commit e3e711f

Browse files
committed
pre-req: add keywords
1 parent a8a8eff commit e3e711f

File tree

2 files changed

+45
-1
lines changed

2 files changed

+45
-1
lines changed

clang/include/clang/Lex/HLSLRootSignatureTokenKinds.def

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,12 @@
5959
#ifndef TEXTURE_ADDRESS_MODE_ENUM
6060
#define TEXTURE_ADDRESS_MODE_ENUM(NAME, LIT) ENUM(NAME, LIT)
6161
#endif
62+
#ifndef COMPARISON_FUNC_ENUM
63+
#define COMPARISON_FUNC_ENUM(NAME, LIT) ENUM(NAME, LIT)
64+
#endif
65+
#ifndef STATIC_BORDER_COLOR_ENUM
66+
#define STATIC_BORDER_COLOR_ENUM(NAME, LIT) ENUM(NAME, LIT)
67+
#endif
6268

6369
// General Tokens:
6470
TOK(invalid, "invalid identifier")
@@ -113,6 +119,8 @@ KEYWORD(addressV)
113119
KEYWORD(addressW)
114120
KEYWORD(mipLODBias)
115121
KEYWORD(maxAnisotropy)
122+
KEYWORD(comparisonFunc)
123+
KEYWORD(borderColor)
116124
KEYWORD(minLOD)
117125
KEYWORD(maxLOD)
118126

@@ -203,6 +211,25 @@ TEXTURE_ADDRESS_MODE_ENUM(Clamp, "TEXTURE_ADDRESS_CLAMP")
203211
TEXTURE_ADDRESS_MODE_ENUM(Border, "TEXTURE_ADDRESS_BORDER")
204212
TEXTURE_ADDRESS_MODE_ENUM(MirrorOnce, "TEXTURE_ADDRESS_MIRRORONCE")
205213

214+
// Comparison Func Enums:
215+
COMPARISON_FUNC_ENUM(Never, "COMPARISON_NEVER")
216+
COMPARISON_FUNC_ENUM(Less, "COMPARISON_LESS")
217+
COMPARISON_FUNC_ENUM(Equal, "COMPARISON_EQUAL")
218+
COMPARISON_FUNC_ENUM(LessEqual, "COMPARISON_LESS_EQUAL")
219+
COMPARISON_FUNC_ENUM(Greater, "COMPARISON_GREATER")
220+
COMPARISON_FUNC_ENUM(NotEqual, "COMPARISON_NOT_EQUAL")
221+
COMPARISON_FUNC_ENUM(GreaterEqual, "COMPARISON_GREATER_EQUAL")
222+
COMPARISON_FUNC_ENUM(Always, "COMPARISON_ALWAYS")
223+
224+
// Static Border Color Enums:
225+
STATIC_BORDER_COLOR_ENUM(TransparentBlack, "STATIC_BORDER_COLOR_TRANSPARENT_BLACK")
226+
STATIC_BORDER_COLOR_ENUM(OpaqueBlack, "STATIC_BORDER_COLOR_OPAQUE_BLACK")
227+
STATIC_BORDER_COLOR_ENUM(OpaqueWhite, "STATIC_BORDER_COLOR_OPAQUE_WHITE")
228+
STATIC_BORDER_COLOR_ENUM(OpaqueBlackUint, "STATIC_BORDER_COLOR_OPAQUE_BLACK_UINT")
229+
STATIC_BORDER_COLOR_ENUM(OpaqueWhiteUint, "STATIC_BORDER_COLOR_OPAQUE_WHITE_UINT")
230+
231+
#undef STATIC_BORDER_COLOR_ENUM
232+
#undef COMPARISON_FUNC_ENUM
206233
#undef TEXTURE_ADDRESS_MODE_ENUM
207234
#undef FILTER_ENUM
208235
#undef SHADER_VISIBILITY_ENUM

clang/unittests/Lex/LexHLSLRootSignatureTest.cpp

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -137,7 +137,9 @@ TEST_F(LexHLSLRootSignatureTest, ValidLexAllTokensTest) {
137137
numDescriptors offset
138138
139139
filter addressU addressV addressW
140-
mipLODBias maxAnisotropy minLOD maxLOD
140+
mipLODBias maxAnisotropy
141+
comparisonFunc borderColor
142+
minLOD maxLOD
141143
142144
unbounded
143145
DESCRIPTOR_RANGE_OFFSET_APPEND
@@ -212,6 +214,21 @@ TEST_F(LexHLSLRootSignatureTest, ValidLexAllTokensTest) {
212214
TEXTURE_ADDRESS_CLAMP
213215
TEXTURE_ADDRESS_BORDER
214216
TEXTURE_ADDRESS_MIRRORONCE
217+
218+
comparison_never
219+
comparison_less
220+
comparison_equal
221+
comparison_less_equal
222+
comparison_greater
223+
comparison_not_equal
224+
comparison_greater_equal
225+
comparison_always
226+
227+
STATIC_BORDER_COLOR_TRANSPARENT_BLACK
228+
STATIC_BORDER_COLOR_OPAQUE_BLACK
229+
STATIC_BORDER_COLOR_OPAQUE_WHITE
230+
STATIC_BORDER_COLOR_OPAQUE_BLACK_UINT
231+
STATIC_BORDER_COLOR_OPAQUE_WHITE_UINT
215232
)cc";
216233
auto TokLoc = SourceLocation();
217234
hlsl::RootSignatureLexer Lexer(Source, TokLoc);

0 commit comments

Comments
 (0)