;;;; object-uword-ref.scm ;;;; Kon Lovett, Mar '20 ;; Issues ;; (cond-expand (64bit (begin (define-constant C_UWORD_SIZE 8) (define-syntax pointer-uword-ref (syntax-rules () ((pointer-uword-ref ?ptr) (pointer-u64-ref ?ptr) ) ) ) ) ) (else (define-constant C_UWORD_SIZE 4) (define-syntax pointer-uword-ref (syntax-rules () ((pointer-uword-ref ?ptr ?idx) (pointer-u32-ref ?ptr) ) ) ) ) ) (define-inline (object-uword-ref proc #!optional (idx 0)) (pointer-uword-ref (pointer+ (object->pointer proc) (* C_UWORD_SIZE (add1 idx)))) )