;------------------------------------------------------------------------------\r
;\r
-; Copyright (c) 2006, Intel Corporation. All rights reserved.<BR>\r
+; Copyright (c) 2006 - 2022, Intel Corporation. All rights reserved.<BR>\r
; SPDX-License-Identifier: BSD-2-Clause-Patent\r
;\r
; Module Name:\r
;------------------------------------------------------------------------------\r
global ASM_PFX(InternalMemSetMem32)\r
ASM_PFX(InternalMemSetMem32):\r
- DB 0x49, 0xf, 0x6e, 0xc0 ; movd mm0, r8 (Value)\r
+ movq mm0, r8\r
mov rax, rcx ; rax <- Buffer\r
xchg rcx, rdx ; rcx <- Count rdx <- Buffer\r
shr rcx, 1 ; rcx <- # of qwords to set\r
jz @SetDwords\r
- DB 0xf, 0x70, 0xC0, 0x44 ; pshufw mm0, mm0, 44h\r
+ pshufw mm0, mm0, 44h\r
.0:\r
- DB 0xf, 0xe7, 0x2 ; movntq [rdx], mm0\r
+ movntq [rdx], mm0\r
lea rdx, [rdx + 8] ; use "lea" to avoid flag changes\r
loop .0\r
mfence\r
@SetDwords:\r
jnc .1\r
- DB 0xf, 0x7e, 0x2 ; movd [rdx], mm0\r
+ movd [rdx], mm0\r
.1:\r
ret\r
\r