No Description

Jeremiah Orians 60ed279bdb Release 1.7.0 3 years ago
docs fa524bdce3 aarch64: libc 4 years ago
functions 39915de931 harmonize integer behavior when reading strings 3 years ago
test 1975d88581 Fix GCC 10 compatibility issue 3 years ago
.gitignore 4b2fce69b0 Adding support for hardware native and removed unneeded lines in .gitignore 4 years ago
CHANGELOG.org a5bc08b23f Release 1.7.0 3 years ago
HACKING b2ece54864 aarch64: do not generate a wasteful stack anymore 4 years ago
INSTALL 42914441c3 Fixing of ommissions provided by akkartik 5 years ago
LICENSE eff5d157a3 Initial commit 6 years ago
README.md b543fe99c3 correct a perfect typo in README.md 4 years ago
cc-minimal.c 4b2fce69b0 Adding support for hardware native and removed unneeded lines in .gitignore 4 years ago
cc.c 57264eb157 Catch potential segfaulting behavior in generated binaries 3 years ago
cc.h 1975d88581 Fix GCC 10 compatibility issue 3 years ago
cc_core.c 67dbbbdcfc Enable support for C multi-strings 3 years ago
cc_globals.c 1975d88581 Fix GCC 10 compatibility issue 3 years ago
cc_globals.h 1975d88581 Fix GCC 10 compatibility issue 3 years ago
cc_reader.c 57264eb157 Catch potential segfaulting behavior in generated binaries 3 years ago
cc_strings.c 0709770730 Enabled forgotten cleanup scripts and add logic to catch ?alloc errors 4 years ago
cc_types.c 0bded017b9 aarch64: recognize the new AArch64 target architecture 4 years ago
gcc_req.h 9a2c6b4019 Harmonized License headers and added missing license headers 5 years ago
makefile 1975d88581 Fix GCC 10 compatibility issue 3 years ago
sha256.sh 028bdaf951 Update ELF headers and sha256 function to better support FreeBSD 3 years ago

README.md

M2-Planet

The PLAtform NEutral Transpiler, when combined with mescc-tools; allows one to compile a subset of the C language into working binaries with introspective steps inbetween.

A lovely set of examples of M2-Planet programs are in tests but the most surprising part of all M2-Planet can self-host M2-Planet.

Further more M2-Planet is cross-platform and self-hosting across platforms with fully deterministic builds enabling perfect reproducibility.

To bootstrap from assembly simple run ./bootstrap-x86.sh after cd into the bootstrap directory (the only requirement is mescc-tools to be installed)

Or if you have no binaries to bootstrap from please use mescc-tools-seed; which will not only bootstrap mescc-tools but also M2-Planet