diff options
Diffstat (limited to 'libguile/vm-engine.c')
-rw-r--r-- | libguile/vm-engine.c | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/libguile/vm-engine.c b/libguile/vm-engine.c index 2d9be38ab..7ce306caa 100644 --- a/libguile/vm-engine.c +++ b/libguile/vm-engine.c @@ -110,23 +110,23 @@ #endif #if VM_USE_HOOKS -#define RUN_HOOK(h) \ - do { \ - if (SCM_UNLIKELY (VP->trace_level)) \ - { \ - SYNC_IP (); \ - CALL_INTRINSIC (invoke_##h##_hook, (thread)); \ - CACHE_SP (); \ - } \ +#define RUN_HOOK(H, h) \ + do { \ + if (SCM_UNLIKELY (VP->hooks_enabled[SCM_VM_##H##_HOOK])) \ + { \ + SYNC_IP (); \ + invoke_##h##_hook (thread); \ + CACHE_SP (); \ + } \ } while (0) #else -#define RUN_HOOK(h) +#define RUN_HOOK(H, h) #endif -#define APPLY_HOOK() RUN_HOOK (apply) -#define RETURN_HOOK() RUN_HOOK (return) -#define NEXT_HOOK() RUN_HOOK (next) -#define ABORT_HOOK() RUN_HOOK (abort) +#define APPLY_HOOK() RUN_HOOK (APPLY, apply) +#define RETURN_HOOK() RUN_HOOK (RETURN, return) +#define NEXT_HOOK() RUN_HOOK (NEXT, next) +#define ABORT_HOOK() RUN_HOOK (ABORT, abort) |