mesa: Implement a new GL_MESA_tile_raster_order extension.
authorEric Anholt <eric@anholt.net>
Tue, 25 Jul 2017 23:13:57 +0000 (16:13 -0700)
committerEric Anholt <eric@anholt.net>
Tue, 10 Oct 2017 17:45:22 +0000 (10:45 -0700)
commite6764348564e2f865f382a81eae3ccfbf957d2fd
tree17e5dbddee4276d247d7df7fef4946ecfc96a8e4
parent087b39a3460e796cee04b754d8cb08251c7a51bc
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>
docs/specs/enums.txt
include/GL/glext.h
src/mapi/glapi/gen/MESA_tile_raster_order.xml [new file with mode: 0644]
src/mapi/glapi/gen/Makefile.am
src/mesa/main/context.c
src/mesa/main/enable.c
src/mesa/main/extensions_table.h
src/mesa/main/mtypes.h
src/mesa/state_tracker/st_atom_rasterizer.c
src/mesa/state_tracker/st_context.c
src/mesa/state_tracker/st_extensions.c