(list (make-linker-reloc 'abs32/1 0 0 '.rtl-text)) '() #:type SHT_PROGBITS #:flags SHF_ALLOC)) (((pos proc-slot . map) . maps) (bytevector-u32-set! bv header-pos pos endianness) (bytevector-u32-set! bv (+ header-pos 4) map-pos endianness) (let write-bytes ((map-pos map-pos) (map map) (byte-length (map-byte-length proc-slot))) (if (zero? byte-length) (lp maps (+ header-pos frame-map-header-len) map-pos) (begin (bytevector-u8-set! bv map-pos (logand map #xff)) (write-bytes (1+ map-pos) (ash map -8) (1- byte-length)))))))))) (match (asm-slot-maps asm) (() #f) (in (let lp ((in in) (out '()) (count 0) (map-len 0)) (match in (() (make-frame-maps out count map-len)) (((and head (pos proc-slot . map)) . in) (lp in (cons head out) (1+ count) (+ (map-byte-length proc-slot) map-len))))))))