File tree 3 files changed +15
-8
lines changed
3 files changed +15
-8
lines changed Original file line number Diff line number Diff line change @@ -141,12 +141,14 @@ OPTION EPILOGUE:NONE
141
141
;; RCX (in): arg1, byte* buffer
142
142
;; RDX (in): arg2, size_t bsize
143
143
144
- MASM_RDRAND_GenerateBlock PROC ;; arg1:QWORD, arg2:QWORD
144
+ MASM_RDRAND_GenerateBlock PROC FRAME ;; arg1:QWORD, arg2:QWORD
145
145
146
146
MWSIZE EQU 08h ;; machine word size
147
147
buffer EQU rcx
148
148
bsize EQU rdx
149
149
150
+ .endprolog
151
+
150
152
;; Top of While loop
151
153
RDRAND_GenerateBlock_Top:
152
154
Original file line number Diff line number Diff line change @@ -141,12 +141,14 @@ OPTION EPILOGUE:NONE
141
141
;; RCX (in): arg1, byte* buffer
142
142
;; RDX (in): arg2, size_t bsize
143
143
144
- MASM_RDSEED_GenerateBlock PROC ;; arg1:QWORD, arg2:QWORD
144
+ MASM_RDSEED_GenerateBlock PROC FRAME ;; arg1:QWORD, arg2:QWORD
145
145
146
146
MWSIZE EQU 08h ;; machine word size
147
147
buffer EQU rcx
148
148
bsize EQU rdx
149
149
150
+ .endprolog
151
+
150
152
;; Top of While loop
151
153
RDSEED_GenerateBlock_Top:
152
154
Original file line number Diff line number Diff line change @@ -1980,7 +1980,8 @@ SHA256_HashMultipleBlocks_SSE2 ENDP
1980
1980
;; ctrl = rcx
1981
1981
1982
1982
ALIGN 8
1983
- XGETBV64 PROC
1983
+ XGETBV64 PROC FRAME
1984
+ .endprolog
1984
1985
;; query
1985
1986
DB 0fh , 01h , 0d0h
1986
1987
;; xcr = (EDX << 32) | EAX
@@ -1996,9 +1997,11 @@ XGETBV64 ENDP
1996
1997
;; output = r8
1997
1998
1998
1999
ALIGN 8
1999
- CPUID64 PROC
2000
+ CPUID64 PROC FRAME
2000
2001
;; preserve per ABI
2001
- mov r9 , rbx
2002
+ mov [ rsp + 8 ], rbx
2003
+ .savereg rbx , 8
2004
+ .endprolog
2002
2005
;; eax = func
2003
2006
mov rax , rcx
2004
2007
;; ecx = subfunc
@@ -2010,10 +2013,10 @@ CPUID64 PROC
2010
2013
mov [ r8 + 4 ], ebx
2011
2014
mov [ r8 + 8 ], ecx
2012
2015
mov [ r8 + 12 ], edx
2013
- ;; restore
2014
- mov rbx , r9
2015
- ;; return
2016
+ ;; return value
2016
2017
mov rax , 1
2018
+ ;; restore
2019
+ mov rbx , [ rsp + 8 ]
2017
2020
ret
2018
2021
CPUID64 ENDP
2019
2022
You can’t perform that action at this time.
0 commit comments