mesa: remove code for old (mostly unsupported) GL_NV_point_sprite

Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7956>
This commit is contained in:
Marek Olšák
2020-12-05 12:03:42 -05:00
committed by Marge Bot
parent 8f11b848c3
commit 0ef61a162a
15 changed files with 42 additions and 90 deletions

View File

@@ -1,5 +1,6 @@
GL_EXT_demote_to_helper_invocation on radeonsi
EGL_MESA_platform_xcb
Removed GL_NV_point_sprite for classic swrast.
driconf: remove glx_disable_oml_sync_control, glx_disable_sgi_video_sync, and glx_disable_ext_buffer_age
Removed support for loading DRI drivers older than Mesa 8.0, including all DRI1 support
Add support for VK_VALVE_mutable_descriptor_type on RADV

View File

@@ -630,7 +630,6 @@ static void r200PointParameter( struct gl_context *ctx, GLenum pname, const GLfl
/* don't support multisampling, so doesn't matter. */
break;
/* can't do these but don't need them.
case GL_POINT_SPRITE_R_MODE_NV:
case GL_POINT_SPRITE_COORD_ORIGIN: */
default:
fprintf(stderr, "bad pname parameter in r200PointParameter\n");

View File

@@ -388,9 +388,9 @@ pop_enable_group(struct gl_context *ctx, const struct gl_enable_attrib_node *ena
GL_RASTER_POSITION_UNCLIPPED_IBM);
TEST_AND_UPDATE(ctx->Point.SmoothFlag, enable->PointSmooth,
GL_POINT_SMOOTH);
if (ctx->Extensions.NV_point_sprite || ctx->Extensions.ARB_point_sprite) {
if (ctx->Extensions.ARB_point_sprite) {
TEST_AND_UPDATE(ctx->Point.PointSprite, enable->PointSprite,
GL_POINT_SPRITE_NV);
GL_POINT_SPRITE);
}
TEST_AND_UPDATE(ctx->Polygon.OffsetPoint, enable->PolygonOffsetPoint,
GL_POLYGON_OFFSET_POINT);
@@ -970,7 +970,7 @@ _mesa_PopAttrib(void)
TEST_AND_CALL1_SEL(Point.MaxSize, PointParameterf, GL_POINT_SIZE_MAX_EXT);
TEST_AND_CALL1_SEL(Point.Threshold, PointParameterf, GL_POINT_FADE_THRESHOLD_SIZE_EXT);
}
if (ctx->Extensions.NV_point_sprite || ctx->Extensions.ARB_point_sprite) {
if (ctx->Extensions.ARB_point_sprite) {
if (ctx->Point.CoordReplace != attr->Point.CoordReplace) {
ctx->NewState |= _NEW_POINT;
ctx->Point.CoordReplace = attr->Point.CoordReplace;
@@ -988,9 +988,7 @@ _mesa_PopAttrib(void)
}
}
TEST_AND_UPDATE(ctx->Point.PointSprite, attr->Point.PointSprite,
GL_POINT_SPRITE_NV);
if (ctx->Extensions.NV_point_sprite)
TEST_AND_CALL1_SEL(Point.SpriteRMode, PointParameteri, GL_POINT_SPRITE_R_MODE_NV);
GL_POINT_SPRITE);
if ((ctx->API == API_OPENGL_COMPAT && ctx->Version >= 20)
|| ctx->API == API_OPENGL_CORE)

View File

