blob: 90617cd2f369c8dea1d85bc94c7efbc4c042250a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
(define-module (backend ast ir)
#:export (prog-ir
srout-ir
neg-ir
not-ir
plus-ir
minus-ir
mult-ir
div-ir
mod-ir
mov-ir
stack-ir
reg-ir
imm-ir
tmp-ir
ret-ir))
;;; Commentary:
;;;
;;; Nodes which exist to do nothing when evaluated.
;;;
;;; Code:
(define-syntax def-ir-nodes
(syntax-rules ()
((_ names ...)
(begin
(define (names . args)
(cons 'names args)) ...))))
(def-ir-nodes
prog-ir srout-ir neg-ir not-ir plus-ir minus-ir mult-ir div-ir mod-ir mov-ir stack-ir reg-ir imm-ir tmp-ir ret-ir)
|