selfie
selfie copied to clipboard
An educational software system of a tiny self-compiling C compiler, a tiny self-executing RISC-V emulator, and a tiny self-hosting RISC-V hypervisor.
Quickly added the grading for this task. This is ready for merge. ## Changes ### Previously `treiber-stack` task: - check lr/sc RISC-V encoding - check lr/sc assembly instruction format -...
As discussed on monday, there seems to be an issue.However, I am able to reproduce it without any changes whatsoever to the code now. Basically, just run one of the...
Anyone interested in enhancing the autograder to work with GitHub Workflows? Ideally, even submitting assignments should work through that mechanism.
Some changes introduced after commit [b4df450b02c1bef1cf03af46be8505aae2791dfc](https://github.com/cksystemsteaching/selfie/commit/b4df450b02c1bef1cf03af46be8505aae2791dfc) can not handle if selfie.c reaches a certain code size and increasing `MAX_CODE_SIZE` leads to "maximum data size exceeded" and after increasing `MAX_DATA_SIZE`, modeler...
The line `./selfie -l selfie.m -m 2 -l selfie.m -y 1 -l selfie.m -m 1` introduced with commit [d17ddca](https://github.com/cksystemsteaching/selfie/commit/d17ddca5dd3fd4caada89243410e02997656c4ee#diff-76ed074a9305c04054cdebb9e9aad2d818052b07091de1f20cad0bbac34ffb52) for "make os" is too restrictive with memory. Adding ~1000 lines...
Building a multiplatform docker image for linux/amd64 and linux/arm64 using: `docker build --platform linux/amd64,linux/arm64 .` currently fails in the linux/arm64 portion for at least two reasons: 1. `lib32gcc-9-dev` seems to...
@Blazefrost @aemonk Please design an assignment for the gc in selfie. Ideally, I'd like students to bring down its complexity from O(n^2) to O(n) where n is the heap size....
- [ ] Imperative, functional, logical - [ ] Difference between syntax and semantics - [ ] Notation - [ ] Multi- and singleline comments - [ ] Variable decleration...
- [ ] MHz, GHz - [ ] single & dualcore
- [ ] Fetch, decode, execute - [ ] RISC-U instructions - [ ] State space - [ ] Virtualization - [ ] Emulation - [ ] Virtualization - [...