[Mesa-dev] "glsl: Vectorize multiple scalar assignments" (mesa 4bd6e0d) breaks League of Legends on wine

Andrew Guertin lists at dolphinling.net
Mon Feb 10 11:08:15 PST 2014


On 02/10/2014 12:11 AM, Matt Turner wrote:
> On Sat, Feb 8, 2014 at 5:29 AM, Andrew Guertin <lists at dolphinling.net> wrote:
>> On 02/08/2014 02:41 AM, Matt Turner wrote:
>>>
>>> On Fri, Feb 7, 2014 at 10:22 PM, Andrew Guertin <lists at dolphinling.net>
>>> wrote:
>>>>
>>>> Hi,
>>>>
>>>> I updated mesa and started getting some bad behavior in League of Legends
>>>> (played through wine). After starting a game, upon hovering any of the
>>>> skill
>>>> buttons, instead of an info tooltip appearing, the whole screen is
>>>> covered
>>>> in grey. Some other problems are visible too, like the options menu
>>>> missing
>>>> most of its text.
>>>>
>>>> I bisected down to
>>>>
>>>> 4bd6e0d7c69b304be88996a6c2b96ce7d996e627 is the first bad commit
>>>> commit 4bd6e0d7c69b304be88996a6c2b96ce7d996e627
>>>> Author: Matt Turner <mattst88 at gmail.com>
>>>> Date:   Sat Dec 21 11:28:05 2013 -0800
>>>>
>>>>       glsl: Vectorize multiple scalar assignments
>>>>
>>>>       Reduces vertex shader instruction counts in DOTA2 by 6.42%, L4D2 by
>>>>       4.61%, and CS:GO by 5.71%.
>>>>
>>>>       total instructions in shared programs: 1500153 -> 1498191 (-0.13%)
>>>>       instructions in affected programs:     59919 -> 57957 (-3.27%)
>>>>
>>>>       Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>
>>>>
>>>>
>>>> System info:
>>>> CPU: i7-3770
>>>> GPU: HD 4000
>>>> Kernel: 3.12
>>>>
>>>> I am not subscribed to this mailing list, so please keep me cc'd.
>>>>
>>>> Thanks,
>>>> --Andrew
>>>
>>>
>>> Presumably you have the following commits on top of that, and none of
>>> them affect it?
>>>
>>> 8e2b8bd0
>>> 37f1903e
>>> 60654421
>>
>>
>> Yes, I was up to date with master when I first noticed this, probably
>> 882e98e5, so all of those were included.
>>
>>
>>> Could you send me (privately) or file a bug report with the output of
>>> the game running with MESA_GLSL=dump ?
>>
>>
>> I've just spent about an hour trying to do this and failing. I get none of
>> the output when running League of Legends. I get output when running
>> glxgears, and when running FurMark through wine, but none with LoL. I also
>> tried MESA_GLSL=log, which again worked with FurMark but had no result with
>> LoL.
>>
>> --Andrew
>
> Okay. Maybe you can capture an apitrace that shows the problem? I'd be
> able to extract the shaders from it.
>
> Thanks,
> Matt

I got this working, and I've uploaded the trace at 
http://www.uvm.edu/~aguertin/personal/wine-preloader.trace.tar.xz . This 
is with mesa a21552a96b (HEAD as of this morning), and wine 1.7.12.

Also, while doing this I found that MESA_GLSL=log *did* work, it just 
put the results in an unexpected place. I haven't uploaded those, but
let me know if you want them. Also let me know if you want output from a 
pre-regression mesa.

--Andrew


More information about the mesa-dev mailing list