From 0146a39ebb55f6a789f582db93663c4c6f4867aa Mon Sep 17 00:00:00 2001 From: Irmen de Jong Date: Tue, 8 Jan 2019 02:09:35 +0100 Subject: [PATCH] moved some more stuff around --- .gitignore | 1 + compiler/compile.cmd => compile.cmd | 8 +++++--- compiler/compile.sh => compile.sh | 7 ++++--- compiler/src/prog8/CompilerMain.kt | 2 +- docs/source/building.rst | 2 +- {compiler/examples => examples}/assignments.p8 | 0 {compiler/examples => examples}/comparison_ifs_byte.p8 | 0 {compiler/examples => examples}/comparison_ifs_float.p8 | 0 {compiler/examples => examples}/comparison_ifs_ubyte.p8 | 0 {compiler/examples => examples}/comparison_ifs_uword.p8 | 0 {compiler/examples => examples}/comparison_ifs_word.p8 | 0 {compiler/examples => examples}/comparisons_byte.p8 | 0 {compiler/examples => examples}/comparisons_float.p8 | 0 {compiler/examples => examples}/comparisons_ubyte.p8 | 0 {compiler/examples => examples}/comparisons_uword.p8 | 0 {compiler/examples => examples}/comparisons_word.p8 | 0 {compiler/examples => examples}/cube3d-float.p8 | 0 {compiler/examples => examples}/cube3d-stackvm.p8 | 0 {compiler/examples => examples}/cube3d.p8 | 0 examples/examples.iml | 9 +++++++++ {compiler/examples => examples}/forloops.p8 | 0 {compiler/examples => examples}/hello.p8 | 0 {compiler/examples => examples}/mandelbrot-stackvm.p8 | 0 {compiler/examples => examples}/mandelbrot.p8 | 0 {compiler/examples => examples}/numbergame-lowlevel.p8 | 0 {compiler/examples => examples}/numbergame.p8 | 0 {compiler/examples => examples}/sprites.p8 | 0 {compiler/examples => examples}/swirl-float.p8 | 0 {compiler/examples => examples}/swirl-stackvm.p8 | 0 {compiler/examples => examples}/swirl.p8 | 0 {compiler/examples => examples}/test.p8 | 0 {compiler/examples => examples}/wizzine.p8 | 0 32 files changed, 21 insertions(+), 8 deletions(-) rename compiler/compile.cmd => compile.cmd (50%) rename compiler/compile.sh => compile.sh (53%) rename {compiler/examples => examples}/assignments.p8 (100%) rename {compiler/examples => examples}/comparison_ifs_byte.p8 (100%) rename {compiler/examples => examples}/comparison_ifs_float.p8 (100%) rename {compiler/examples => examples}/comparison_ifs_ubyte.p8 (100%) rename {compiler/examples => examples}/comparison_ifs_uword.p8 (100%) rename {compiler/examples => examples}/comparison_ifs_word.p8 (100%) rename {compiler/examples => examples}/comparisons_byte.p8 (100%) rename {compiler/examples => examples}/comparisons_float.p8 (100%) rename {compiler/examples => examples}/comparisons_ubyte.p8 (100%) rename {compiler/examples => examples}/comparisons_uword.p8 (100%) rename {compiler/examples => examples}/comparisons_word.p8 (100%) rename {compiler/examples => examples}/cube3d-float.p8 (100%) rename {compiler/examples => examples}/cube3d-stackvm.p8 (100%) rename {compiler/examples => examples}/cube3d.p8 (100%) create mode 100644 examples/examples.iml rename {compiler/examples => examples}/forloops.p8 (100%) rename {compiler/examples => examples}/hello.p8 (100%) rename {compiler/examples => examples}/mandelbrot-stackvm.p8 (100%) rename {compiler/examples => examples}/mandelbrot.p8 (100%) rename {compiler/examples => examples}/numbergame-lowlevel.p8 (100%) rename {compiler/examples => examples}/numbergame.p8 (100%) rename {compiler/examples => examples}/sprites.p8 (100%) rename {compiler/examples => examples}/swirl-float.p8 (100%) rename {compiler/examples => examples}/swirl-stackvm.p8 (100%) rename {compiler/examples => examples}/swirl.p8 (100%) rename {compiler/examples => examples}/test.p8 (100%) rename {compiler/examples => examples}/wizzine.p8 (100%) diff --git a/.gitignore b/.gitignore index 06bc60b97..4d337e20a 100644 --- a/.gitignore +++ b/.gitignore @@ -8,6 +8,7 @@ *.asm *.bin *.labels.txt +*.vm.txt *.vice-mon-list docs/build out/ diff --git a/compiler/compile.cmd b/compile.cmd similarity index 50% rename from compiler/compile.cmd rename to compile.cmd index efb49cd55..f84b8b284 100644 --- a/compiler/compile.cmd +++ b/compile.cmd @@ -1,6 +1,8 @@ -rem set PROG8_LIBDIR=../prog8lib -set PROG8CLASSPATH=out/production/compiler/ +set PROG8_COMPILER_DIR=compiler + +set PROG8_LIBDIR=%PROG8_COMPILER_DIR%/prog8lib +set PROG8CLASSPATH=%PROG8_COMPILER_DIR%/out/production/compiler/ set KOTLINPATH=%USERPROFILE%/.IdeaIC2018.3/config/plugins/Kotlin -set LIBJARS=%KOTLINPATH%/lib/kotlin-stdlib.jar;%KOTLINPATH%/lib/kotlin-reflect.jar;antlr/lib/antlr-runtime-4.7.2.jar +set LIBJARS=%KOTLINPATH%/lib/kotlin-stdlib.jar;%KOTLINPATH%/lib/kotlin-reflect.jar;%PROG8_COMPILER_DIR%/antlr/lib/antlr-runtime-4.7.2.jar java -Dprog8.libdir=%PROG8_LIBDIR% -cp %PROG8CLASSPATH%;%LIBJARS% prog8.CompilerMainKt %* diff --git a/compiler/compile.sh b/compile.sh similarity index 53% rename from compiler/compile.sh rename to compile.sh index 7ae65eac0..1561419c5 100755 --- a/compiler/compile.sh +++ b/compile.sh @@ -1,8 +1,9 @@ #!/usr/bin/env sh -# PROG8_LIBDIR=../prog8lib -PROG8CLASSPATH=out/production/compiler +PROG8_COMPILER_DIR=compiler +PROG8_LIBDIR=${PROG8_COMPILER_DIR}/prog8lib +PROG8CLASSPATH=${PROG8_COMPILER_DIR}/out/production/compiler KOTLINPATH=${HOME}/.IntelliJIdea2018.3/config/plugins/Kotlin -LIBJARS=${KOTLINPATH}/lib/kotlin-stdlib.jar:${KOTLINPATH}/lib/kotlin-reflect.jar:antlr/lib/antlr-runtime-4.7.2.jar +LIBJARS=${KOTLINPATH}/lib/kotlin-stdlib.jar:${KOTLINPATH}/lib/kotlin-reflect.jar:${PROG8_COMPILER_DIR}/antlr/lib/antlr-runtime-4.7.2.jar java -Dprog8.libdir=${PROG8_LIBDIR} -cp ${PROG8CLASSPATH}:${LIBJARS} prog8.CompilerMainKt $* diff --git a/compiler/src/prog8/CompilerMain.kt b/compiler/src/prog8/CompilerMain.kt index 1d755cd64..0c6f4f8c3 100644 --- a/compiler/src/prog8/CompilerMain.kt +++ b/compiler/src/prog8/CompilerMain.kt @@ -138,7 +138,7 @@ private fun compileMain(args: Array) { val intermediate = compiler.compile(moduleAst, heap) intermediate.optimize() - val stackVmFilename = intermediate.name + "_stackvm.txt" + val stackVmFilename = intermediate.name + ".vm.txt" val stackvmFile = PrintStream(File(stackVmFilename), "utf-8") intermediate.writeCode(stackvmFile) stackvmFile.close() diff --git a/docs/source/building.rst b/docs/source/building.rst index c59dda135..66c58ba2d 100644 --- a/docs/source/building.rst +++ b/docs/source/building.rst @@ -30,7 +30,7 @@ The compiler is invoked with the command: For now, it produces intermediate code for the stack-based "StackVM" virtual machine. You can run this code with the command: - ``$ ./stackvm.sh modulefile_stackvm.txt`` + ``$ ./stackvm.sh modulefile.vm.txt`` .. todo:: diff --git a/compiler/examples/assignments.p8 b/examples/assignments.p8 similarity index 100% rename from compiler/examples/assignments.p8 rename to examples/assignments.p8 diff --git a/compiler/examples/comparison_ifs_byte.p8 b/examples/comparison_ifs_byte.p8 similarity index 100% rename from compiler/examples/comparison_ifs_byte.p8 rename to examples/comparison_ifs_byte.p8 diff --git a/compiler/examples/comparison_ifs_float.p8 b/examples/comparison_ifs_float.p8 similarity index 100% rename from compiler/examples/comparison_ifs_float.p8 rename to examples/comparison_ifs_float.p8 diff --git a/compiler/examples/comparison_ifs_ubyte.p8 b/examples/comparison_ifs_ubyte.p8 similarity index 100% rename from compiler/examples/comparison_ifs_ubyte.p8 rename to examples/comparison_ifs_ubyte.p8 diff --git a/compiler/examples/comparison_ifs_uword.p8 b/examples/comparison_ifs_uword.p8 similarity index 100% rename from compiler/examples/comparison_ifs_uword.p8 rename to examples/comparison_ifs_uword.p8 diff --git a/compiler/examples/comparison_ifs_word.p8 b/examples/comparison_ifs_word.p8 similarity index 100% rename from compiler/examples/comparison_ifs_word.p8 rename to examples/comparison_ifs_word.p8 diff --git a/compiler/examples/comparisons_byte.p8 b/examples/comparisons_byte.p8 similarity index 100% rename from compiler/examples/comparisons_byte.p8 rename to examples/comparisons_byte.p8 diff --git a/compiler/examples/comparisons_float.p8 b/examples/comparisons_float.p8 similarity index 100% rename from compiler/examples/comparisons_float.p8 rename to examples/comparisons_float.p8 diff --git a/compiler/examples/comparisons_ubyte.p8 b/examples/comparisons_ubyte.p8 similarity index 100% rename from compiler/examples/comparisons_ubyte.p8 rename to examples/comparisons_ubyte.p8 diff --git a/compiler/examples/comparisons_uword.p8 b/examples/comparisons_uword.p8 similarity index 100% rename from compiler/examples/comparisons_uword.p8 rename to examples/comparisons_uword.p8 diff --git a/compiler/examples/comparisons_word.p8 b/examples/comparisons_word.p8 similarity index 100% rename from compiler/examples/comparisons_word.p8 rename to examples/comparisons_word.p8 diff --git a/compiler/examples/cube3d-float.p8 b/examples/cube3d-float.p8 similarity index 100% rename from compiler/examples/cube3d-float.p8 rename to examples/cube3d-float.p8 diff --git a/compiler/examples/cube3d-stackvm.p8 b/examples/cube3d-stackvm.p8 similarity index 100% rename from compiler/examples/cube3d-stackvm.p8 rename to examples/cube3d-stackvm.p8 diff --git a/compiler/examples/cube3d.p8 b/examples/cube3d.p8 similarity index 100% rename from compiler/examples/cube3d.p8 rename to examples/cube3d.p8 diff --git a/examples/examples.iml b/examples/examples.iml new file mode 100644 index 000000000..8021953ed --- /dev/null +++ b/examples/examples.iml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/compiler/examples/forloops.p8 b/examples/forloops.p8 similarity index 100% rename from compiler/examples/forloops.p8 rename to examples/forloops.p8 diff --git a/compiler/examples/hello.p8 b/examples/hello.p8 similarity index 100% rename from compiler/examples/hello.p8 rename to examples/hello.p8 diff --git a/compiler/examples/mandelbrot-stackvm.p8 b/examples/mandelbrot-stackvm.p8 similarity index 100% rename from compiler/examples/mandelbrot-stackvm.p8 rename to examples/mandelbrot-stackvm.p8 diff --git a/compiler/examples/mandelbrot.p8 b/examples/mandelbrot.p8 similarity index 100% rename from compiler/examples/mandelbrot.p8 rename to examples/mandelbrot.p8 diff --git a/compiler/examples/numbergame-lowlevel.p8 b/examples/numbergame-lowlevel.p8 similarity index 100% rename from compiler/examples/numbergame-lowlevel.p8 rename to examples/numbergame-lowlevel.p8 diff --git a/compiler/examples/numbergame.p8 b/examples/numbergame.p8 similarity index 100% rename from compiler/examples/numbergame.p8 rename to examples/numbergame.p8 diff --git a/compiler/examples/sprites.p8 b/examples/sprites.p8 similarity index 100% rename from compiler/examples/sprites.p8 rename to examples/sprites.p8 diff --git a/compiler/examples/swirl-float.p8 b/examples/swirl-float.p8 similarity index 100% rename from compiler/examples/swirl-float.p8 rename to examples/swirl-float.p8 diff --git a/compiler/examples/swirl-stackvm.p8 b/examples/swirl-stackvm.p8 similarity index 100% rename from compiler/examples/swirl-stackvm.p8 rename to examples/swirl-stackvm.p8 diff --git a/compiler/examples/swirl.p8 b/examples/swirl.p8 similarity index 100% rename from compiler/examples/swirl.p8 rename to examples/swirl.p8 diff --git a/compiler/examples/test.p8 b/examples/test.p8 similarity index 100% rename from compiler/examples/test.p8 rename to examples/test.p8 diff --git a/compiler/examples/wizzine.p8 b/examples/wizzine.p8 similarity index 100% rename from compiler/examples/wizzine.p8 rename to examples/wizzine.p8