UltrafastSecp256k1/cpu/test_arm64.cpp
vano 9ffcc985c8 style: replace all Unicode with ASCII across entire codebase
All non-ASCII characters replaced with ASCII equivalents:
- Greek letters: mu->u, phi->phi, lambda->lambda, etc.
- Box drawing: single/double -> +, -, |, =
- Math symbols: x (multiply), != (not equal), -> (arrow), etc.
- Superscripts/subscripts: ^2, ^3, _1, _2, etc.
- Emoji/bullets: [OK], [FAIL], [!], *, etc.
- parse_benchmark.py: simplified regex (only ASCII 'us' needed now)

190 files changed. Zero non-ASCII bytes remain in source.
Build verified: library, benchmarks, selftests all pass.
2026-02-23 02:16:57 +04:00

15 lines
587 B
C++

#include <stdint.h>
void fe52_mul_inner(uint64_t* r, const uint64_t* a, const uint64_t* b) {
unsigned __int128 c, d;
uint64_t t3, t4, tx, u0;
const uint64_t a0 = a[0], a1 = a[1], a2 = a[2], a3 = a[3], a4 = a[4];
const uint64_t R52 = 0x1000003D10ULL;
const uint64_t M52 = 0xFFFFFFFFFFFFFULL;
d = (unsigned __int128)a0 * b[3] + (unsigned __int128)a1 * b[2] + (unsigned __int128)a2 * b[1] + (unsigned __int128)a3 * b[0];
c = (unsigned __int128)a4 * b[4];
d += (unsigned __int128)R52 * (uint64_t)c;
c >>= 64;
t3 = (uint64_t)d & M52;
d >>= 52;
}