summaryrefslogtreecommitdiff
path: root/MdePkg/Library/BaseMemoryLibSse2/x64/SetMem64.asm
diff options
context:
space:
mode:
Diffstat (limited to 'MdePkg/Library/BaseMemoryLibSse2/x64/SetMem64.asm')
-rw-r--r--MdePkg/Library/BaseMemoryLibSse2/x64/SetMem64.asm6
1 files changed, 3 insertions, 3 deletions
diff --git a/MdePkg/Library/BaseMemoryLibSse2/x64/SetMem64.asm b/MdePkg/Library/BaseMemoryLibSse2/x64/SetMem64.asm
index ef94c562b5..a26b9412d4 100644
--- a/MdePkg/Library/BaseMemoryLibSse2/x64/SetMem64.asm
+++ b/MdePkg/Library/BaseMemoryLibSse2/x64/SetMem64.asm
@@ -32,9 +32,10 @@
; )
;------------------------------------------------------------------------------
InternalMemSetMem64 PROC
- mov rax, rcx
+ mov rax, rcx ; rax <- Buffer
+ xchg rcx, rdx ; rcx <- Count & rdx <- Buffer
test dl, 8
- xchg rcx, rdx
+ movd xmm0, r8
jz @F
mov [rdx], r8
add rdx, 8
@@ -42,7 +43,6 @@ InternalMemSetMem64 PROC
@@:
shr rcx, 1
jz @SetQwords
- movd xmm0, r8
movlhps xmm0, xmm0
@@:
movntdq [rdx], xmm0