about summary refs log tree commit diff stats
Commit message (Collapse)AuthorAgeFilesLines
* 6983 - tile: right-arrow can now move out of callsKartik Agaram2020-10-091-0/+15
|
* 6982 - right-arrow now moves into expanded callsKartik Agaram2020-10-092-8/+124
| | | | | | | | | | | | Rendering is still ugly. Cursor isn't on the right row. But the hard part is behind us. This was a stupid mistake in function-body, and it happened because I've been getting lazy and passing (addr handle) objects when I should be passing in "constant" addr objects. I'm not sure why I was so resistant to debugging by print here. I spent 3 days waffling about with this bug.
* 6981Kartik Agaram2020-10-091-16/+14
| | | | Tile: simplify the contract for render-column.
* 6980Kartik Agaram2020-10-091-3/+2
| | | | Changing tack..
* 6979Kartik Agaram2020-10-092-3/+3
| | | | | Use the fake-screen infrastructure we already have for non-interactive mode.
* 6978Kartik Agaram2020-10-091-0/+36
| | | | | | We don't have tests yet in the tile prototype, mostly because we don't yet feel confident about what desired behavior should be. But it's still helpful to have a non-interactive mode for tracking down segfaults.
* 6977Kartik Agaram2020-10-092-14/+50
| | | | | Snapshot. We've gotten arrow keys navigating, but segfault when getting to the second word in an expanded function call body.
* 6976Kartik Agaram2020-10-091-4/+4
|
* 6975Kartik Agaram2020-10-091-1/+1
|
* 6974Kartik Agaram2020-10-081-10/+10
|
* 6973Kartik Agaram2020-10-081-1/+1
|
* 6972 - tile: stop persisting cursor-wordKartik Agaram2020-10-082-26/+94
| | | | Rather surprisingly, this transformation worked the first time!
* Merge pull request #42 from jimmyhmiller/patch-1Kartik Agaram2020-10-081-1/+1
|\ | | | | Fix broken link
| * Fix broken linkJimmy Miller2020-10-081-1/+1
|/
* 6969Kartik Agaram2020-10-062-24/+5
| | | | Fix and cleanup.
* 6968Kartik Agaram2020-10-063-37/+162
| | | | | | | | | | | | Snapshot that requires a check in the Mu compiler. Currently I don't spill a register if it could possibly be over-written by a function output within. However, find-in-call-path is a good example of where this constraint is too lenient and results in unsafe code. The variable `curr` gets clobbered during loop update by the variable `match?`. What's the answer? Perhaps we should ban all conditional updates to function outputs? That'd be dashed inconvenient.
* 6967Kartik Agaram2020-10-052-15/+116
| | | | | Function expand/contract still works, but the implementation is totally different under the hood.
* 6966Kartik Agaram2020-10-052-35/+15
|
* 6965Kartik Agaram2020-10-053-24/+24
|
* 6964 - tile: start tracking word index in fn bodyKartik Agaram2020-10-051-0/+10
|
* 6963 - tile: more idiomatic conventional replKartik Agaram2020-10-053-39/+37
|
* 6962Kartik Agaram2020-10-053-38/+34
| | | | | Slowly hoist cursor-word from environment to sandbox. This isn't its final destination.
* 6961Kartik Agaram2020-10-051-4/+6
|
* 6960Kartik Agaram2020-10-054-53/+141
|
* 6959Kartik Agaram2020-10-052-962/+415
|
* 6958Kartik Agaram2020-10-05141-39524/+46411
|
* 6957Kartik Agaram2020-10-0511-20306/+20419
| | | | | | | | The final fix to the raytracing program involves rounding modes. It turns out x86 processors round floats by default, unlike C which has trained me to expect truncation. Rather than mess with the MXCSR register, I added another instruction for truncation. Now milestone 3 emits perfectly correct results.
* 6956Kartik Agaram2020-10-051-16/+30
|
* 6955Kartik Agaram2020-10-051-27/+30
|
* 6954Kartik Agaram2020-10-051-13/+13
|
* 6953Kartik Agaram2020-10-052-0/+180006
|
* 6952 - raytracing: much betterKartik Agaram2020-10-045-2/+330
| | | | | | | | | | | | | | | The image is now visually indistinguishable from the baseline, though the file isn't quite bit-for-bit correct. I found 3 bugs: a) I forgot to normalize the ray. After creating a helper to "automatically" do it for me, it turns out said helper requires manually using. b) I forgot to multiply by t at one place. c) vec3-length was half-written. For the umpteenth time, the bugs were all in the last place I looked. I was worried about spending a lot of time transcribing `main` without any feedback, but that turned out to be perfect.
* 6951 - 4 colors for Mu as wellKartik Agaram2020-10-042-84/+89
|
* 6950Kartik Agaram2020-10-041-0/+459
|
* 6949 - snapshot of next raytracing milestoneKartik Agaram2020-10-046-70/+388
| | | | | | | | | | | | | Not yet right, but worth a snapshot just because it gives a cool result. Here, try it out: $ ./translate_mu_debug apps/raytracing/3.mu $ ./a.elf > x.ppm Now view x.ppm as an image. In general, this was quite tedious to write. And a still-open question is how to emit the progress bar to stderr. My options are to either duplicate all my print-* functions (already proliferating) or add global variables to Mu.
* 6948 - stress-testing prints of floatsKartik Agaram2020-10-044-3/+154
| | | | Looks good.
* 6947 - change exponent separator since 'e' is hexKartik Agaram2020-10-041-3/+3
|
* 6946 - print floats somewhat intuitively in hexKartik Agaram2020-10-0418-44/+314
|
* 6945Kartik Agaram2020-10-041-2/+2
|
* 6944Kartik Agaram2020-10-042-0/+7
|
* 6943Kartik Agaram2020-10-044-97/+71
| | | | | | | | Move some implementation around for floating-point. I originally thought I wouldn't bother supporting sigils like %xmm0. But it turns out I need them to pass floats into SubX function calls. And it turns out the sigils work fine for free.
* 6942Kartik Agaram2020-10-042-0/+20
|
* 6941 - detective story for the dayKartik Agaram2020-10-032-0/+119
|
* 6940Kartik Agaram2020-10-031-10/+10
|
* 6939Kartik Agaram2020-10-031-0/+6
|
* 6938 - start colorizing floating-point registersKartik Agaram2020-10-032-7/+7
|
* 6937Kartik Agaram2020-10-032-36/+42
|
* 6936Kartik Agaram2020-10-031-0/+146
|
* 6935 - raytracing using floatsKartik Agaram2020-10-034-0/+65691
|
* 6934Kartik Agaram2020-10-032-0/+26
|