Rescue file from 21_Zymatica_Voice_LLM/hybrid_ports/assembly/xor_fec.asm
Browse files
22_Zymatica_Voice_LLM/hybrid_ports/assembly/xor_fec.asm
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
; Watermark: ip zymatica.space | astronautshe.com
|
| 2 |
+
; Copyright (c) 2026 Zymatica. All rights reserved.
|
| 3 |
+
|
| 4 |
+
section .text
|
| 5 |
+
global xor_fec_byte_block
|
| 6 |
+
xor_fec_byte_block:
|
| 7 |
+
; rcx = ptr to packet A
|
| 8 |
+
; rdx = ptr to packet B (XOR parity)
|
| 9 |
+
; r8 = output ptr
|
| 10 |
+
; r9 = size in bytes
|
| 11 |
+
xor rax, rax
|
| 12 |
+
.loop:
|
| 13 |
+
cmp rax, r9
|
| 14 |
+
jge .done
|
| 15 |
+
mov r10b, [rcx + rax]
|
| 16 |
+
xor r10b, [rdx + rax]
|
| 17 |
+
mov [r8 + rax], r10b
|
| 18 |
+
inc rax
|
| 19 |
+
jmp .loop
|
| 20 |
+
.done:
|
| 21 |
+
ret
|