@@ -3783,7 +3783,7 @@ save_PointParameterfEXT(GLenum pname, GLfloat param)
}
static void GLAPIENTRY
save_PointParameteriNV(GLenum pname, GLint param)
save_PointParameteri(GLenum pname, GLint param)
{
GLfloat parray[3];
parray[0] = (GLfloat) param;
@@ -3792,7 +3792,7 @@ save_PointParameteriNV(GLenum pname, GLint param)
}
static void GLAPIENTRY
save_PointParameterivNV(GLenum pname, const GLint * param)
save_PointParameteriv(GLenum pname, const GLint * param)
{
GLfloat parray[3];
parray[0] = (GLfloat) param[0];
@@ -14279,9 +14279,9 @@ _mesa_initialize_save_table(const struct gl_context *ctx)
SET_BindFragmentShaderATI(table, save_BindFragmentShaderATI);
SET_SetFragmentShaderConstantATI(table, save_SetFragmentShaderConstantATI);
/* 262. GL_NV_point_sprite */
SET_PointParameteri(table, save_PointParameteriNV);
SET_PointParameteriv(table, save_PointParameterivNV);
/* 262. GL_ARB_point_sprite */
SET_PointParameteri(table, save_PointParameteri);
SET_PointParameteriv(table, save_PointParameteriv);
/* 268. GL_EXT_stencil_two_side */
SET_ActiveStencilFaceEXT(table, save_ActiveStencilFaceEXT);

View File

@@ -1047,11 +1047,10 @@ _mesa_set_enable(struct gl_context *ctx, GLenum cap, GLboolean state)
ctx->Transform.RasterPositionUnclipped = state;
break;
/* GL_NV_point_sprite */
case GL_POINT_SPRITE_NV:
/* GL_ARB_point_sprite */
case GL_POINT_SPRITE:
if (!(ctx->API == API_OPENGL_COMPAT &&
(_mesa_has_ARB_point_sprite(ctx) ||
_mesa_has_NV_point_sprite(ctx))) &&
_mesa_has_ARB_point_sprite(ctx)) &&
!_mesa_has_OES_point_sprite(ctx))
goto invalid_enum_error;
if (ctx->Point.PointSprite == state)
@@ -1824,11 +1823,10 @@ _mesa_IsEnabled( GLenum cap )
goto invalid_enum_error;
return ctx->Transform.RasterPositionUnclipped;
/* GL_NV_point_sprite */
case GL_POINT_SPRITE_NV:
/* GL_ARB_point_sprite */
case GL_POINT_SPRITE:
if (!(ctx->API == API_OPENGL_COMPAT &&
(_mesa_has_ARB_point_sprite(ctx) ||
_mesa_has_NV_point_sprite(ctx))) &&
_mesa_has_ARB_point_sprite(ctx)) &&
!_mesa_has_OES_point_sprite(ctx))
goto invalid_enum_error;
return ctx->Point.PointSprite;

View File

@@ -180,7 +180,6 @@ _mesa_enable_sw_extensions(struct gl_context *ctx)
ctx->Extensions.EXT_vertex_array_bgra = GL_TRUE;
ctx->Extensions.MESA_ycbcr_texture = GL_TRUE;
ctx->Extensions.NV_conditional_render = GL_TRUE;
ctx->Extensions.NV_point_sprite = GL_TRUE;
ctx->Extensions.NV_texture_env_combine4 = GL_TRUE;
ctx->Extensions.NV_texture_rectangle = GL_TRUE;
ctx->Extensions.EXT_gpu_program_parameters = GL_TRUE;

View File

