diff options
author | Xavier Leroy <xavier.leroy@inria.fr> | 2015-10-12 11:48:36 +0200 |
---|---|---|
committer | Xavier Leroy <xavier.leroy@inria.fr> | 2015-10-12 11:48:36 +0200 |
commit | 3ab947ce345e9d18ddcda57d8f88b2a9b8f5d267 (patch) | |
tree | 41afaa730849b6f9e8116ddc3068044928997d8c /checklink/Safe32.ml | |
parent | ef0f69dc1caeab169dcefca4d8b89f4d9e756bb5 (diff) | |
download | compcert-3ab947ce345e9d18ddcda57d8f88b2a9b8f5d267.tar.gz compcert-3ab947ce345e9d18ddcda57d8f88b2a9b8f5d267.zip |
Removal of cchecklink, superseded by AbsInt's Valex tool.
Diffstat (limited to 'checklink/Safe32.ml')
-rw-r--r-- | checklink/Safe32.ml | 34 |
1 files changed, 0 insertions, 34 deletions
diff --git a/checklink/Safe32.ml b/checklink/Safe32.ml deleted file mode 100644 index e72563d7..00000000 --- a/checklink/Safe32.ml +++ /dev/null @@ -1,34 +0,0 @@ -(* "Hacker's Delight", section 2.12 *) - -let ( + ) x y = Int32.( - let z = add x y in - (* Overflow occurs iff x and y have same sign and z's sign is different *) - if logand (logxor z x) (logxor z y) < 0l - then raise Exc.Int32Overflow - else z -) - -let ( - ) x y = Int32.( - let z = sub x y in - (* Overflow occurs iff x and y have opposite signs and z and x have - opposite signs *) - if logand (logxor x y) (logxor z x) < 0l - then raise Exc.Int32Overflow - else z -) - -let ( * ) x y = Int32.( - let z = mul x y in - if (x = min_int && y < 0l) || (y <> 0l && div z y <> x) - then raise Exc.Int32Overflow - else z -) - -let to_int i32 = Int32.( - let i = to_int i32 in - if i32 = of_int i - then i - else raise Exc.IntOverflow -) - -let of_int = Int32.of_int |