summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFrancisco Jerez <currojerez@riseup.net>2013-10-20 14:11:27 -0700
committerFrancisco Jerez <currojerez@riseup.net>2013-11-01 12:57:49 -0700
commit7cbd1db5aa2762b5c17a04d4f35ef6532cf251ed (patch)
treeaeab7f7064d8424a33341237e97898ffe1134f02
parented1d6cc79eb174b0609bccc5f0e60ff338e8a794 (diff)
i965/gen7: Expose ARB_shader_atomic_counters.atomic-counters
Reviewed-by: Paul Berry <stereotype441@gmail.com>
-rw-r--r--src/mesa/drivers/dri/i965/brw_context.c10
-rw-r--r--src/mesa/drivers/dri/i965/intel_extensions.c3
2 files changed, 13 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_context.c b/src/mesa/drivers/dri/i965/brw_context.c
index 38147e9fe48..67fb87d2643 100644
--- a/src/mesa/drivers/dri/i965/brw_context.c
+++ b/src/mesa/drivers/dri/i965/brw_context.c
@@ -397,6 +397,16 @@ brw_initialize_context_constants(struct brw_context *brw)
ctx->Const.FragmentProgram.HighInt = ctx->Const.FragmentProgram.LowInt;
ctx->Const.FragmentProgram.MediumInt = ctx->Const.FragmentProgram.LowInt;
+ if (brw->gen >= 7) {
+ ctx->Const.FragmentProgram.MaxAtomicCounters = MAX_ATOMIC_COUNTERS;
+ ctx->Const.VertexProgram.MaxAtomicCounters = MAX_ATOMIC_COUNTERS;
+ ctx->Const.GeometryProgram.MaxAtomicCounters = MAX_ATOMIC_COUNTERS;
+ ctx->Const.FragmentProgram.MaxAtomicBuffers = BRW_MAX_ABO;
+ ctx->Const.VertexProgram.MaxAtomicBuffers = BRW_MAX_ABO;
+ ctx->Const.GeometryProgram.MaxAtomicBuffers = BRW_MAX_ABO;
+ ctx->Const.MaxCombinedAtomicBuffers = 3 * BRW_MAX_ABO;
+ }
+
/* Gen6 converts quads to polygon in beginning of 3D pipeline,
* but we're not sure how it's actually done for vertex order,
* that affect provoking vertex decision. Always use last vertex
diff --git a/src/mesa/drivers/dri/i965/intel_extensions.c b/src/mesa/drivers/dri/i965/intel_extensions.c
index abc31764894..d6ba961004c 100644
--- a/src/mesa/drivers/dri/i965/intel_extensions.c
+++ b/src/mesa/drivers/dri/i965/intel_extensions.c
@@ -244,4 +244,7 @@ intelInitExtensions(struct gl_context *ctx)
ctx->Extensions.EXT_texture_compression_s3tc = true;
ctx->Extensions.ANGLE_texture_compression_dxt = true;
+
+ if (brw->gen >= 7)
+ ctx->Extensions.ARB_shader_atomic_counters = true;
}