(BIT-STRING? BIT-STRING?)
(BIT-SUBSTRING-FIND-NEXT-SET-BIT BIT-SUBSTRING-FIND-NEXT-SET-BIT)
(BIT-SUBSTRING-MOVE-RIGHT! BIT-SUBSTRING-MOVE-RIGHT!)
+ (BYTEVECTOR-LENGTH BYTEVECTOR-LENGTH)
+ (BYTEVECTOR-U8-REF BYTEVECTOR-U8-REF)
+ (BYTEVECTOR-U8-SET! BYTEVECTOR-U8-SET!)
+ (BYTEVECTOR? BYTEVECTOR?)
(CAR CAR)
(CDR CDR)
(CELL-CONTENTS CELL-CONTENTS)
operands)
#f))
+(define (make-bytevector-expansion expr operands block)
+ (if (and (pair? operands)
+ (null? (cdr operands)))
+ (make-combination expr block (ucode-primitive allocate-bytevector 1)
+ operands)
+ #f))
+
(define (not-expansion expr operands block)
(if (and (pair? operands)
(null? (cdr operands)))
int:integer?
intern
list
+ make-bytevector
make-string
make-vector-8b
;; modulo ; Compiler does not currently open-code it.
exact-integer?-expansion
intern-expansion
list-expansion
- make-string-expansion
+ make-bytevector-expansion
make-string-expansion
;; modulo-expansion
negative?-expansion