On Fri Dec 2 15:47:41 2022 +0000, Nikolay Sivov wrote:
Did you measure the performance difference? Or checked if generated code is any different, especially for the second patch. I looks like forced inlining might have the same effect, if it's not inlined already automatically. The performance improvement is quite significant:
Running Times on Linux 64 bit: Native (Windows gdiplus.dll) * 500 Matrix Scaling time (seconds): 0.84s * 700 Matrix Multipling time (seconds): 1.22s Wine gdiplus.dll without optimizations: * 500 Matrix Scaling time (seconds): 0.28s * 700 Matrix Multipling time (seconds): 0.35s Wine gdiplus.dll with optimizations: * 500 Matrix Scaling time (seconds): 0.13s * 700 Matrix Multipling time (seconds): 0.17s Application which I am using for testing: [gdiplusdisplay.exe](/uploads/c5c790eaef4824c2125d56b95714b05e/gdiplusdisplay.exe) -- https://gitlab.winehq.org/wine/wine/-/merge_requests/1618#note_18450