glamor: Fall back to software for CopyPlane if we need to
glUniform4ui is available starting in GL{,ES} 3.0. Technically it's also in EXT_gpu_shader4, but that's not worth supporting. There was also a MESA_shading_language_130 spec proposed at one point; if that ever gets finished, we can update epoxy to know about it and fix up the feature check. Signed-off-by: Adam Jackson <ajax@redhat.com> Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
This commit is contained in:
parent
c49e820f79
commit
fd4a6dc06f
|
@ -616,6 +616,8 @@ glamor_init(ScreenPtr screen, unsigned int flags)
|
||||||
glamor_priv->is_core_profile =
|
glamor_priv->is_core_profile =
|
||||||
gl_version >= 31 && !epoxy_has_gl_extension("GL_ARB_compatibility");
|
gl_version >= 31 && !epoxy_has_gl_extension("GL_ARB_compatibility");
|
||||||
|
|
||||||
|
glamor_priv->can_copyplane = (gl_version >= 30);
|
||||||
|
|
||||||
glamor_setup_debug_output(screen);
|
glamor_setup_debug_output(screen);
|
||||||
|
|
||||||
glamor_priv->use_quads = (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP) &&
|
glamor_priv->use_quads = (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP) &&
|
||||||
|
|
|
@ -351,6 +351,9 @@ glamor_copy_fbo_fbo_draw(DrawablePtr src,
|
||||||
if (!glamor_set_alu(screen, gc ? gc->alu : GXcopy))
|
if (!glamor_set_alu(screen, gc ? gc->alu : GXcopy))
|
||||||
goto bail_ctx;
|
goto bail_ctx;
|
||||||
|
|
||||||
|
if (bitplane && !glamor_priv->can_copyplane)
|
||||||
|
goto bail_ctx;
|
||||||
|
|
||||||
if (bitplane) {
|
if (bitplane) {
|
||||||
prog = &glamor_priv->copy_plane_prog;
|
prog = &glamor_priv->copy_plane_prog;
|
||||||
copy_facet = &glamor_facet_copyplane;
|
copy_facet = &glamor_facet_copyplane;
|
||||||
|
|
|
@ -201,6 +201,7 @@ typedef struct glamor_screen_private {
|
||||||
Bool has_dual_blend;
|
Bool has_dual_blend;
|
||||||
Bool has_texture_swizzle;
|
Bool has_texture_swizzle;
|
||||||
Bool is_core_profile;
|
Bool is_core_profile;
|
||||||
|
Bool can_copyplane;
|
||||||
int max_fbo_size;
|
int max_fbo_size;
|
||||||
|
|
||||||
GLuint one_channel_format;
|
GLuint one_channel_format;
|
||||||
|
|
Loading…
Reference in New Issue