Uniswap V2 bugs (WasmEdge Revert)
eee4017 opened this issue · 0 comments
eee4017 commented
- Wasm section size too small
When copying deploy bytecode, WasmEdge will revert due to OOB
https://github.com/second-state/uniswap-v2-core/blob/vincent/upgrade_to_solc_0.8.6/contracts/yul/UniswapV2ERC20.yul#L18
This error could be solved by assigning larger memory secion to wasm-ld
wasm-ld --entry main --gc-sections --allow-undefined --export=__heap_base --max-memory=16777216 --initial-memory=16777216 UniswapV2ERC20.o -o UniswapV2ERC20.wasm
- keccak256 failed
WasmEdge will revert due to OOB. I guess that this is a bug in keccak256 implementation.
https://github.com/second-state/uniswap-v2-core/blob/vincent/upgrade_to_solc_0.8.6/contracts/yul/UniswapV2ERC20.yul#L138
The behavior here is strange, since WasmEdge would not stop at the OOB occurs.