summaryrefslogtreecommitdiff
path: root/src/mono_opt.sml
diff options
context:
space:
mode:
authorGravatar Benjamin Barenblat <bbaren@mit.edu>2015-04-14 00:50:26 -0400
committerGravatar Benjamin Barenblat <bbaren@mit.edu>2015-04-14 00:50:26 -0400
commit2721267f40e35a3a2acfa8ee332bda454823ef83 (patch)
treefd2461d0f1474aedfc1d6585e7f7e140674562de /src/mono_opt.sml
parent2e1bbc9749f1ad089c0fd366b74646921f35a759 (diff)
parent6e7a226de27e3689d87c11e5c12f384fb399c499 (diff)
Merge branch 'upstream' into dfsg_clean20150412+dfsg
Diffstat (limited to 'src/mono_opt.sml')
-rw-r--r--src/mono_opt.sml4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/mono_opt.sml b/src/mono_opt.sml
index 2d40e0f0..04ef7f50 100644
--- a/src/mono_opt.sml
+++ b/src/mono_opt.sml
@@ -630,7 +630,9 @@ fun exp e =
EFfiApp ("Basis", "writec", [e])
| EBinop (_, "+", (EPrim (Prim.Int n1), _), (EPrim (Prim.Int n2), _)) => EPrim (Prim.Int (Int64.+ (n1, n2)))
-
+ | EBinop (_, "-", (EPrim (Prim.Int n1), _), (EPrim (Prim.Int n2), _)) => EPrim (Prim.Int (Int64.- (n1, n2)))
+ | EBinop (_, "*", (EPrim (Prim.Int n1), _), (EPrim (Prim.Int n2), _)) => EPrim (Prim.Int (Int64.* (n1, n2)))
+
| _ => e
and optExp e = #1 (U.Exp.map {typ = typ, exp = exp} e)