cons example

This commit is contained in:
2026-05-18 10:13:01 -06:00
parent afc68e2a55
commit f5fe6b5b20
6 changed files with 34 additions and 1 deletions
Executable
BIN
View File
Binary file not shown.
+4
View File
@@ -0,0 +1,4 @@
;;; -*- mode:scheme -*-
(let ((x0 (prim:cons 4 5)) (x1 (prim:write x0))) x1)
+18
View File
@@ -0,0 +1,18 @@
.text
.globl main
main:
pushq %rbp
movq %rsp, %rbp
movl $16, %edi
callq GC_malloc
movq %rax, %rdi
movq $18, (%rdi)
movq $22, 8(%rdi)
callq scm_write
leave
ret
.type main, @function
.size main, .-main
/* end function main */
.section .note.GNU-stack,"",@progbits
+1
View File
@@ -0,0 +1 @@
(prim:write (prim:cons 4 5))
+10
View File
@@ -0,0 +1,10 @@
export
function w $main () {
@start
%x0 =l call $GC_malloc (l 16)
%.2 =l add %x0, 8
storel 18, %x0
storel 22, %.2
%x1 =l call $scm_write (l %x0)
ret %x1
}