From 5ede69c8e67e6de34af2850695ae7ee24f8588ea Mon Sep 17 00:00:00 2001 From: Pierre-Marie Pédrot Date: Sat, 20 Aug 2016 01:11:55 +0200 Subject: Use a better data structure for VM compilation of free vars. This fixes #3450 and probably provides a huge speed-up to many instances. --- kernel/cbytecodes.mli | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'kernel/cbytecodes.mli') diff --git a/kernel/cbytecodes.mli b/kernel/cbytecodes.mli index 6fa0841af9..5f1f09d00c 100644 --- a/kernel/cbytecodes.mli +++ b/kernel/cbytecodes.mli @@ -139,11 +139,14 @@ type fv = fv_elem array closed terms. *) exception NotClosed +module FvMap : Map.S with type key = fv_elem + (*spiwack: both type have been moved from Cbytegen because I needed them for the retroknowledge *) type vm_env = { size : int; (** length of the list [n] *) - fv_rev : fv_elem list (** [fvn; ... ;fv1] *) + fv_rev : fv_elem list; (** [fvn; ... ;fv1] *) + fv_fwd : int FvMap.t; (** reverse mapping *) } -- cgit v1.2.3