Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | 6961 | Kartik Agaram | 2020-10-05 | 1 | -4/+6 |
| | |||||
* | 6960 | Kartik Agaram | 2020-10-05 | 4 | -53/+141 |
| | |||||
* | 6959 | Kartik Agaram | 2020-10-05 | 2 | -962/+415 |
| | |||||
* | 6958 | Kartik Agaram | 2020-10-05 | 141 | -39524/+46411 |
| | |||||
* | 6957 | Kartik Agaram | 2020-10-05 | 11 | -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. | ||||
* | 6956 | Kartik Agaram | 2020-10-05 | 1 | -16/+30 |
| | |||||
* | 6955 | Kartik Agaram | 2020-10-05 | 1 | -27/+30 |
| | |||||
* | 6954 | Kartik Agaram | 2020-10-05 | 1 | -13/+13 |
| | |||||
* | 6953 | Kartik Agaram | 2020-10-05 | 2 | -0/+180006 |
| | |||||
* | 6952 - raytracing: much better | Kartik Agaram | 2020-10-04 | 5 | -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 well | Kartik Agaram | 2020-10-04 | 2 | -84/+89 |
| | |||||
* | 6950 | Kartik Agaram | 2020-10-04 | 1 | -0/+459 |
| | |||||
* | 6949 - snapshot of next raytracing milestone | Kartik Agaram | 2020-10-04 | 6 | -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 floats | Kartik Agaram | 2020-10-04 | 4 | -3/+154 |
| | | | | Looks good. | ||||
* | 6947 - change exponent separator since 'e' is hex | Kartik Agaram | 2020-10-04 | 1 | -3/+3 |
| | |||||
* | 6946 - print floats somewhat intuitively in hex | Kartik Agaram | 2020-10-04 | 18 | -44/+314 |
| | |||||
* | 6945 | Kartik Agaram | 2020-10-04 | 1 | -2/+2 |
| | |||||
* | 6944 | Kartik Agaram | 2020-10-04 | 2 | -0/+7 |
| | |||||
* | 6943 | Kartik Agaram | 2020-10-04 | 4 | -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. | ||||
* | 6942 | Kartik Agaram | 2020-10-04 | 2 | -0/+20 |
| | |||||
* | 6941 - detective story for the day | Kartik Agaram | 2020-10-03 | 2 | -0/+119 |
| | |||||
* | 6940 | Kartik Agaram | 2020-10-03 | 1 | -10/+10 |
| | |||||
* | 6939 | Kartik Agaram | 2020-10-03 | 1 | -0/+6 |
| | |||||
* | 6938 - start colorizing floating-point registers | Kartik Agaram | 2020-10-03 | 2 | -7/+7 |
| | |||||
* | 6937 | Kartik Agaram | 2020-10-03 | 2 | -36/+42 |
| | |||||
* | 6936 | Kartik Agaram | 2020-10-03 | 1 | -0/+146 |
| | |||||
* | 6935 - raytracing using floats | Kartik Agaram | 2020-10-03 | 4 | -0/+65691 |
| | |||||
* | 6934 | Kartik Agaram | 2020-10-03 | 2 | -0/+26 |
| | |||||
* | 6933 | Kartik Agaram | 2020-10-03 | 1 | -10/+11 |
| | |||||
* | 6932 - another bug related to floats | Kartik Agaram | 2020-10-03 | 2 | -0/+70 |
| | | | | | | | For most of Mu's history we've selected between primitives based on types just by checking whether a type is a literal or not. Now we've started checking if it's a float as well. However, floats need one additional check: the call site may have an (addr float) that is dereferenced. | ||||
* | 6931 - support fp registers in variable lookup | Kartik Agaram | 2020-10-03 | 2 | -4/+82 |
| | |||||
* | 6930 | Kartik Agaram | 2020-10-03 | 2 | -4/+2 |
| | |||||
* | 6929 | Kartik Agaram | 2020-10-03 | 1 | -22/+32 |
| | |||||
* | 6928 | Kartik Agaram | 2020-10-03 | 1 | -0/+1 |
| | |||||
* | 6927 - working on a raytracing tutorial | Kartik Agaram | 2020-10-03 | 7 | -0/+65702 |
| | | | | https://raytracing.github.io/books/RayTracingInOneWeekend.html | ||||
* | 6926 | Kartik Agaram | 2020-10-02 | 1 | -0/+4 |
| | |||||
* | 6925 - tile: don't try to print escape sequences | Kartik Agaram | 2020-10-01 | 3 | -1/+50 |
| | |||||
* | 6924 | Kartik Agaram | 2020-10-01 | 3 | -14/+13 |
| | |||||
* | 6923 | Kartik Agaram | 2020-10-01 | 83 | -24543/+0 |
| | |||||
* | 6922 | Kartik Agaram | 2020-10-01 | 2 | -2/+60 |
| | |||||
* | 6921 | Kartik Agaram | 2020-10-01 | 1 | -1/+1 |
| | |||||
* | 6920 | Kartik Agaram | 2020-10-01 | 2 | -2/+2 |
| | |||||
* | 6919 | Kartik Agaram | 2020-10-01 | 1 | -6/+98 |
| | |||||
* | 6918 | Kartik Agaram | 2020-10-01 | 1 | -0/+0 |
| | | | | Fix CI. | ||||
* | 6917 | Kartik Agaram | 2020-09-30 | 1 | -4/+4 |
| | |||||
* | 6916 | Kartik Agaram | 2020-09-30 | 1 | -22849/+24621 |
| | |||||
* | 6915 - a new family of Mu branch instructions | Kartik Agaram | 2020-09-30 | 3 | -2/+432 |
| | | | | | | The realization of commit 6916 means that we should be using jump-if-addr* after comparing floats. Which is super ugly. Let's create aliases to them called jump-if-float*. | ||||
* | 6914 | Kartik Agaram | 2020-09-30 | 1 | -13/+13 |
| | |||||
* | 6913 - copying floats around | Kartik Agaram | 2020-09-30 | 2 | -0/+77 |
| | |||||
* | 6912 | Kartik Agaram | 2020-09-30 | 2 | -12/+12 |
| |