From 1364eccf18dc516a3bdf84db97e37db59346b544 Mon Sep 17 00:00:00 2001 From: Josh Berdine Date: Mon, 23 Mar 2020 06:19:15 -0700 Subject: [PATCH] [sledge] No longer need to Marshal with Closures support Summary: Now that the containers use functorial interfaces with representations that do not include closures for the comparison functions, it is not necessary to enable closure support when Marshaling the IR between the frontend and backend. This should be slightly faster, but more importantly, it means that the serialized form is stable across changes to the analyzer that do not change the representation of the IR types, and in particular, the dbg and opt binaries can use the same serialized form. Reviewed By: jvillard Differential Revision: D20589880 fbshipit-source-id: 63f07335e --- sledge/bin/sledge_cli.ml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/sledge/bin/sledge_cli.ml b/sledge/bin/sledge_cli.ml index 2465e68d1..8effdf035 100644 --- a/sledge/bin/sledge_cli.ml +++ b/sledge/bin/sledge_cli.ml @@ -62,8 +62,7 @@ let command ~summary ?readme param = Command.basic ~summary ?readme (trace *> param >>| wrap) let marshal program file = - Out_channel.with_file file ~f:(fun oc -> - Marshal.to_channel oc program [Marshal.Closures] ) + Out_channel.with_file file ~f:(fun oc -> Marshal.to_channel oc program []) let unmarshal file () = In_channel.with_file