File: shl_int.sail

package info (click to toggle)
sail-ocaml 0.19.1%2Bdfsg5-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 18,008 kB
  • sloc: ml: 75,941; ansic: 8,848; python: 1,342; exp: 560; sh: 474; makefile: 218; cpp: 36
file content (28 lines) | stat: -rw-r--r-- 757 bytes parent folder | download
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
27
28
default Order dec

$include <exception_basic.sail>
$include <flow.sail>
$include <vector_dec.sail>
$include <arith.sail>

function main (() : unit) -> unit = {
  assert(shl_int(1, 10) == 1024);
  assert(shl_int(1, 2) == 4);
  assert(shl_int(1, 3) == 8);
  assert(shl_int(1, 4) == 16);
  assert(shl_int(1, 5) == 32);
  assert(shl_int(1, 6) == 64);
  assert(shl_int(8, 0) == 8);
  assert(shl_int(8, 2) == 32);
  assert(shl_int(8, 3) == 64);

  assert(shl_int(1024, -10) == 1);
  assert(shl_int(4,     -2) == 1);
  assert(shl_int(8,     -3) == 1);
  assert(shl_int(16,    -4) == 1);
  assert(shl_int(32,    -5) == 1);
  assert(shl_int(64,    -6) == 1);
  assert(shl_int(8,     -0) == 8);
  assert(shl_int(32,    -2) == 8);
  assert(shl_int(64,    -3) == 8);
}