Hello,
Andy Wingo writes:
> Some comments:
>
> -#define SCM_VTABLE_FLAG_RESERVED_0 (1L << 5)
> -#define SCM_VTABLE_FLAG_RESERVED_1 (1L << 6)
> +#define SCM_VTABLE_FLAG_SIMPLE (1L << 5) /* instances of this vtable
> have only "pr" fields */
> +#define SCM_VTABLE_FLAG_SIMPLE_RW (1
Hey,
Andy Wingo writes:
> On Mon 25 Jan 2010 14:44, l...@gnu.org (Ludovic Courtès) writes:
>
>> Andy Wingo writes:
>>
>>> - GC_REGISTER_DISPLACEMENT (2*sizeof(scm_t_bits)); /* for the self
>>> data pointer */
>>> - GC_REGISTER_DISPLACEMENT (2*sizeof(scm_t_bits)
>>> -
Hello Guilers,
Andy Wingo writes:
> On Sun 24 Jan 2010 18:53, Julian Graham writes:
>
>> As mentioned in an earlier email [0], I've been working on
>> implementations for the libraries that make up the so-called R6RS
>> Standard Libraries [1], along with test suites. Where possible, I've
>> tr
Hi Ludo' :)
On Mon 25 Jan 2010 14:44, l...@gnu.org (Ludovic Courtès) writes:
> Andy Wingo writes:
>
>> - GC_REGISTER_DISPLACEMENT (2*sizeof(scm_t_bits)); /* for the self data
>> pointer */
>> - GC_REGISTER_DISPLACEMENT (2*sizeof(scm_t_bits)
>> -+ scm_tc
Hi,
On Sun 24 Jan 2010 18:53, Julian Graham writes:
> As mentioned in an earlier email [0], I've been working on
> implementations for the libraries that make up the so-called R6RS
> Standard Libraries [1], along with test suites. Where possible, I've
> tried to wrap existing Guile functionalit
Hello,
Andy Wingo writes:
> - GC_REGISTER_DISPLACEMENT (2*sizeof(scm_t_bits)); /* for the self data
> pointer */
> - GC_REGISTER_DISPLACEMENT (2*sizeof(scm_t_bits)
> -+ scm_tc3_struct); /* for the vtable data
> pointer */
> + /* The first word of
Hi Andy,
Andy Wingo writes:
> Some comments:
>
> -#define SCM_VTABLE_FLAG_RESERVED_0 (1L << 5)
> -#define SCM_VTABLE_FLAG_RESERVED_1 (1L << 6)
> +#define SCM_VTABLE_FLAG_SIMPLE (1L << 5) /* instances of this vtable
> have only "pr" fields */
> +#define SCM_VTABLE_FLAG_SIMPLE_RW
Hi Ludovic,
Great work on the struct optimizations!
Some comments:
-#define SCM_VTABLE_FLAG_RESERVED_0 (1L << 5)
-#define SCM_VTABLE_FLAG_RESERVED_1 (1L << 6)
+#define SCM_VTABLE_FLAG_SIMPLE (1L << 5) /* instances of this vtable have
only "pr" fields */
+#define SCM_VTABLE_FLAG_
Hello Ludovic,
- GC_REGISTER_DISPLACEMENT (2*sizeof(scm_t_bits)); /* for the self data
pointer */
- GC_REGISTER_DISPLACEMENT (2*sizeof(scm_t_bits)
-+ scm_tc3_struct); /* for the vtable data
pointer */
+ /* The first word of a struct is equal to `SCM