blob: 7ecc268515802d095c43ed10d438f23127d5d4b0 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
Interp-η
(λ var : Syntax.base_type → Type,
λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
uint64_t x15 = (x14 | x13);
uint64_t x16 = (x12 | x15);
uint64_t x17 = (x10 | x16);
uint64_t x18 = (x8 | x17);
uint64_t x19 = (x6 | x18);
uint64_t x20 = (x4 | x19);
uint64_t x21 = (x2 | x20);
return x21)
x
: word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (Tbase match (if match match (let (lower, _) := Synthesis.P.bound1 in
lower) with
| 0%Z => Eq
| Z.pos _ => Lt
| Z.neg _ => Gt
end with
| Eq => true
| Lt => true
| Gt => false
end then Some 6 else None) with
| Some lgsz => Syntax.TWord lgsz
| None => Syntax.TZ
end)
|