From c3b7833e72774f1aaa20fbae3138ced1a8d040c3 Mon Sep 17 00:00:00 2001 From: Ivan Baravy Date: Mon, 15 Nov 2021 21:20:52 +0000 Subject: [PATCH] libimg: Avoid SSE pinsrw instruction in blend_mmx.asm pinsrw can act on MMX registers, but it is still an SSE instruction. git-svn-id: svn://kolibrios.org@9273 a494cfbc-eb01-0410-851d-a64ba20cac60 --- .../develop/libraries/libs-dev/libimg/blend_mmx.asm | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/programs/develop/libraries/libs-dev/libimg/blend_mmx.asm b/programs/develop/libraries/libs-dev/libimg/blend_mmx.asm index 4f252eff31..dea9f2b901 100644 --- a/programs/develop/libraries/libs-dev/libimg/blend_mmx.asm +++ b/programs/develop/libraries/libs-dev/libimg/blend_mmx.asm @@ -49,11 +49,12 @@ proc xcf._.blend_rgb pmullw mm3, mm1 psllw mm2, 8 paddw mm3, mm2 - pinsrw mm3, ebx, 3 psrlw mm3, 8 packuswb mm3, mm0 movd eax, mm3 - + rol eax, 8 + mov al, bh + ror eax, 8 ret endp @@ -90,10 +91,10 @@ proc xcf._.blend_gray pmullw mm3, mm1 psllw mm2, 8 paddw mm3, mm2 - pinsrw mm3, ebx, 1 psrlw mm3, 8 packuswb mm3, mm0 movd eax, mm3 + mov ah, bh ret endp @@ -199,10 +200,12 @@ proc xcf._.composite_rgb_00 _copy_width, _copy_height, _bottom_total_bpl, _img_t pmullw mm3, mm1 psllw mm2, 8 paddw mm3, mm2 - pinsrw mm3, ebx, 3 psrlw mm3, 8 packuswb mm3, mm0 movd eax, mm3 + rol eax, 8 + mov al, bh + ror eax, 8 stosd dec ecx @@ -257,10 +260,10 @@ proc xcf._.composite_gray_00 _copy_width, _copy_height, _bottom_total_bpl, _img_ pmullw mm3, mm1 psllw mm2, 8 paddw mm3, mm2 - pinsrw mm3, ebx, 1 psrlw mm3, 8 packuswb mm3, mm0 movd eax, mm3 + mov ah, bh stosw dec ecx