mesa/src
Matt Turner b541945c20 i965/fs: Unpack count argument to 64-bit shift ops on Atom
64-bit operations on Atom parts have additional restrictions over their
big-core counterparts (validated by later patches).

Specifically, the restriction that "Source and Destination horizontal
stride must be aligned to the same qword" is violated by most shift
operations since NIR uses a 32-bit value as the shift count argument,
and this causes instructions like

   shl(8)          g19<1>Q         g5<4,4,1>Q      g23<4,4,1>UD

where src1 has a 32-bit stride, but the dest and src0 have a 64-bit
stride.

This caused ~4 pixels in the ARB_shader_ballot piglit test
fs-readInvocation-uint.shader_test to be incorrect. Unfortunately no
ARB_gpu_shader_int64 test hit this case because they operate on
uniforms, and their scalar regions are an exception to the restriction.

We work around this by effectively unpacking the shift count, so that we
can read it with a 64-bit stride in the shift instruction. Unfortunately
the unpack (a MOV with a dst stride of 2) is a partial write, and cannot
be copy-propagated or CSE'd.

Bugzilla: https://bugs.freedesktop.org/101984
2017-10-04 14:08:54 -07:00
..
amd radv: enable tc compatible htile for d32s8 also. 2017-10-04 21:02:23 +01:00
broadcom broadcom/genxml: Set up enums for VC5 blending, depth, stencil, and prims. 2017-09-19 10:40:55 -07:00
compiler meson: convert gtest to an internal dependency 2017-10-03 10:02:08 -07:00
egl egl/wayland: Don't use dmabuf with no modifiers 2017-10-04 15:17:46 +01:00
gallium st/va: add RGB support to vlVaPutSurface 2017-10-04 09:22:33 -04:00
gbm configure.ac: split the wayland client/server confusion 2017-09-19 19:02:34 +01:00
getopt
glx glx: don't use the template keyword 2017-09-30 19:03:07 +02:00
gtest meson: convert gtest to an internal dependency 2017-10-03 10:02:08 -07:00
hgl
intel i965/fs: Unpack count argument to 64-bit shift ops on Atom 2017-10-04 14:08:54 -07:00
loader loader/dri3: Make sure we invalidate a drawable on size change 2017-09-07 12:43:29 +02:00
mapi egl/dri: link directly to libglapi.so 2017-10-02 16:26:46 +01:00
mesa automake: add texcompress_s3tc_tmp.h to the sources list 2017-10-04 14:21:40 +01:00
util util: include string.h in u_string.h 2017-10-03 14:33:00 -06:00
vulkan meson: Add build Intel "anv" vulkan driver 2017-09-27 09:12:19 -07:00
Makefile.am automake: adjust wayland-drm comment 2017-09-19 19:02:34 +01:00
meson.build meson: build "radv" vulkan driver for radeon hardware 2017-09-27 09:12:34 -07:00
SConscript scons: use python3-compatible print() 2017-09-25 11:57:12 +01:00