2021-11-20 17:59:22 -10:00
|
|
|
package gen
|
|
|
|
|
|
|
|
|
|
import "github.com/firestuff/subcoding/vm"
|
|
|
|
|
|
2021-11-20 19:25:16 -10:00
|
|
|
func RandProgram(globalMemorySize, functionMemorySize, instructionLimit uint64) *vm.Program {
|
2021-11-20 18:27:06 -10:00
|
|
|
prog := &vm.Program{
|
|
|
|
|
GlobalMemorySize: globalMemorySize,
|
|
|
|
|
FunctionMemorySize: functionMemorySize,
|
2021-11-20 19:25:16 -10:00
|
|
|
InstructionLimit: instructionLimit,
|
2021-11-20 17:59:22 -10:00
|
|
|
}
|
2021-11-20 18:27:06 -10:00
|
|
|
|
|
|
|
|
prog.Functions = append(prog.Functions, &vm.Function{
|
|
|
|
|
Instructions: []*vm.Instruction{
|
|
|
|
|
randInstruction(prog),
|
|
|
|
|
},
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
return prog
|
2021-11-20 17:59:22 -10:00
|
|
|
}
|