mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-07-02 23:50:47 +02:00
Convert scm_gc_malloc* calls to scm_allocate*
* libguile/arrays.c: * libguile/bitvectors.c: * libguile/bytevectors.c: * libguile/chooks.c: * libguile/continuations.c: * libguile/control.c: * libguile/dynstack.c: * libguile/ephemerons.c: * libguile/filesys.c: * libguile/foreign.c: * libguile/fports.c: * libguile/frames.c: * libguile/gsubr.c: * libguile/hashtab.c: * libguile/i18n.c: * libguile/integers.c: * libguile/intrinsics.c: * libguile/load.c: * libguile/loader.c: * libguile/macros.c: * libguile/numbers.c: * libguile/options.c: * libguile/ports.c: * libguile/programs.h: * libguile/random.c: * libguile/read.c: * libguile/regex-posix.c: * libguile/smob.c: * libguile/srfi-14.c: * libguile/strings.c: * libguile/struct.c: * libguile/threads.c: * libguile/threads.h: * libguile/values.c: * libguile/vm.c: Convert all calls to scm_gc_malloc_pointerless to scm_allocate_pointerless. Convert scm_gc_malloc to either scm_allocate_tagged or scm_allocate_sloppy, depending on whether the value can be precisely traced or not.
This commit is contained in:
parent
290a57b1b0
commit
f2ad6525e6
35 changed files with 126 additions and 102 deletions
|
@ -171,8 +171,8 @@ capture_stack (scm_thread *thread,
|
|||
|
||||
stack_size = stack_top - sp;
|
||||
|
||||
p = scm_gc_malloc (sizeof (*p) + stack_size * sizeof (p->stack_slice[0]),
|
||||
"capture_vm_cont");
|
||||
p = scm_allocate_tagged (SCM_I_CURRENT_THREAD,
|
||||
sizeof (*p) + stack_size * sizeof (p->stack_slice[0]));
|
||||
p->tag_and_flags = scm_tc7_vm_cont | flags;
|
||||
p->dynstack = dynstack;
|
||||
p->vra = vra;
|
||||
|
@ -480,12 +480,13 @@ define_vm_builtins (void)
|
|||
SCM_PACK_OP_24 (return_from_interrupt, 0)
|
||||
};
|
||||
|
||||
struct scm_thread *thr = SCM_I_CURRENT_THREAD;
|
||||
#define DEFINE_BUILTIN(builtin, BUILTIN, req, opt, rest) \
|
||||
{ \
|
||||
size_t sz = sizeof (builtin##_code); \
|
||||
vm_builtin_##builtin##_code = instrumented_code (builtin##_code, sz); \
|
||||
struct scm_program *p = \
|
||||
scm_gc_malloc_pointerless (sizeof (struct scm_program), "builtin"); \
|
||||
scm_allocate_pointerless (thr, sizeof (struct scm_program)); \
|
||||
scm_t_bits tag = scm_tc7_program | SCM_F_PROGRAM_IS_PRIMITIVE; \
|
||||
p->tag_flags_and_free_variable_count = tag; \
|
||||
p->code = vm_builtin_##builtin##_code; \
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue