aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-07-25Add code example to READMEdec05eba
2020-07-25Allow referencing code in imported file (right now for function calls, allow ↵dec05eba
calling a function in another file)
2020-07-25Find tokenizer by code reference instead of using scope parserdec05eba
2020-07-25Remove number of branches in executordec05eba
2020-07-25Add if/else/elseif/while, including the final assemblydec05eba
2020-07-25Add sanity checksdec05eba
2020-07-25Add exported variable (only functions for now), export main func, start ↵dec05eba
execution from main func
2020-07-25Move thread work from compiler/parser to thread_work file, fix use after ↵dec05eba
free bug in multithreaded parser allocator
2020-07-25Code cleanup in ssa/bytecode. Remove ugly memcpydec05eba
2020-07-25hash map containsdec05eba
2020-07-25Use python2 for doc extractdec05eba
2020-07-25Cleanup on test failuredec05eba
2020-07-25Improve doc extradec05eba
2020-07-25Add extern funcs, parameter registers, fix asm_rm RSP bugdec05eba
2020-07-25Implement more instructions, implement function parameters and argumentsdec05eba
2020-07-25Add asm debugdec05eba
2020-07-25Move program code generation and execution out of program (make it generic)dec05eba
2020-07-25Before interpreter. Cleanup build script. Begin writing code analyzer tool ↵dec05eba
to find common mistakes
2020-07-25Remove nullable... it's bad to have magic. Static analysis can do it insteaddec05eba
2020-07-25Add nullable, add bytecode documentationdec05eba
2020-07-25Update docdec05eba
2020-07-25Starting on asm, implementing extern function call so progress is visibledec05eba
2020-07-25Setup structure for program executedec05eba
2020-07-25Start on amal programdec05eba
Fix mutex issue in lhs expr which can cause a deadlock when a file has an error and throws and doesn't close the mutex and another thread waits for that mutex. The mutex can instead be removed and ignore race conditions which are uncommon. This should improve memory usage and performance.
2020-07-25Start on real bytecode & doc parsingdec05eba
2020-07-25Generate compile_commands.jsondec05eba
2020-07-25Fix errors from pedantic checkdec05eba
2020-07-25Add compiler option for number of threads to use (instead of env)dec05eba
2020-07-25stderr>file in bytecodedec05eba
2020-07-25Remove generated files from gitdec05eba
2020-07-25Add assignment, while, extern, function signature type, start on bytecodedec05eba
2020-07-25Fix scoped allocator deinit crash with buffersdec05eba
2020-07-25Progressing on bytecode (to c), fix ssa resolving multiple timesdec05eba
2020-07-25Fix buffer overflow in ssa_ins_calldec05eba
2020-07-25Start on bytecode. Commit before os switchdec05eba
2020-07-25Test errors, stop working on errordec05eba
2020-07-25Fix ssa call, use correct tokenizer in errordec05eba
2020-07-25Synchronize funccall generate. Uses correct func index nowdec05eba
2020-07-25Resolve cross-file references (with mutex). Not donedec05eba
2020-07-25Use ast pointers to fix resolving, remove try/throwing macrosdec05eba
2020-07-25Add mutex for lhs expr, add error for missing lhs expr for func, structdec05eba
TODO: Use mutex in lhs expr and set resolved_type
2020-07-25Add pub keyword, more import stuff, optimize hash mapdec05eba
Hash map now stores hash of keys to reduce the number of hash operations. Positive: faster insert/get. Negative: more space required (to store usize hash).
2020-07-25Set file scope when parser is created. No need to resolve for every @import ↵dec05eba
instance
2020-07-25Add struct, import caching, binop ops etcdec05eba
2020-07-25Resolve variable referencesdec05eba
2020-07-25Add ssa stringdec05eba
2020-07-25Fix bugsdec05eba
Fix hash map bug on rorder (invalid size). Fix string to int/float conversion in tokenizer. Add more ssa functions
2020-07-25Refactor ssadec05eba
2020-07-25Fix race in amal_compiler_load_filedec05eba
2020-07-25Turn ast resolve/ssa generation thread work to generic workflow - better for ↵dec05eba
future steps