[Mesa-dev] [PATCH] nv50/ir: start LocalCSE with getFirst to merge PHI instructions
Karol Herbst
karolherbst at gmail.com
Tue Oct 25 10:45:45 UTC 2016
2016-10-25 11:18 GMT+02:00 Samuel Pitoiset <samuel.pitoiset at gmail.com>:
>
>
> On 10/08/2016 06:58 PM, Samuel Pitoiset wrote:
>>
>> This breaks a bunch of things, like:
>>
>> spec/glsl-4.30/execution/built-in-functions/cs-all-bvec2-using-if: fail
>> spec/glsl-4.30/execution/built-in-functions/cs-all-bvec3-using-if: fail
>> spec/glsl-4.30/execution/built-in-functions/cs-all-bvec4-using-if: fail
>> spec/glsl-4.30/execution/built-in-functions/cs-any-bvec2-using-if: fail
>> spec/glsl-4.30/execution/built-in-functions/cs-any-bvec3-using-if: fail
>> spec/glsl-4.30/execution/built-in-functions/cs-any-bvec4-using-if: fail
>>
>> Piglit spotted those on GK110, please figure out and send a v2. :)
>
>
> Looks fine now.
>
> Maybe you can reply and update the shader-db results since I added a bunch
> of new shaders from F1, Shadow Of Mordor, etc?
>
yeah, will do
>> On 10/06/2016 11:33 PM, Karol Herbst wrote:
>>>
>>> total instructions in shared programs : 2818606 -> 2818227 (-0.01%)
>>> total gprs used in shared programs : 379273 -> 379238 (-0.01%)
>>> total local used in shared programs : 9505 -> 9505 (0.00%)
>>> total bytes used in shared programs : 25837192 -> 25833736 (-0.01%)
>>>
>>> local gpr inst bytes
>>> helped 0 25 100 100
>>> hurt 0 0 0 0
>>>
>>> Signed-off-by: Karol Herbst <karolherbst at gmail.com>
>>> ---
>>> src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp | 2 +-
>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp
>>> b/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp
>>> index 1c71155..168aa05 100644
>>> --- a/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp
>>> +++ b/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp
>>> @@ -3220,7 +3220,7 @@ LocalCSE::visit(BasicBlock *bb)
>>> for (ir = bb->getFirst(); ir; ir = ir->next)
>>> ir->serial = serial++;
>>>
>>> - for (ir = bb->getEntry(); ir; ir = next) {
>>> + for (ir = bb->getFirst(); ir; ir = next) {
>>> int s;
>>> Value *src = NULL;
>>>
>>>
>
> --
> -Samuel
More information about the mesa-dev
mailing list