summaryrefslogtreecommitdiff
path: root/src/parse.lisp
diff options
context:
space:
mode:
Diffstat (limited to 'src/parse.lisp')
-rw-r--r--src/parse.lisp10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/parse.lisp b/src/parse.lisp
index 2e1cf55..f435c0a 100644
--- a/src/parse.lisp
+++ b/src/parse.lisp
@@ -51,14 +51,14 @@
(esrap:defrule variable alphanumeric
(:lambda (e) (list 'emit::var e)))
-(esrap:defrule dereference (and integer #\( register #\))
- (:destructure (i1 w1 r w2)
- (declare (ignore w1 w2))
- (list r (list 'emit::imm i1))))
-
(esrap:defrule immediate (or integer variable)
(:lambda (e) (list 'emit::imm e)))
+(esrap:defrule dereference (and immediate #\( register #\))
+ (:destructure (i1 w1 r w2)
+ (declare (ignore w1 w2))
+ (list r i1)))
+
;;; defines rules to parse labels
(esrap:defrule label alphanumeric