EHS/src/HRNG_GCC.asm
Karutoh bcd71cf2b5
All checks were successful
Build & Release / Windows-AMD64-Build (push) Successful in 1m8s
Build & Release / Linux-AMD64-Build (push) Successful in 1m30s
Build & Release / Linux-AARCH64-Build (push) Successful in 3m21s
Adjusted workflow.
2024-02-05 22:25:30 -08:00

169 lines
3.4 KiB
NASM

global _ZN3ehs4HRNG16GenerateSeed_u64Ev
global _ZN3ehs4HRNG12Generate_u64Emm
global _ZN3ehs4HRNG12Generate_u64Ev
global _ZN3ehs4HRNG16GenerateSeed_s64Ev
global _ZN3ehs4HRNG12Generate_s64Ell
global _ZN3ehs4HRNG12Generate_s64Ev
global _ZN3ehs4HRNG16GenerateSeed_u32Ev
global _ZN3ehs4HRNG12Generate_u32Ejj
global _ZN3ehs4HRNG12Generate_u32Ev
global _ZN3ehs4HRNG16GenerateSeed_s32Ev
global _ZN3ehs4HRNG12Generate_s32Eii
global _ZN3ehs4HRNG12Generate_s32Ev
global _ZN3ehs4HRNG16GenerateSeed_u16Ev
global _ZN3ehs4HRNG12Generate_u16Ett
global _ZN3ehs4HRNG12Generate_u16Ev
global _ZN3ehs4HRNG16GenerateSeed_s16Ev
global _ZN3ehs4HRNG12Generate_s16Ess
global _ZN3ehs4HRNG12Generate_s16Ev
global _ZN3ehs4HRNG15GenerateSeed_u8Ev
global _ZN3ehs4HRNG11Generate_u8Ehh
global _ZN3ehs4HRNG11Generate_u8Ev
global _ZN3ehs4HRNG15GenerateSeed_s8Ev
global _ZN3ehs4HRNG11Generate_s8Eaa
global _ZN3ehs4HRNG11Generate_s8Ev
section .text
_ZN3ehs4HRNG16GenerateSeed_u64Ev:
RDSEED RAX
RET
_ZN3ehs4HRNG12Generate_u64Emm:
RDRAND RAX
SUB RSI, RDI
MOV R8, RSI
XOR RDX, RDX
DIV R8
MOV RAX, RDX
ADD RAX, RDI
RET
_ZN3ehs4HRNG12Generate_u64Ev:
RDRAND RAX
RET
_ZN3ehs4HRNG16GenerateSeed_s64Ev:
RDSEED RAX
RET
_ZN3ehs4HRNG12Generate_s64Ell:
RDRAND RAX
SUB RSI, RDI
MOV R8, RSI
XOR RDX, RDX
DIV R8
MOV RAX, RDX
ADD RAX, RDI
RET
_ZN3ehs4HRNG12Generate_s64Ev:
RDRAND RAX
RET
_ZN3ehs4HRNG16GenerateSeed_u32Ev:
RDSEED EAX
RET
_ZN3ehs4HRNG12Generate_u32Ejj:
RDRAND EAX
SUB ESI, EDI
MOV R8D, ESI
XOR EDX, EDX
DIV R8D
MOV EAX, EDX
ADD EAX, EDI
RET
_ZN3ehs4HRNG12Generate_u32Ev:
RDRAND EAX
RET
_ZN3ehs4HRNG16GenerateSeed_s32Ev:
RDSEED EAX
RET
_ZN3ehs4HRNG12Generate_s32Eii:
RDRAND EAX
SUB ESI, EDI
MOV R8D, ESI
XOR EDX, EDX
DIV R8D
MOV EAX, EDX
ADD EAX, EDI
RET
_ZN3ehs4HRNG12Generate_s32Ev:
RDRAND EAX
RET
_ZN3ehs4HRNG16GenerateSeed_u16Ev:
RDSEED AX
RET
_ZN3ehs4HRNG12Generate_u16Ett:
RDRAND AX
SUB SI, DI
MOV R8W, SI
XOR DX, DX
DIV R8W
MOV AX, DX
ADD AX, DI
RET
_ZN3ehs4HRNG12Generate_u16Ev:
RDRAND AX
RET
_ZN3ehs4HRNG16GenerateSeed_s16Ev:
RDSEED AX
RET
_ZN3ehs4HRNG12Generate_s16Ess:
RDRAND AX
SUB SI, DI
MOV R8W, SI
XOR DX, DX
DIV R8W
MOV AX, DX
ADD AX, DI
RET
_ZN3ehs4HRNG12Generate_s16Ev:
RDRAND AX
RET
_ZN3ehs4HRNG15GenerateSeed_u8Ev:
RDSEED AX
RET
_ZN3ehs4HRNG11Generate_u8Ehh:
RDRAND AX
XOR AH, AH
SUB SIL, DIL
MOV R8B, SIL
DIV R8B
MOV AL, AH
ADD AL, DIL
RET
_ZN3ehs4HRNG11Generate_u8Ev:
RDRAND AX
RET
_ZN3ehs4HRNG15GenerateSeed_s8Ev:
RDSEED AX
RET
_ZN3ehs4HRNG11Generate_s8Eaa:
RDRAND AX
XOR AH, AH
SUB SIL, DIL
MOV R8B, SIL
DIV R8B
MOV AL, AH
ADD AL, DIL
RET
_ZN3ehs4HRNG11Generate_s8Ev:
RDRAND AX
RET