@@ -395,7 +395,6 @@ EXT(NV_image_formats , ARB_shader_image_load_store
EXT(NV_light_max_exponent , dummy_true , GLL, x , x , x , 1999)
EXT(NV_packed_depth_stencil , dummy_true , GLL, GLC, x , x , 2000)
EXT(NV_pixel_buffer_object , EXT_pixel_buffer_object , x , x , x , ES2, 2012)
EXT(NV_point_sprite , NV_point_sprite , GLL, GLC, x , x , 2001)
EXT(NV_primitive_restart , NV_primitive_restart , GLL, x , x , x , 2002)
EXT(NV_read_buffer , dummy_true , x , x , x , ES2, 2011)
EXT(NV_read_depth , dummy_true , x , x , x , ES2, 2011)

View File

@@ -498,7 +498,6 @@ EXTRA_EXT(ARB_texture_cube_map);
EXTRA_EXT(EXT_texture_array);
EXTRA_EXT(NV_fog_distance);
EXTRA_EXT(EXT_texture_filter_anisotropic);
EXTRA_EXT(NV_point_sprite);
EXTRA_EXT(NV_texture_rectangle);
EXTRA_EXT(EXT_stencil_two_side);
EXTRA_EXT(EXT_depth_bounds_test);
@@ -516,7 +515,7 @@ EXTRA_EXT(EXT_transform_feedback);
EXTRA_EXT(ARB_transform_feedback3);
EXTRA_EXT(EXT_pixel_buffer_object);
EXTRA_EXT(ARB_vertex_program);
EXTRA_EXT2(NV_point_sprite, ARB_point_sprite);
EXTRA_EXT(ARB_point_sprite);
EXTRA_EXT2(ARB_vertex_program, ARB_fragment_program);
EXTRA_EXT(ARB_color_buffer_float);
EXTRA_EXT(EXT_framebuffer_sRGB);

View File

@@ -247,7 +247,7 @@ descriptor=[
[ "TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB", "LOC_CUSTOM, TYPE_INT, NO_OFFSET, NO_EXTRA" ],
# GL_OES_point_sprite
[ "POINT_SPRITE_NV", "CONTEXT_BOOL(Point.PointSprite), extra_NV_point_sprite_ARB_point_sprite" ],
[ "POINT_SPRITE", "CONTEXT_BOOL(Point.PointSprite), extra_ARB_point_sprite" ],
]},
@@ -867,9 +867,8 @@ descriptor=[
# GL_IBM_rasterpos_clip
[ "RASTER_POSITION_UNCLIPPED_IBM", "CONTEXT_BOOL(Transform.RasterPositionUnclipped), NO_EXTRA" ],
# GL_NV_point_sprite
[ "POINT_SPRITE_R_MODE_NV", "CONTEXT_ENUM16(Point.SpriteRMode), extra_NV_point_sprite" ],
[ "POINT_SPRITE_COORD_ORIGIN", "CONTEXT_ENUM16(Point.SpriteOrigin), extra_NV_point_sprite_ARB_point_sprite" ],
# GL_ARB_point_sprite
[ "POINT_SPRITE_COORD_ORIGIN", "CONTEXT_ENUM16(Point.SpriteOrigin), extra_ARB_point_sprite" ],
# GL_NV_texture_rectangle
[ "TEXTURE_RECTANGLE_NV", "LOC_CUSTOM, TYPE_BOOLEAN, 0, extra_NV_texture_rectangle" ],

View File

@@ -259,7 +259,7 @@ _mesa_texenv_enum_to_count(GLenum pname)
case GL_RGB_SCALE:
case GL_ALPHA_SCALE:
case GL_TEXTURE_LOD_BIAS_EXT:
case GL_COORD_REPLACE_NV:
case GL_COORD_REPLACE:
return 1;
case GL_TEXTURE_ENV_COLOR:
return 4;
@@ -310,7 +310,6 @@ _mesa_point_param_enum_to_count(GLenum pname)
case GL_POINT_SIZE_MIN_EXT:
case GL_POINT_SIZE_MAX_EXT:
case GL_POINT_FADE_THRESHOLD_SIZE_EXT:
case GL_POINT_SPRITE_R_MODE_NV:
case GL_POINT_SPRITE_COORD_ORIGIN:
return 1;
default:

View File

@@ -782,7 +782,6 @@ struct gl_point_attrib
GLboolean _Attenuated; /**< True if Params != [1, 0, 0] */
GLboolean PointSprite; /**< GL_NV/ARB_point_sprite */
GLbitfield CoordReplace; /**< GL_ARB_point_sprite*/
GLenum16 SpriteRMode; /**< GL_NV_point_sprite (only!) */
GLenum16 SpriteOrigin; /**< GL_ARB_point_sprite */
};
@@ -4495,7 +4494,6 @@ struct gl_extensions
GLboolean NV_copy_image;
GLboolean NV_fill_rectangle;
GLboolean NV_fog_distance;
GLboolean NV_point_sprite;
GLboolean NV_primitive_restart;
GLboolean NV_shader_atomic_float;
GLboolean NV_shader_atomic_int64;
@@ -5023,7 +5021,7 @@ struct gl_enable_attrib_node
/* GL_ARB_fragment_program */
GLboolean FragmentProgram;
/* GL_ARB_point_sprite / GL_NV_point_sprite */
/* GL_ARB_point_sprite */
GLboolean PointSprite;
GLboolean FragmentShaderATI;

View File

