summaryrefslogtreecommitdiff
path: root/src/backend/emitter/traverse.scm
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend/emitter/traverse.scm')
-rw-r--r--src/backend/emitter/traverse.scm48
1 files changed, 24 insertions, 24 deletions
diff --git a/src/backend/emitter/traverse.scm b/src/backend/emitter/traverse.scm
index 0a5b4cc..e88f207 100644
--- a/src/backend/emitter/traverse.scm
+++ b/src/backend/emitter/traverse.scm
@@ -1,50 +1,50 @@
(define-module (backend emitter traverse)
- #:export (prog
- subrout
- instr
- allocate
- mov
- ret
- neg
- not
- allocate
- reg
- stack
- imm))
-
-
-(define (prog srout)
+ #:export (prog-ir
+ subrout-ir
+ instr-ir
+ allocate-ir
+ mov-ir
+ ret-ir
+ neg-ir
+ not-ir
+ allocate-ir
+ reg-ir
+ stack-ir
+ imm-ir))
+
+
+(define (prog-ir srout)
(string-append/shared srout ".section .note.GNU-stack,\"\",@progbits\n"))
-(define (srout label instrs)
+(define (srout-ir label instrs)
(format #f " .globl ~a
~a:
\tpushq\t%rbp
\tmovq\t%rsp, %rbp
~a" label label (apply string-append/shared instrs)))
-(define (mov src dst)
+(define (mov-ir src dst)
(format #f "\tmovl\t~a, ~a\n" src dst))
-(define (ret)
+(define (ret-ir)
"\tmovq\t%rbp, %rsp
\tpopq\t%rbp
\tret\n")
-(define (neg dst)
+(define (neg-ir dst)
(format #f "\tnegl\t~a\n" dst))
-(define (not dst)
+(define (not-ir dst)
(format #f "\tnotl\t~a\n" dst))
-(define (alloc size)
+(define (alloc-ir size)
(format #f "\tsubq\t$~a, %rsp\n" size))
-(define (reg r)
+(define (reg-ir r)
(format #f "%~a" r))
-(define (stack loc)
+(define (stack-ir loc)
(format #f "~a(%rbp)" loc))
-(define (imm int)
+(define (imm-ir int)
(format #f "$~a" int))