driconf: Add a limit_trig_input_range option

With this option enabled range of input values for fsin and fcos is
limited to [-2*pi : 2*pi] by calculating the reminder after 2*pi modulo
division. This helps to improve calculation precision for large input
arguments on Intel.

-v2: Add limit_trig_input_range option to prog_key to update shader
     cache (Lionel)

Signed-off-by: Vadym Shovkoplias <vadym.shovkoplias@globallogic.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16388>
This commit is contained in:
Vadym Shovkoplias
2022-05-06 18:52:47 +03:00
committed by Marge Bot
parent 0ff3517fb7
commit 55c71217ec
17 changed files with 117 additions and 70 deletions

View File

@@ -843,6 +843,8 @@ iris_screen_create(int fd, const struct pipe_screen_config *config)
driQueryOptionb(config->options, "always_flush_cache");
screen->driconf.sync_compile =
driQueryOptionb(config->options, "sync_compile");
screen->driconf.limit_trig_input_range =
driQueryOptionb(config->options, "limit_trig_input_range");
screen->precompile = env_var_as_boolean("shader_precompile", true);