summaryrefslogtreecommitdiff
path: root/typing/primitive.ml
diff options
context:
space:
mode:
Diffstat (limited to 'typing/primitive.ml')
-rw-r--r--typing/primitive.ml56
1 files changed, 0 insertions, 56 deletions
diff --git a/typing/primitive.ml b/typing/primitive.ml
deleted file mode 100644
index fbbdb05b11..0000000000
--- a/typing/primitive.ml
+++ /dev/null
@@ -1,56 +0,0 @@
-(***********************************************************************)
-(* *)
-(* Objective Caml *)
-(* *)
-(* Xavier Leroy, projet Cristal, INRIA Rocquencourt *)
-(* *)
-(* Copyright 1996 Institut National de Recherche en Informatique et *)
-(* en Automatique. All rights reserved. This file is distributed *)
-(* under the terms of the Q Public License version 1.0. *)
-(* *)
-(***********************************************************************)
-
-(* $Id$ *)
-
-(* Description of primitive functions *)
-
-open Misc
-
-type description =
- { prim_name: string; (* Name of primitive or C function *)
- prim_arity: int; (* Number of arguments *)
- prim_alloc: bool; (* Does it allocates or raise? *)
- prim_native_name: string; (* Name of C function for the nat. code gen. *)
- prim_native_float: bool } (* Does the above operate on unboxed floats? *)
-
-let parse_declaration arity decl =
- match decl with
- | name :: "noalloc" :: name2 :: "float" :: _ ->
- {prim_name = name; prim_arity = arity; prim_alloc = false;
- prim_native_name = name2; prim_native_float = true}
- | name :: "noalloc" :: name2 :: _ ->
- {prim_name = name; prim_arity = arity; prim_alloc = false;
- prim_native_name = name2; prim_native_float = false}
- | name :: name2 :: "float" :: _ ->
- {prim_name = name; prim_arity = arity; prim_alloc = true;
- prim_native_name = name2; prim_native_float = true}
- | name :: "noalloc" :: _ ->
- {prim_name = name; prim_arity = arity; prim_alloc = false;
- prim_native_name = ""; prim_native_float = false}
- | name :: name2 :: _ ->
- {prim_name = name; prim_arity = arity; prim_alloc = true;
- prim_native_name = name2; prim_native_float = false}
- | name :: _ ->
- {prim_name = name; prim_arity = arity; prim_alloc = true;
- prim_native_name = ""; prim_native_float = false}
- | [] ->
- fatal_error "Primitive.parse_declaration"
-
-let description_list p =
- let list = [p.prim_name] in
- let list = if not p.prim_alloc then "noalloc" :: list else list in
- let list =
- if p.prim_native_name <> "" then p.prim_native_name :: list else list
- in
- let list = if p.prim_native_float then "float" :: list else list in
- List.rev list