[llvm] r308325 - AMDGPU: Figure out private memory regs after lowering

Michel Dänzer via llvm-commits llvm-commits at lists.llvm.org
Mon Jul 24 23:11:51 PDT 2017


On 25/07/17 03:07 AM, Matt Arsenault wrote:
>> On Jul 24, 2017, at 02:58, Michel Dänzer via llvm-commits <llvm-commits at lists.llvm.org> wrote:
>> On 19/07/17 01:44 AM, Matt Arsenault via llvm-commits wrote:
>>> Author: arsenm
>>> Date: Tue Jul 18 09:44:56 2017
>>> New Revision: 308325
>>>
>>> URL: http://llvm.org/viewvc/llvm-project?rev=308325&view=rev
>>> Log:
>>> AMDGPU: Figure out private memory regs after lowering
>>>
>>> Introduce pseudo-registers for registers needed for stack
>>> access, which are replaced during finalizeLowering.
>>> Note these pseudo-registers are currently only used for the
>>> used register location, and not for determining their
>>> input argument register.
>>>
>>> This is better because it avoids the need to try to predict
>>> whether a call will be emitted from the IR, and also
>>> detects stack objects introduced by legalization.
>>>
>>> Test changes are from the HasStackObjects check being more
>>> accurate since stack objects introduced during legalization
>>> are now known.
>>
>> This broke the piglit test
>> spec at glsl-1.50@execution at geometry@max-input-components and a bunch of
>> tests under spec at arb_gpu_shader_int64@execution at built-in-functions, e.g.
>> spec at arb_gpu_shader_int64@execution at built-in-functions@fs-op-div-int64_t-i64vec4
>> for me on Kaveri.
>>
>> Attaching the LLVM IR of the shader from the latter which gets miscompiled.
> 
> r308903 should fix it

It does, thanks!


-- 
Earthling Michel Dänzer               |               http://www.amd.com
Libre software enthusiast             |             Mesa and X developer


More information about the llvm-commits mailing list