1
0
mirror of https://github.com/catseye/SixtyPical.git synced 2024-11-22 01:32:13 +00:00
Commit Graph

665 Commits

Author SHA1 Message Date
Chris Pressey
565f959ee2 Our CINV interrupt service routine should be preserved. 2019-10-22 12:35:29 +01:00
Chris Pressey
92b1cfeefb Implement tail-call optimization. 2019-10-22 12:23:15 +01:00
Chris Pressey
78a1f2910c Simplify and improve Emitter abstraction. 2019-10-22 11:55:21 +01:00
Chris Pressey
44d97c33a2 Better generation of code at tail of routines. 2019-10-22 11:37:00 +01:00
Chris Pressey
b9df1482c6 Pass next routine to each routine being compiled. 2019-10-22 10:32:14 +01:00
Chris Pressey
ea788264f7 Make test as intended. It fails atm. Simplify driver code. 2019-10-22 10:18:56 +01:00
Chris Pressey
3d88226058 Implement --prune-unreachable-routines. 2019-10-22 09:41:30 +01:00
Chris Pressey
1df6941b01 Callgraph uses reachability. 2019-10-22 09:07:16 +01:00
Chris Pressey
1098347fa5 Routines can be declared preserved. 2019-10-21 21:45:59 +01:00
Chris Pressey
2192a48e0e Update HISTORY. 2019-10-21 21:37:30 +01:00
Chris Pressey
a84cd4de8c Expand on the callgraph tests. 2019-10-21 21:35:28 +01:00
Chris Pressey
40d9c57d64 Fix test, dump format. 2019-10-21 21:23:14 +01:00
Chris Pressey
684256f7e9 Start of tests for this. 2019-10-21 17:29:38 +01:00
Chris Pressey
b09d0c0b76 Routines that are goto'd are also in the call graph. 2019-10-21 17:15:28 +01:00
Chris Pressey
182935a088 First cut at finding all routines that could be assigned to vector. 2019-10-21 16:12:06 +01:00
Chris Pressey
7187fa6285 Refactor: move to dedicated module. 2019-10-21 15:41:17 +01:00
Chris Pressey
bcc256aa5d Checkpoint. 2019-10-21 15:07:54 +01:00
Chris Pressey
2e002fc33e Merge branch 'circle-ci' of https://github.com/catseye/SixtyPical into construct-callgraph 2019-10-21 14:48:27 +01:00
Chris Pressey
894fb1a0f2 Refine the callgraph algorithm. Still incomplete though. 2019-10-21 14:43:21 +01:00
Chris Pressey
58dc68f838 Merge branch 'develop-0.21' into construct-callgraph 2019-10-21 14:08:06 +01:00
Chris Pressey
a966a496d0 Bump version number. 2019-10-21 14:07:41 +01:00
Chris Pressey
87a2f70092 First cut at constructing a call graph. 2019-10-21 14:03:35 +01:00
Chris Pressey
5912bf2684 Fix dcc6502-adapter for latest version of tcarmelveilleux/dcc6502. 2019-10-21 13:34:53 +01:00
Chris Pressey
0ef0dc1628 dcc6502-adapter fixes. 2019-07-16 16:26:16 +01:00
Chris Pressey
775af38960 Change config. 2019-07-16 16:23:30 +01:00
Chris Pressey
952e3528a3 Try this. 2019-07-16 16:22:29 +01:00
Chris Pressey
8467cd947e
Merge pull request #21 from catseye/develop-0.20
Develop 0.20
2019-05-14 16:25:27 +01:00
Chris Pressey
2e2e80664e Forbid nested with interrupts blocks, and more refactoring. 2019-05-14 15:01:10 +01:00
Chris Pressey
3f666f4385 Add reset instruction; much refactoring. 2019-05-14 08:56:35 +01:00
Chris Pressey
dd29b6fd4a Implement local locations that aren't statically initialized. 2019-05-13 12:32:18 +01:00
Chris Pressey
81e28fa757 Jot down some TODO items before I forget them. 2019-04-18 09:16:23 +01:00
Chris Pressey
3d14b6ee6c Fix typo. 2019-04-16 13:59:27 +01:00
Chris Pressey
1c7efb019d
Merge pull request #20 from catseye/develop-0.19
Develop 0.19
2019-04-16 12:35:59 +01:00
Chris Pressey
0c65954bc5 Updates to README. Fix awkward punctuation in usage message. 2019-04-16 11:37:46 +01:00
Chris Pressey
a10f1c6528 Replace --run option with terser --run-on option. 2019-04-16 10:35:59 +01:00
Chris Pressey
4d82e2352e Merge branch 'develop-0.19' into reform-loadngo 2019-04-15 17:39:09 +01:00
Chris Pressey
c246424930 Fix bug raising InconsistentExitError, and type-bug in ribos2.60p. 2019-04-15 17:35:17 +01:00
Chris Pressey
6d867867fe Remove the "local" loadngo script from here as well. 2019-04-15 13:16:07 +01:00
Chris Pressey
a44b007ff0 Declare that --run replaces loadngo.sh, and remove the latter. 2019-04-15 13:11:43 +01:00
Chris Pressey
ce8e83908b First cut at a --run option for sixtypical, replacing loadngo.sh. 2019-04-11 16:53:43 +01:00
Chris Pressey
04a9438898 The VICE emulators just keep going if they can't find the vicerc. 2019-04-10 16:53:01 +01:00
Chris Pressey
c906ab7817 A few further small edits to README. 2019-04-10 12:29:59 +01:00
Chris Pressey
1ca5cb0336 You could argue that it's not *that* low level, so, okay. 2019-04-10 12:23:50 +01:00
Chris Pressey
7854f71706 More edits to docs. 2019-04-10 12:02:35 +01:00
Chris Pressey
652ab1dc5c Clean up ArgumentParser usage message, add --version argument. 2019-04-10 10:42:50 +01:00
Chris Pressey
21a187a105 Update docs. 2019-04-10 09:29:45 +01:00
Chris Pressey
8d6e5e090d The Type and Ref class hierarchies are now namedtuples. 2019-04-10 08:50:13 +01:00
Chris Pressey
a0328b8840 Store type information in SymbolTable shared across phases. 2019-04-10 08:48:33 +01:00
Chris Pressey
394fbddad6 Refactor to avoid storing LocationRefs in SymEntry. 2019-04-09 09:42:22 +01:00
Chris Pressey
4615d8d054 Distinct AST nodes for call and goto instructions. 2019-04-08 16:26:51 +01:00