diff options
author | Alex Beregszaszi <alex@rtfs.hu> | 2017-06-22 21:59:05 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-06-22 21:59:05 +0800 |
commit | f90a514f80b74518fbbdd7ef3a511df4f13abed2 (patch) | |
tree | e0f9959974eef531fcbf70c3fac8bc6a35c57999 /liblll | |
parent | f823952d9f0cc1e37dec465111db976c7a1830b2 (diff) | |
parent | 0175008ffaaeecf1d110ef55f736f8ce45ffe90f (diff) | |
download | dexon-solidity-f90a514f80b74518fbbdd7ef3a511df4f13abed2.tar.gz dexon-solidity-f90a514f80b74518fbbdd7ef3a511df4f13abed2.tar.zst dexon-solidity-f90a514f80b74518fbbdd7ef3a511df4f13abed2.zip |
Merge pull request #2446 from benjaminion/lll-fix-msg-6-args
LLL: Fix msg macro with six arguments.
Diffstat (limited to 'liblll')
-rw-r--r-- | liblll/CompilerState.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/liblll/CompilerState.cpp b/liblll/CompilerState.cpp index 72078535..5d38bb8c 100644 --- a/liblll/CompilerState.cpp +++ b/liblll/CompilerState.cpp @@ -49,7 +49,8 @@ void CompilerState::populateStandard() "(def 'allgas (- (gas) 21))" "(def 'send (to value) (call allgas to value 0 0 0 0))" "(def 'send (gaslimit to value) (call gaslimit to value 0 0 0 0))" - "(def 'msg (gaslimit to value data datasize outsize) { (set x outsize) (set y (alloc @32)) (call gaslimit to value data datasize @0 @32) @0 })" + // NOTE: in this macro, memory location 0 is set in order to force msize to be at least 32 bytes. + "(def 'msg (gaslimit to value data datasize outsize) { [0]:0 [0]:(msize) (call gaslimit to value data datasize @0 outsize) @0 })" "(def 'msg (gaslimit to value data datasize) { (call gaslimit to value data datasize 0 32) @0 })" "(def 'msg (gaslimit to value data) { [0]:data (msg gaslimit to value 0 32) })" "(def 'msg (to value data) { [0]:data (msg allgas to value 0 32) })" |