diff options
| author | ppedrot | 2013-11-15 14:40:26 +0000 |
|---|---|---|
| committer | ppedrot | 2013-11-15 14:40:26 +0000 |
| commit | 87953e62b73ed431521b0167fb3f2ee8768cae8b (patch) | |
| tree | 628483c2ae51e2fc3278ca9a36d11cdbc21c0c83 /kernel/pre_env.ml | |
| parent | 5bf9e67bbee3cee047ad8bfb7fd3c3ffae5f1245 (diff) | |
Revert "Fast lookup_named in environments, based on maps instead of lists."
Contrarily to my machine results, it seems that it tore down the performance of
Coq on benchmarks.
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@17091 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'kernel/pre_env.ml')
| -rw-r--r-- | kernel/pre_env.ml | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/kernel/pre_env.ml b/kernel/pre_env.ml index b98a3d3ae7..e543c4e687 100644 --- a/kernel/pre_env.ml +++ b/kernel/pre_env.ml @@ -49,7 +49,6 @@ type named_vals = (Id.t * lazy_val) list type env = { env_globals : globals; env_named_context : named_context; - env_named_context_map : named_declaration Id.Map.t; env_named_vals : named_vals; env_rel_context : rel_context; env_rel_val : lazy_val list; @@ -58,9 +57,9 @@ type env = { env_conv_oracle : Conv_oracle.oracle; retroknowledge : Retroknowledge.retroknowledge } -type named_context_val = named_context * named_declaration Id.Map.t * named_vals +type named_context_val = named_context * named_vals -let empty_named_context_val = [], Id.Map.empty, [] +let empty_named_context_val = [],[] let empty_env = { env_globals = { @@ -69,7 +68,6 @@ let empty_env = { env_modules = MPmap.empty; env_modtypes = MPmap.empty}; env_named_context = empty_named_context; - env_named_context_map = Id.Map.empty; env_named_vals = []; env_rel_context = empty_rel_context; env_rel_val = []; @@ -105,10 +103,10 @@ let env_of_rel n env = (* Named context *) -let push_named_context_val d (ctxt,map,vals) = +let push_named_context_val d (ctxt,vals) = let id,_,_ = d in let rval = ref VKnone in - Context.add_named_decl d ctxt, Id.Map.add id d map, (id,rval)::vals + Context.add_named_decl d ctxt, (id,rval)::vals let push_named d env = (* if not (env.env_rel_context = []) then raise (ASSERT env.env_rel_context); @@ -117,7 +115,6 @@ let push_named d env = let rval = ref VKnone in { env_globals = env.env_globals; env_named_context = Context.add_named_decl d env.env_named_context; - env_named_context_map = Id.Map.add id d env.env_named_context_map; env_named_vals = (id, rval) :: env.env_named_vals; env_rel_context = env.env_rel_context; env_rel_val = env.env_rel_val; |
