1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
λ x x0 : word32 * word32 * word32 * word32,
Interp-η
(λ var : Syntax.base_type → Type,
λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
uint32_t x17, uint8_t x18 = subborrow_u32(0x0, x5, x11);
uint32_t x20, uint8_t x21 = subborrow_u32(x18, x7, x13);
uint32_t x23, uint8_t x24 = subborrow_u32(x21, x9, x15);
uint32_t x26, uint8_t x27 = subborrow_u32(x24, x8, x14);
uint32_t x28 = cmovznz32(x27, 0x0, 0xffffffff);
uint32_t x29 = (x28 & 0xffffffff);
uint32_t x31, uint8_t x32 = addcarryx_u32(0x0, x17, x29);
uint32_t x33 = (x28 & 0xffffffff);
uint32_t x35, uint8_t x36 = addcarryx_u32(x32, x20, x33);
uint32_t x37 = (x28 & 0xffffffff);
uint32_t x39, uint8_t x40 = addcarryx_u32(x36, x23, x37);
uint32_t x41 = (x28 & 0x7fffffff);
uint32_t x43, uint8_t _ = addcarryx_u32(x40, x26, x41);
(Return x43, Return x39, Return x35, Return x31))
(x, x0)%core
: word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t)
|