diff options
author | Kartik Agaram <vc@akkartik.com> | 2018-12-20 16:37:10 -0800 |
---|---|---|
committer | Kartik Agaram <vc@akkartik.com> | 2018-12-20 16:37:10 -0800 |
commit | 17b8233f44d42b06420df2f7a51a87cc22a7adbc (patch) | |
tree | af48bdd38f274e93ad894d410f5fa94307dafc05 /subx | |
parent | f9b08fb7c1b1341d77825c82c153f40e69e5f347 (diff) | |
download | mu-17b8233f44d42b06420df2f7a51a87cc22a7adbc.tar.gz |
4873
Diffstat (limited to 'subx')
-rw-r--r-- | subx/Readme.md | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/subx/Readme.md b/subx/Readme.md index eab5b27c..42f2cedb 100644 --- a/subx/Readme.md +++ b/subx/Readme.md @@ -102,11 +102,17 @@ SubX supports a small, regular subset of the 32-bit x86 instruction set. The (rudimentary, statically linked) ELF binaries SubX generates can be run natively on Linux, and they require only the Linux kernel. -_Status_: SubX is currently implemented in C++, so you need a C++ compiler and -libraries to build SubX binaries. However, I'm learning how to build a -compiler in assembly language by working through [Jack Crenshaw's "Let's build -a compiler" series](https://compilers.iecc.com/crenshaw). Look in [the `apps/` -sub-directory](http://akkartik.github.io/mu/html/subx/apps/crenshaw2-1.subx.html). +## Status + +I'm currently implementing SubX in SubX in 3 phases: + + 1. Converting ascii hex bytes to binary. (✓) + 2. Packing bitfields for x86 instructions into bytes. + 3. Replacing addresses with labels. + +In parallel, I'm designing testable wrappers for syscalls, particularly for +scalably running blocking syscalls with a test harness concurrently monitoring +their progress. ## An example program |