mesa/src
Iago Toral Quiroga 0986199b31 intel/compiler: workaround for SIMD8 half-float MAD in gen8
Empirical testing shows that gen8 has a bug where MAD instructions with
a half-float source starting at a non-zero offset fail to execute
properly.

This scenario usually happened in SIMD8 executions, where we used to
pack vector components Y and W in the second half of SIMD registers
(therefore, with a 16B offset). It looks like we are not currently doing
this any more but this would handle the situation properly if we ever
happen to produce code like this again.

v2 (Jason):
 - Move this workaround to the lower_regioning pass as an additional case
   to has_invalid_src_region()
 - Do not apply the workaround if the stride of the source operand is 0,
   testing suggests the problem doesn't exist in that case.

v3 (Jason):
 - We want offset % REG_SIZE > 0, not just offset > 0
 - Use a helper to compute the offset

Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com> (v1)
2019-04-18 11:05:18 +02:00
..
amd ac: use struct/raw store intrinsics for 8-bit/16-bit int with LLVM 9+ 2019-04-17 22:10:30 +02:00
broadcom v3d: Always set up the qregs for CSD payload. 2019-04-16 12:10:39 -07:00
compiler spirv: Tell which opcode or value is unhandled when failing 2019-04-16 11:11:10 -07:00
egl Delete autotools 2019-04-15 13:44:29 -07:00
freedreno Delete autotools 2019-04-15 13:44:29 -07:00
gallium Add no_aos_sampling GALLIVM_PERF option 2019-04-17 22:16:19 +00:00
gbm Delete autotools 2019-04-15 13:44:29 -07:00
getopt
glx Delete autotools 2019-04-15 13:44:29 -07:00
gtest Delete autotools 2019-04-15 13:44:29 -07:00
hgl haiku: Fix hgl dispatch build. Tested under meson/scons. 2019-04-02 16:06:00 -05:00
imgui imgui: update memory editor 2019-02-26 12:49:07 +00:00
intel intel/compiler: workaround for SIMD8 half-float MAD in gen8 2019-04-18 11:05:18 +02:00
loader Delete autotools 2019-04-15 13:44:29 -07:00
mapi Delete autotools 2019-04-15 13:44:29 -07:00
mesa intel/perf: drop counter size field 2019-04-17 14:10:42 +01:00
util drirc: add Spectacle, Falkon to a-sync blacklist 2019-04-15 17:38:44 -04:00
vulkan Delete autotools 2019-04-15 13:44:29 -07:00
meson.build turnip: Add driver skeleton (v2) 2019-03-11 10:01:15 -07:00
SConscript scons: Remove gles option. 2018-10-19 16:50:26 +01:00