glamor: Label programs before linking them.
i965 does most of its compiling at link time, so our debug output for its shaders didn't have the name on. Signed-off-by: Eric Anholt <eric@anholt.net> Reviewed-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
This commit is contained in:
		
							parent
							
								
									68f236ebd4
								
							
						
					
					
						commit
						b8229cc5f5
					
				|  | @ -87,6 +87,17 @@ glamor_link_glsl_prog(ScreenPtr screen, GLint prog, const char *format, ...) | ||||||
|     GLint ok; |     GLint ok; | ||||||
|     glamor_screen_private *glamor_priv = glamor_get_screen_private(screen); |     glamor_screen_private *glamor_priv = glamor_get_screen_private(screen); | ||||||
| 
 | 
 | ||||||
|  |     if (glamor_priv->has_khr_debug) { | ||||||
|  |         char *label; | ||||||
|  |         va_list va; | ||||||
|  | 
 | ||||||
|  |         va_start(va, format); | ||||||
|  |         XNFvasprintf(&label, format, va); | ||||||
|  |         glObjectLabel(GL_PROGRAM, prog, -1, label); | ||||||
|  |         free(label); | ||||||
|  |         va_end(va); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|     glLinkProgram(prog); |     glLinkProgram(prog); | ||||||
|     glGetProgramiv(prog, GL_LINK_STATUS, &ok); |     glGetProgramiv(prog, GL_LINK_STATUS, &ok); | ||||||
|     if (!ok) { |     if (!ok) { | ||||||
|  | @ -100,17 +111,6 @@ glamor_link_glsl_prog(ScreenPtr screen, GLint prog, const char *format, ...) | ||||||
|         ErrorF("Failed to link: %s\n", info); |         ErrorF("Failed to link: %s\n", info); | ||||||
|         FatalError("GLSL link failure\n"); |         FatalError("GLSL link failure\n"); | ||||||
|     } |     } | ||||||
| 
 |  | ||||||
|     if (glamor_priv->has_khr_debug) { |  | ||||||
|         char *label; |  | ||||||
|         va_list va; |  | ||||||
| 
 |  | ||||||
|         va_start(va, format); |  | ||||||
|         XNFvasprintf(&label, format, va); |  | ||||||
|         glObjectLabel(GL_PROGRAM, prog, -1, label); |  | ||||||
|         free(label); |  | ||||||
|         va_end(va); |  | ||||||
|     } |  | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| /*
 | /*
 | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue