zupt/jasmin/zupt_mlkem_select.s
Cristian Cezar Moisés e5f5d32aab v2.2.2
2026-05-01 09:58:47 -03:00

42 lines
955 B
ArmAsm

# SPDX-License-Identifier: AGPL-3.0-or-later
# Copyright (c) 2026 Cristian Cezar Moisés
# Generated from jasmin/zupt_mlkem_select.jazz by jasminc.
.intel_syntax noprefix
.text
.p2align 5
.global zupt_ct_select_32
.type zupt_ct_select_32, %function
zupt_ct_select_32:
mov rax, 0
sub rax, rcx
mov rcx, qword ptr[rsi]
mov r8, qword ptr[rdx]
mov r9, rcx
xor r9, r8
and r9, rax
xor rcx, r9
mov qword ptr[rdi], rcx
mov rcx, qword ptr[rsi + 8]
mov r8, qword ptr[rdx + 8]
mov r9, rcx
xor r9, r8
and r9, rax
xor rcx, r9
mov qword ptr[rdi + 8], rcx
mov rcx, qword ptr[rsi + 16]
mov r8, qword ptr[rdx + 16]
mov r9, rcx
xor r9, r8
and r9, rax
xor rcx, r9
mov qword ptr[rdi + 16], rcx
mov rcx, qword ptr[rsi + 24]
mov r8, qword ptr[rdx + 24]
mov r9, rcx
xor r9, r8
and r9, rax
xor rcx, r9
mov qword ptr[rdi + 24], rcx
ret
.ident "Jasmin Compiler 2026.03.0"
.section ".note.GNU-stack", "", %progbits