You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
61 lines
1.2 KiB
61 lines
1.2 KiB
; Copyright 2002-2019 Intel Corporation.
|
|
;
|
|
; This software is provided to you as Sample Source Code as defined in the accompanying
|
|
; End User License Agreement for the Intel(R) Software Development Products ("Agreement")
|
|
; section 1.L.
|
|
;
|
|
; This software and the related documents are provided as is, with no express or implied
|
|
; warranties, other than those that are expressly stated in the License.
|
|
|
|
PUBLIC UpdateIcountByAdd
|
|
PUBLIC UpdateIcountByInc
|
|
PUBLIC UpdateIcountByDecInc
|
|
PUBLIC UpdateIcountBySub
|
|
PUBLIC IfFuncWithAddThatCannotBeChangedToLea
|
|
|
|
.code
|
|
|
|
|
|
UpdateIcountByAdd PROC
|
|
|
|
mov rax, qword ptr [rcx]
|
|
add rax, 1
|
|
mov qword ptr [rcx], rax
|
|
ret
|
|
UpdateIcountByAdd ENDP
|
|
|
|
UpdateIcountByInc PROC
|
|
|
|
mov rax, qword ptr [rcx]
|
|
inc rax
|
|
mov qword ptr [rcx], rax
|
|
ret
|
|
UpdateIcountByInc ENDP
|
|
|
|
UpdateIcountByDecInc PROC
|
|
|
|
mov rax, qword ptr [rcx]
|
|
dec rax
|
|
inc rax
|
|
inc rax
|
|
mov qword ptr [rcx], rax
|
|
ret
|
|
UpdateIcountByDecInc ENDP
|
|
|
|
UpdateIcountBySub PROC
|
|
|
|
mov rax, qword ptr [rcx]
|
|
sub rax, -1
|
|
mov qword ptr [rcx], rax
|
|
ret
|
|
UpdateIcountBySub ENDP
|
|
|
|
IfFuncWithAddThatCannotBeChangedToLea PROC
|
|
xor eax, eax
|
|
add eax, 1
|
|
setz al
|
|
ret
|
|
IfFuncWithAddThatCannotBeChangedToLea ENDP
|
|
|
|
end
|