The PLAtform NEutral Transpiler
Go to file
Jeremiah Orians a5bc08b23f
Release 1.7.0
2020-11-15 20:43:58 -05:00
docs aarch64: libc 2020-02-01 21:23:49 +01:00
functions harmonize integer behavior when reading strings 2020-10-17 13:50:25 -04:00
test Fix GCC 10 compatibility issue 2020-11-15 20:28:33 -05:00
.gitignore Adding support for hardware native and removed unneeded lines in .gitignore 2020-01-31 16:12:34 -05:00
CHANGELOG.org Release 1.7.0 2020-11-15 20:43:58 -05:00
HACKING aarch64: do not generate a wasteful stack anymore 2020-02-08 00:16:54 +01:00
INSTALL Fixing of ommissions provided by akkartik 2018-08-31 16:11:00 -04:00
LICENSE Initial commit 2017-11-05 09:01:20 -05:00
README.md correct a perfect typo in README.md 2020-01-24 14:03:07 -05:00
cc-minimal.c Adding support for hardware native and removed unneeded lines in .gitignore 2020-01-31 16:12:34 -05:00
cc.c Catch potential segfaulting behavior in generated binaries 2020-11-08 21:13:12 -05:00
cc.h Fix GCC 10 compatibility issue 2020-11-15 20:28:33 -05:00
cc_core.c Enable support for C multi-strings 2020-11-15 18:58:25 -05:00
cc_globals.c Fix GCC 10 compatibility issue 2020-11-15 20:28:33 -05:00
cc_globals.h Fix GCC 10 compatibility issue 2020-11-15 20:28:33 -05:00
cc_reader.c Catch potential segfaulting behavior in generated binaries 2020-11-08 21:13:12 -05:00
cc_strings.c Enabled forgotten cleanup scripts and add logic to catch ?alloc errors 2020-01-25 14:15:45 -05:00
cc_types.c aarch64: recognize the new AArch64 target architecture 2020-02-01 21:23:49 +01:00
gcc_req.h Harmonized License headers and added missing license headers 2018-10-17 19:27:06 -04:00
makefile Fix GCC 10 compatibility issue 2020-11-15 20:28:33 -05:00
sha256.sh Update ELF headers and sha256 function to better support FreeBSD 2020-10-16 12:00:42 -04:00

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