@@ -117,9 +117,8 @@ _mesa_PointParameterfv( GLenum pname, const GLfloat *params)
* If point parameters aren't supported, then this function shouldn't even
* exist.
*/
assert(!(ctx->Extensions.ARB_point_sprite
|| ctx->Extensions.NV_point_sprite)
|| ctx->Extensions.EXT_point_parameters);
assert(!ctx->Extensions.ARB_point_sprite ||
ctx->Extensions.EXT_point_parameters);
if (!ctx->Extensions.EXT_point_parameters) {
_mesa_error(ctx, GL_INVALID_OPERATION,
@@ -170,29 +169,6 @@ _mesa_PointParameterfv( GLenum pname, const GLfloat *params)
FLUSH_VERTICES(ctx, _NEW_POINT);
ctx->Point.Threshold = params[0];
break;
case GL_POINT_SPRITE_R_MODE_NV:
/* This is one area where ARB_point_sprite and NV_point_sprite
* differ. In ARB_point_sprite the POINT_SPRITE_R_MODE is
* always ZERO. NV_point_sprite adds the S and R modes.
*/
if (_mesa_is_desktop_gl(ctx) && ctx->Extensions.NV_point_sprite) {
GLenum value = (GLenum) params[0];
if (value != GL_ZERO && value != GL_S && value != GL_R) {
_mesa_error(ctx, GL_INVALID_VALUE,
"glPointParameterf[v]{EXT,ARB}(param)");
return;
}
if (ctx->Point.SpriteRMode == value)
return;
FLUSH_VERTICES(ctx, _NEW_POINT);
ctx->Point.SpriteRMode = value;
}
else {
_mesa_error(ctx, GL_INVALID_ENUM,
"glPointParameterf[v]{EXT,ARB}(pname)");
return;
}
break;
case GL_POINT_SPRITE_COORD_ORIGIN:
/* GL_POINT_SPRITE_COORD_ORIGIN was added to point sprites when the
* extension was merged into OpenGL 2.0.
@@ -263,7 +239,6 @@ _mesa_init_point(struct gl_context *ctx)
ctx->Point.PointSprite = (ctx->API == API_OPENGL_CORE ||
ctx->API == API_OPENGLES2);
ctx->Point.SpriteRMode = GL_ZERO; /* GL_NV_point_sprite (only!) */
ctx->Point.SpriteOrigin = GL_UPPER_LEFT; /* GL_ARB_point_sprite */
ctx->Point.CoordReplace = 0; /* GL_ARB/NV_point_sprite */
ctx->Point.CoordReplace = 0; /* GL_ARB_point_sprite */
}

View File

@@ -398,7 +398,7 @@ _mesa_texenvfv_indexed( struct gl_context* ctx, GLuint texunit, GLenum target,
const GLint iparam0 = (GLint) param[0];
GLuint maxUnit;
maxUnit = (target == GL_POINT_SPRITE_NV && pname == GL_COORD_REPLACE_NV)
maxUnit = (target == GL_POINT_SPRITE && pname == GL_COORD_REPLACE)
? ctx->Const.MaxTextureCoordUnits : ctx->Const.MaxCombinedTextureImageUnits;
if (texunit >= maxUnit) {
_mesa_error(ctx, GL_INVALID_OPERATION, "glTexEnvfv(texunit=%d)", texunit);
@@ -477,14 +477,13 @@ _mesa_texenvfv_indexed( struct gl_context* ctx, GLuint texunit, GLenum target,
return;
}
}
else if (target == GL_POINT_SPRITE_NV) {
/* GL_ARB_point_sprite / GL_NV_point_sprite */
if (!ctx->Extensions.NV_point_sprite
&& !ctx->Extensions.ARB_point_sprite) {
else if (target == GL_POINT_SPRITE) {
/* GL_ARB_point_sprite */
if (!ctx->Extensions.ARB_point_sprite) {
_mesa_error( ctx, GL_INVALID_ENUM, "glTexEnv(target=0x%x)", target );
return;
}
if (pname == GL_COORD_REPLACE_NV) {
if (pname == GL_COORD_REPLACE) {
/* It's kind of weird to set point state via glTexEnv,
* but that's what the spec calls for.
*/
@@ -720,7 +719,7 @@ _mesa_gettexenvfv_indexed( GLuint texunit, GLenum target, GLenum pname, GLfloat
GLuint maxUnit;
GET_CURRENT_CONTEXT(ctx);
maxUnit = (target == GL_POINT_SPRITE_NV && pname == GL_COORD_REPLACE_NV)
maxUnit = (target == GL_POINT_SPRITE && pname == GL_COORD_REPLACE)
? ctx->Const.MaxTextureCoordUnits : ctx->Const.MaxCombinedTextureImageUnits;
if (texunit >= maxUnit) {
_mesa_error(ctx, GL_INVALID_OPERATION, "glGetTexEnvfv(texunit=%d)", texunit);
@@ -764,14 +763,13 @@ _mesa_gettexenvfv_indexed( GLuint texunit, GLenum target, GLenum pname, GLfloat
return;
}
}
else if (target == GL_POINT_SPRITE_NV) {
/* GL_ARB_point_sprite / GL_NV_point_sprite */
if (!ctx->Extensions.NV_point_sprite
&& !ctx->Extensions.ARB_point_sprite) {
else if (target == GL_POINT_SPRITE) {
/* GL_ARB_point_sprite */
if (!ctx->Extensions.ARB_point_sprite) {
_mesa_error( ctx, GL_INVALID_ENUM, "glGetTexEnvfv(target)" );
return;
}
if (pname == GL_COORD_REPLACE_NV) {
if (pname == GL_COORD_REPLACE) {
if (ctx->Point.CoordReplace & (1u << texunit))
*params = 1.0f;
else
@@ -796,7 +794,7 @@ _mesa_gettexenviv_indexed( GLuint texunit, GLenum target,
GLuint maxUnit;
GET_CURRENT_CONTEXT(ctx);
maxUnit = (target == GL_POINT_SPRITE_NV && pname == GL_COORD_REPLACE_NV)
maxUnit = (target == GL_POINT_SPRITE && pname == GL_COORD_REPLACE)
? ctx->Const.MaxTextureCoordUnits : ctx->Const.MaxCombinedTextureImageUnits;
if (texunit >= maxUnit) {
_mesa_error(ctx, GL_INVALID_OPERATION, "glGetTexEnviv(texunit=%d)",
@@ -841,14 +839,13 @@ _mesa_gettexenviv_indexed( GLuint texunit, GLenum target,
return;
}
}
else if (target == GL_POINT_SPRITE_NV) {
/* GL_ARB_point_sprite / GL_NV_point_sprite */
if (!ctx->Extensions.NV_point_sprite
&& !ctx->Extensions.ARB_point_sprite) {
else if (target == GL_POINT_SPRITE) {
/* GL_ARB_point_sprite */
if (!ctx->Extensions.ARB_point_sprite) {
_mesa_error( ctx, GL_INVALID_ENUM, "glGetTexEnviv(target)" );
return;
}
if (pname == GL_COORD_REPLACE_NV) {
if (pname == GL_COORD_REPLACE) {
if (ctx->Point.CoordReplace & (1u << texunit))
*params = GL_TRUE;
else

View File

@@ -820,8 +820,6 @@ void st_init_extensions(struct pipe_screen *screen,
{ o(NV_viewport_array2), PIPE_CAP_VIEWPORT_MASK },
{ o(NV_viewport_swizzle), PIPE_CAP_VIEWPORT_SWIZZLE },
{ o(NVX_gpu_memory_info), PIPE_CAP_QUERY_MEMORY_INFO },
/* GL_NV_point_sprite is not supported by gallium because we don't
* support the GL_POINT_SPRITE_R_MODE_NV option. */
{ o(OES_standard_derivatives), PIPE_CAP_FRAGMENT_SHADER_DERIVATIVES },
{ o(OES_texture_float_linear), PIPE_CAP_TEXTURE_FLOAT_LINEAR },

View File

@@ -120,7 +120,7 @@ sprite_point(struct gl_context *ctx, const SWvertex *vert)
span.attrStepY[VARYING_SLOT_POS][3] = 0.0F;
{
GLfloat s, r, dsdx;
GLfloat s, dsdx;
/* texcoord / pointcoord interpolants */
s = 0.0F;
@@ -143,16 +143,9 @@ sprite_point(struct gl_context *ctx, const SWvertex *vert)
if (ctx->Point.CoordReplace & (1u << u)) {
tCoords[numTcoords++] = attr;
if (ctx->Point.SpriteRMode == GL_ZERO)
r = 0.0F;
else if (ctx->Point.SpriteRMode == GL_S)
r = vert->attrib[attr][0];
else /* GL_R */
r = vert->attrib[attr][2];
span.attrStart[attr][0] = s;
span.attrStart[attr][1] = 0.0; /* overwritten below */
span.attrStart[attr][2] = r;
span.attrStart[attr][2] = 0.0;
span.attrStart[attr][3] = 1.0;
span.attrStepX[attr][0] = dsdx;