HowtoΒΆ

This section contains several howto documents.

  • Creating a toy language
    • Part 0 - preparation
    • Part 1 - textx
    • Part 2 - connecting the backend
    • Part 3 - translating the elements
    • Part 4 - Creating a linux executable
    • Final words
  • How to write a new backend
    • Register description
    • Tokens
    • Instruction description
    • Relocations
    • Instruction groups
    • Instruction selection patterns
    • Architecture description
      • Code generating functions
      • Architecture information
  • How to write an optimizer
    • The optimization
    • The implementation
  • JITting
    • C-way
    • Python-way
    • Calling Python functions from native code
    • Benchmarking and call overheads
  • Dealing with webassembly
    • Compiling wasm to native code
  • Code instrumentation

Logo

ppci

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

Navigation

  • Introduction
  • Quickstart
  • Howto
    • Creating a toy language
    • How to write a new backend
    • How to write an optimizer
    • JITting
    • Dealing with webassembly
    • Code instrumentation
  • Reference
  • Compiler internals
  • Faq
  • Contributing
  • Changelog

Links

  • ppci @ GitHub
  • ppci @ PyPI

Quick search

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