about summary refs log tree commit diff stats
path: root/subx
Commit message (Collapse)AuthorAgeFilesLines
* preserve truthiness of non-booleansKartik Agaram2019-07-085-12/+12
| | | | | Everywhere we check if something is true, we check it by comparing against 0, not 1.
* .Kartik Agaram2019-07-084-6/+16
| | | | style tweaks
* .Kartik Agaram2019-07-082-42/+5
| | | | DRY out compute-width and compute-width-from-slice.
* .Kartik Agaram2019-07-081-60/+60
| | | | move a function around
* .Kartik Agaram2019-07-081-15/+0
| | | | Delete some empty lines.
* build `num-bytes`Kartik Agaram2019-07-073-2/+565
|
* .Kartik Agaram2019-07-074-246/+246
| | | | reorg in subx-common.subx
* move `is-label?` to `subx-common`Kartik Agaram2019-07-0711-83/+83
|
* made first compute-offset test passnc2019-07-072-27/+75
|
* remove segfaults in survey.subxnc2019-07-071-8/+8
|
* new failing test: emit-segmentsKartik Agaram2019-07-072-1/+254
| | | | Now the only piece I plan to not write tests for is emit-headers.
* .Kartik Agaram2019-07-071-7/+8
|
* move phase 3 out of helpersKartik Agaram2019-07-071-117/+117
|
* cleanup in compute-offset and fix bug in compute-widthnc2019-07-072-27/+13
|
* more progress in compute-offsetnc2019-07-042-30/+59
|
* implement segment section in compute-offsetsnc2019-07-041-3/+112
|
* .Kartik Agaram2019-07-042-2/+2
| | | | | | Fix a couple of syntax errors. survey.subx still failing tests.
* Merge branch 'master' into surveyKartik Agaram2019-07-0321-265/+966
|\ | | | | | | | | | | High time we pulled in the final changes to dquotes. In the process we fix one recently introduced duplicate symbol.
| * 5226Kartik Agaram2019-05-271-3/+4
| |
| * 5225Kartik Agaram2019-05-271-9/+9
| |
| * 5224Kartik Agaram2019-05-271-1/+2
| |
| * 5223Kartik Agaram2019-05-251-3/+3
| |
| * 5222Kartik Agaram2019-05-221-2/+2
| | | | | | | | Fix CI for a real, restricted /bin/sh.
| * 5221Kartik Agaram2019-05-221-0/+11
| | | | | | | | Explore using a second register for pointer dereferencing.
| * 5219Kartik Agaram2019-05-223-12/+32
| | | | | | | | | | After fixing bugs, checking alloc_ids now requires 9 instructions rather than 6.
| * 5218Kartik Agaram2019-05-2217-9/+9
| |
| * 5217Kartik Agaram2019-05-222-2/+2
| | | | | | | | | | | | | | | | Couple of typos in handle.subx. We didn't notice because a missing /r32 field gets turned into 0/EAX anyway, and because ECX happens to have the same value as EAX in the specific test caller. But it's still not running as expected, now that I'm looking closely.
| * 5216Kartik Agaram2019-05-221-2/+3
| |
| * 5215Kartik Agaram2019-05-201-0/+2
| |
| * 5214 - update app code statsKartik Agaram2019-05-201-4/+9
| |
| * 5213Kartik Agaram2019-05-202-2/+2
| |
| * 5212Kartik Agaram2019-05-201-1/+1
| |
| * SubX in SubX: done with dquotes phaseKartik Agaram2019-05-201-0/+10
| | | | | | | | Add the new binary to CI.
| * Merge branch 'dquotes-3'Kartik Agaram2019-05-203-181/+831
| |\
| | * clean up a redundant primitiveKartik Agaram2019-05-202-84/+4
| | |
| | * .Kartik Agaram2019-05-202-6/+6
| | |
| | * dquotes now doneKartik Agaram2019-05-202-41/+162
| | | | | | | | | | | | | | | We need yet another helper for computing the lengths of strings, while checking for escape sequences.
| | * standardize the loop in skip-string-in-sliceKartik Agaram2019-05-202-5/+8
| | | | | | | | | | | | | | | | | | We're going to be cloning it for the length computation. Anytime we do something non-standard it's invariably short-lived.
| | * support string literals in emit-string-literal-dataKartik Agaram2019-05-202-11/+19
| | | | | | | | | | | | As expected, almost all tests now passing.
| | * .Kartik Agaram2019-05-201-0/+1
| | |
| | * 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