-
ben-chain authored
* feat(contracts): add ovmCALL-types with native value * add ovmCALLVALUE context * add ovmBALANCE * test success and revert cases * test empty contract case * chore: lint * test(integration-tests): ovmCALL-types with value (compiler and wrapper) * fix ovmDELEGATECALL type, update tests * add ovmSELFBALANCE * fix ovmDELEGATECALL jumping to CALL * chore: lint * fix(contracts): account for intrinsic gas of OVM_ETH sends * fix(contracts): merge conflict bug * fix(contracts): update gas benchmark * feat(contracts, integration-tests): use new value-compatible compiler * feat(contracts,l2geth): support value calls in OVM_ECDSAContractAccount * fix(contracts): ovmDELEGATECALL does not change message context * feat(contracts): sending value between EOAs * test(integration-tests): ovmDELEGATECALL preserves ovmCALLVALUE * test(integration-tests): assert ovmSELFBALANCEs correct * test(integration-tests): intrinsic gas for eth value calls * test(integration-tests): update gas values * chore(contracts): lint * feat(contracts, l2geth): eth_calls with nonzero value * chore: minor fixups and comments based on PR feedback * test(integration-tests): add requested tests from PR reviews * test(integration-tests): ovmSELFBALANCE is preserved in ovmDELEGATECALLs * fix(contracts): fix bug where ovmDELEGATECALL could fail if balance was lower than the ovmCALLVALUE * chore: add changeset * fix(contracts): update intrinsic gas for worst-case value sends * chore: address final PR nits/improvements Co-authored-by:
Kelvin Fichter <kelvinfichter@gmail.com>
e04de624