Skip to content

thekaigonzalez/MercuryPIC

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 

Repository files navigation

Mercury PIC

  a bytecode format designed to be 100% ABI compatible with NexFUSE

  MercuryPIC has very small memory footprint, being 100% compatible with the
  NexFUSE format, provides low-level abstractions which allow for performant
  binary programs made for the NexFUSE family of formats.

  to compile Mercury binaries using VOLT, use the -Wmercury option, mercury
  files are not compatible with NexFUSE or OpenLUD, due to line endings being
  different. Meaning that you are not able to use `runfuse' and `mpic' with
  MercuryPIC.

  you can use `--disable-runtime' to execute MercuryPIC binaries without any
  standard instruction set. However, any internal system calls will still be
  available.

  To see the real differences, compile this program, then run the examples with
  both `runfuse' and `mpic', and compare their valgrind memory usage.

  in NexFUSE's `algo.asm':

        total heap usage: 8,021 allocs, 8,021 frees, 287,951 bytes allocated
        ERROR SUMMARY: 2059 errors from 16 contexts (suppressed: 0 from 0)

  in MercuryPIC:

        total heap usage: 1,366 allocs, 1,366 frees, 59,233 bytes allocated
        ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)

  https://github.com/thekaigonzalez/MercuryPIC

About

100% Compatible No-Confusion ByteCode Format

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors