summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbd <bdunahu@operationnull.com>2025-01-18 02:07:40 -0700
committerbd <bdunahu@operationnull.com>2025-01-18 02:07:40 -0700
commit14b2600bd58b0a4b09c6647c1d78ab7bccd4c1aa (patch)
tree511b6dfb8fca47e078ea3af6bf6ba428f0e7c0a1
parenta3d234983b259576e985f810eacf0d03eefc02d2 (diff)
set modules folder to modules path
-rwxr-xr-xsrc/gscc22
-rw-r--r--src/modules/ast/ir.scm6
-rw-r--r--src/modules/generator/allocate.scm4
-rw-r--r--src/modules/generator/assembly.scm16
-rw-r--r--src/modules/generator/driver.scm8
-rw-r--r--src/modules/generator/expansion.scm16
-rw-r--r--src/modules/lexer/driver.scm2
-rw-r--r--src/modules/parser/driver.scm2
-rw-r--r--src/modules/tacky/driver.scm4
-rw-r--r--src/modules/tacky/traverse.scm16
-rw-r--r--src/modules/utils/assign-stack.scm2
-rw-r--r--src/modules/utils/merge-instructions.scm2
-rw-r--r--src/unit-tests/lexer/lexer.test.scm8
-rw-r--r--src/unit-tests/parser/parser.test.scm12
-rw-r--r--src/unit-tests/utils/t-factory.test.scm6
15 files changed, 63 insertions, 63 deletions
diff --git a/src/gscc b/src/gscc
index d00b116..41cbbed 100755
--- a/src/gscc
+++ b/src/gscc
@@ -1,16 +1,16 @@
#!/run/current-system/profile/bin/guile \
--L ./src -e main -s
+-L ./src/modules -e main -s
!#
(use-modules (ice-9 getopt-long)
(ice-9 popen)
(ice-9 pretty-print)
- (modules lexer driver)
- (modules parser driver)
- (modules tacky driver)
- (modules generator driver)
- (modules emitter driver))
+ (lexer driver)
+ (parser driver)
+ (tacky driver)
+ (generator driver)
+ (emitter driver))
(define version "v0.1.1")
@@ -53,11 +53,11 @@ Options:
(a-file (string-append dest ".s")))
(when (file-exists? a-file)
(delete-file a-file))
- ;; (let ((port (open-output-file a-file)))
- ;; (display program port)
- ;; (close-port port))
- ;; (when (postprocess a-file dest)
- ;; (display (string-concatenate `("Postprocess reported success (wrote " ,dest ").\n"))))
+ (let ((port (open-output-file a-file)))
+ (display program port)
+ (close-port port))
+ (when (postprocess a-file dest)
+ (display (string-concatenate `("Postprocess reported success (wrote " ,dest ").\n"))))
))))))))))
(define (preprocess file)
diff --git a/src/modules/ast/ir.scm b/src/modules/ast/ir.scm
index 3b373e5..50e9e29 100644
--- a/src/modules/ast/ir.scm
+++ b/src/modules/ast/ir.scm
@@ -1,4 +1,4 @@
-(define-module (modules ast ir)
+(define-module (ast ir)
#:export (prog
srout
neg
@@ -31,8 +31,8 @@
(define (not dst)
(ir-node 'not dst))
-(define (mov dst src)
- (ir-node 'mov dst src))
+(define (mov src dst)
+ (ir-node 'mov src dst))
(define (stack val)
(ir-node 'stack val))
diff --git a/src/modules/generator/allocate.scm b/src/modules/generator/allocate.scm
index 193cadb..f975fca 100644
--- a/src/modules/generator/allocate.scm
+++ b/src/modules/generator/allocate.scm
@@ -1,5 +1,5 @@
-(define-module (modules generator allocate)
- #:use-module (modules utils assign-stack)
+(define-module (generator allocate)
+ #:use-module (utils assign-stack)
#:export (expansion->allocate))
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)))
diff --git a/src/modules/generator/driver.scm b/src/modules/generator/driver.scm
index dc95268..8b9ed30 100644
--- a/src/modules/generator/driver.scm
+++ b/src/modules/generator/driver.scm
@@ -1,9 +1,9 @@
-(define-module (modules generator driver)
- #:use-module (modules generator allocate)
+(define-module (generator driver)
+ #:use-module (generator allocate)
#:export (tacky->assembly))
(define (tacky->assembly n)
(eval (expansion->allocate
- (eval n (resolve-module '(modules generator expansion))))
- (resolve-module '(modules generator assembly))))
+ (eval n (resolve-module '(generator expansion))))
+ (resolve-module '(generator assembly))))
diff --git a/src/modules/generator/expansion.scm b/src/modules/generator/expansion.scm
index 3beb6db..5bfa878 100644
--- a/src/modules/generator/expansion.scm
+++ b/src/modules/generator/expansion.scm
@@ -1,6 +1,6 @@
-(define-module (modules generator expansion)
- #:use-module (modules ast ir)
- #:use-module (modules utils merge-instructions)
+(define-module (generator expansion)
+ #:use-module (ast ir)
+ #:use-module (utils merge-instructions)
#:export (instrs
not
neg
@@ -11,13 +11,13 @@
#f
(list 'instrs (cons 'list (merge-instr lst))))
-(define (not dst src) (unary 'not dst src))
-(define (neg dst src) (unary 'neg dst src))
+(define (not src dst) (unary 'not src dst))
+(define (neg src dst) (unary 'neg src dst))
(define (ret src)
- (list (list 'mov (list 'reg "eax") src)
+ (list (list 'mov src (list 'reg "eax"))
(list 'ret)))
-(define (unary op dst src)
- (list (list 'mov dst src)
+(define (unary op src dst)
+ (list (list 'mov src dst)
(list op dst)))
diff --git a/src/modules/lexer/driver.scm b/src/modules/lexer/driver.scm
index e1a4f6e..b4d3282 100644
--- a/src/modules/lexer/driver.scm
+++ b/src/modules/lexer/driver.scm
@@ -1,4 +1,4 @@
-(define-module (modules lexer driver)
+(define-module (lexer driver)
#:export (read-tokens))
(define (read-tokens)
diff --git a/src/modules/parser/driver.scm b/src/modules/parser/driver.scm
index 8fd42a4..f5e503e 100644
--- a/src/modules/parser/driver.scm
+++ b/src/modules/parser/driver.scm
@@ -1,4 +1,4 @@
-(define-module (modules parser driver)
+(define-module (parser driver)
#:use-module (ice-9 match)
#:export (tokens->ast))
diff --git a/src/modules/tacky/driver.scm b/src/modules/tacky/driver.scm
index c642059..9696306 100644
--- a/src/modules/tacky/driver.scm
+++ b/src/modules/tacky/driver.scm
@@ -1,6 +1,6 @@
-(define-module (modules tacky driver)
+(define-module (tacky driver)
#:export (ast->tacky))
(define (ast->tacky n)
- (eval n (resolve-module '(modules tacky traverse))))
+ (eval n (resolve-module '(tacky traverse))))
diff --git a/src/modules/tacky/traverse.scm b/src/modules/tacky/traverse.scm
index 24c4054..5f1ad1f 100644
--- a/src/modules/tacky/traverse.scm
+++ b/src/modules/tacky/traverse.scm
@@ -1,5 +1,5 @@
-(define-module (modules tacky traverse)
- #:use-module (modules ast ir)
+(define-module (tacky traverse)
+ #:use-module (ast ir)
#:export (prog
func
stmt
@@ -26,8 +26,8 @@
(define (make-instruction op src instrs)
(let ((dst (make-temporary)))
(cons dst
- (append instrs
- (list (op dst src))))))
+ (append instrs
+ (list (op src dst))))))
(define make-temporary
(let ((count 100))
@@ -35,8 +35,8 @@
(set! count (1+ count))
(list 'tmp count))))
-(define (neg dst src)
- (list 'neg dst src))
+(define (neg src dst)
+ (list 'neg src dst))
-(define (not dst src)
- (list 'not dst src))
+(define (not src dst)
+ (list 'not src dst))
diff --git a/src/modules/utils/assign-stack.scm b/src/modules/utils/assign-stack.scm
index 8037400..1096846 100644
--- a/src/modules/utils/assign-stack.scm
+++ b/src/modules/utils/assign-stack.scm
@@ -1,4 +1,4 @@
-(define-module (modules utils assign-stack)
+(define-module (utils assign-stack)
#:export (make-location
get-frame-size))
diff --git a/src/modules/utils/merge-instructions.scm b/src/modules/utils/merge-instructions.scm
index dea5556..754117c 100644
--- a/src/modules/utils/merge-instructions.scm
+++ b/src/modules/utils/merge-instructions.scm
@@ -1,4 +1,4 @@
-(define-module (modules utils merge-instructions)
+(define-module (utils merge-instructions)
#:use-module (srfi srfi-1)
#:export (merge-instr))
diff --git a/src/unit-tests/lexer/lexer.test.scm b/src/unit-tests/lexer/lexer.test.scm
index 807dbec..ce3520d 100644
--- a/src/unit-tests/lexer/lexer.test.scm
+++ b/src/unit-tests/lexer/lexer.test.scm
@@ -1,6 +1,6 @@
-;; -*- compile-command: "guile -L ./src ./src/unit-tests/lexer/lexer.test.scm"; -*-
+;; -*- compile-command: "guile -L ./src/modules ./src/unit-tests/lexer/lexer.test.scm"; -*-
(use-modules (srfi srfi-64)
- (modules lexer lexer))
+ (lexer lexer))
(define (read-this str)
(set-current-input-port
@@ -64,7 +64,7 @@
(read-tokens))
(test-error (read-this "3.4")
- (read-tokens))
+ (read-tokens))
(test-equal (read-this "a")
'("a")
@@ -75,7 +75,7 @@
(read-tokens))
(test-error (read-this "1foo")
- (read-tokens))
+ (read-tokens))
(test-equal (read-this "void")
'(void)
diff --git a/src/unit-tests/parser/parser.test.scm b/src/unit-tests/parser/parser.test.scm
index b3573d0..32e1e6c 100644
--- a/src/unit-tests/parser/parser.test.scm
+++ b/src/unit-tests/parser/parser.test.scm
@@ -1,6 +1,6 @@
-;; -*- compile-command: "guile -L ./src ./src/unit-tests/parser/parser.test.scm"; -*-
+;; -*- compile-command: "guile -L ./src/modules ./src/unit-tests/parser/parser.test.scm"; -*-
(use-modules (srfi srfi-64)
- (modules parser parser))
+ (parser parser))
(test-begin "parser-harness")
@@ -15,16 +15,16 @@
(p-program '(int "foo" left-paren void right-paren open-brace return 4 semi-colon close-brace)))
(test-error "trivial function bad double return"
- (p-program '(int "foo" left-paren void right-paren open-brace return return 4 semi-colon close-brace)))
+ (p-program '(int "foo" left-paren void right-paren open-brace return return 4 semi-colon close-brace)))
(test-error "trivial function bad parens"
- (p-program '(int "foo" right-paren void left-paren open-brace return 4 semi-colon close-brace)))
+ (p-program '(int "foo" right-paren void left-paren open-brace return 4 semi-colon close-brace)))
(test-error "trivial function bad int parameter"
- (p-program '(int "foo" left-paren int right-paren open-brace return 4 semi-colon close-brace)))
+ (p-program '(int "foo" left-paren int right-paren open-brace return 4 semi-colon close-brace)))
(test-error "trivial function incomplete function"
- (p-program '(int "foo" left-paren void right-paren open-brace return)))
+ (p-program '(int "foo" left-paren void right-paren open-brace return)))
(test-end "parser-harness")
diff --git a/src/unit-tests/utils/t-factory.test.scm b/src/unit-tests/utils/t-factory.test.scm
index eda983b..d780c17 100644
--- a/src/unit-tests/utils/t-factory.test.scm
+++ b/src/unit-tests/utils/t-factory.test.scm
@@ -1,7 +1,7 @@
-;; -*- compile-command: "guile -L ./src ./src/unit-tests/utils/t-factory.test.scm"; -*-
+;; -*- compile-command: "guile -L ./src/modules ./src/unit-tests/utils/t-factory.test.scm"; -*-
(use-modules (srfi srfi-64)
- (modules ast assembly-tree)
- (modules utils t-factory))
+ (ast assembly-tree)
+ (utils t-factory))
(test-begin "t-factory-harness")