aboutsummaryrefslogtreecommitdiff
path: root/src/cljcc/compiler.clj
diff options
context:
space:
mode:
authorShagun Agrawal <agrawalshagun07@gmail.com>2024-08-30 23:54:55 +0530
committerShagun Agrawal <agrawalshagun07@gmail.com>2024-08-30 23:54:55 +0530
commitc7a2fc0f8d85b5d3233ac1125df1b3d95db2b35a (patch)
tree041797ee9017fd86c3fcaa48eba082780562762c /src/cljcc/compiler.clj
parent5de5a81e8a652d2a01e793ca4e39bc0fd5974f58 (diff)
Add compound statements
Adding compound statements Variable values changed based on scope
Diffstat (limited to 'src/cljcc/compiler.clj')
-rw-r--r--src/cljcc/compiler.clj4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/cljcc/compiler.clj b/src/cljcc/compiler.clj
index a7ee8c9..c14fc53 100644
--- a/src/cljcc/compiler.clj
+++ b/src/cljcc/compiler.clj
@@ -2,7 +2,8 @@
(:require [cljcc.parser :as p]
[clojure.pprint :as pp]
[cljcc.tacky :as t]
- [cljcc.lexer :as l]))
+ [cljcc.lexer :as l]
+ [cljcc.analyzer :as a]))
(def registers #{:ax :dx :r10 :r11 :cx :cl})
@@ -309,6 +310,7 @@
(-> source
l/lex
p/parse
+ a/validate
t/tacky-generate
tacky-ast->assembly))