aboutsummaryrefslogtreecommitdiffstats
path: root/liblll
diff options
context:
space:
mode:
authorbenjaminion <ben@edginet.org>2017-06-18 04:01:42 +0800
committerbenjaminion <ben@edginet.org>2017-06-22 06:32:47 +0800
commit6cab6b6f4963bddab5d1137e42169f7fe104f050 (patch)
tree00147208264698d5439d761ad31d2b9cde7ad13c /liblll
parent176f8f903a9b3f4d83b5aaf2a04094a1bf6f4cd7 (diff)
downloaddexon-solidity-6cab6b6f4963bddab5d1137e42169f7fe104f050.tar.gz
dexon-solidity-6cab6b6f4963bddab5d1137e42169f7fe104f050.tar.zst
dexon-solidity-6cab6b6f4963bddab5d1137e42169f7fe104f050.zip
LLL: Correctly label arguments to ecrecover built-in macro.
(r s v hash) -> (hash v r s) which corresponds to the order that the built-in EVM contract uses.
Diffstat (limited to 'liblll')
-rw-r--r--liblll/CompilerState.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/liblll/CompilerState.cpp b/liblll/CompilerState.cpp
index c22242a3..c76ef655 100644
--- a/liblll/CompilerState.cpp
+++ b/liblll/CompilerState.cpp
@@ -65,7 +65,7 @@ void CompilerState::populateStandard()
"(def 'makeperm (name pos) { (def name (sload pos)) (def name (v) (sstore pos v)) } )"
"(def 'permcount 0)"
"(def 'perm (name) { (makeperm name permcount) (def 'permcount (+ permcount 1)) } )"
- "(def 'ecrecover (r s v hash) { [0] r [32] s [64] v [96] hash (msg allgas 1 0 0 128) })"
+ "(def 'ecrecover (hash v r s) { [0] hash [32] v [64] r [96] s (msg allgas 1 0 0 128) })"
"(def 'sha256 (data datasize) (msg allgas 2 0 data datasize))"
"(def 'ripemd160 (data datasize) (msg allgas 3 0 data datasize))"
"(def 'sha256 (val) { [0]:val (sha256 0 32) })"