Commit Graph

78 Commits

Author SHA1 Message Date
Irmen de Jong 74456d1135 optimized prefix-expression in to use stack evaluation less 2021-11-06 17:57:00 +01:00
Irmen de Jong 62dc824bc0 tweaks 2021-11-06 17:14:07 +01:00
Irmen de Jong 1605791f1b float swap() no longer uses evaluation stack but a single temp var instead + FAC1 2021-11-06 03:36:14 +01:00
Irmen de Jong 37a46aa2cf complex memory assignment also tries to avoid estack evaluation (but not done yet) 2021-11-06 00:03:19 +01:00
Irmen de Jong 1d2d217b94 non-optimized typecast assignments now attempt to not use evalstack 2021-11-05 23:25:07 +01:00
Irmen de Jong 23961f695d fixed some parse tree node position end-columns. cleanup some todo's 2021-11-05 22:48:28 +01:00
Irmen de Jong 730b208617 relaxed some type checks on certain word register assignment
preparing to optimize asmsub arg passing for complex expressions
2021-11-04 23:57:25 +01:00
Irmen de Jong f09c04eeac fix invalid asm addressing mode for certain value-to-evalstack transfers 2021-11-04 22:44:31 +01:00
Irmen de Jong 7f49731618 fix: don't initialize block vars twice, fix: make sure the prog8_init_vars generated routine is correctly called when needed 2021-11-02 23:13:28 +01:00
Irmen de Jong 1110bd0851 fix vardecl initialization value to not use stack eval anymore but separate assignment
(this causes the optimized assignment code gen to be used instead)
but some programs now end up larger in output size
2021-11-01 00:24:15 +01:00
Irmen de Jong 1b576f826d remove unneeded sibling methods 2021-10-31 16:50:15 +01:00
Irmen de Jong fe17566370 improved reporting of slow stack based evaluation code 2021-10-31 14:18:49 +01:00
Irmen de Jong e3c00669c1 fixed improved asm generation for conditions that compare signed word to zero 2021-10-31 02:39:45 +02:00
Irmen de Jong 33d17afc32 improved asm generation for conditions that compare byte/word to zero 2021-10-31 01:58:16 +02:00
Irmen de Jong 2388359a99 improved asm generation for conditions that compare ubyte/uword to zero 2021-10-31 01:39:37 +02:00
Irmen de Jong 2df0c9503c improved asm generation for conditions that compare floats to zero 2021-10-31 01:28:08 +02:00
Irmen de Jong 61fa3bc77c comparisonjump tweak 2021-10-31 00:57:22 +02:00
Irmen de Jong dfbef8495d got rid of ParsingFailedError 2021-10-30 17:05:23 +02:00
Irmen de Jong 7b17c49d8f update petscii tables with improvements to box drawing chars. fixes #68 2021-10-30 16:45:23 +02:00
Irmen de Jong 4b3f31c2ee added option to suppress assembler output (and enabled this in unit tests) 2021-10-30 15:26:40 +02:00
Irmen de Jong 97836e18b2 simplified gradle config, automatically run installDist task after build 2021-10-30 12:01:52 +02:00
Irmen de Jong d7d2eefa4f implemented CharLiteral.constValue() 2021-10-30 00:05:55 +02:00
Irmen de Jong 3da9404c2d removed memsizer arg from all builtin functions 2021-10-29 23:38:31 +02:00
Irmen de Jong 4d5bd0fa32 simplify ZeroPage reserved locations handling a bit 2021-10-29 17:34:42 +02:00
Irmen de Jong 1137da37c3 reshuffle ErrorReporter 2021-10-29 17:02:03 +02:00
Irmen de Jong 495a18805c move asmgen test to codeGeneration module 2021-10-29 16:20:53 +02:00
Irmen de Jong a226b82d0b cleanup imports 2021-10-29 05:30:12 +02:00
Irmen de Jong 0b5ddcdc9b split out the code generator into own project submodule 2021-10-29 05:00:30 +02:00