Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | 5587 | Kartik Agaram | 2019-08-25 | 1 | -6/+0 |
| | | | | No need for progress reports on ntranslate; it runs pretty fast. | ||||
* | 5586 - bugfix: no desugar inside string literals | Kartik Agaram | 2019-08-25 | 10 | -434/+578 |
| | |||||
* | 5585 | Kartik Agaram | 2019-08-25 | 3 | -123/+33 |
| | |||||
* | 5584 | Kartik Agaram | 2019-08-25 | 2 | -2/+2 |
| | | | | | Forgot to switch the knob when fixing the merge conflict between commits 5512 and 1a7b15aa3d. | ||||
* | 5583 | Kartik Agaram | 2019-08-25 | 3 | -2085/+2429 |
| | | | | Clean up some missing error messages. | ||||
* | 5582 | Kartik Agaram | 2019-08-25 | 65 | -11196/+16082 |
| | |||||
* | 5581 | Kartik Agaram | 2019-08-25 | 1 | -1/+3 |
| | |||||
* | Merge pull request #35 from akkartik/desugar | Kartik Agaram | 2019-08-25 | 30 | -1134/+6315 |
|\ | | | | | Desugaring pass | ||||
| * | . | Kartik Agaram | 2019-08-25 | 2 | -1/+183 |
| | | |||||
| * | Merge branch 'master' into desugar | Kartik Agaram | 2019-08-25 | 25 | -4839/+416 |
| |\ | |/ |/| | |||||
* | | 5523 | Kartik Agaram | 2019-08-24 | 1 | -1/+1 |
| | | |||||
* | | 5522 - example app: random number stream | Kartik Agaram | 2019-08-20 | 3 | -0/+186 |
| | | | | | | | | Turns out Mu's kernel isn't populating /dev/random correctly. | ||||
* | | 5521 | Kartik Agaram | 2019-08-19 | 12 | -12/+12 |
| | | |||||
* | | 5520 - move kernel.config to kernel repo | Kartik Agaram | 2019-08-18 | 2 | -4690/+0 |
| | | |||||
* | | 5519 | Kartik Agaram | 2019-08-18 | 1 | -3/+5 |
| | | |||||
* | | 5518 | Kartik Agaram | 2019-08-17 | 1 | -4/+5 |
| | | |||||
* | | 5517 | Kartik Agaram | 2019-08-15 | 1 | -7/+6 |
| | | |||||
* | | 5516 - record traces only when necessary | Kartik Agaram | 2019-08-14 | 2 | -2/+4 |
| | | | | | | | | ./translate now works fine for all apps on a server with 2GB RAM. | ||||
* | | 5515 | Kartik Agaram | 2019-08-14 | 1 | -22/+22 |
| | | | | | | | | Drop a bash-ism. | ||||
* | | 5514 - disable emulated runs on Linux | Kartik Agaram | 2019-08-14 | 1 | -60/+133 |
| | | |||||
* | | 5513 | Kartik Agaram | 2019-08-14 | 1 | -22/+22 |
| | | |||||
* | | 5512 - don't rebuild apps by default | Kartik Agaram | 2019-08-14 | 3 | -3/+6 |
| | | | | | | | | | | We basically only want to rebuild phases of the self-hosted translator when we run the self-hosted translator. | ||||
* | | 5511 | Kartik Agaram | 2019-08-14 | 1 | -34/+35 |
| | | |||||
* | | 5510 | Kartik Agaram | 2019-08-14 | 2 | -2/+2 |
| | | | | | | | | | | Stop supporting CFLAGS in CI scripts; they're now meaty enough that I never run them locally in debug mode. | ||||
| * | . | Kartik Agaram | 2019-08-25 | 1 | -1/+1 |
| | | |||||
| * | desugar: more integration tests | Kartik Agaram | 2019-08-25 | 2 | -1/+206 |
| | | |||||
| * | desugar: code-generation seems complete | Kartik Agaram | 2019-08-25 | 2 | -5/+291 |
| | | |||||
| * | desugar: parsing seems complete | Kartik Agaram | 2019-08-25 | 3 | -39/+422 |
| | | |||||
| * | skip building apps when running a single test | Kartik Agaram | 2019-08-25 | 2 | -4/+4 |
| | | | | | | | | Environment variables allow me to have non-local effects inside scripts. | ||||
| * | parsing *(reg-disp) | Kartik Agaram | 2019-08-25 | 2 | -0/+66 |
| | | |||||
| * | parsing *(reg+reg) | Kartik Agaram | 2019-08-25 | 2 | -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 Agaram | 2019-08-24 | 3 | -8/+549 |
| | | |||||
| * | . | Kartik Agaram | 2019-08-24 | 1 | -1/+1 |
| | | |||||
| * | integration tests for desugaring indirect mode | Kartik Agaram | 2019-08-24 | 2 | -2/+211 |
| | | | | | | | | They caught a logic error. | ||||
| * | integration tests for desugaring direct mode | Kartik Agaram | 2019-08-24 | 2 | -0/+212 |
| | | |||||
| * | use the results of parsing in emit-indirect-mode | Kartik Agaram | 2019-08-24 | 2 | -60/+33 |
| | | |||||
| * | parsing *(reg) | Kartik Agaram | 2019-08-24 | 2 | -0/+121 |
| | | |||||
| * | build out all variants for skipping whitespace | Kartik Agaram | 2019-08-24 | 12 | -0/+270 |
| | | | | | | | | skip {whitespace, non-whitespace} x {from stream, from slice} | ||||
| * | . | Kartik Agaram | 2019-08-23 | 1 | -0/+68 |
| | | | | | | | | This is pretty complex, but I may not need any more registers. | ||||
| * | . | Kartik Agaram | 2019-08-23 | 2 | -4/+14 |
| | | |||||
| * | . | Kartik Agaram | 2019-08-23 | 2 | -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. | ||||
| * | parsing *reg | Kartik Agaram | 2019-08-23 | 2 | -2/+102 |
| | | | | | | | | Isn't used yet, but baby steps. | ||||
| * | another error message | Kartik Agaram | 2019-08-23 | 2 | -1/+64 |
| | | |||||
| * | . | Kartik Agaram | 2019-08-23 | 1 | -3/+3 |
| | | |||||
| * | lexing complex expressions inside '*(...)' | Kartik Agaram | 2019-08-23 | 3 | -21/+442 |
| | | |||||
| * | couple of helpers for parsing expressions in parens | Kartik Agaram | 2019-08-22 | 2 | -0/+330 |
| | | |||||
| * | . | Kartik Agaram | 2019-08-16 | 1 | -2/+2 |
| | | |||||
| * | sketch of a plan to implement indirect mode | Kartik Agaram | 2019-08-16 | 2 | -2/+60 |
| | | |||||
| * | desugar: code-generate *reg | Kartik Agaram | 2019-08-16 | 2 | -1/+244 |
| | | |||||
| * | plan for supporting indirect mode | Kartik Agaram | 2019-08-16 | 2 | -22/+28 |
| | | | | | | | | | | | | | | | | | | | | | | It may superficially seem like there's a simpler approach: - emit '3/mod' or '0/mod' depending on whether the character is '%' or '*' - increment the start of word-slice - look up the register and emit the appropriate /rm32 But that won't work for 1/mod or 2/mod. We're doing a little bit of upfront planning. |