Links¶

This section contains links and resources to other projects, papers and books.

Classical compilers¶

The following list gives a summary of some compilers that exist in the open source land.

  • LLVM

    A relatively new and popular compiler. LLVM stands for low level virtual machine, a compiler written in C++. This is a big inspiration place for ppci! http://llvm.org

  • GCC

    The gnu compiler. The famous open source compiler. https://gcc.gnu.org/

Other compilers¶

  • ACK

    The amsterdam compiler kit. http://tack.sourceforge.net/

  • lcc

    A retargetable C compiler. https://github.com/drh/lcc

  • sdcc

    The small device c compiler. http://sdcc.sourceforge.net/

  • 8cc

    A small C compiler in C99. https://github.com/rui314/8cc

Other compilers written in python¶

  • zxbasic

    Is a freebasic compiler written in python. http://www.boriel.com/wiki/en/index.php/ZXBasic

  • python-msp430-tools

    A msp430 tools project in python. https://launchpad.net/python-msp430-tools

  • peachpy

    A x86 64 assembly code generator. https://github.com/Maratyszcza/PeachPy

  • pycca

    An x86 assembly code generator and compiler in python. https://github.com/campagnola/pycca

  • llvm-codegen-py

    Machine code generation in python from llvm ir code. https://github.com/pfalcon/llvm-codegen-py

  • textx

    A toolkit to create DSL tools. https://github.com/igordejanovic/textX

  • amoco

    Static analysis of binaries. https://github.com/bdcht/amoco

  • pythran

    http://pythran.readthedocs.io/en/latest/

  • Shivyc - A C compiler implemented in python

    https://github.com/ShivamSarodia/ShivyC

Other C-related tools written in python¶

pycparser

Citations¶

[Smith2004]“A generalized algorithm for graph-coloring register allocation”, 2004, Michael D. Smith and Norman Ramsey and Glenn Holloway.
[Runeson2003]“Retargetable Graph-Coloring Register Allocation for Irregular Architectures”, 2003, Johan Runeson and Sven-Olof Nystrom. http://user.it.uu.se/~svenolof/wpo/AllocSCOPES2003.pdf
[George1996]“Iterated Register Coalescing”, 1996, Lal George and Andrew W. Appel.
[Briggs1994]“Improvements to graph coloring register allocation”, 1994, Preston Briggs, Keith D. Cooper and Linda Torczon
[Chaitin1982]“Register Allocation and Spilling via Graph Coloring”, 1982, G. J. Chaitin.
[Cifuentes1998]“Assembly to High-Level Language Translation”, 1998, Cristina Cifuentes and Doug Simon and Antoine Fraboulet.
[Davidson1980]“The Design and Application of a Retargetable Peephole Optimizer”, 1980, Jack W. Davidson and Christopher W. Fraser.
[Baker1977]“An Algorithm for Structuring Flowgraphs”, 1977, B.S. Baker. https://dl.acm.org/citation.cfm?id=321999

Logo

ppci

https://secure.travis-ci.org/windelbouwman/ppci.svg?branch=master

Navigation

  • Introduction
  • Quickstart
  • Howto
  • Reference
    • Api
    • Program classes
    • Command line tools
    • Languages
    • Binary utilities
    • Build system
    • IR
    • Optimization
    • Code generation
    • Debug
    • Backends
    • File formats
    • Web Assembly
    • Utilities
    • Graph
    • Links
      • Classical compilers
      • Other compilers
      • Other compilers written in python
      • Other C-related tools written in python
      • Citations
  • Compiler internals
  • Faq
  • Contributing
  • Changelog

Links

  • ppci @ Bitbucket
  • ppci @ PyPI

Quick search

©2020, Windel Bouwman. | Powered by Sphinx 1.8.5 & Alabaster 0.7.12 | Page source
Fork me on GitHub