~ chicken-core (chicken-5) f8ff9d7093c67fda1f30951a66c5091108c2dd99


commit f8ff9d7093c67fda1f30951a66c5091108c2dd99
Author:     Peter Bex <peter@more-magic.net>
AuthorDate: Sat Oct 17 15:50:06 2015 +0200
Commit:     Evan Hanson <evhan@foldling.org>
CommitDate: Mon Oct 26 08:58:13 2015 +1300

    Make literal-size calculation for symbols more precise.
    
    Symbol literals take up a symbol (size 4) and a bucket (size 3), for a
    total of 7, not 10.
    
    Signed-off-by: Evan Hanson <evhan@foldling.org>

diff --git a/c-backend.scm b/c-backend.scm
index c70661e1..73747835 100644
--- a/c-backend.scm
+++ b/c-backend.scm
@@ -641,7 +641,7 @@
       (cond [(immediate? lit) 0]
 	    [(string? lit) 0]
 	    [(number? lit) words-per-flonum]
-	    [(symbol? lit) 10]		; size of symbol, and possibly a bucket
+	    [(symbol? lit) 7]		; size of symbol, and possibly a bucket
 	    [(pair? lit) (+ 3 (literal-size (car lit)) (literal-size (cdr lit)))]
 	    [(vector? lit) (+ 1 (vector-length lit) (reduce + 0 (map literal-size (vector->list lit))))]
 	    [(block-variable-literal? lit) 0]
Trap