r600g: tgsi_dst() can't fail.
[mesa.git] / src / gallium / drivers / svga / svga_screen.c
index b5fae94f783194a66f3bedd53a6be9d805faee68..d0f42c614c9e677728b8660b8010a4f8302dbd50 100644 (file)
@@ -35,7 +35,6 @@
 #include "svga_resource_texture.h"
 #include "svga_resource.h"
 #include "svga_debug.h"
-#include "svga_surface.h"
 
 #include "svga3d_shaderdefs.h"
 
@@ -231,6 +230,14 @@ static int svga_get_shader_param(struct pipe_screen *screen, unsigned shader, en
          return svgascreen->use_ps30 ? 1 : 0;
       case PIPE_SHADER_CAP_TGSI_CONT_SUPPORTED:
          return 1;
+      case PIPE_SHADER_CAP_INDIRECT_INPUT_ADDR:
+         return svgascreen->use_ps30 ? 1 : 0;
+      case PIPE_SHADER_CAP_INDIRECT_OUTPUT_ADDR:
+      case PIPE_SHADER_CAP_INDIRECT_TEMP_ADDR:
+      case PIPE_SHADER_CAP_INDIRECT_CONST_ADDR:
+         return 0;
+      case PIPE_SHADER_CAP_SUBROUTINES:
+         return 0;
       }
       break;
    case PIPE_SHADER_VERTEX:
@@ -263,6 +270,15 @@ static int svga_get_shader_param(struct pipe_screen *screen, unsigned shader, en
          return svgascreen->use_vs30 ? 1 : 0;
       case PIPE_SHADER_CAP_TGSI_CONT_SUPPORTED:
          return 1;
+      case PIPE_SHADER_CAP_INDIRECT_INPUT_ADDR:
+      case PIPE_SHADER_CAP_INDIRECT_OUTPUT_ADDR:
+         return svgascreen->use_vs30 ? 1 : 0;
+      case PIPE_SHADER_CAP_INDIRECT_TEMP_ADDR:
+         return 0;
+      case PIPE_SHADER_CAP_INDIRECT_CONST_ADDR:
+         return 1;
+      case PIPE_SHADER_CAP_SUBROUTINES:
+         return 0;
       default:
          break;
       }
@@ -482,7 +498,6 @@ svga_screen_create(struct svga_winsys_screen *sws)
    screen->fence_finish = svga_fence_finish;
    svgascreen->sws = sws;
 
-   svga_screen_init_surface_functions(screen);
    svga_init_screen_resource_functions(svgascreen);
 
    svgascreen->use_ps30 =