/ceed

A tiny x86 compiler with ELF and PE target

Primary LanguageCBSD 2-Clause "Simplified" LicenseBSD-2-Clause

Ceed
----
Ceed is a tiny open source compiler for x86 Linux and Windows. It can compile
a high level language source code into ELF or PE executable. Design and
implementation of Ceed is described at: http://logicpundit.com/blog/ceed


Folders
-------
src - Contains source code for Ceed compiler
tst - Contains some test program for Ceed compiler
lib - Contains asm code for functions injected in Ceed output


Compile
-------
// Linux or Cygwin
cd src
make ceed


Usage
-------
To create ELF executable: ./ceed < <input>
To create PE executable: ./ceed -pe < <input>


Example
-------
./ceed < math.e
chmod +x a.exe or chmod +x a.out to make the file executable.
On Windows, even if you produce a.exe in cygwin, you can only run it in cmd
prompt. If you run output file in cygwin, it won't work.


Notes
-----
- Only 32-bit Linux and Windows are supported
- Code generated by Ceed is sub-optimal and may contain bugs. Only use for
  learning purpose.