summary refs log tree commit diff
path: root/lisc/tools/abi.ml
blob: 0427454269cd944afeb21e2c513ca3d6097c30e0 (plain) (blame)
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
29
30
(* fuzzer *)

module R = Random

let maxargs = 10
let maxmems = 16

type _ basety =
  | Char: int basety
  | Short: int basety
  | Int: int basety
  | Long: int basety
  | Float: float basety
  | Double: float basety

type _ structy =
  | Field: 'a basety * 'b structy -> ('a * 'b) structy
  | Empty: unit structy

type _ abity =
  | Base: 'a basety -> 'a abity
  | Struct: 'a structy -> 'a abity

let _ =
  let f = open_in "/dev/urandom" in
  let s = Char.code (input_char f) in
  let s = Char.code (input_char f) + (s lsl 8) in
  R.init s;
  Printf.printf "Seed: %d\n" s;
  ()