aboutsummaryrefslogtreecommitdiff
path: root/minic
diff options
context:
space:
mode:
authorQuentin Carbonneaux <[email protected]>2015-10-12 14:32:48 -0400
committerQuentin Carbonneaux <[email protected]>2015-10-12 14:32:48 -0400
commitfbee480f2ed31616583cef5735df07e694ff9c5c (patch)
tree56a9b34786be21512925fd52a8a2e9502a8bb45b /minic
parent31b19a21b8ac2a8ce67864794af88241df7674a6 (diff)
add one small test
Diffstat (limited to 'minic')
-rwxr-xr-xminic/mcc12
-rw-r--r--minic/test/prime.c27
2 files changed, 39 insertions, 0 deletions
diff --git a/minic/mcc b/minic/mcc
new file mode 100755
index 0000000..523c7f5
--- /dev/null
+++ b/minic/mcc
@@ -0,0 +1,12 @@
+#!/bin/sh
+
+SRC=$1
+
+if [ -z "$SRC" ]; then
+ echo "usage: ./mcc file.c" 1>&2
+ exit 1
+fi
+
+rm -f /tmp/minic.s
+./minic < $SRC | ../lisc/lisc - > /tmp/minic.s
+[ -f /tmp/minic.s ] && cc /tmp/minic.s
diff --git a/minic/test/prime.c b/minic/test/prime.c
new file mode 100644
index 0000000..e1d1074
--- /dev/null
+++ b/minic/test/prime.c
@@ -0,0 +1,27 @@
+main() {
+ int n;
+ int t;
+ int c;
+ int p;
+
+ c = 0;
+ n = 2;
+ while (n < 1000) {
+ if (c % 10 == 0)
+ if (c != 0)
+ printf("\n");
+ t = 2;
+ p = 1;
+ while (t*t <= n) {
+ if (n % t == 0)
+ p = 0;
+ t = t + 2;
+ }
+ if (p) {
+ printf("%4d ", n);
+ c++;
+ }
+ n = n + 2;
+ }
+ printf("\n");
+}