about summary refs log tree commit diff stats
Commit message (Collapse)AuthorAgeFilesLines
* mu.subx: start tracking remaining failing testsKartik Agaram2020-05-202-52/+52
| | | | We're now passing CI again.
* mu.subx: 10/50 top-level tests passingKartik Agaram2020-05-181-2/+3
|
* mu.subx: 6/50 top-level tests passingKartik Agaram2020-05-181-8/+16
|
* mu.subx: 4/50 top-level tests passingKartik Agaram2020-05-181-1/+2
|
* mu.subx: 3/50 top-level tests passingKartik Agaram2020-05-181-1/+1
|
* mu.subx: 2/50 top-level tests passingKartik Agaram2020-05-181-31/+33
|
* mu.subx: done with code-generation testsKartik Agaram2020-05-181-18/+44
| | | | Bottom 42 of 92 tests are now passing. Time for the first 50.
* mu.subx: test-emit-subx-stmt-function-callKartik Agaram2020-05-181-30/+73
|
* mu.subx: test-compare-reg-with-literalKartik Agaram2020-05-181-21/+68
|
* mu.subx: test-compare-eax-with-literalKartik Agaram2020-05-181-22/+70
|
* mu.subx: compare-mem-with-literalKartik Agaram2020-05-181-21/+64
|
* mu.subx: test-compare-reg-with-memKartik Agaram2020-05-181-19/+61
|
* mu.subx: test-compare-mem-with-regKartik Agaram2020-05-181-22/+65
|
* mu.subx: test-add-literal-to-memKartik Agaram2020-05-181-20/+63
|
* mu.subx: test-add-literal-to-regKartik Agaram2020-05-181-32/+82
|
* mu.subx: test-add-literal-to-eaxKartik Agaram2020-05-181-23/+72
|
* mu.subx: test-add-mem-to-regKartik Agaram2020-05-181-18/+61
|
* -Kartik Agaram2020-05-181-34/+34
|
* -Kartik Agaram2020-05-181-254/+272
|
* mu.subx: test-add-reg-to-memKartik Agaram2020-05-181-20/+64
|
* mu.subx: test-add-reg-to-reg passingKartik Agaram2020-05-181-12/+15
|
* mu.subx: add handles to remaining declsKartik Agaram2020-05-181-20/+102
| | | | test-add-reg-to-reg should pass now. But it doesn't..
* mu.subx: next test now successfully scans primitivesKartik Agaram2020-05-181-16/+63
| | | | Still failing.
* mu.subx: switch SubX instruction names to globalsKartik Agaram2020-05-181-81/+81
| | | | | | Entirely using interactive search-and-replace in my text editor. This is all ugly as hell. But get it working first.
* mu.subx: switch Mu instruction names to globalsKartik Agaram2020-05-181-80/+80
|
* mu.subx: global decls for all string handlesKartik Agaram2020-05-181-116/+645
| | | | | | | | | | My previous approach was way too slow. Now I just `grep`d for all string literals in the `Primitives` block, and piped them through: while read X; do echo $X |tools/expand_string_handle; done Still required some post-processing, but orders of magnitude faster and more amenable to batch-processing.
* -Kartik Agaram2020-05-183-34/+144
|
* mu.subx: drop a redundant testKartik Agaram2020-05-181-64/+0
|
* mu.subx: fix strings in inc/dec PrimitivesKartik Agaram2020-05-181-30/+99
|
* mu.subx: insert alloc-id everywhere in PrimitivesKartik Agaram2020-05-181-0/+534
|
* -Kartik Agaram2020-05-181-1/+1
|
* -Kartik Agaram2020-05-181-115/+115
|
* -Kartik Agaram2020-05-181-33/+33
|
* mu.subx: make handles in Primitives easier to readKartik Agaram2020-05-182-0/+48
|
* mu.subx: fix misleading setup in passing testsKartik Agaram2020-05-181-5/+5
|
* mu.subx: fifth code-gen testKartik Agaram2020-05-181-19/+70
| | | | | First test using the Primitives global. It's terrible how handles mess up my syntax sugar for strings.
* mu.subx: fourth code-gen testKartik Agaram2020-05-181-29/+102
|
* -Kartik Agaram2020-05-181-6/+2
|
* -Kartik Agaram2020-05-181-9/+18
| | | | | mu-stmt-matches-primitive? is quite a gnarly function. Baby step: better names for labels, so that traces are easier to read.
* fix a misplaced labelKartik Agaram2020-05-181-4/+4
| | | | Two tests were incorrectly passing earlier.
* -Kartik Agaram2020-05-181-8/+0
|
* mu.subx: third code-gen testKartik Agaram2020-05-181-29/+102
| | | | | This is indeed easier. Though defining the global data structure for primitives directly in the data segment is going to get ugly.
* -Kartik Agaram2020-05-181-2/+2
|
* mu.subx: redo passing code-gen testsKartik Agaram2020-05-182-147/+118
| | | | | | We've gone back and rewritten the tests to fit the older format from 3 commits ago. No behavior change, but staying close to the older format should make it easier to update the remaining tests.
* mu.subx: another code-gen testKartik Agaram2020-05-181-37/+105
|
* -Kartik Agaram2020-05-181-8/+4
| | | | Remove one local variable and unnecessary copy.
* mu.subx: first code-gen test passing!Kartik Agaram2020-05-183-109/+258
|
* handle nulls in lookupKartik Agaram2020-05-1813-4/+36
| | | | | | | | | Cleaner abstraction, but adds 3 instructions to our overhead for handles, including one potentially-hard-to-predict jump :/ I wish I could have put the alloc id in eax for the comparison as well, to save a few bytes of instruction space. But that messes up the non-null case.
* mu.subx: all parsing tests passingKartik Agaram2020-05-182-2/+2
|
* mu.subx: tests for parse-var-with-typeKartik Agaram2020-05-181-45/+93
|