about summary refs log tree commit diff stats
path: root/apps
Commit message (Collapse)AuthorAgeFilesLines
* 5624Kartik Agaram2019-09-051-1/+69
| | | | Fix a bug in call.subx's tokenizer.
* 5623Kartik Agaram2019-09-0412-428/+0
|
* 5622Kartik Agaram2019-09-041-0/+1
|
* 5621Kartik Agaram2019-09-041-8/+160
| | | | Done with calls.subx's variant of next-word.
* 5620Kartik Agaram2019-09-043-31/+634
| | | | | | Further flesh out next-word variant for calls.subx. All the code is sketched out, and baseline tests pass. No tests yet for new functionality compared to sigils.subx.
* 5616Kartik Agaram2019-09-0412-327/+0
|
* 5615 - long strings in self-hosted translatorKartik Agaram2019-09-042-2/+27
| | | | | | My SubX translator phases assume lines are never longer than 512 bytes. However, dquotes.subx was generating lines longer than that by blowing up string literals by 4-5x.
* 5613Kartik Agaram2019-09-033-17/+200
| | | | | Translating common bits from sigils.subx expression-aware variant of next-word to use sigils in calls.subx.
* 5612Kartik Agaram2019-09-021-1/+1
|
* 5611Kartik Agaram2019-09-021-3/+3
|
* 5607 - start of notation for function callsKartik Agaram2019-09-021-0/+216
|
* 5608 - write int to streamKartik Agaram2019-09-0211-0/+0
|
* 5607Kartik Agaram2019-09-0110-25/+26
|
* 5606Kartik Agaram2019-09-011-0/+2
|
* 5605 - sigils: support *disp32Kartik Agaram2019-09-012-4/+241
|
* 5604Kartik Agaram2019-09-012-7/+7
|
* 5603Kartik Agaram2019-09-012-12/+12
|
* 5602Kartik Agaram2019-09-012-66/+75
|
* 5601Kartik Agaram2019-08-311-68/+68
|
* 5600Kartik Agaram2019-08-3121-91/+111
|
* 5599 - sigils: support metadata in %reg and *regKartik Agaram2019-08-312-3/+176
| | | | | We already support metadata after *(...) No plans to support metadata _inside_ *(...)
* 5598Kartik Agaram2019-08-311-2/+1
|
* 5596Kartik Agaram2019-08-312-8/+12
|
* 5595 - support ebp and esp in sigilsKartik Agaram2019-08-312-0/+173
| | | | The x86 instruction set carves out exceptions for these registers.
* 5594 - rename 'desugar' to 'sigils'Kartik Agaram2019-08-312-15/+16
| | | | There's going to be multiple forms of syntax sugar going forward.
* 5592 - switch register names to lowercaseKartik Agaram2019-08-2616-7413/+7413
|
* 5591Kartik Agaram2019-08-2611-0/+0
|
* 5590Kartik Agaram2019-08-253-3/+3
|
* 5589Kartik Agaram2019-08-2511-9/+15
|
* 5586 - bugfix: no desugar inside string literalsKartik Agaram2019-08-2510-434/+578
|
* 5583Kartik Agaram2019-08-252-9/+181
| | | | Clean up some missing error messages.
* 5581Kartik Agaram2019-08-251-1/+3
|
* .Kartik Agaram2019-08-252-1/+183
|
* Merge branch 'master' into desugarKartik Agaram2019-08-252-0/+62
|\
| * 5522 - example app: random number streamKartik Agaram2019-08-202-0/+62
| | | | | | | | Turns out Mu's kernel isn't populating /dev/random correctly.
* | desugar: more integration testsKartik Agaram2019-08-252-1/+206
| |
* | desugar: code-generation seems completeKartik Agaram2019-08-252-5/+291
| |
* | desugar: parsing seems completeKartik Agaram2019-08-252-37/+420
| |
* | parsing *(reg-disp)Kartik Agaram2019-08-252-0/+66
| |
* | parsing *(reg+reg)Kartik Agaram2019-08-252-21/+150
| | | | | | | | | | | | | | | | | | Turns out there's an ambiguity even in this simple one-line language: when you see 'base+' you don't know whether the next token is the index or displacement. (Whereas a '-' would be unambiguous but is still not handled.) Fixing this ambiguity adds 15 instructions worth of complexity.
* | parsing *(reg+disp)Kartik Agaram2019-08-243-8/+549
| |
* | .Kartik Agaram2019-08-241-1/+1
| |
* | integration tests for desugaring indirect modeKartik Agaram2019-08-242-2/+211
| | | | | | | | They caught a logic error.
* | integration tests for desugaring direct modeKartik Agaram2019-08-242-0/+212
| |
* | use the results of parsing in emit-indirect-modeKartik Agaram2019-08-242-60/+33
| |
* | parsing *(reg)Kartik Agaram2019-08-242-0/+121
| |
* | build out all variants for skipping whitespaceKartik Agaram2019-08-2411-0/+0
| | | | | | | | skip {whitespace, non-whitespace} x {from stream, from slice}
* | .Kartik Agaram2019-08-231-0/+68
| | | | | | | | This is pretty complex, but I may not need any more registers.
* | .Kartik Agaram2019-08-232-4/+14
| |
* | .Kartik Agaram2019-08-232-4/+12
| | | | | | | | | | Some reorg as I realize I may have painted myself into a corner in this function. I have no registers left for the actual parsing.