add usage info
authoryu.dongliang <18588496441@163.com>
Wed, 19 Apr 2023 02:44:47 +0000 (10:44 +0800)
committeryu.dongliang <18588496441@163.com>
Wed, 19 Apr 2023 02:44:47 +0000 (10:44 +0800)
parse/main.c
vm/scf_vm_test.c

index 2ee3400b2ecc9d8cda1adb5e6a12cdba001fdd3c..93e2c1a914ce5b7c9037f2a59a78ad8cd57cb93b 100644 (file)
@@ -31,11 +31,18 @@ void usage(char* path)
 {
        fprintf(stderr, "Usage: %s [-c] [-a arch] [-o out] src0 [src1]\n\n", path);
        fprintf(stderr, "-c: only compile, not link\n");
-       fprintf(stderr, "-a: select cpu arch (x64 or arm64), default is x64\n");
+       fprintf(stderr, "-a: select cpu arch (x64 or arm64 or naja), default is x64\n\n");
+       fprintf(stderr, "naja is a bytecode designed by me, so that a script language can be developed based on scf framework.\n");
+       fprintf(stderr, "naja is compiled & linked to ELF, and run by nvm in 'scf/vm' dir.\n");
 }
 
 int main(int argc, char* argv[])
 {
+       if (argc < 2) {
+               usage(argv[0]);
+               return -EINVAL;
+       }
+
        scf_vector_t* afiles  = scf_vector_alloc();
        scf_vector_t* sofiles = scf_vector_alloc();
        scf_vector_t* srcs    = scf_vector_alloc();
index 54eea6fad6ebdc9e8bd1705d09fa3fec8b8ba7fb..2136fa4619efbf750e74b9efc4a94a02683479e6 100644 (file)
@@ -1,7 +1,13 @@
 #include"scf_vm.h"
 
-int main()
+int main(int argc, char* argv[])
 {
+       if (argc < 2) {
+               printf("usage: ./nvm file\n\n");
+               printf("file: an ELF file with naja bytecode\n");
+               return -1;
+       }
+
        scf_vm_t* vm = NULL;
 
        int ret = scf_vm_open(&vm, "naja");
@@ -10,7 +16,7 @@ int main()
                return -1;
        }
 
-       ret = scf_vm_run(vm, "../parse/1.out", "x64");
+       ret = scf_vm_run(vm, argv[1], "x64");
        if (ret < 0) {
                scf_loge("\n");
                return -1;