For the series: Reviewed-By: Gert Wollny <gw.foss...@gmail.com>
On 11.11.2017 03:40, Brian Paul wrote: > To get rid of forward declaration. > --- > src/mesa/state_tracker/st_context.c | 123 > ++++++++++++++++++------------------ > 1 file changed, 62 insertions(+), 61 deletions(-) > > diff --git a/src/mesa/state_tracker/st_context.c > b/src/mesa/state_tracker/st_context.c > index 8abf879..c52f42b 100644 > --- a/src/mesa/state_tracker/st_context.c > +++ b/src/mesa/state_tracker/st_context.c > @@ -286,7 +286,68 @@ st_destroy_context_priv(struct st_context *st, bool > destroy_pipe) > free( st ); > } > > -static void st_init_driver_flags(struct st_context *st); > + > +static void st_init_driver_flags(struct st_context *st) > +{ > + struct gl_driver_flags *f = &st->ctx->DriverFlags; > + > + f->NewArray = ST_NEW_VERTEX_ARRAYS; > + f->NewRasterizerDiscard = ST_NEW_RASTERIZER; > + f->NewTileRasterOrder = ST_NEW_RASTERIZER; > + f->NewUniformBuffer = ST_NEW_UNIFORM_BUFFER; > + f->NewDefaultTessLevels = ST_NEW_TESS_STATE; > + > + /* Shader resources */ > + f->NewTextureBuffer = ST_NEW_SAMPLER_VIEWS; > + if (st->has_hw_atomics) > + f->NewAtomicBuffer = ST_NEW_HW_ATOMICS; > + else > + f->NewAtomicBuffer = ST_NEW_ATOMIC_BUFFER; > + f->NewShaderStorageBuffer = ST_NEW_STORAGE_BUFFER; > + f->NewImageUnits = ST_NEW_IMAGE_UNITS; > + > + f->NewShaderConstants[MESA_SHADER_VERTEX] = ST_NEW_VS_CONSTANTS; > + f->NewShaderConstants[MESA_SHADER_TESS_CTRL] = ST_NEW_TCS_CONSTANTS; > + f->NewShaderConstants[MESA_SHADER_TESS_EVAL] = ST_NEW_TES_CONSTANTS; > + f->NewShaderConstants[MESA_SHADER_GEOMETRY] = ST_NEW_GS_CONSTANTS; > + f->NewShaderConstants[MESA_SHADER_FRAGMENT] = ST_NEW_FS_CONSTANTS; > + f->NewShaderConstants[MESA_SHADER_COMPUTE] = ST_NEW_CS_CONSTANTS; > + > + f->NewWindowRectangles = ST_NEW_WINDOW_RECTANGLES; > + f->NewFramebufferSRGB = ST_NEW_FB_STATE; > + f->NewScissorRect = ST_NEW_SCISSOR; > + f->NewScissorTest = ST_NEW_SCISSOR | ST_NEW_RASTERIZER; > + f->NewAlphaTest = ST_NEW_DSA; > + f->NewBlend = ST_NEW_BLEND; > + f->NewBlendColor = ST_NEW_BLEND_COLOR; > + f->NewColorMask = ST_NEW_BLEND; > + f->NewDepth = ST_NEW_DSA; > + f->NewLogicOp = ST_NEW_BLEND; > + f->NewStencil = ST_NEW_DSA; > + f->NewMultisampleEnable = ST_NEW_BLEND | ST_NEW_RASTERIZER | > + ST_NEW_SAMPLE_MASK | ST_NEW_SAMPLE_SHADING; > + f->NewSampleAlphaToXEnable = ST_NEW_BLEND; > + f->NewSampleMask = ST_NEW_SAMPLE_MASK; > + f->NewSampleShading = ST_NEW_SAMPLE_SHADING; > + > + /* This depends on what the gallium driver wants. */ > + if (st->force_persample_in_shader) { > + f->NewMultisampleEnable |= ST_NEW_FS_STATE; > + f->NewSampleShading |= ST_NEW_FS_STATE; > + } else { > + f->NewSampleShading |= ST_NEW_RASTERIZER; > + } > + > + f->NewClipControl = ST_NEW_VIEWPORT | ST_NEW_RASTERIZER; > + f->NewClipPlane = ST_NEW_CLIP_STATE; > + f->NewClipPlaneEnable = ST_NEW_RASTERIZER; > + f->NewDepthClamp = ST_NEW_RASTERIZER; > + f->NewLineState = ST_NEW_RASTERIZER; > + f->NewPolygonState = ST_NEW_RASTERIZER; > + f->NewPolygonStipple = ST_NEW_POLY_STIPPLE; > + f->NewViewport = ST_NEW_VIEWPORT; > +} > + > > static struct st_context * > st_create_context_priv( struct gl_context *ctx, struct pipe_context *pipe, > @@ -489,66 +550,6 @@ st_create_context_priv( struct gl_context *ctx, struct > pipe_context *pipe, > return st; > } > > -static void st_init_driver_flags(struct st_context *st) > -{ > - struct gl_driver_flags *f = &st->ctx->DriverFlags; > - > - f->NewArray = ST_NEW_VERTEX_ARRAYS; > - f->NewRasterizerDiscard = ST_NEW_RASTERIZER; > - f->NewTileRasterOrder = ST_NEW_RASTERIZER; > - f->NewUniformBuffer = ST_NEW_UNIFORM_BUFFER; > - f->NewDefaultTessLevels = ST_NEW_TESS_STATE; > - > - /* Shader resources */ > - f->NewTextureBuffer = ST_NEW_SAMPLER_VIEWS; > - if (st->has_hw_atomics) > - f->NewAtomicBuffer = ST_NEW_HW_ATOMICS; > - else > - f->NewAtomicBuffer = ST_NEW_ATOMIC_BUFFER; > - f->NewShaderStorageBuffer = ST_NEW_STORAGE_BUFFER; > - f->NewImageUnits = ST_NEW_IMAGE_UNITS; > - > - f->NewShaderConstants[MESA_SHADER_VERTEX] = ST_NEW_VS_CONSTANTS; > - f->NewShaderConstants[MESA_SHADER_TESS_CTRL] = ST_NEW_TCS_CONSTANTS; > - f->NewShaderConstants[MESA_SHADER_TESS_EVAL] = ST_NEW_TES_CONSTANTS; > - f->NewShaderConstants[MESA_SHADER_GEOMETRY] = ST_NEW_GS_CONSTANTS; > - f->NewShaderConstants[MESA_SHADER_FRAGMENT] = ST_NEW_FS_CONSTANTS; > - f->NewShaderConstants[MESA_SHADER_COMPUTE] = ST_NEW_CS_CONSTANTS; > - > - f->NewWindowRectangles = ST_NEW_WINDOW_RECTANGLES; > - f->NewFramebufferSRGB = ST_NEW_FB_STATE; > - f->NewScissorRect = ST_NEW_SCISSOR; > - f->NewScissorTest = ST_NEW_SCISSOR | ST_NEW_RASTERIZER; > - f->NewAlphaTest = ST_NEW_DSA; > - f->NewBlend = ST_NEW_BLEND; > - f->NewBlendColor = ST_NEW_BLEND_COLOR; > - f->NewColorMask = ST_NEW_BLEND; > - f->NewDepth = ST_NEW_DSA; > - f->NewLogicOp = ST_NEW_BLEND; > - f->NewStencil = ST_NEW_DSA; > - f->NewMultisampleEnable = ST_NEW_BLEND | ST_NEW_RASTERIZER | > - ST_NEW_SAMPLE_MASK | ST_NEW_SAMPLE_SHADING; > - f->NewSampleAlphaToXEnable = ST_NEW_BLEND; > - f->NewSampleMask = ST_NEW_SAMPLE_MASK; > - f->NewSampleShading = ST_NEW_SAMPLE_SHADING; > - > - /* This depends on what the gallium driver wants. */ > - if (st->force_persample_in_shader) { > - f->NewMultisampleEnable |= ST_NEW_FS_STATE; > - f->NewSampleShading |= ST_NEW_FS_STATE; > - } else { > - f->NewSampleShading |= ST_NEW_RASTERIZER; > - } > - > - f->NewClipControl = ST_NEW_VIEWPORT | ST_NEW_RASTERIZER; > - f->NewClipPlane = ST_NEW_CLIP_STATE; > - f->NewClipPlaneEnable = ST_NEW_RASTERIZER; > - f->NewDepthClamp = ST_NEW_RASTERIZER; > - f->NewLineState = ST_NEW_RASTERIZER; > - f->NewPolygonState = ST_NEW_RASTERIZER; > - f->NewPolygonStipple = ST_NEW_POLY_STIPPLE; > - f->NewViewport = ST_NEW_VIEWPORT; > -} > > struct st_context *st_create_context(gl_api api, struct pipe_context *pipe, > const struct gl_config *visual, _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev