summaryrefslogtreecommitdiff
path: root/libguile/vm-i-system.c
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2009-11-20 13:31:07 +0100
committerAndy Wingo <wingo@pobox.com>2009-11-26 00:25:07 +0100
commit9022ff183c44976b7f28503f9f78c523b578846a (patch)
tree2fd53c6909ec5dd91eafd48013a2e1ce4a06a7c8 /libguile/vm-i-system.c
parent5bdea5bd3de9a592e91c194d73bfd0681894a2ca (diff)
downloadguile-9022ff183c44976b7f28503f9f78c523b578846a.tar.gz
remove code that manages the method cache
* libguile/goops.h (SCM_MCACHE_N_SPECIALIZED) (SCM_SET_MCACHE_N_SPECIALIZED, SCM_INITIAL_MCACHE_SIZE) (scm_make_method_cache, scm_memoize_method, scm_mcache_lookup_cmethod) (scm_mcache_compute_cmethod): * libguile/goops.c: Remove these procedures which managed the method cache. There's still a slot there but it's not initialized. The method cache is no longer necessary. * module/oop/goops/dispatch.scm (memoize-method!): Change to not take a "cache" argument. * libguile/eval.i.c: * libguile/vm-i-system.c: Remove dispatch via the method cache.
Diffstat (limited to 'libguile/vm-i-system.c')
-rw-r--r--libguile/vm-i-system.c33
1 files changed, 0 insertions, 33 deletions
diff --git a/libguile/vm-i-system.c b/libguile/vm-i-system.c
index 59a5520f7..1f376ab70 100644
--- a/libguile/vm-i-system.c
+++ b/libguile/vm-i-system.c
@@ -766,17 +766,6 @@ VM_DEFINE_INSTRUCTION (53, call, "call", 1, -1, 1)
sp[-nargs] = SCM_STRUCT_PROCEDURE (x);
goto vm_call;
}
- if (SCM_STRUCTP (x) && SCM_OBJ_CLASS_FLAGS (x) & SCM_CLASSF_PURE_GENERIC)
- {
- SCM args = SCM_EOL;
- int n = nargs;
- SCM* walk = sp;
- SYNC_REGISTER ();
- while (n--)
- args = scm_cons (*walk--, args);
- *walk = scm_mcache_compute_cmethod (SCM_GENERIC_METHOD_CACHE (x), args);
- goto vm_call;
- }
/*
* Other interpreted or compiled call
*/
@@ -855,17 +844,6 @@ VM_DEFINE_INSTRUCTION (54, goto_args, "goto/args", 1, -1, 1)
sp[-nargs] = SCM_STRUCT_PROCEDURE (x);
goto vm_goto_args;
}
- if (SCM_STRUCTP (x) && SCM_OBJ_CLASS_FLAGS (x) & SCM_CLASSF_PURE_GENERIC)
- {
- SCM args = SCM_EOL;
- int n = nargs;
- SCM* walk = sp;
- SYNC_REGISTER ();
- while (n--)
- args = scm_cons (*walk--, args);
- *walk = scm_mcache_compute_cmethod (SCM_GENERIC_METHOD_CACHE (x), args);
- goto vm_goto_args;
- }
/*
* Other interpreted or compiled call
@@ -952,17 +930,6 @@ VM_DEFINE_INSTRUCTION (57, mv_call, "mv-call", 4, -1, 1)
sp[-nargs] = SCM_STRUCT_PROCEDURE (x);
goto vm_mv_call;
}
- if (SCM_STRUCTP (x) && SCM_OBJ_CLASS_FLAGS (x) & SCM_CLASSF_PURE_GENERIC)
- {
- SCM args = SCM_EOL;
- int n = nargs;
- SCM* walk = sp;
- SYNC_REGISTER ();
- while (n--)
- args = scm_cons (*walk--, args);
- *walk = scm_mcache_compute_cmethod (SCM_GENERIC_METHOD_CACHE (x), args);
- goto vm_mv_call;
- }
/*
* Other interpreted or compiled call
*/