Move go.mod to top level
This commit is contained in:
@@ -1,11 +0,0 @@
|
||||
module github.com/firestuff/subcoding/assembler
|
||||
|
||||
go 1.17
|
||||
|
||||
require (
|
||||
github.com/firestuff/subcoding/vm v0.0.0-20211119013410-6de2e87342fa
|
||||
github.com/pkg/errors v0.9.1
|
||||
gopkg.in/yaml.v2 v2.4.0
|
||||
)
|
||||
|
||||
require github.com/lunixbochs/struc v0.0.0-20200707160740-784aaebc1d40 // indirect
|
||||
@@ -1,7 +0,0 @@
|
||||
functions:
|
||||
- - [add, f0, 1]
|
||||
- [call, +1]
|
||||
- [ltu, f0, 3]
|
||||
- [jmpt, -3]
|
||||
|
||||
- - [add, g0, 1]
|
||||
9
go.mod
Normal file
9
go.mod
Normal file
@@ -0,0 +1,9 @@
|
||||
module github.com/firestuff/subcoding
|
||||
|
||||
go 1.17
|
||||
|
||||
require (
|
||||
github.com/lunixbochs/struc v0.0.0-20200707160740-784aaebc1d40
|
||||
github.com/pkg/errors v0.9.1
|
||||
gopkg.in/yaml.v2 v2.4.0
|
||||
)
|
||||
@@ -1,5 +1,3 @@
|
||||
github.com/firestuff/subcoding/vm v0.0.0-20211119013410-6de2e87342fa h1:xx9ht6+TpFa19jx954x5+4koxcyxQHRbxItLnzPv6ug=
|
||||
github.com/firestuff/subcoding/vm v0.0.0-20211119013410-6de2e87342fa/go.mod h1:s02/Ta9wsxRR9W5Uom7LoQEu4bpFQfJdhaIHaXzN0IY=
|
||||
github.com/lunixbochs/struc v0.0.0-20200707160740-784aaebc1d40 h1:EnfXoSqDfSNJv0VBNqY/88RNnhSGYkrHaO0mmFGbVsc=
|
||||
github.com/lunixbochs/struc v0.0.0-20200707160740-784aaebc1d40/go.mod h1:vy1vK6wD6j7xX6O6hXe621WabdtNkou2h7uRtTfRMyg=
|
||||
github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=
|
||||
@@ -1,8 +0,0 @@
|
||||
module github.com/firestuff/subcoding/vm
|
||||
|
||||
go 1.17
|
||||
|
||||
require (
|
||||
github.com/lunixbochs/struc v0.0.0-20200707160740-784aaebc1d40 // indirect
|
||||
github.com/pkg/errors v0.9.1 // indirect
|
||||
)
|
||||
@@ -1,4 +0,0 @@
|
||||
github.com/lunixbochs/struc v0.0.0-20200707160740-784aaebc1d40 h1:EnfXoSqDfSNJv0VBNqY/88RNnhSGYkrHaO0mmFGbVsc=
|
||||
github.com/lunixbochs/struc v0.0.0-20200707160740-784aaebc1d40/go.mod h1:vy1vK6wD6j7xX6O6hXe621WabdtNkou2h7uRtTfRMyg=
|
||||
github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=
|
||||
github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
|
||||
@@ -1,47 +0,0 @@
|
||||
package vm
|
||||
|
||||
import "encoding/hex"
|
||||
import "strings"
|
||||
import "testing"
|
||||
|
||||
func TestFirst(t *testing.T) {
|
||||
asm := [][]string{
|
||||
[]string{
|
||||
"0000020000000000010000000000000000000000000000000000000000000001",
|
||||
"0000000100000000000000000000000000000001000000000000000000000000",
|
||||
"0000030100000000010000000000000000000000000000000000000000000003",
|
||||
"000004010000000000000000fffffffffffffffd000000000000000000000000",
|
||||
},
|
||||
[]string{
|
||||
"0000020000000000020000000000000000000000000000000000000000000001",
|
||||
},
|
||||
}
|
||||
|
||||
functionByteCode := [][]byte{}
|
||||
|
||||
for _, fnc := range asm {
|
||||
fncString := strings.Join(fnc, "")
|
||||
|
||||
byteCode, err := hex.DecodeString(fncString)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
functionByteCode = append(functionByteCode, byteCode)
|
||||
}
|
||||
|
||||
state, err := NewStateFromByteCode(functionByteCode)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
state.Execute()
|
||||
|
||||
if state.err != nil {
|
||||
t.Fatal(state)
|
||||
}
|
||||
|
||||
if state.globalMemory.mustReadUnsigned(0) != 3 {
|
||||
t.Fatal(state.globalMemory.mustReadUnsigned(0))
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user