summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/intel/intel_span.c
diff options
context:
space:
mode:
authorEric Anholt <eric@anholt.net>2010-12-09 17:30:41 -0800
committerEric Anholt <eric@anholt.net>2010-12-10 15:37:10 -0800
commit28bab24e1698843e27d27204a1117066e7ffeabb (patch)
treee438288520176e2ae30d925dcc8456cfbed6aabd /src/mesa/drivers/dri/intel/intel_span.c
parenta7e2d649710efaf6b542e8a96453baba5c58321f (diff)
intel: Add spans code for the ARB_texture_rg support.
This starts spantmp2.h down the path of using MESA_FORMAT_* for specifying the format instead of the crazy GL format/type combo.
Diffstat (limited to 'src/mesa/drivers/dri/intel/intel_span.c')
-rw-r--r--src/mesa/drivers/dri/intel/intel_span.c32
1 files changed, 32 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/intel/intel_span.c b/src/mesa/drivers/dri/intel/intel_span.c
index 104cadf0f9..1c128bbfdf 100644
--- a/src/mesa/drivers/dri/intel/intel_span.c
+++ b/src/mesa/drivers/dri/intel/intel_span.c
@@ -113,6 +113,26 @@ intel_set_span_functions(struct intel_context *intel,
#define TAG2(x,y) intel_##x##y##_A8
#include "spantmp2.h"
+#define SPANTMP_MESA_FMT MESA_FORMAT_R8
+#define TAG(x) intel_##x##_R8
+#define TAG2(x,y) intel_##x##y##_R8
+#include "spantmp2.h"
+
+#define SPANTMP_MESA_FMT MESA_FORMAT_RG88
+#define TAG(x) intel_##x##_RG88
+#define TAG2(x,y) intel_##x##y##_RG88
+#include "spantmp2.h"
+
+#define SPANTMP_MESA_FMT MESA_FORMAT_R16
+#define TAG(x) intel_##x##_R16
+#define TAG2(x,y) intel_##x##y##_R16
+#include "spantmp2.h"
+
+#define SPANTMP_MESA_FMT MESA_FORMAT_RG1616
+#define TAG(x) intel_##x##_RG1616
+#define TAG2(x,y) intel_##x##y##_RG1616
+#include "spantmp2.h"
+
#define LOCAL_DEPTH_VARS \
struct intel_renderbuffer *irb = intel_renderbuffer(rb); \
const GLint yScale = rb->Name ? 1 : -1; \
@@ -376,6 +396,18 @@ intel_set_span_functions(struct intel_context *intel,
case MESA_FORMAT_S8_Z24:
intel_InitDepthPointers_z24_s8(rb);
break;
+ case MESA_FORMAT_R8:
+ intel_InitPointers_R8(rb);
+ break;
+ case MESA_FORMAT_RG88:
+ intel_InitPointers_RG88(rb);
+ break;
+ case MESA_FORMAT_R16:
+ intel_InitPointers_R16(rb);
+ break;
+ case MESA_FORMAT_RG1616:
+ intel_InitPointers_RG1616(rb);
+ break;
default:
_mesa_problem(NULL,
"Unexpected MesaFormat %d in intelSetSpanFunctions",