File: StaticOperations.mli

package info (click to toggle)
herdtools7 7.58-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 19,732 kB
  • sloc: ml: 128,583; ansic: 3,827; makefile: 670; python: 407; sh: 212; awk: 14
file content (29 lines) | stat: -rw-r--r-- 778 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
29
open AST

val constraint_binop :
  binop -> int_constraint list -> int_constraint list -> int_constraint list
(** [constraint_binop op cs1 cs2] is the set of constraints given by the
    element wise application of [op].

    Supported [op]s: [DIV], [DIVRM], [MUL], [PLUS], [MINUS], [SHR], [SHL],
    [MOD], [POW].
*)

module type CONFIG = sig
  val fail : unit -> 'a
  val warn_from : loc:'a annotated -> Error.warning_desc -> unit
end

module Make : functor (C : CONFIG) -> sig
  val annotate_constraint_binop :
    loc:'a annotated ->
    StaticEnv.env ->
    binop ->
    int_constraint list ->
    int_constraint list ->
    int_constraint list
end

(* Used by asllib/tests/ConstraintBinops.ml *)

val filter_reduce_constraint_div : int_constraint -> int_constraint option