diff --git a/src/mesa/main/blend.c b/src/mesa/main/blend.c index a950e3644e7..1bddae5707f 100644 --- a/src/mesa/main/blend.c +++ b/src/mesa/main/blend.c @@ -1210,7 +1210,7 @@ void _mesa_init_color( struct gl_context * ctx ) ctx->Color.DrawBuffer[0] = GL_FRONT; } - ctx->Color.ClampFragmentColor = ctx->API == API_OPENGL_COMPAT ? + ctx->Color.ClampFragmentColor = _mesa_is_desktop_gl_compat(ctx) ? GL_FIXED_ONLY_ARB : GL_FALSE; ctx->Color._ClampFragmentColor = GL_FALSE; ctx->Color.ClampReadColor = GL_FIXED_ONLY_ARB; diff --git a/src/mesa/main/buffers.c b/src/mesa/main/buffers.c index 13a0116a7f1..99a1146c3a7 100644 --- a/src/mesa/main/buffers.c +++ b/src/mesa/main/buffers.c @@ -731,7 +731,7 @@ updated_drawbuffers(struct gl_context *ctx, struct gl_framebuffer *fb) { FLUSH_VERTICES(ctx, _NEW_BUFFERS, GL_COLOR_BUFFER_BIT); - if (ctx->API == API_OPENGL_COMPAT && !ctx->Extensions.ARB_ES2_compatibility) { + if (_mesa_is_desktop_gl_compat(ctx) && !ctx->Extensions.ARB_ES2_compatibility) { /* Flag the FBO as requiring validation. */ if (_mesa_is_user_fbo(fb)) { fb->_Status = 0; diff --git a/src/mesa/main/context.c b/src/mesa/main/context.c index b61c237513b..4cf2394ba17 100644 --- a/src/mesa/main/context.c +++ b/src/mesa/main/context.c @@ -914,7 +914,7 @@ _mesa_initialize_dispatch_tables(struct gl_context *ctx) _mesa_init_dispatch_save(ctx); vbo_init_dispatch_begin_end(ctx); - if (ctx->API == API_OPENGL_COMPAT) + if (_mesa_is_desktop_gl_compat(ctx)) _mesa_init_dispatch_save_begin_end(ctx); } @@ -1403,7 +1403,7 @@ handle_first_current(struct gl_context *ctx) * context too. */ ctx->_AttribZeroAliasesVertex = (ctx->API == API_OPENGLES - || (ctx->API == API_OPENGL_COMPAT + || (_mesa_is_desktop_gl_compat(ctx) && !is_forward_compatible_context)); } diff --git a/src/mesa/main/enable.c b/src/mesa/main/enable.c index 22ca9a30f22..4d2e88f96b3 100644 --- a/src/mesa/main/enable.c +++ b/src/mesa/main/enable.c @@ -353,7 +353,7 @@ _mesa_set_multisample(struct gl_context *ctx, GLboolean state) /* GL compatibility needs Multisample.Enable to determine program state * constants. */ - if (ctx->API == API_OPENGL_COMPAT || ctx->API == API_OPENGLES) { + if (_mesa_is_desktop_gl_compat(ctx) || ctx->API == API_OPENGLES) { FLUSH_VERTICES(ctx, _NEW_MULTISAMPLE, GL_MULTISAMPLE_BIT | GL_ENABLE_BIT); } else { FLUSH_VERTICES(ctx, 0, GL_MULTISAMPLE_BIT | GL_ENABLE_BIT); @@ -457,7 +457,7 @@ _mesa_set_enable(struct gl_context *ctx, GLenum cap, GLboolean state) /* The compatibility profile needs _NEW_TRANSFORM to transform * clip planes according to the projection matrix. */ - if (ctx->API == API_OPENGL_COMPAT || ctx->API == API_OPENGLES) { + if (_mesa_is_desktop_gl_compat(ctx) || ctx->API == API_OPENGLES) { FLUSH_VERTICES(ctx, _NEW_TRANSFORM, GL_TRANSFORM_BIT | GL_ENABLE_BIT); } else { @@ -470,7 +470,7 @@ _mesa_set_enable(struct gl_context *ctx, GLenum cap, GLboolean state) /* The projection matrix transforms the clip plane. */ /* TODO: glEnable might not be the best place to do it. */ - if (ctx->API == API_OPENGL_COMPAT || ctx->API == API_OPENGLES) { + if (_mesa_is_desktop_gl_compat(ctx) || ctx->API == API_OPENGLES) { _mesa_update_clip_plane(ctx, p); ctx->NewDriverState |= ST_NEW_CLIP_STATE; } @@ -1061,7 +1061,7 @@ _mesa_set_enable(struct gl_context *ctx, GLenum cap, GLboolean state) /* GL_ARB_point_sprite */ case GL_POINT_SPRITE: - if (!(ctx->API == API_OPENGL_COMPAT && + if (!(_mesa_is_desktop_gl_compat(ctx) && _mesa_has_ARB_point_sprite(ctx)) && !_mesa_has_OES_point_sprite(ctx)) goto invalid_enum_error; @@ -1846,7 +1846,7 @@ _mesa_IsEnabled( GLenum cap ) /* GL_ARB_point_sprite */ case GL_POINT_SPRITE: - if (!(ctx->API == API_OPENGL_COMPAT && + if (!(_mesa_is_desktop_gl_compat(ctx) && _mesa_has_ARB_point_sprite(ctx)) && !_mesa_has_OES_point_sprite(ctx)) goto invalid_enum_error; diff --git a/src/mesa/main/fbobject.c b/src/mesa/main/fbobject.c index 34abce5899a..ad1d281d050 100644 --- a/src/mesa/main/fbobject.c +++ b/src/mesa/main/fbobject.c @@ -768,7 +768,7 @@ _mesa_is_legal_color_format(const struct gl_context *ctx, GLenum baseFormat) case GL_LUMINANCE_ALPHA: case GL_INTENSITY: case GL_ALPHA: - return ctx->API == API_OPENGL_COMPAT && + return _mesa_is_desktop_gl_compat(ctx) && ctx->Extensions.ARB_framebuffer_object; case GL_RED: case GL_RG: @@ -2342,14 +2342,14 @@ _mesa_base_fbo_format(const struct gl_context *ctx, GLenum internalFormat) case GL_ALPHA8: case GL_ALPHA12: case GL_ALPHA16: - return (ctx->API == API_OPENGL_COMPAT && + return (_mesa_is_desktop_gl_compat(ctx) && ctx->Extensions.ARB_framebuffer_object) ? GL_ALPHA : 0; case GL_LUMINANCE: case GL_LUMINANCE4: case GL_LUMINANCE8: case GL_LUMINANCE12: case GL_LUMINANCE16: - return (ctx->API == API_OPENGL_COMPAT && + return (_mesa_is_desktop_gl_compat(ctx) && ctx->Extensions.ARB_framebuffer_object) ? GL_LUMINANCE : 0; case GL_LUMINANCE_ALPHA: case GL_LUMINANCE4_ALPHA4: @@ -2358,14 +2358,14 @@ _mesa_base_fbo_format(const struct gl_context *ctx, GLenum internalFormat) case GL_LUMINANCE12_ALPHA4: case GL_LUMINANCE12_ALPHA12: case GL_LUMINANCE16_ALPHA16: - return (ctx->API == API_OPENGL_COMPAT && + return (_mesa_is_desktop_gl_compat(ctx) && ctx->Extensions.ARB_framebuffer_object) ? GL_LUMINANCE_ALPHA : 0; case GL_INTENSITY: case GL_INTENSITY4: case GL_INTENSITY8: case GL_INTENSITY12: case GL_INTENSITY16: - return (ctx->API == API_OPENGL_COMPAT && + return (_mesa_is_desktop_gl_compat(ctx) && ctx->Extensions.ARB_framebuffer_object) ? GL_INTENSITY : 0; case GL_RGB8: return GL_RGB; @@ -2415,12 +2415,12 @@ _mesa_base_fbo_format(const struct gl_context *ctx, GLenum internalFormat) return GL_DEPTH_STENCIL; case GL_DEPTH_COMPONENT32F: return ctx->Version >= 30 - || (ctx->API == API_OPENGL_COMPAT && + || (_mesa_is_desktop_gl_compat(ctx) && ctx->Extensions.ARB_depth_buffer_float) ? GL_DEPTH_COMPONENT : 0; case GL_DEPTH32F_STENCIL8: return ctx->Version >= 30 - || (ctx->API == API_OPENGL_COMPAT && + || (_mesa_is_desktop_gl_compat(ctx) && ctx->Extensions.ARB_depth_buffer_float) ? GL_DEPTH_STENCIL : 0; case GL_RED: @@ -2478,7 +2478,7 @@ _mesa_base_fbo_format(const struct gl_context *ctx, GLenum internalFormat) case GL_ALPHA_SNORM: case GL_ALPHA8_SNORM: case GL_ALPHA16_SNORM: - return ctx->API == API_OPENGL_COMPAT && + return _mesa_is_desktop_gl_compat(ctx) && ctx->Extensions.EXT_texture_snorm && ctx->Extensions.ARB_framebuffer_object ? GL_ALPHA : 0; case GL_LUMINANCE_SNORM: @@ -2547,22 +2547,22 @@ _mesa_base_fbo_format(const struct gl_context *ctx, GLenum internalFormat) ? GL_RGB: 0; case GL_ALPHA16F_ARB: case GL_ALPHA32F_ARB: - return ctx->API == API_OPENGL_COMPAT && + return _mesa_is_desktop_gl_compat(ctx) && ctx->Extensions.ARB_texture_float && ctx->Extensions.ARB_framebuffer_object ? GL_ALPHA : 0; case GL_LUMINANCE16F_ARB: case GL_LUMINANCE32F_ARB: - return ctx->API == API_OPENGL_COMPAT && + return _mesa_is_desktop_gl_compat(ctx) && ctx->Extensions.ARB_texture_float && ctx->Extensions.ARB_framebuffer_object ? GL_LUMINANCE : 0; case GL_LUMINANCE_ALPHA16F_ARB: case GL_LUMINANCE_ALPHA32F_ARB: - return ctx->API == API_OPENGL_COMPAT && + return _mesa_is_desktop_gl_compat(ctx) && ctx->Extensions.ARB_texture_float && ctx->Extensions.ARB_framebuffer_object ? GL_LUMINANCE_ALPHA : 0; case GL_INTENSITY16F_ARB: case GL_INTENSITY32F_ARB: - return ctx->API == API_OPENGL_COMPAT && + return _mesa_is_desktop_gl_compat(ctx) && ctx->Extensions.ARB_texture_float && ctx->Extensions.ARB_framebuffer_object ? GL_INTENSITY : 0; case GL_R11F_G11F_B10F: @@ -2616,7 +2616,7 @@ _mesa_base_fbo_format(const struct gl_context *ctx, GLenum internalFormat) case GL_INTENSITY16UI_EXT: case GL_INTENSITY32I_EXT: case GL_INTENSITY32UI_EXT: - return ctx->API == API_OPENGL_COMPAT && + return _mesa_is_desktop_gl_compat(ctx) && ctx->Extensions.EXT_texture_integer && ctx->Extensions.ARB_framebuffer_object ? GL_INTENSITY : 0; @@ -2626,7 +2626,7 @@ _mesa_base_fbo_format(const struct gl_context *ctx, GLenum internalFormat) case GL_LUMINANCE16UI_EXT: case GL_LUMINANCE32I_EXT: case GL_LUMINANCE32UI_EXT: - return ctx->API == API_OPENGL_COMPAT && + return _mesa_is_desktop_gl_compat(ctx) && ctx->Extensions.EXT_texture_integer && ctx->Extensions.ARB_framebuffer_object ? GL_LUMINANCE : 0; @@ -2636,7 +2636,7 @@ _mesa_base_fbo_format(const struct gl_context *ctx, GLenum internalFormat) case GL_LUMINANCE_ALPHA16UI_EXT: case GL_LUMINANCE_ALPHA32I_EXT: case GL_LUMINANCE_ALPHA32UI_EXT: - return ctx->API == API_OPENGL_COMPAT && + return _mesa_is_desktop_gl_compat(ctx) && ctx->Extensions.EXT_texture_integer && ctx->Extensions.ARB_framebuffer_object ? GL_LUMINANCE_ALPHA : 0; @@ -2646,7 +2646,7 @@ _mesa_base_fbo_format(const struct gl_context *ctx, GLenum internalFormat) case GL_ALPHA16UI_EXT: case GL_ALPHA32I_EXT: case GL_ALPHA32UI_EXT: - return ctx->API == API_OPENGL_COMPAT && + return _mesa_is_desktop_gl_compat(ctx) && ctx->Extensions.EXT_texture_integer && ctx->Extensions.ARB_framebuffer_object ? GL_ALPHA : 0; diff --git a/src/mesa/main/get.c b/src/mesa/main/get.c index d9708ab2709..83c4f5cb74c 100644 --- a/src/mesa/main/get.c +++ b/src/mesa/main/get.c @@ -1465,7 +1465,7 @@ check_extra(struct gl_context *ctx, const char *func, const struct value_desc *d break; case EXTRA_API_GL_COMPAT: api_check = GL_TRUE; - if (ctx->API == API_OPENGL_COMPAT) + if (_mesa_is_desktop_gl_compat(ctx)) api_found = GL_TRUE; break; case EXTRA_NEW_BUFFERS: @@ -1550,7 +1550,7 @@ check_extra(struct gl_context *ctx, const char *func, const struct value_desc *d break; case EXTRA_EXT_PROVOKING_VERTEX_32: api_check = GL_TRUE; - if (ctx->API == API_OPENGL_COMPAT || version == 32) + if (_mesa_is_desktop_gl_compat(ctx) || version == 32) api_found = ctx->Extensions.EXT_provoking_vertex; break; case EXTRA_END: diff --git a/src/mesa/main/getstring.c b/src/mesa/main/getstring.c index 3fb7832e9b0..f452f199031 100644 --- a/src/mesa/main/getstring.c +++ b/src/mesa/main/getstring.c @@ -166,7 +166,7 @@ _mesa_GetString( GLenum name ) break; return shading_language_version(ctx); case GL_PROGRAM_ERROR_STRING_ARB: - if (ctx->API == API_OPENGL_COMPAT && + if (_mesa_is_desktop_gl_compat(ctx) && (ctx->Extensions.ARB_fragment_program || ctx->Extensions.ARB_vertex_program)) { return (const GLubyte *) ctx->Program.ErrorString; diff --git a/src/mesa/main/objectlabel.c b/src/mesa/main/objectlabel.c index 02e950b10bd..5c82462e774 100644 --- a/src/mesa/main/objectlabel.c +++ b/src/mesa/main/objectlabel.c @@ -230,7 +230,7 @@ get_label_pointer(struct gl_context *ctx, GLenum identifier, GLuint name, } break; case GL_DISPLAY_LIST: - if (ctx->API == API_OPENGL_COMPAT) { + if (_mesa_is_desktop_gl_compat(ctx)) { struct gl_display_list *list = _mesa_lookup_list(ctx, name, false); if (list) labelPtr = &list->Label; diff --git a/src/mesa/main/samplerobj.c b/src/mesa/main/samplerobj.c index 1cf53608d11..b0010893dd7 100644 --- a/src/mesa/main/samplerobj.c +++ b/src/mesa/main/samplerobj.c @@ -501,7 +501,7 @@ validate_texture_wrap_mode(struct gl_context *ctx, GLenum wrap) * texture parameters TEXTURE_WRAP_S, TEXTURE_WRAP_T, or * TEXTURE_WRAP_R. */ - return ctx->API == API_OPENGL_COMPAT; + return _mesa_is_desktop_gl_compat(ctx); case GL_CLAMP_TO_EDGE: case GL_REPEAT: case GL_MIRRORED_REPEAT: diff --git a/src/mesa/main/shaderapi.c b/src/mesa/main/shaderapi.c index 577308f20c8..f1188742514 100644 --- a/src/mesa/main/shaderapi.c +++ b/src/mesa/main/shaderapi.c @@ -766,7 +766,7 @@ get_programiv(struct gl_context *ctx, GLuint program, GLenum pname, /* Is transform feedback available in this context? */ const bool has_xfb = - (ctx->API == API_OPENGL_COMPAT && ctx->Extensions.EXT_transform_feedback) + (_mesa_is_desktop_gl_compat(ctx) && ctx->Extensions.EXT_transform_feedback) || ctx->API == API_OPENGL_CORE || _mesa_is_gles3(ctx); @@ -779,7 +779,7 @@ get_programiv(struct gl_context *ctx, GLuint program, GLenum pname, /* Are uniform buffer objects available in this context? */ const bool has_ubo = - (ctx->API == API_OPENGL_COMPAT && + (_mesa_is_desktop_gl_compat(ctx) && ctx->Extensions.ARB_uniform_buffer_object) || ctx->API == API_OPENGL_CORE || _mesa_is_gles3(ctx); diff --git a/src/mesa/main/teximage.c b/src/mesa/main/teximage.c index 37a42174098..1acc110a0c9 100644 --- a/src/mesa/main/teximage.c +++ b/src/mesa/main/teximage.c @@ -6263,7 +6263,7 @@ _mesa_CompressedMultiTexSubImage3DEXT(GLenum texunit, GLenum target, mesa_format _mesa_get_texbuffer_format(const struct gl_context *ctx, GLenum internalFormat) { - if (ctx->API == API_OPENGL_COMPAT) { + if (_mesa_is_desktop_gl_compat(ctx)) { switch (internalFormat) { case GL_ALPHA8: return MESA_FORMAT_A_UNORM8; diff --git a/src/mesa/main/texobj.c b/src/mesa/main/texobj.c index 05b0e8bb7b4..6b0824c5be3 100644 --- a/src/mesa/main/texobj.c +++ b/src/mesa/main/texobj.c @@ -408,8 +408,8 @@ _mesa_initialize_texture_object( struct gl_context *ctx, obj->Sampler.Attrib.sRGBDecode = GL_DECODE_EXT; obj->Sampler.Attrib.ReductionMode = GL_WEIGHTED_AVERAGE_EXT; obj->Sampler.Attrib.state.reduction_mode = PIPE_TEX_REDUCTION_WEIGHTED_AVERAGE; - obj->BufferObjectFormat = ctx->API == API_OPENGL_COMPAT ? GL_LUMINANCE8 : GL_R8; - obj->_BufferObjectFormat = ctx->API == API_OPENGL_COMPAT + obj->BufferObjectFormat = _mesa_is_desktop_gl_compat(ctx) ? GL_LUMINANCE8 : GL_R8; + obj->_BufferObjectFormat = _mesa_is_desktop_gl_compat(ctx) ? MESA_FORMAT_L_UNORM8 : MESA_FORMAT_R_UNORM8; obj->Attrib.ImageFormatCompatibilityType = GL_IMAGE_FORMAT_COMPATIBILITY_BY_SIZE; diff --git a/src/mesa/main/texparam.c b/src/mesa/main/texparam.c index d85f3b3730e..564dab066f9 100644 --- a/src/mesa/main/texparam.c +++ b/src/mesa/main/texparam.c @@ -72,7 +72,7 @@ validate_texture_wrap_mode(struct gl_context * ctx, GLenum target, GLenum wrap) /* GL_CLAMP was removed in the core profile, and it has never existed in * OpenGL ES. */ - supported = (ctx->API == API_OPENGL_COMPAT) + supported = _mesa_is_desktop_gl_compat(ctx) && (target != GL_TEXTURE_EXTERNAL_OES); break; @@ -513,7 +513,7 @@ set_tex_parameteri(struct gl_context *ctx, /* GL_DEPTH_TEXTURE_MODE_ARB is removed in core-profile and it has never * existed in OpenGL ES. */ - if (ctx->API == API_OPENGL_COMPAT) { + if (_mesa_is_desktop_gl_compat(ctx)) { if (texObj->Attrib.DepthMode == params[0]) return GL_FALSE; if (params[0] == GL_LUMINANCE || diff --git a/src/mesa/main/version.c b/src/mesa/main/version.c index a1dc51c7e83..77607e0d19c 100644 --- a/src/mesa/main/version.c +++ b/src/mesa/main/version.c @@ -137,7 +137,7 @@ create_version_string(struct gl_context *ctx, const char *prefix) prefix, ctx->Version / 10, ctx->Version % 10, (ctx->API == API_OPENGL_CORE) ? " (Core Profile)" : - (ctx->API == API_OPENGL_COMPAT && ctx->Version >= 32) ? + (_mesa_is_desktop_gl_compat(ctx) && ctx->Version >= 32) ? " (Compatibility Profile)" : "" ); } @@ -650,7 +650,7 @@ _mesa_compute_version(struct gl_context *ctx) } done: - if (ctx->API == API_OPENGL_COMPAT && ctx->Version >= 31) + if (_mesa_is_desktop_gl_compat(ctx) && ctx->Version >= 31) ctx->Extensions.ARB_compatibility = GL_TRUE; /* Precompute valid primitive types for faster draw time validation. */ @@ -663,7 +663,7 @@ done: (1 << GL_TRIANGLE_STRIP) | (1 << GL_TRIANGLE_FAN); - if (ctx->API == API_OPENGL_COMPAT) { + if (_mesa_is_desktop_gl_compat(ctx)) { ctx->SupportedPrimMask |= (1 << GL_QUADS) | (1 << GL_QUAD_STRIP) | (1 << GL_POLYGON);