struct byte_stack *byte_stack_list;
\f
+#ifndef BOEHM_GC
/* Mark objects on byte_stack_list. Called during GC. */
void
}
}
}
-
+#endif /* BOEHM_GC */
\f
/* Fetch the next byte from the bytecode stream */
/* Actions that must be performed before and after calling a function
that might GC. */
-#define BEFORE_POTENTIAL_GC() stack.top = top
-#define AFTER_POTENTIAL_GC() stack.top = NULL
+#ifdef BOEHM_GC
+# define BEFORE_POTENTIAL_GC()
+# define AFTER_POTENTIAL_GC()
+#else
+# define BEFORE_POTENTIAL_GC() stack.top = top
+# define AFTER_POTENTIAL_GC() stack.top = NULL
+#endif
+#ifndef BOEHM_GC
/* Garbage collect if we have consed enough since the last time.
We do this at every branch, to avoid loops that never GC. */
AFTER_POTENTIAL_GC (); \
} \
else
+#else
+#define MAYBE_GC()
+#endif /* BOEHM_GC */
/* Check for jumping out of range. */