Skip to content

Latest commit

 

History

History
42 lines (36 loc) · 1.51 KB

README.md

File metadata and controls

42 lines (36 loc) · 1.51 KB

Not Named Compiler

Compiler that generates bad but working x86_64 Intel assembly.
Does not uses any auto tools or ready-to-use virtual machines.
Done by hand.

Dependencies

This compiler only supported on Linux and requires
GNU Linker (ld) and GNU Assembler (as) to be present.
If you want to run auto tests, you'll also need python interpreter.

How to build

You can easily build this with CMake, see how:

git clone https://github.com/almeswe/nnc.git
mkdir nnc/src/build && cd nnc/src/build
as --64 ../nnc_rt.s -o rt.o
cmake .. && make -j

You can also select build version (Debug or Release) in CMakeLists.txt file.

SET(CMAKE_BUILD_TYPE ???)

If it is not specified, you'll build Release version.

Make sure it works

Current version of this project uses automated black-box tests located at ./py_test.
These tests ensure general correctness of the generation, and represent robust way to test compilers. (based on this).
You can run these tests using following command from .../nnc/py_test folder:

python nnc_gen_test.py tests

Don't waste your time on ./tests.

Play around

See working examples at ./examples.
I left build instructions inside each project's folder (or separate file).

Future goals

Are you interested in this project? See in what i'm currently dived in.

License

Project is published under MIT License.