glamor: Changes to 'master'
Zhigang Gong
gongzg at kemper.freedesktop.org
Mon Mar 26 04:31:46 PDT 2012
src/glamor.c | 2
src/glamor_fill.c | 1
src/glamor_gl_dispatch.c | 4
src/glamor_gl_dispatch.h | 15
src/glamor_priv.h | 13
src/glamor_render.c | 1493 ++++++++++++++++++++++++++++++++++++++++++++++-
src/glamor_utils.h | 301 +++++++++
7 files changed, 1812 insertions(+), 17 deletions(-)
New commits:
commit 5b252635a089b9a3e1d19c13c0423d77eedccb20
Author: Zhigang Gong <zhigang.gong at linux.intel.com>
Date: Mon Mar 26 19:03:20 2012 +0800
glamor_fill: Should restore alu to GXcopy.
Signed-off-by: Zhigang Gong <zhigang.gong at linux.intel.com>
commit 93ba0061ece880cf97a191a5f99919f90b13721d
Author: Junyan He <junyan.he at linux.intel.com>
Date: Fri Mar 23 04:06:06 2012 +0800
Add the feature for radial gradient using shader.
Add the feature for radial gradient using shader. The
transform matrix and the 4 type of repeat mode are
supported. Less than 2/255 difference for every color
component comparing to pixman's result. Extract the
common logic of linear and radial's to another shader.
Reviewed-by: Chris Wilson <chris at chris-wilson.co.uk>
Reviewed-by: Zhigang Gong <zhigang.gong at linux.intel.com>
Signed-off-by: Zhigang Gong <zhigang.gong at linux.intel.com>
commit fa798cd2925146b1a523cb39b56b288d271efcee
Author: Junyan He <junyan.he at linux.intel.com>
Date: Fri Mar 23 04:05:56 2012 +0800
Add the feature of generating linear gradient picture by using shader.
Add the feature of generating linear gradient picture
by using shader. This logic will replace the original
linear gradient picture generating manner in glamor
which firstly use pixman and then upload it to GPU.
Compare it to the result generated by pixman, the
difference of each color component of each pixel is
normally 0, sometimes 1/255, and 2/255 at most. The
pixman use fixed-point but shader use float-point, so may have
difference. The feature of transform matrix and 4 types
of repeat modes have been supported. The array usage in
shader seems slow, so use 8 uniform variables to avoid
using array when stops number is not very big. This
make code look verbose but the performance improved a
lot.
We still have slightly performance regression compare to
original pixman version. There are one further optimization
opportunity which is to merge the gradient pixmap generation
and the latter compositing into one shader, then we don't need
to generate the extra texture, we can use the gradient value
directly at the compositing shader. Hope that can beat pixman
version. Will do that latter.
Reviewed-by: Chris Wilson <chris at chris-wilson.co.uk>
Reviewed-by: Zhigang Gong <zhigang.gong at linux.intel.com>
Signed-off-by: Zhigang Gong <zhigang.gong at linux.intel.com>
commit 45c2106f0f0b44d6678612977286c5a6131abc6b
Author: Junyan He <junyan.he at linux.intel.com>
Date: Fri Mar 23 04:05:48 2012 +0800
Prepare for modification of gradient using shader.
Prepare for modification of gradient using shader. The
gradient pixmaps now is generated by pixman and we will
replace them with shader. Add structure fields and
dispatch functions which will be needed. Some auxiliary
macro for vertex convert.
Reviewed-by: Chris Wilson <chris at chris-wilson.co.uk>
Reviewed-by: Zhigang Gong <zhigang.gong at linux.intel.com>
Signed-off-by: Zhigang Gong <zhigang.gong at linux.intel.com>
commit 2658018ded10817d2d67424c6ffe0fbc0d65c5ed
Author: Junyan He <junyan.he at linux.intel.com>
Date: Mon Mar 26 13:51:13 2012 +0800
glamor_utils: Add some assistant functions to compare pixmaps/pictures.
Reviewed-by: Chris Wilson <chris at chris-wilson.co.uk>
Reviewed-by: Zhigang Gong <zhigang.gong at linux.intel.com>
Signed-off-by: Zhigang Gong <zhigang.gong at linux.intel.com>
More information about the xorg-commit
mailing list