Merge pull request #32 from eldev/master

tvm_vm_create() fixed
This commit is contained in:
Joseph Kogut 2017-10-28 10:11:38 -07:00 committed by GitHub
commit 5ea1ddc5e2
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -3,19 +3,22 @@
#include <tvm/tvm_lexer.h> #include <tvm/tvm_lexer.h>
#include <tvm/tvm_parser.h> #include <tvm/tvm_parser.h>
struct tvm_ctx *tvm_vm_create(char *filename) struct tvm_ctx *tvm_vm_create()
{ {
struct tvm_ctx *vm = struct tvm_ctx *vm =
(struct tvm_ctx *)calloc(1, sizeof(struct tvm_ctx)); (struct tvm_ctx *)calloc(1, sizeof(struct tvm_ctx));
if (!vm)
return NULL;
vm->mem = tvm_mem_create(MIN_MEMORY_SIZE); vm->mem = tvm_mem_create(MIN_MEMORY_SIZE);
vm->prog = tvm_prog_create(); vm->prog = tvm_prog_create();
tvm_stack_create(vm->mem, MIN_STACK_SIZE); if (!vm->mem || !vm->prog) {
tvm_vm_destroy(vm);
if (!vm || !vm->mem || !vm->prog)
return NULL; return NULL;
}
tvm_stack_create(vm->mem, MIN_STACK_SIZE);
return vm; return vm;
} }