diff options
Diffstat (limited to 'src/modules/generator/assembly.scm')
-rw-r--r-- | src/modules/generator/assembly.scm | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/src/modules/generator/assembly.scm b/src/modules/generator/assembly.scm index 50e158e..55eaaed 100644 --- a/src/modules/generator/assembly.scm +++ b/src/modules/generator/assembly.scm @@ -1,7 +1,7 @@ -(define-module (modules generator assembly) - #:use-module (modules ast ir) - #:use-module (modules utils assign-stack) - #:use-module (modules utils merge-instructions) +(define-module (generator assembly) + #:use-module (ast ir) + #:use-module (utils assign-stack) + #:use-module (utils merge-instructions) #:export (instrs mov)) @@ -10,9 +10,9 @@ (cons 'list (cons (list 'alloc (abs (get-frame-size))) (merge-instr lst)))) -(define (mov dst src) +(define (mov src dst) (if (and (eq? 'stack (car dst)) (eq? 'stack (car src))) - (append (list (list 'mov (reg "r10") src)) - (list (list 'mov dst (reg "r10")))) - (list 'mov dst src))) + (append (list (list 'mov src (reg "r10d"))) + (list (list 'mov (reg "r10d") dst))) + (list 'mov src dst))) |