Solidify, An LLVM pass to compile LLVM IR into Solidity
- Sandia National Laboratories
The software currently compiles LLVM IR into Solidity (Ethereum’s dominant programming language) using LLVM’s pass library. Specifically, his compiler allows us to convert an arbitrary DSL into Solidity. We focus specifically on converting Domain Specific Languages into Solidity due to their ease of use, and provable properties. By creating a toolchain to compile lightweight domain-specific languages into Ethereum's dominant language, Solidity, we allow non-specialists to effectively develop safe and useful smart contracts. For example lawyers from a certain firm can have a proprietary DSL that codifies basic laws safely converted to Solidity to be securely executed on the blockchain. In another example, a simple provenance tracking language can be compiled and securely executed on the blockchain.
- Short Name / Acronym:
- Solidify
- Project Type:
- Open Source, Publicly Available Repository
- Site Accession Number:
- 7573; SCR# 2231
- Software Type:
- Scientific
- License(s):
- Other
- Programming Language(s):
- C++, build and test scripts written in bash
- Research Organization:
- Sandia National Lab. (SNL-NM), Albuquerque, NM (United States)
- Sponsoring Organization:
- USDOEPrimary Award/Contract Number:AC04-94AL85000
- DOE Contract Number:
- AC04-94AL85000
- Code ID:
- 73081
- OSTI ID:
- 1369636
- Country of Origin:
- United States
Similar Records
A High Performance Sparse Tensor Algebra Compiler in MLIR
The GABLE Report: Garbled Autonomous Bots Leveraging Ethereum