diff --git a/test.sh b/test.sh index a19ec97..9967a0b 100755 --- a/test.sh +++ b/test.sh @@ -10,4 +10,5 @@ falderal --substring-error \ "tests/SixtyPical Storage.md" \ "tests/SixtyPical Control Flow.md" \ "tests/SixtyPical Fallthru.md" \ + "tests/SixtyPical Callgraph.md" \ "tests/SixtyPical Compilation.md" diff --git a/tests/SixtyPical Callgraph.md b/tests/SixtyPical Callgraph.md new file mode 100644 index 0000000..547e590 --- /dev/null +++ b/tests/SixtyPical Callgraph.md @@ -0,0 +1,22 @@ +SixtyPical Callgraph +==================== + +This is a test suite, written in [Falderal][] format, for the ability of +a SixtyPical analyzer to construct a callgraph of which routines call which +other routines, and its ability to discover which routines will never be +called. + +[Falderal]: http://catseye.tc/node/Falderal + + -> Tests for functionality "Dump callgraph info for SixtyPical program" + +The `main` routine is always called. + + | define main routine + | { + | } + = [ + = [ + = "main" + = ] + = ] diff --git a/tests/appliances/sixtypical.md b/tests/appliances/sixtypical.md index 1ee2bc4..425b970 100644 --- a/tests/appliances/sixtypical.md +++ b/tests/appliances/sixtypical.md @@ -16,5 +16,8 @@ implementation, `sixtypical`, that is going to implement these functionalities. -> Functionality "Dump fallthru info for SixtyPical program" is implemented by -> shell command "bin/sixtypical --optimize-fallthru --dump-fallthru-info --analyze-only --traceback %(test-body-file)" + -> Functionality "Dump callgraph info for SixtyPical program" is implemented by + -> shell command "bin/sixtypical --dump-callgraph --analyze-only --traceback %(test-body-file)" + -> Functionality "Compile SixtyPical program with fallthru optimization" is implemented by -> shell command "bin/sixtypical --output-format=c64-basic-prg --optimize-fallthru --traceback %(test-body-file) --output /tmp/foo && tests/appliances/bin/dcc6502-adapter