The PLAtform NEutral Transpiler
Go to file
Michael Schierl 608fba306f Fix x86 close syscall and test 0104
The close syscall was missing an indirection and therefore closed random
file descriptors (very visible in strace output).

Test 0104 did not properly null terminate the envp, resulting in -EFAULT
on execve syscall in case the next value in memory does not happen to be
0 (which it seems to be right now).
2020-12-21 16:57:17 +01:00
docs aarch64: libc 2020-02-01 21:23:49 +01:00
functions Cleared out non-essential string primitives and added support for --max-string 2020-12-19 09:46:22 -05:00
test Fix x86 close syscall and test 0104 2020-12-21 16:57:17 +01:00
.gitignore Adding support for hardware native and removed unneeded lines in .gitignore 2020-01-31 16:12:34 -05:00
CHANGELOG.org Preparing for next release 2020-11-15 20:46:26 -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 Removed obsolete reference to bootstrap directory 2020-11-20 05:34:11 -05:00
cc-minimal.c Cleared out non-essential string primitives and added support for --max-string 2020-12-19 09:46:22 -05:00
cc.c Cleared out non-essential string primitives and added support for --max-string 2020-12-19 09:46:22 -05:00
cc.h Cleared out non-essential string primitives and added support for --max-string 2020-12-19 09:46:22 -05:00
cc_core.c Make type information localized to the inside of statements 2020-12-19 16:35:33 -05:00
cc_globals.c Cleared out non-essential string primitives and added support for --max-string 2020-12-19 09:46:22 -05:00
cc_globals.h Cleared out non-essential string primitives and added support for --max-string 2020-12-19 09:46:22 -05:00
cc_reader.c Cleared out non-essential string primitives and added support for --max-string 2020-12-19 09:46:22 -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 Fix failing tests on x86 2020-12-15 19:02:32 -05:00
gcc_req.h Harmonized License headers and added missing license headers 2018-10-17 19:27:06 -04:00
makefile Broke tests into processor specific sets and updated the M1 test 2020-12-01 22:24:36 -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.