[Mesa-dev] [PATCH 1/1] r600: Enable FMA on chips that support it
Marek Olšák
maraeo at gmail.com
Wed Jun 15 18:41:45 UTC 2016
On Wed, Jun 15, 2016 at 8:19 PM, Alex Deucher <alexdeucher at gmail.com> wrote:
> On Wed, Jun 15, 2016 at 2:13 PM, Jan Vesely <jan.vesely at rutgers.edu> wrote:
>> Signed-off-by: Jan Vesely <jan.vesely at rutgers.edu>
>> ---
>> Untested (I don't have the required hw)
>>
>> src/gallium/drivers/r600/r600_pipe.c | 5 ++++-
>> src/gallium/drivers/r600/r600_shader.c | 2 +-
>> 2 files changed, 5 insertions(+), 2 deletions(-)
>>
>> diff --git a/src/gallium/drivers/r600/r600_pipe.c b/src/gallium/drivers/r600/r600_pipe.c
>> index a49b00f..49c3e1d 100644
>> --- a/src/gallium/drivers/r600/r600_pipe.c
>> +++ b/src/gallium/drivers/r600/r600_pipe.c
>> @@ -548,7 +548,6 @@ static int r600_get_shader_param(struct pipe_screen* pscreen, unsigned shader, e
>> return 0;
>> case PIPE_SHADER_CAP_TGSI_DROUND_SUPPORTED:
>> case PIPE_SHADER_CAP_TGSI_DFRACEXP_DLDEXP_SUPPORTED:
>> - case PIPE_SHADER_CAP_TGSI_FMA_SUPPORTED:
>> case PIPE_SHADER_CAP_MAX_SHADER_BUFFERS:
>> case PIPE_SHADER_CAP_MAX_SHADER_IMAGES:
>> return 0;
>> @@ -558,6 +557,10 @@ static int r600_get_shader_param(struct pipe_screen* pscreen, unsigned shader, e
>> * https://bugs.freedesktop.org/show_bug.cgi?id=86720
>> */
>> return 255;
>> + case PIPE_SHADER_CAP_TGSI_FMA_SUPPORTED:
>> + // Enable on CYPRESS(EG) and CAYMAN(NI)
>> + return rscreen->b.family == CHIP_CYPRESS ||
>> + rscreen->b.family == CHIP_CAYMAN;
>
> Also CHIP_HEMLOCK (CYPRESS x2) and CHIP_ARUBA (trinity/richland) I think.
My docs say that FMA support is the same as double precision support,
so maybe HEMLOCK should also enable double precision?
Marek
More information about the mesa-dev
mailing list