good morning!!!!
Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
B
bor
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Iterations
Wiki
Requirements
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Locked files
Build
Pipelines
Jobs
Pipeline schedules
Test cases
Artifacts
Deploy
Releases
Package Registry
Container Registry
Harbor Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Code review analytics
Issue analytics
Insights
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
open
bor
Commits
fd7e79f4
Commit
fd7e79f4
authored
11 years ago
by
Jeffrey Wilcke
Browse files
Options
Downloads
Patches
Plain Diff
Added stack and opcodes to a separate file
parent
8c4eca24
No related branches found
Branches containing commit
No related tags found
Tags containing commit
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
stack.go
+59
-55
59 additions, 55 deletions
stack.go
with
59 additions
and
55 deletions
stack.go
+
59
−
55
View file @
fd7e79f4
...
...
@@ -6,59 +6,61 @@ import (
"math/big"
)
type
OpCode
byte
type
OpCode
int
// Op codes
const
(
oSTOP
OpCode
=
0x00
oADD
OpCode
=
0x01
oMUL
OpCode
=
0x02
oSUB
OpCode
=
0x03
oDIV
OpCode
=
0x04
oSDIV
OpCode
=
0x05
oMOD
OpCode
=
0x06
oSMOD
OpCode
=
0x07
oEXP
OpCode
=
0x08
oNEG
OpCode
=
0x09
oLT
OpCode
=
0x0a
oLE
OpCode
=
0x0b
oGT
OpCode
=
0x0c
oGE
OpCode
=
0x0d
oEQ
OpCode
=
0x0e
oNOT
OpCode
=
0x0f
oMYADDRESS
OpCode
=
0x10
oTXSENDER
OpCode
=
0x11
oTXVALUE
OpCode
=
0x12
oTXFEE
OpCode
=
0x13
oTXDATAN
OpCode
=
0x14
oTXDATA
OpCode
=
0x15
oBLK_PREVHASH
OpCode
=
0x16
oBLK_COINBASE
OpCode
=
0x17
oBLK_TIMESTAMP
OpCode
=
0x18
oBLK_NUMBER
OpCode
=
0x19
oBLK_DIFFICULTY
OpCode
=
0x1a
oSHA256
OpCode
=
0x20
oRIPEMD160
OpCode
=
0x21
oECMUL
OpCode
=
0x22
oECADD
OpCode
=
0x23
oECSIGN
OpCode
=
0x24
oECRECOVER
OpCode
=
0x25
oECVALID
OpCode
=
0x26
oPUSH
OpCode
=
0x30
oPOP
OpCode
=
0x31
oDUP
OpCode
=
0x32
oDUPN
OpCode
=
0x33
oSWAP
OpCode
=
0x34
oSWAPN
OpCode
=
0x35
oLOAD
OpCode
=
0x36
oSTORE
OpCode
=
0x37
oJMP
OpCode
=
0x40
oJMPI
OpCode
=
0x41
oIND
OpCode
=
0x42
oEXTRO
OpCode
=
0x50
oBALANCE
OpCode
=
0x51
oMKTX
OpCode
=
0x60
oSUICIDE
OpCode
=
0xff
oSTOP
OpCode
=
iota
oADD
oMUL
oSUB
oDIV
oSDIV
oMOD
oSMOD
oEXP
oNEG
oLT
oLE
oGT
oGE
oEQ
oNOT
oMYADDRESS
oTXSENDER
oTXVALUE
oTXFEE
oTXDATAN
oTXDATA
oBLK_PREVHASH
oBLK_COINBASE
oBLK_TIMESTAMP
oBLK_NUMBER
oBLK_DIFFICULTY
oBASEFEE
oSHA256
OpCode
=
32
oRIPEMD160
OpCode
=
33
oECMUL
OpCode
=
34
oECADD
OpCode
=
35
oECSIGN
OpCode
=
36
oECRECOVER
OpCode
=
37
oECVALID
OpCode
=
38
oSHA3
OpCode
=
39
oPUSH
OpCode
=
48
oPOP
OpCode
=
49
oDUP
OpCode
=
50
oSWAP
OpCode
=
51
oMLOAD
OpCode
=
52
oMSTORE
OpCode
=
53
oSLOAD
OpCode
=
54
oSSTORE
OpCode
=
55
oJMP
OpCode
=
56
oJMPI
OpCode
=
57
oIND
OpCode
=
58
oEXTRO
OpCode
=
59
oBALANCE
OpCode
=
60
oMKTX
OpCode
=
61
oSUICIDE
OpCode
=
62
)
// Since the opcodes aren't all in order we can't use a regular slice
...
...
@@ -89,7 +91,8 @@ var opCodeToString = map[OpCode]string{
oBLK_COINBASE
:
"BLK_COINBASE"
,
oBLK_TIMESTAMP
:
"BLK_TIMESTAMP"
,
oBLK_NUMBER
:
"BLK_NUMBER"
,
oBLK_DIFFICULTY
:
"BLK_DIFFIFULTY"
,
oBLK_DIFFICULTY
:
"BLK_DIFFICULTY"
,
oBASEFEE
:
"BASEFEE"
,
oSHA256
:
"SHA256"
,
oRIPEMD160
:
"RIPEMD160"
,
oECMUL
:
"ECMUL"
,
...
...
@@ -97,14 +100,15 @@ var opCodeToString = map[OpCode]string{
oECSIGN
:
"ECSIGN"
,
oECRECOVER
:
"ECRECOVER"
,
oECVALID
:
"ECVALID"
,
oSHA3
:
"SHA3"
,
oPUSH
:
"PUSH"
,
oPOP
:
"POP"
,
oDUP
:
"DUP"
,
oDUPN
:
"DUPN"
,
oSWAP
:
"SWAP"
,
oSWAPN
:
"SWAPN"
,
oLOAD
:
"LOAD"
,
oSTORE
:
"STORE"
,
oMLOAD
:
"MLOAD"
,
oMSTORE
:
"MSTORE"
,
oSLOAD
:
"SLOAD"
,
oSSTORE
:
"SSTORE"
,
oJMP
:
"JMP"
,
oJMPI
:
"JMPI"
,
oIND
:
"IND"
,
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment