https://git.reactos.org/?p=reactos.git;a=commitdiff;h=aa84645bccda8d7095f60…
commit aa84645bccda8d7095f6053cae67b1e9bf816345
Author: Andrew Dent <dent.ace(a)gmail.com>
AuthorDate: Wed Sep 20 22:56:06 2023 +0100
Commit: Stanislav Motylkov <x86corez(a)gmail.com>
CommitDate: Sat Sep 23 15:54:39 2023 +0300
[THEMES] Optimize png for Lautus style (#5712)
Lossless optimization of new png Start button in Lautus style, original by @Splitwirez (ed134bf2, #5540).
Slimmed 464 bytes, ~20% saving. This png is encoded as a grayscale+alpha, so should be tested.
---
.../lautus.msstyles/bitmaps/NORMAL_STARTBUTTON.png | Bin 2341 -> 1877 bytes
1 file changed, 0 insertions(+), 0 deletions(-)
diff --git a/media/themes/Lautus/lautus.msstyles/bitmaps/NORMAL_STARTBUTTON.png b/media/themes/Lautus/lautus.msstyles/bitmaps/NORMAL_STARTBUTTON.png
index 5508ccbc79f..c79d4711f09 100644
Binary files a/media/themes/Lautus/lautus.msstyles/bitmaps/NORMAL_STARTBUTTON.png and b/media/themes/Lautus/lautus.msstyles/bitmaps/NORMAL_STARTBUTTON.png differ
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=88808bad8a29213bc51ca…
commit 88808bad8a29213bc51ca54db265e9425a457981
Author: Timo Kreuzer <timo.kreuzer(a)reactos.org>
AuthorDate: Sun Sep 10 14:35:20 2023 +0300
Commit: Timo Kreuzer <timo.kreuzer(a)reactos.org>
CommitDate: Sat Sep 23 11:06:24 2023 +0300
[RPCRT4] Fix x64 assembly code
movaps is a 128 bit aligned move, we need a 64 bit unaligned move, so use movsd.
Fixes a crash in oleaut32_winetest tmarshal.
Also add a comment about the use of movd instead of movq.
---
dll/win32/rpcrt4/msvc.S | 14 +++++++++++---
1 file changed, 11 insertions(+), 3 deletions(-)
diff --git a/dll/win32/rpcrt4/msvc.S b/dll/win32/rpcrt4/msvc.S
index fca5ee5e612..a1da254285b 100644
--- a/dll/win32/rpcrt4/msvc.S
+++ b/dll/win32/rpcrt4/msvc.S
@@ -62,9 +62,9 @@ FUNC call_stubless_func
add rdx, [rcx + 8] /* info->ProcFormatString + offset */
mov rcx, [rcx] /* info->pStubDesc */
- movaps [rsp + 20h], xmm1
- movaps [rsp + 28h], xmm2
- movaps [rsp + 30h], xmm3
+ movsd qword ptr [rsp + 20h], xmm1
+ movsd qword ptr [rsp + 28h], xmm2
+ movsd qword ptr [rsp + 30h], xmm3
lea r9, [rsp + 18h] /* fpu_args */
call ndr_client_call
add rsp, 38h
@@ -97,6 +97,14 @@ FUNC call_server_func
mov rdx, [rsp + 8]
mov r8, [rsp + 16]
mov r9, [rsp + 24]
+
+ /* Usually the 64 bit SSE2 version of movd is called movq, as in GCC code
+ (see https://www.felixcloutier.com/x86/movd:movq). But there is another
+ movq with different encoding, which does not accept an integer register
+ as source (see https://www.felixcloutier.com/x86/movq). Older versions
+ of ML64 get confused and do not accept movq with integer registers,
+ but they translate movd to 64 bit, when 64 bit registers are used as
+ source, so we use that here. */
movd xmm0, rcx
movd xmm1, rdx
movd xmm2, r8