Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 3 additions & 8 deletions abscond/compiler/compile.rkt
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
#lang racket
(provide compile
compile-e)
(provide compile)

(require "../syntax/ast.rkt")
(require a86/ast a86/registers)
Expand All @@ -9,11 +8,7 @@
(define (compile e)
(prog (Global 'entry)
(Label 'entry)
(compile-e e)
(match e
[(Lit i) (Mov rax i)])
(Ret)))

;; Expr -> Asm
(define (compile-e e)
(match e
[(Lit i) (seq (Mov rax i))]))

4 changes: 2 additions & 2 deletions abscond/correct.rkt
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@
(provide check-compiler)
(require rackunit)
(require "interpreter/interp.rkt")
(require "executor/run.rkt")
(require "compiler/compile.rkt")
(require a86/interp)

;; Expr -> Void
(define (check-compiler e)
(check-equal? (interp e)
(run (compile e))))
(asm-interp (compile e))))

Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@
(provide main)
(require "../syntax/parse.rkt")
(require "../compiler/compile.rkt")
(require "run.rkt")
(require a86/interp)

;; -> Void
;; Compile contents of stdin and use asm-interp to run
(define (main)
(read-line) ; ignore #lang racket line
(run (compile (parse (read)))))
(asm-interp (compile (parse (read)))))

44 changes: 0 additions & 44 deletions abscond/executor/exec.rkt

This file was deleted.

11 changes: 0 additions & 11 deletions abscond/executor/run.rkt

This file was deleted.

4 changes: 0 additions & 4 deletions abscond/main.rkt
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,8 @@
(require "syntax/parse.rkt")
(require "interpreter/interp.rkt")
(require "compiler/compile.rkt")
(require "executor/run.rkt")
(require "executor/exec.rkt")
(provide (all-from-out "syntax/ast.rkt"))
(provide (all-from-out "syntax/parse.rkt"))
(provide (all-from-out "interpreter/interp.rkt"))
(provide (all-from-out "compiler/compile.rkt"))
(provide (all-from-out "executor/run.rkt"))
(provide (all-from-out "executor/exec.rkt"))

6 changes: 2 additions & 4 deletions abscond/runtime/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,9 @@ else
LANGS_AS ?= clang -c
endif

CFLAGS += -fPIC -g
CFLAGS += -g

OBJS = \
main.o \
print.o
OBJS = main.o

default: runtime.o

Expand Down
3 changes: 1 addition & 2 deletions abscond/runtime/main.c
Original file line number Diff line number Diff line change
@@ -1,13 +1,12 @@
#include <stdio.h>
#include <inttypes.h>
#include "print.h"

int64_t entry();

int main(int argc, char** argv)
{
int64_t result = entry();
print_result(result);
printf("%" PRId64, result);
putchar('\n');
return 0;
}
7 changes: 0 additions & 7 deletions abscond/runtime/print.c

This file was deleted.

6 changes: 0 additions & 6 deletions abscond/runtime/print.h

This file was deleted.

4 changes: 2 additions & 2 deletions abscond/test/run-compile-tests.rkt
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
#lang racket
(require "../compiler/compile.rkt")
(require "../syntax/parse.rkt")
(require "../executor/run.rkt")
(require "define-tests.rkt")
(require a86/interp)

(test (λ (e) (run (compile (parse e)))))
(test (λ (e) (asm-interp (compile (parse e)))))

4 changes: 2 additions & 2 deletions blackmail/correct.rkt
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@
(provide check-compiler)
(require rackunit)
(require "interpreter/interp.rkt")
(require "executor/run.rkt")
(require "compiler/compile.rkt")
(require a86/interp)

;; Expr -> Void
(define (check-compiler e)
(check-equal? (interp e)
(run (compile e))))
(asm-interp (compile e))))

Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@
(provide main)
(require "../syntax/parse.rkt")
(require "../compiler/compile.rkt")
(require "run.rkt")
(require a86/interp)

;; -> Void
;; Compile contents of stdin and use asm-interp to run
(define (main)
(read-line) ; ignore #lang racket line
(run (compile (parse (read)))))
(asm-interp (compile (parse (read)))))

44 changes: 0 additions & 44 deletions blackmail/executor/exec.rkt

This file was deleted.

11 changes: 0 additions & 11 deletions blackmail/executor/run.rkt

This file was deleted.

4 changes: 0 additions & 4 deletions blackmail/main.rkt
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,8 @@
(require "syntax/parse.rkt")
(require "interpreter/interp.rkt")
(require "compiler/compile.rkt")
(require "executor/run.rkt")
(require "executor/exec.rkt")
(provide (all-from-out "syntax/ast.rkt"))
(provide (all-from-out "syntax/parse.rkt"))
(provide (all-from-out "interpreter/interp.rkt"))
(provide (all-from-out "compiler/compile.rkt"))
(provide (all-from-out "executor/run.rkt"))
(provide (all-from-out "executor/exec.rkt"))

6 changes: 2 additions & 4 deletions blackmail/runtime/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,9 @@ else
LANGS_AS ?= clang -c
endif

CFLAGS += -fPIC -g
CFLAGS += -g

OBJS = \
main.o \
print.o
OBJS = main.o

default: runtime.o

Expand Down
3 changes: 1 addition & 2 deletions blackmail/runtime/main.c
Original file line number Diff line number Diff line change
@@ -1,13 +1,12 @@
#include <stdio.h>
#include <inttypes.h>
#include "print.h"

int64_t entry();

int main(int argc, char** argv)
{
int64_t result = entry();
print_result(result);
printf("%" PRId64, result);
putchar('\n');
return 0;
}
7 changes: 0 additions & 7 deletions blackmail/runtime/print.c

This file was deleted.

6 changes: 0 additions & 6 deletions blackmail/runtime/print.h

This file was deleted.

4 changes: 2 additions & 2 deletions blackmail/test/run-compile-tests.rkt
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
#lang racket
(require "../compiler/compile.rkt")
(require "../syntax/parse.rkt")
(require "../executor/run.rkt")
(require "define-tests.rkt")
(require a86/interp)

(test (λ (e) (run (compile (parse e)))))
(test (λ (e) (asm-interp (compile (parse e)))))

4 changes: 2 additions & 2 deletions con/correct.rkt
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@
(provide check-compiler)
(require rackunit)
(require "interpreter/interp.rkt")
(require "executor/run.rkt")
(require "compiler/compile.rkt")
(require a86/interp)

;; Expr -> Void
(define (check-compiler e)
(check-equal? (interp e)
(run (compile e))))
(asm-interp (compile e))))

4 changes: 2 additions & 2 deletions con/executor/run-stdin.rkt → con/executor/exec-stdin.rkt
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@
(provide main)
(require "../syntax/parse.rkt")
(require "../compiler/compile.rkt")
(require "run.rkt")
(require a86/interp)

;; -> Void
;; Compile contents of stdin and use asm-interp to run
(define (main)
(read-line) ; ignore #lang racket line
(run (compile (parse (read)))))
(asm-interp (compile (parse (read)))))

Loading
Loading