summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorbd <bdunahu@operationnull.com>2025-04-11 03:54:53 -0400
committerbd <bdunahu@operationnull.com>2025-04-11 03:54:53 -0400
commit5c9ac514d0556d875a12b2c7d3c4aedf23b9575b (patch)
tree66120f77bd62cde2e22b3aa340fe7d026e873081 /src
parent1904e4e800dcf37becb3bba17c3a3aaca3c7a47c (diff)
Remove unnecessary imm ast node
Diffstat (limited to 'src')
-rw-r--r--src/emit.lisp2
-rw-r--r--src/parse.lisp4
2 files changed, 2 insertions, 4 deletions
diff --git a/src/emit.lisp b/src/emit.lisp
index a6e4bbb..213eb1a 100644
--- a/src/emit.lisp
+++ b/src/emit.lisp
@@ -52,8 +52,6 @@ concatenated with TYPE."
(util:format-as-binary val 5)
(error (format nil "~a is not a valid register id!~%" val))))
-(defun imm (val) val)
-
(defun l (l s)
(let ((d (util:get-label l)))
(- d s)))
diff --git a/src/parse.lisp b/src/parse.lisp
index f435c0a..e58dea0 100644
--- a/src/parse.lisp
+++ b/src/parse.lisp
@@ -52,7 +52,7 @@
(:lambda (e) (list 'emit::var e)))
(esrap:defrule immediate (or integer variable)
- (:lambda (e) (list 'emit::imm e)))
+ (:lambda (e) e))
(esrap:defrule dereference (and immediate #\( register #\))
(:destructure (i1 w1 r w2)
@@ -130,7 +130,7 @@ DESTRUCTURE-PATTERN is the list of non-terminals on the right side of the gramma
(esrap:defrule j-type-2 (and j-type-2-m space register)
(:destructure (m w r)
(declare (ignore w))
- `(emit::j ,m ,r (emit::imm 0))))
+ `(emit::j ,m ,r 0)))
(esrap:defrule instr (or r-type-1 r-type-2 r-type-3 i-type-1 i-type-2
i-type-3 j-type-1 j-type-2 j-type-3))