summaryrefslogtreecommitdiff
path: root/src/mapi
diff options
context:
space:
mode:
authorEric Anholt <eric@anholt.net>2017-07-25 16:13:57 -0700
committerEric Anholt <eric@anholt.net>2017-10-10 10:45:22 -0700
commite6764348564e2f865f382a81eae3ccfbf957d2fd (patch)
tree17e5dbddee4276d247d7df7fef4946ecfc96a8e4 /src/mapi
parent087b39a3460e796cee04b754d8cb08251c7a51bc (diff)
mesa: Implement a new GL_MESA_tile_raster_order extension.
The intent is to use this extension on vc4 to allow X11 to do overlapping CopyArea() within a pixmap without first blitting the pixmap to a temporary. With associated glamor patches, improves x11perf -copywinwin100 performance on a Raspberry Pi 3 from ~4700/sec to ~5130/sec, and is an even larger boost to uncomposited window movement performance (most copywinwin100 copies don't overlap). v2: Fix glIsEnabled() on the new enums. v3: Drop the local spec since I'm upstreaming the spec. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
Diffstat (limited to 'src/mapi')
-rw-r--r--src/mapi/glapi/gen/MESA_tile_raster_order.xml13
-rw-r--r--src/mapi/glapi/gen/Makefile.am1
2 files changed, 14 insertions, 0 deletions
diff --git a/src/mapi/glapi/gen/MESA_tile_raster_order.xml b/src/mapi/glapi/gen/MESA_tile_raster_order.xml
new file mode 100644
index 0000000000..a1f0cb89be
--- /dev/null
+++ b/src/mapi/glapi/gen/MESA_tile_raster_order.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
+
+<OpenGLAPI>
+
+<!-- XXX: need an extension number -->
+<category name="GL_MESA_tile_rasterizer_order">
+ <enum name="TILE_RASTER_ORDER_FIXED_MESA" value="0x8BB8"/>
+ <enum name="TILE_RASTER_ORDER_INCREASING_X_MESA" value="0x8BB9"/>
+ <enum name="TILE_RASTER_ORDER_INCREASING_Y_MESA" value="0x8BBA"/>
+</category>
+
+</OpenGLAPI>
diff --git a/src/mapi/glapi/gen/Makefile.am b/src/mapi/glapi/gen/Makefile.am
index 7f4a469303..87d8517b7b 100644
--- a/src/mapi/glapi/gen/Makefile.am
+++ b/src/mapi/glapi/gen/Makefile.am
@@ -210,6 +210,7 @@ API_XML = \
KHR_robustness.xml \
KHR_robustness_es.xml \
KHR_texture_compression_astc.xml \
+ MESA_tile_raster_order.xml \
NV_conditional_render.xml \
NV_primitive_restart.xml \
NV_texture_barrier.xml \