diff options
| author | Kai Gunger <kgunger12@gmail.com> | 2026-07-08 02:14:13 -0400 |
|---|---|---|
| committer | Kai Gunger <kgunger12@gmail.com> | 2026-07-08 02:14:13 -0400 |
| commit | f7ececd879b731194f64123f746ac49b7781fc68 (patch) | |
| tree | d4f3af89e3a138bbd8a9f65c81d1b7033bf81152 /tnslc/run.sh | |
| parent | f9665d8aa06e11730a9d6e7af3f98ccefb324bbf (diff) | |
[tnslc] fixes for stack location when returning structs
Diffstat (limited to 'tnslc/run.sh')
| -rwxr-xr-x | tnslc/run.sh | 25 |
1 files changed, 23 insertions, 2 deletions
diff --git a/tnslc/run.sh b/tnslc/run.sh index 8010ab6..a8cf594 100755 --- a/tnslc/run.sh +++ b/tnslc/run.sh @@ -1,5 +1,26 @@ #!/bin/bash -DIR_L=$(pwd) +BUILD_DIR=./out/NEXT +ARTIFACT_DIR=$BUILD_DIR/artifacts + +mkdir -p $BUILD_DIR +mkdir -p $ARTIFACT_DIR +filename=$1 +filename="${filename%.*}" + +./out/tnslc $filename.tnsl + +if [ $? -ne 0 ]; then + exit $? +fi + +mv out.asm $ARTIFACT_DIR/$filename.asm + +nasm -g -f elf64 -o $ARTIFACT_DIR/$filename.o $ARTIFACT_DIR/$filename.asm + +if [ $? -ne 0 ]; then + exit $? +fi + +gcc -ggdb -o $BUILD_DIR/$filename $ARTIFACT_DIR/$filename.o -$DIR_L/out/tnslc $1 |