#smart-contracts #evm #text-format #parser #compiler #wasm

sonatina-parser

Parser for sonatina-ir text format

3 releases

0.0.3-alpha Nov 10, 2022
0.0.2-alpha Nov 10, 2022
0.0.1-alpha Nov 7, 2022

#685 in Programming languages

Apache-2.0

210KB
6K SLoC

Sonatina

Sonatina is a compiler backend specialized for smart contracts.

Sonatina is really early stage in development, so do NOT use it for production!

Project layout

sonatina consists of several crates.

  • codegen: The main crate of sonatina, providing builder for IR modules and functions, optimization passes, instruction selection DAG, and binary code emitting.
  • filecheck: Provides test runner for filecheck and test fixtures.
  • parser: Parser for sonatina IR, this is mainly for filecheck test.
  • object: Provides abstract object file format for linker.
  • triple: Provides target triple for smart contracts.

TODO

Test

Run test_all.sh.


lib.rs:

This crate provides a parser for sonatina-IR text format. The text format is mainly used for debugging and testing.

Dependencies

~1.6–2.2MB
~41K SLoC