July 8, 2026

Announcing EVM-LLVM Alpha release — The next level in smart contract evolution!

Announcing EVM-LLVM Alpha release — The next level in smart contract evolution!

LLVM supports a variety of front-ends, including Rust, Objective C, Fortran, Ada, Haskell, Java bytecode, Python, Ruby, ActionScript, GLSL, and others. On the other hand, LLVM also allows you to support new target platforms (WASM). In this case, we are adding EVM to the family.

More programming languages. Do you want to code your contract with Rust? Or Golang? or OCaml? Or even some other fancy languages like Haskell? An EVM backend for LLVM makes it finally possible to adopt them for contract programming. Enabling more languages to access the EVM will allow more developers to build DApps on Ethereum Classic as well as other EVM-based blockchains. With more language choice, it’s no doubt that this will be an improvement to the DApp developer experience.

Mature toolchain support. The LLVM ecosystem consists of lots of high-quality tools that help with development, including tools for debugging, validator, static analysis, etc. Take a look at this page.

Future-proof and long-term support. The LLVM community is committed to supporting LLVM project to an extended lifespan, making it one of the most widely accepted toolchain platforms. Similarly, developers who base their development on LLVM-base infrastructure will continue to receive the benefit and support from the LLVM community. In short, the best way to build a future-proof toolchain is to bring the large and mature LLVM ecosystem into Ethereum.

ETC Core and Second State are collaborating to complete a build pipeline for EVM use in LLVM. Second State’s SOLL compiler generates compatible LLVM-IR that can utilize the LLVM-EVM-backend to translate to EVM-bytecode.

On the other hand, Vyper team is also experimenting with code generation on LLVM infrastructure.

Programming Language Developers

EVM LLVM is a compiler backend for smart contract engine EVM. If you are interested in building your own smart contract DSL (Domain Specific Language) on LLVM, or thinking about porting over an existing language, you can get started by downloading the source code at the official EVM-LLVM project’s Github repository and visiting the initial documentation at https://llvm.etccore.io/. We will try to provide as much help as possible.

Compiler Developers

The project needs your help. If you are interested in developing the LLVM-based smart contract compiler backend:

  1. take a look at its technical article at https://github.com/etclabscore/evm_llvm/wiki/files/Generating_stack_machine_code_using_LLVM.pdf
  2. Read the Wiki page at https://github.com/etclabscore/evm_llvm/wiki
  3. Ask questions, give suggestions, or fork the project and make PRs! We need all the help from the community!

In the long term, we are planning to upstream the backend to official repo. The project welcomes any help it can use!

Smart Contract Developers

Please tune in for the news from our collaborating partners! Soon you can use various LLVM-based platforms to develop smart contracts.

Published at Mon, 10 Feb 2020 15:28:20 +0000

{flickr|100|campaign}

Previous Article

Blockchain Technology to Transform the Renewable Energy Sector in Korea

Next Article

The Building Blocks of Blockchain: Distributed Ledgers & Mining

You might be interested in …