C:/Users/Dennis/src/lang/russell.orig/src/gc/gc_inline.h File Reference

#include "gc_private.h"

Go to the source code of this file.

Defines

#define GC_MALLOC_WORDS(result, n)
#define GC_MALLOC_ATOMIC_WORDS(result, n)
#define GC_CONS(result, first, second)


Define Documentation

#define GC_CONS ( result,
first,
second   ) 

Value:

{       \
    register ptr_t op;  \
    register ptr_t *opp;        \
    DCL_LOCK_STATE;     \
        \
    opp = &(GC_objfreelist[2]); \
    FASTLOCK(); \
    if( !FASTLOCK_SUCCEEDED() || (op = *opp) == 0 ) {   \
        FASTUNLOCK();   \
        op = GC_generic_malloc_words_small(2, NORMAL);  \
    } else {    \
        *opp = obj_link(op);    \
        GC_words_allocd += 2;   \
        FASTUNLOCK();   \
    } \
    ((word *)op)[0] = (word)(first);    \
    ((word *)op)[1] = (word)(second);   \
    (result) = (extern_ptr_t) op;       \
}

Definition at line 72 of file gc_inline.h.

#define GC_MALLOC_ATOMIC_WORDS ( result,
 ) 

Value:

{       \
    register ptr_t op;  \
    register ptr_t *opp;        \
    DCL_LOCK_STATE;     \
        \
    opp = &(GC_aobjfreelist[n]);        \
    FASTLOCK(); \
    if( !FASTLOCK_SUCCEEDED() || (op = *opp) == 0 ) {   \
        FASTUNLOCK();   \
        (result) = GC_generic_malloc_words_small((n), PTRFREE); \
    } else {    \
        *opp = obj_link(op);    \
        obj_link(op) = 0;       \
        GC_words_allocd += (n); \
        FASTUNLOCK();   \
        (result) = (extern_ptr_t) op;   \
    }   \
}

Definition at line 51 of file gc_inline.h.

#define GC_MALLOC_WORDS ( result,
 ) 

Value:

{       \
    register ptr_t op;  \
    register ptr_t *opp;        \
    DCL_LOCK_STATE;     \
        \
    opp = &(GC_objfreelist[n]); \
    FASTLOCK(); \
    if( !FASTLOCK_SUCCEEDED() || (op = *opp) == 0 ) {   \
        FASTUNLOCK();   \
        (result) = GC_generic_malloc_words_small((n), NORMAL);  \
    } else {    \
        *opp = obj_link(op);    \
        obj_link(op) = 0;       \
        GC_words_allocd += (n); \
        FASTUNLOCK();   \
        (result) = (extern_ptr_t) op;   \
    }   \
}

Definition at line 29 of file gc_inline.h.


Generated on Fri Jan 25 10:39:48 2008 for russell by  doxygen 1.5.4