wined3d/device: Avoid repeated calculations of idx and shift in IWineD3DDeviceImpl_MarkStateDirty(). (resend)

Alexandre Julliard julliard at winehq.org
Wed Mar 16 14:55:38 CDT 2011


Adam Martinson <amartinson at codeweavers.com> writes:

> On 03/16/2011 02:24 PM, Alexandre Julliard wrote:
>> Adam Martinson<amartinson at codeweavers.com>  writes:
>>
>>> Look at any d3d app with oprofile.  That function is called
>>> EVERYWHERE.  In my testing this reduces
>>> IWineD3DDeviceImpl_MarkStateDirty() from 4.8% of wined3d CPU time to
>>> 3.3%.
>> What compiler are you using?  I don't see any difference here.
>>
> GCC 4.4.5, running the 3DMark06 batch size tests.

I don't see any difference with 4.4.5 either, the generated code is
basically identical. If gcc really doesn't notice the loop invariant for
you, something is wrong with your setup.

-- 
Alexandre Julliard
julliard at winehq.org



More information about the wine-devel mailing list