aboutsummaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers/dri/i965/brw_compiler.c
diff options
context:
space:
mode:
authorMatt Turner <[email protected]>2016-01-25 11:07:28 -0800
committerMatt Turner <[email protected]>2016-01-25 14:48:34 -0800
commit874ede498334c9ec39383be9b24c2c368dcb349e (patch)
treeec90dc0720727505a3b77d8daf7179b900a3de13 /src/mesa/drivers/dri/i965/brw_compiler.c
parent5deba3f00a9614e9ab60a40c737e87dc9f5a5a43 (diff)
i965/gen7+: Use NIR for lowering of pack/unpack opcodes.
Diffstat (limited to 'src/mesa/drivers/dri/i965/brw_compiler.c')
-rw-r--r--src/mesa/drivers/dri/i965/brw_compiler.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_compiler.c b/src/mesa/drivers/dri/i965/brw_compiler.c
index 21fff1ddf4f..f9e22d1d6b5 100644
--- a/src/mesa/drivers/dri/i965/brw_compiler.c
+++ b/src/mesa/drivers/dri/i965/brw_compiler.c
@@ -87,7 +87,15 @@ shader_perf_log_mesa(void *data, const char *fmt, ...)
static const struct nir_shader_compiler_options scalar_nir_options = {
COMMON_OPTIONS,
.lower_pack_half_2x16 = true,
+ .lower_pack_snorm_2x16 = true,
+ .lower_pack_snorm_4x8 = true,
+ .lower_pack_unorm_2x16 = true,
+ .lower_pack_unorm_4x8 = true,
.lower_unpack_half_2x16 = true,
+ .lower_unpack_snorm_2x16 = true,
+ .lower_unpack_snorm_4x8 = true,
+ .lower_unpack_unorm_2x16 = true,
+ .lower_unpack_unorm_4x8 = true,
};
static const struct nir_shader_compiler_options vector_nir_options = {
@@ -98,6 +106,13 @@ static const struct nir_shader_compiler_options vector_nir_options = {
* instructions because it can optimize better for us.
*/
.fdot_replicates = true,
+
+ .lower_pack_snorm_2x16 = true,
+ .lower_pack_unorm_2x16 = true,
+ .lower_unpack_snorm_2x16 = true,
+ .lower_unpack_unorm_2x16 = true,
+ .lower_extract_byte = true,
+ .lower_extract_word = true,
};
struct brw_compiler *