| 1234567891011121314151617181920212223242526272829303132 |
- ;# callee-saved registers - Microsoft x64 calling convention
- push rbx
- push rbp
- push rdi
- push rsi
- push r12
- push r13
- push r14
- push r15
- sub rsp, 80
- movdqu xmmword ptr [rsp+64], xmm6
- movdqu xmmword ptr [rsp+48], xmm7
- movdqu xmmword ptr [rsp+32], xmm8
- movdqu xmmword ptr [rsp+16], xmm9
- movdqu xmmword ptr [rsp+0], xmm10
- sub rsp, 80
- movdqu xmmword ptr [rsp+64], xmm11
- movdqu xmmword ptr [rsp+48], xmm12
- movdqu xmmword ptr [rsp+32], xmm13
- movdqu xmmword ptr [rsp+16], xmm14
- movdqu xmmword ptr [rsp+0], xmm15
- ; function arguments
- push rcx ; RegisterFile& registerFile
- mov rbp, qword ptr [rdx] ; "mx", "ma"
- mov rdi, qword ptr [rdx+8] ; uint8_t* dataset
- mov rsi, r8 ; convertible_t* scratchpad
- mov rbx, r9 ; loop counter
- include program_prologue_load.inc
- jmp randomx_program_loop_begin
|