Ooops, wasn't encoding numbers right at all, that's embarassing
This commit is contained in:
6
wasm.kp
6
wasm.kp
@@ -4,10 +4,10 @@
|
|||||||
; Bytes encode themselves
|
; Bytes encode themselves
|
||||||
encode_u_LEB128 (rec-lambda recurse (x)
|
encode_u_LEB128 (rec-lambda recurse (x)
|
||||||
(cond (< x 0x80) [x]
|
(cond (< x 0x80) [x]
|
||||||
true (cons (| (& x 0x7F) 0x1) (recurse (>> x 8))))
|
true (cons (| (& x 0x7F) 0x80) (recurse (>> x 7))))
|
||||||
)
|
)
|
||||||
encode_s8_LEB128 (lambda (x) (encode_u_LEB128 (& x 255)))
|
encode_s8_LEB128 (lambda (x) (encode_u_LEB128 (& x 0xFF)))
|
||||||
encode_s32_LEB128 (lambda (x) (encode_u_LEB128 (& x 255)))
|
encode_s32_LEB128 (lambda (x) (encode_u_LEB128 (& x 0xFFFFFFFF)))
|
||||||
encode_vector (lambda (enc v)
|
encode_vector (lambda (enc v)
|
||||||
(concat (encode_u_LEB128 (len v)) (flat_map enc v) )
|
(concat (encode_u_LEB128 (len v)) (flat_map enc v) )
|
||||||
)
|
)
|
||||||
|
|||||||
Reference in New Issue
Block a user