From 17b8233f44d42b06420df2f7a51a87cc22a7adbc Mon Sep 17 00:00:00 2001 From: Kartik Agaram Date: Thu, 20 Dec 2018 16:37:10 -0800 Subject: 4873 --- Readme.md | 3 ++- subx/Readme.md | 16 +++++++++++----- 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/Readme.md b/Readme.md index 1e88fb19..54af1049 100644 --- a/Readme.md +++ b/Readme.md @@ -1,4 +1,5 @@ -_by Stephen Malina and Kartik Agaram_ +_(Current development is in the [`subx/`](https://github.com/akkartik/mu/blob/master/subx/Readme.md) +sub-directory. That prototype will be promoted to the top-level one day.)_ Mu explores ways to turn arbitrary manual tests into reproducible automated tests. Hoped-for benefits: 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 -- cgit 1.4.1-2-gfad0