Age | Commit message (Collapse) | Author | |
---|---|---|---|
2023-11-29 | Added TOKEN_PP_USE to lexer with implementation | Aryadev Chavali | |
2023-11-11 | Added string literals in tokeniser | Aryadev Chavali | |
Doesn't do much, invalid for most operations. | |||
2023-11-06 | Current work on preprocessor | Aryadev Chavali | |
2023-11-05 | Current work on preprocessor implementation | Aryadev Chavali | |
Lots to refactor and test | |||
2023-11-03 | Added a start address (equivalent to `main`) to assembler | Aryadev Chavali | |
Creates a jump address to the label delegated by "global" so program starts at that point. | |||
2023-11-02 | Implemented CALL(_STACK) and RET on the assembler | Aryadev Chavali | |
2023-11-02 | Made separate tokens for JUMP_ABS and JUMP_STACK | Aryadev Chavali | |
Makes more sense, don't need to fiddle around with strings as much in the parser due to this! | |||
2023-11-02 | Started work on preprocessing jump addresses | Aryadev Chavali | |
2023-11-01 | Implemented MALLOC_STACK and SUB in the assembler | Aryadev Chavali | |
2023-11-01 | Implemented stack versions of MGET and MSET in assembler | Aryadev Chavali | |
2023-11-01 | Implemented OP_MSIZE into lexer/parser of ASM | Aryadev Chavali | |
2023-11-01 | Implemented lexer and parser for new memory management instructions | Aryadev Chavali | |
2023-11-01 | Add MULT to lexer and parser for assembler | Aryadev Chavali | |
2023-11-01 | Lexer now returns more descriptive tokens | Aryadev Chavali | |
More useful tokens, in particular for each opcode possible. This makes parsing a simpler task to reason as now we're just checking against an enum rather than doing a string check in linear time. It makes more sense to do this at the tokeniser as the local data from the buffer will be in the cache most likely as the buffer is contiguously allocated. While it will always be slow to do linear time checks on strings, when doing it at the parser we're having to check strings that may be allocated in a variety of different places. This means caching becomes a harder task, but with this approach we're less likely to have cache misses as long as the buffer stays there. | |||
2023-10-31 | Lexer now returns errors on failure | Aryadev Chavali | |
Currently only for invalid character literals, but still a possible problem. | |||
2023-10-28 | Introduced a column and line for each token | Aryadev Chavali | |
Accurate error reporting can be introduced using this. | |||
2023-10-26 | Lexer forces uppercase for symbols | Aryadev Chavali | |
2023-10-26 | Auto fill licenses | Aryadev Chavali | |
2023-10-26 | Unified literal for numbers, main program now tokenises | Aryadev Chavali | |
2023-10-25 | Separated lexer from main file in asm | Aryadev Chavali | |