[PATCH v2 0/4] MR426: hlsl: Miscellaneous cleanups.
-- v2: vkd3d-shader/hlsl: Consistently use HLSL allocation functions. vkd3d-shader/hlsl: Sort keywords. vkd3d-shader/hlsl: Remove C++ comment lexing. vkd3d-shader/hlsl: Remove some tokens from the lexer. https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/426
From: Zebediah Figura <zfigura(a)codeweavers.com> None of these currently have any meaning, and none of these can currently be parsed as distinct tokens either (i.e. they will generate a syntax error anyway). --- libs/vkd3d-shader/hlsl.l | 5 ----- libs/vkd3d-shader/hlsl.y | 5 ----- 2 files changed, 10 deletions(-) diff --git a/libs/vkd3d-shader/hlsl.l b/libs/vkd3d-shader/hlsl.l index 527d853a..d21d03bb 100644 --- a/libs/vkd3d-shader/hlsl.l +++ b/libs/vkd3d-shader/hlsl.l @@ -165,7 +165,6 @@ while {return KW_WHILE; } \<\<= {return OP_LEFTSHIFTASSIGN; } \>\> {return OP_RIGHTSHIFT; } \>\>= {return OP_RIGHTSHIFTASSIGN; } -\.\.\. {return OP_ELLIPSIS; } \<= {return OP_LE; } \>= {return OP_GE; } != {return OP_NE; } @@ -177,10 +176,6 @@ while {return KW_WHILE; } &= {return OP_ANDASSIGN; } \|= {return OP_ORASSIGN; } ^= {return OP_XORASSIGN; } -## {return OP_UNKNOWN1; } -#@ {return OP_UNKNOWN2; } -:: {return OP_UNKNOWN3; } -\-\> {return OP_UNKNOWN4; } column_major {return KW_COLUMN_MAJOR; } row_major {return KW_ROW_MAJOR; } diff --git a/libs/vkd3d-shader/hlsl.y b/libs/vkd3d-shader/hlsl.y index 5fd140fb..f26f81e8 100644 --- a/libs/vkd3d-shader/hlsl.y +++ b/libs/vkd3d-shader/hlsl.y @@ -4833,7 +4833,6 @@ static void check_duplicated_switch_cases(struct hlsl_ctx *ctx, const struct hls %token OP_LEFTSHIFTASSIGN %token OP_RIGHTSHIFT %token OP_RIGHTSHIFTASSIGN -%token OP_ELLIPSIS %token OP_LE %token OP_GE %token OP_NE @@ -4845,10 +4844,6 @@ static void check_duplicated_switch_cases(struct hlsl_ctx *ctx, const struct hls %token OP_ANDASSIGN %token OP_ORASSIGN %token OP_XORASSIGN -%token OP_UNKNOWN1 -%token OP_UNKNOWN2 -%token OP_UNKNOWN3 -%token OP_UNKNOWN4 %token <floatval> C_FLOAT -- GitLab https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/426
From: Zebediah Figura <zfigura(a)codeweavers.com> This is already handled by the preprocessor. --- libs/vkd3d-shader/hlsl.l | 3 --- 1 file changed, 3 deletions(-) diff --git a/libs/vkd3d-shader/hlsl.l b/libs/vkd3d-shader/hlsl.l index d21d03bb..80a2ee5d 100644 --- a/libs/vkd3d-shader/hlsl.l +++ b/libs/vkd3d-shader/hlsl.l @@ -53,7 +53,6 @@ RESERVED4 typename|union|unsigned|using|virtual WS [ \t] NEWLINE (\n)|(\r\n) -DOUBLESLASHCOMMENT "//"[^\n]* STRING \"[^\"]*\" IDENTIFIER [A-Za-z_][A-Za-z0-9_]* @@ -217,8 +216,6 @@ row_major {return KW_ROW_MAJOR; } return C_INTEGER; } -{DOUBLESLASHCOMMENT} {} - {WS}+ {} {NEWLINE} { struct hlsl_ctx *ctx = yyget_extra(yyscanner); -- GitLab https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/426
From: Zebediah Figura <zfigura(a)codeweavers.com> Done with `LC_ALL=C sort -f`. --- libs/vkd3d-shader/hlsl.l | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/libs/vkd3d-shader/hlsl.l b/libs/vkd3d-shader/hlsl.l index 80a2ee5d..727be1e0 100644 --- a/libs/vkd3d-shader/hlsl.l +++ b/libs/vkd3d-shader/hlsl.l @@ -75,6 +75,7 @@ Buffer {return KW_BUFFER; } case {return KW_CASE; } cbuffer {return KW_CBUFFER; } centroid {return KW_CENTROID; } +column_major {return KW_COLUMN_MAJOR; } compile {return KW_COMPILE; } const {return KW_CONST; } continue {return KW_CONTINUE; } @@ -104,9 +105,10 @@ pass {return KW_PASS; } PixelShader {return KW_PIXELSHADER; } precise {return KW_PRECISE; } RasterizerState {return KW_RASTERIZERSTATE; } +register {return KW_REGISTER; } RenderTargetView {return KW_RENDERTARGETVIEW; } return {return KW_RETURN; } -register {return KW_REGISTER; } +row_major {return KW_ROW_MAJOR; } RWBuffer {return KW_RWBUFFER; } RWStructuredBuffer {return KW_RWSTRUCTUREDBUFFER; } RWTexture1D {return KW_RWTEXTURE1D; } @@ -118,10 +120,10 @@ sampler {return KW_SAMPLER; } sampler1D {return KW_SAMPLER1D; } sampler2D {return KW_SAMPLER2D; } sampler3D {return KW_SAMPLER3D; } -samplerCUBE {return KW_SAMPLERCUBE; } -sampler_state {return KW_SAMPLER_STATE; } SamplerComparisonState {return KW_SAMPLERCOMPARISONSTATE;} +samplerCUBE {return KW_SAMPLERCUBE; } SamplerState {return KW_SAMPLER; } +sampler_state {return KW_SAMPLER_STATE; } shared {return KW_SHARED; } stateblock {return KW_STATEBLOCK; } stateblock_state {return KW_STATEBLOCK_STATE; } @@ -133,18 +135,18 @@ tbuffer {return KW_TBUFFER; } technique {return KW_TECHNIQUE; } technique10 {return KW_TECHNIQUE10; } texture {return KW_TEXTURE; } -texture1D {return KW_TEXTURE1D; } Texture1D {return KW_TEXTURE1D; } +texture1D {return KW_TEXTURE1D; } Texture1DArray {return KW_TEXTURE1DARRAY; } -texture2D {return KW_TEXTURE2D; } Texture2D {return KW_TEXTURE2D; } +texture2D {return KW_TEXTURE2D; } Texture2DArray {return KW_TEXTURE2DARRAY; } Texture2DMS {return KW_TEXTURE2DMS; } Texture2DMSArray {return KW_TEXTURE2DMSARRAY; } -texture3D {return KW_TEXTURE3D; } Texture3D {return KW_TEXTURE3D; } -textureCUBE {return KW_TEXTURECUBE; } +texture3D {return KW_TEXTURE3D; } TextureCube {return KW_TEXTURECUBE; } +textureCUBE {return KW_TEXTURECUBE; } TextureCubeArray {return KW_TEXTURECUBEARRAY; } true {return KW_TRUE; } typedef {return KW_TYPEDEF; } @@ -176,9 +178,6 @@ while {return KW_WHILE; } \|= {return OP_ORASSIGN; } ^= {return OP_XORASSIGN; } -column_major {return KW_COLUMN_MAJOR; } -row_major {return KW_ROW_MAJOR; } - {IDENTIFIER} { struct hlsl_ctx *ctx = yyget_extra(yyscanner); -- GitLab https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/426
From: Zebediah Figura <zfigura(a)codeweavers.com> --- libs/vkd3d-shader/hlsl.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libs/vkd3d-shader/hlsl.c b/libs/vkd3d-shader/hlsl.c index f56ecc90..02f08232 100644 --- a/libs/vkd3d-shader/hlsl.c +++ b/libs/vkd3d-shader/hlsl.c @@ -759,7 +759,7 @@ struct hlsl_type *hlsl_new_uav_type(struct hlsl_ctx *ctx, enum hlsl_sampler_dim { struct hlsl_type *type; - if (!(type = vkd3d_calloc(1, sizeof(*type)))) + if (!(type = hlsl_alloc(ctx, sizeof(*type)))) return NULL; type->class = HLSL_CLASS_OBJECT; type->base_type = HLSL_TYPE_UAV; @@ -1617,7 +1617,7 @@ static bool clone_block(struct hlsl_ctx *ctx, struct hlsl_block *dst_block, if (!list_empty(&src->uses)) { - if (!vkd3d_array_reserve((void **)&map->instrs, &map->capacity, map->count + 1, sizeof(*map->instrs))) + if (!hlsl_array_reserve(ctx, (void **)&map->instrs, &map->capacity, map->count + 1, sizeof(*map->instrs))) { hlsl_block_cleanup(dst_block); return false; -- GitLab https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/426
participants (2)
-
Zebediah Figura -
Zebediah Figura (@zfigura)