guile-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: removing scm_gc_mark_conservatively()


From: Dirk Herrmann
Subject: Re: removing scm_gc_mark_conservatively()
Date: Thu, 27 Sep 2001 21:54:47 +0200 (MEST)

Hello Marius,

a question:  How do you think should initialization work?  A first
approach would be similar to:

#define SCM_INIT_CELL(c, x, y) \
  do { \
    SCM_SET_CELL_WORD_1 (c, y); \
    SCM_SET_CELL_TYPE (c, x); \
    scm_remember_upto_here_1 (y); \
  }

But this will have a negative influence on performance, since in many
cases the call to scm_remember_upto_here_1 will be unnecessary.  It will
be unnecessary if y is known to be used after the cell initialization, and
it is unnecessary if y is an immediate value.  The compiler can't optimize
it away either, since that is the point why scm_remember_upto_here_1 works
at all.

I guess that you have some different solution in mind, right?

Best regards
Dirk Herrmann




reply via email to

[Prev in Thread] Current Thread [Next in Thread]