about summary refs log tree commit diff stats
path: root/subx
Commit message (Collapse)AuthorAgeFilesLines
...
| | * support string literals in emit-metadataKartik Agaram2019-05-202-10/+31
| | |
| | * move local variable up following conventionsKartik Agaram2019-05-192-6/+11
| | | | | | | | | | | | | | | More importantly, don't mix reclaiming locals with discarding args after a call.
| | * convention: source arg in ESIKartik Agaram2019-05-192-8/+15
| | | | | | | | | | | | I _think_ we'll need to use it below. But may be wrong.
| | * handle words with just metadataKartik Agaram2019-05-192-3/+66
| | | | | | | | | | | | | | | Kind of a pathological case, but makes our loop follow a standard format, and provides some error checking at low cost.
| | * minor style tweaks for emit-metadataKartik Agaram2019-05-192-40/+27
| | |
| | * minor style cleanupKartik Agaram2019-05-181-20/+7
| | |
| | * skip-string: fix a bug in computing in->readKartik Agaram2019-05-182-4/+48
| | | | | | | | | | | | I was missing a test to catch this.
| | * minor style cleanupKartik Agaram2019-05-182-34/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I like to be able to jump between functions and tests using '}' in Vim :) We also shouldn't put the wrong argument types in the tabular columns. Just make it obvious they're not in use when instructions don't have a ModR/M byte. End-of-line comments are really only useful for instructions with a ModR/M byte.
| | * add a bounds checkKartik Agaram2019-05-182-1/+38
| | |
| | * implement skip-string-in-slice and reimplement skip-string in terms of ↵nc2019-05-181-37/+75
| | | | | | | | | | | | skip-string-in-slice
| | * implemented skip-stringnc2019-05-181-0/+51
| | |
| | * another failing testKartik Agaram2019-05-172-0/+90
| | | | | | | | | | | | This one should make `emit-metadata` string-aware.
| | * dquotes: failing tests for parsing string literalsKartik Agaram2019-05-162-0/+284
| | | | | | | | | | | | Plan: https://github.com/akkartik/mu/commit/d4a244268841e8e912c98f4587095b701aa5c292#commitcomment-33558279
* | | .Kartik Agaram2019-07-033-248/+0
| | | | | | | | | | | | Get 'assort.subx' working again.
* | | .Kartik Agaram2019-07-031-10/+6
| | | | | | | | | | | | Revert a bad merge.
* | | add todo for section thats not quite completenc2019-07-031-1/+1
| | |
* | | add is-label blocknc2019-07-032-3/+46
| | |
* | | updates to survey - part of compute-offsets implementednc2019-07-034-254/+393
| | |
* | | subx/survey: now computing label addressesKartik Agaram2019-07-022-47/+65
| | |
* | | .Kartik Agaram2019-07-022-12/+31
| | | | | | | | | | | | | | | subx/survey/compute-addresses: Now computing segment starting addresses correctly.
* | | .Kartik Agaram2019-07-022-5/+5
| | |
* | | .Kartik Agaram2019-07-021-4/+8
| | |
* | | error in pseudocode for compute-offsetsKartik Agaram2019-07-021-1/+3
| | |
* | | .Kartik Agaram2019-07-012-33/+46
| | | | | | | | | | | | Now tracing segment names correctly.
* | | .Kartik Agaram2019-07-011-0/+27
| | |
* | | .Kartik Agaram2019-07-012-0/+24
| | |
* | | .Kartik Agaram2019-07-012-14/+15
| | | | | | | | | | | | | | | | | | Make `compute-addresses` less clever. Stop striding from the middle of one row to the next. This way we'll also obviate the need for indexing backwards from a pointer in the next commit.
* | | some primitives for emitting tracesKartik Agaram2019-07-0111-3/+479
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Kinda hacky, but might scale enough for machine code. This was really hard to debug. Single tests passed, but when I ran all tests I got breakage because tests long before (from the 056trace layer) were not cleaning up properly. My instinct was to call clear-stream on Trace-stream, which was wrong (the trace didn't have the wrong contents, it was literally a bad object). It was also wrong in a counter-productive way: calling clear-stream on a real Trace stream (which is the size of a page of memory) takes a long time in emulated mode.
* | | .Kartik Agaram2019-07-019-0/+113
| | |
* | | unsigned comparison for addresses in more placesKartik Agaram2019-07-0120-33/+32
| | |
* | | .Kartik Agaram2019-07-011-2/+2
| | |
* | | .Kartik Agaram2019-07-011-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When rerunning most recently run test, also load the same files as before. Try the following commands in sequence: $ ./run_one_test.sh 056trace.subx test-compute-addresses # 1 0 error: missing reference to global 'test-compute-addresses' $ ./run_one_test.sh apps/survey.subx test-compute-addresses # 2 $ ./run_one_test.sh 056trace.subx trace # run previous test # 3 Now command 3 will work, and it will behave identically to command 2. This way I can switch to another file in Vim and hit `\t` in a random place in the file and still have the previously run test be rerun.
* | | .Kartik Agaram2019-07-011-1/+3
| | |
* | | .Kartik Agaram2019-07-011-7/+1
| | |
* | | .Kartik Agaram2019-07-011-7/+2
| | | | | | | | | | | | | | | Simplify run_one_test.sh. We already create /tmp/run_one_test.subx, we don't need to track more state across runs.
* | | .Kartik Agaram2019-07-012-3/+3
| | | | | | | | | | | | Fix some comments.
* | | .Kartik Agaram2019-07-011-1/+1
| | |
* | | .Kartik Agaram2019-07-011-3/+3
| | |
* | | add test datanc2019-06-291-1/+10
| | |
* | | Implement is-label?nc2019-06-291-0/+75
| | |
* | | .Kartik Agaram2019-06-282-0/+3
| | |
* | | initial draft of solution for 'compute-addresses'Kartik Agaram2019-06-286-15/+331
| | | | | | | | | | | | No trace statements yet, so we don't know if it works.
* | | .Kartik Agaram2019-06-285-44/+44
| | |
* | | .Kartik Agaram2019-06-287-0/+0
| | | | | | | | | | | | Clean up CI.
* | | .Kartik Agaram2019-06-282-12/+155
| | | | | | | | | | | | | | | Flesh out final test some more. We also now have a new family of primitives for writing non-strings to input streams in tests.
* | | fix layout and some commentsKartik Agaram2019-06-171-43/+76
| | | | | | | | | | | | When two assertions don't share context they're clearer when separated.
* | | .Kartik Agaram2019-06-171-160/+160
| | | | | | | | | | | | | | | | | | | | | Move tests adjacent to function being tested. Originally I didn't expect the helpers to get their own tests. But even so, arguably the original layout was less clear.
* | | .Kartik Agaram2019-06-171-6/+6
| | |
* | | .Kartik Agaram2019-06-171-13/+21
| | | | | | | | | | | | | | | Make a test a little less confusing; stream was initialized with data filled in but outside bounds.
* | | fix two hangs in trace-scanKartik Agaram2019-06-171-6/+27
| | | | | | | | | | | | | | | 1. skip-next-line should skip newline 2. trace-scan was falling into an infinite loop on non-matching lines