diff options
| author | Keith Packard <keithp@keithp.com> | 2017-12-17 22:19:38 -0800 | 
|---|---|---|
| committer | Keith Packard <keithp@keithp.com> | 2017-12-17 22:19:38 -0800 | 
| commit | 9d1131da911f7220ac8b6cb7ba5a0afd3deef657 (patch) | |
| tree | 737dd7e127ab18e01cc844b63ae7dedb07e5c058 /src/scheme/ao_scheme_cons.c | |
| parent | b866b3ca249dce61f8ff16c8d28514d1b80386d7 (diff) | |
altos/scheme: Use AO_SCHEME_IS_CONS in cons memory funcs
More efficient than ao_scheme_poly_type as it doesn't care about
non-prim types.
Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'src/scheme/ao_scheme_cons.c')
| -rw-r--r-- | src/scheme/ao_scheme_cons.c | 6 | 
1 files changed, 3 insertions, 3 deletions
| diff --git a/src/scheme/ao_scheme_cons.c b/src/scheme/ao_scheme_cons.c index 02512e15..912100a9 100644 --- a/src/scheme/ao_scheme_cons.c +++ b/src/scheme/ao_scheme_cons.c @@ -24,8 +24,8 @@ static void cons_mark(void *addr)  		ao_scheme_poly_mark(cons->car, 1);  		if (!cdr)  			break; -		if (ao_scheme_poly_type(cdr) != AO_SCHEME_CONS) { -			ao_scheme_poly_mark(cdr, 1); +		if (!AO_SCHEME_IS_CONS(cdr)) { +			ao_scheme_poly_mark(cdr, 0);  			break;  		}  		cons = ao_scheme_poly_cons(cdr); @@ -58,7 +58,7 @@ static void cons_move(void *addr)  		cdr = cons->cdr;  		if (!cdr)  			break; -		if (ao_scheme_poly_base_type(cdr) != AO_SCHEME_CONS) { +		if (!AO_SCHEME_IS_CONS(cdr)) {  			(void) ao_scheme_poly_move(&cons->cdr, 0);  			break;  		} | 
