diff options
author | Wei-Ning Huang <w@cobinhood.com> | 2018-10-18 13:12:16 +0800 |
---|---|---|
committer | Wei-Ning Huang <w@byzantine-lab.io> | 2019-06-12 17:23:39 +0800 |
commit | db1d03b5c2a6fbe370526dfaf283638773bab032 (patch) | |
tree | 305237d4831233521fe46f5901c34c8baccf9d4d /core/vm/opcodes.go | |
parent | 12eb896a11eaf15712339ffa7eedf2b7c88fdfdd (diff) | |
download | go-tangerine-db1d03b5c2a6fbe370526dfaf283638773bab032.tar.gz go-tangerine-db1d03b5c2a6fbe370526dfaf283638773bab032.tar.zst go-tangerine-db1d03b5c2a6fbe370526dfaf283638773bab032.zip |
core: vm: implement RAND opcode support
DEXON has a built-in on chain random oracle that allow one to retrieve a
random variable. Add a new opcode `RAND` to load the random variable
onto the stack.
Diffstat (limited to 'core/vm/opcodes.go')
-rw-r--r-- | core/vm/opcodes.go | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/core/vm/opcodes.go b/core/vm/opcodes.go index 4349ffd29..8762d4b43 100644 --- a/core/vm/opcodes.go +++ b/core/vm/opcodes.go @@ -71,6 +71,7 @@ const ( SAR SHA3 = 0x20 + RAND = 0x2f ) // 0x30 range - closure state. @@ -251,6 +252,7 @@ var opCodeToString = map[OpCode]string{ // 0x20 range - crypto. SHA3: "SHA3", + RAND: "RAND", // 0x30 range - closure state. ADDRESS: "ADDRESS", @@ -420,6 +422,7 @@ var stringToOp = map[string]OpCode{ "ADDMOD": ADDMOD, "MULMOD": MULMOD, "SHA3": SHA3, + "RAND": RAND, "ADDRESS": ADDRESS, "BALANCE": BALANCE, "ORIGIN": ORIGIN, |