[Mesa-dev] [PATCH] Revert "radeon/llvm: enable unsafe math for graphics shaders"
Grigori Goronzy
greg at chown.ath.cx
Wed Feb 18 01:04:27 PST 2015
Am 2015-02-18 09:13, schrieb Michel Dänzer:
> On 18.02.2015 16:52, Grigori Goronzy wrote:
>> Hi,
>>
>> AFAIR not enabling this makes LLVM generate really slow code in some
>> common cases. Maybe this is just a bug in LLVM/R600 triggered by
>> unsafe
>> FP math optimization or some optimization is too eager. Other drivers
>> do
>> fine with these types of optimization.
>
> It can be enabled again after fixing the problem exposed by The Talos
> Principle.
>
Right. I just want to avoid the situation that this workaround gets
committed and then forgotten about. I guess it's up to me then. :)
>
>> On 17.02.2015 09:15, Michel Dänzer wrote:
>>> From: Michel Dänzer <michel.daenzer at amd.com>
>>>
>>> This reverts commit 0e9cdedd2e3943bdb7f3543a3508b883b167e427.
>>>
>>> It caused the grass to disappear in The Talos Principle.
>>>
>>> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=89069
>>> Signed-off-by: Michel Dänzer <michel at daenzer.net>
>>> ---
>>> src/gallium/drivers/radeon/radeon_llvm_emit.c | 4 ----
>>> 1 file changed, 4 deletions(-)
>>>
>>> diff --git a/src/gallium/drivers/radeon/radeon_llvm_emit.c
>>> b/src/gallium/drivers/radeon/radeon_llvm_emit.c
>>> index 0f9dbab..624077c 100644
>>> --- a/src/gallium/drivers/radeon/radeon_llvm_emit.c
>>> +++ b/src/gallium/drivers/radeon/radeon_llvm_emit.c
>>> @@ -80,10 +80,6 @@ void radeon_llvm_shader_type(LLVMValueRef F,
>>> unsigned type)
>>> sprintf(Str, "%1d", llvm_type);
>>>
>>> LLVMAddTargetDependentFunctionAttr(F, "ShaderType", Str);
>>> -
>>> - if (type != TGSI_PROCESSOR_COMPUTE) {
>>> - LLVMAddTargetDependentFunctionAttr(F, "unsafe-fp-math", "true");
>>> - }
>>> }
>>>
>>> static void init_r600_target()
>>>
More information about the mesa-dev
mailing list