{"repo":"2xic/evm-bytecode-transpiler-to-venom-ir","free":true,"listed":false,"github":"https://github.com/2xic/evm-bytecode-transpiler-to-venom-ir","clone":"git clone https://github.com/2xic/evm-bytecode-transpiler-to-venom-ir.git","description":"WIP transpiler: EVM bytecode -> 🐍 IR -> EVM bytecode","language":"Python","stars":14,"topics":["evm","ethereum"],"license":null,"category":"blockchain-web3","readme_excerpt":"(WIP) EVM bytecode transpiler (to Venom IR) Currently VERY limited support, it's mostly a proof of concept at this point Motivation I was working on my own compiler alternative to Solidity during the autumn of 2024, but didn't have time to fully prioritize it and then lost some interest in it. During christmas holidays I saw this tweet which showcased something like this, but it never wasn't published AFAIK and so I got curious to implement it myself. Known issues - The main running code is not well organized, I started on a v2, but it has less support ATM. This has been a \"compromise\" I did while trying to figure out the best way to solve for the phi placement problem. - The placement of phi functions is not fully implemented and also not fully working. There is some basic support, depending on the control flow of your contract it might not be able to compile. - The plan here is to implement unification logic of the variables and then make use of this SSA construction algorithm. There is some WIP in the v2 implementation of this. - There will be edges cases in case of CODECOPY and other memory related opcodes which we don't correctly cover. We don't model model memory or storage ATM which could cause incorrect transpiled code. In other words, you can't expect to optimize for instance deployment code currently. Only runtime-code, but it also has it's edge cases. High level how it works 1. We execute the contract symbolically 2. We look at the execution traces to know how vari","default_branch":null,"files":null,"tree":[],"storefront":"/r/2xic","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/2xic/evm-bytecode-transpiler-to-venom-ir/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}