diff options
| author | bellard <bellard> | 2002-09-08 22:46:32 +0000 |
|---|---|---|
| committer | bellard <bellard> | 2002-09-08 22:46:32 +0000 |
| commit | d8ef07df04443465600f94e8c5d769899a2e4d27 (patch) | |
| tree | a3a860c837938f683eab08a40344fb5407815de3 /libtcc_test.c | |
| parent | 10f5d44f43cd6e93a17fb00aa63c79bb13fc0a81 (diff) | |
| download | tinycc-d8ef07df04443465600f94e8c5d769899a2e4d27.tar.gz tinycc-d8ef07df04443465600f94e8c5d769899a2e4d27.tar.bz2 | |
added tcc_relocate() and tcc_get_symbol()
Diffstat (limited to 'libtcc_test.c')
| -rw-r--r-- | libtcc_test.c | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/libtcc_test.c b/libtcc_test.c index a9c379e..9861ec0 100644 --- a/libtcc_test.c +++ b/libtcc_test.c @@ -23,10 +23,8 @@ char my_program[] = " return fib(n-1) + fib(n-2);\n" "}\n" "\n" -"int main(int argc, char **argv)\n" +"int foo(int n)\n" "{\n" -" int n;\n" -" n = atoi(argv[1]);\n" " printf(\"Hello World!\\n\");\n" " printf(\"fib(%d) = %d\\n\", n, fib(n));\n" " printf(\"add(%d, %d) = %d\\n\", n, 2 * n, add(n, 2 * n));\n" @@ -36,7 +34,7 @@ char my_program[] = int main(int argc, char **argv) { TCCState *s; - char *args[3]; + int (*func)(int); s = tcc_new(); if (!s) { @@ -54,11 +52,11 @@ int main(int argc, char **argv) with tcc_add_dll(() and using its symbols directly. */ tcc_add_symbol(s, "add", (unsigned long)&add); - args[0] = ""; - args[1] = "32"; - args[2] = NULL; + tcc_relocate(s); - tcc_run(s, 2, args); + func = tcc_get_symbol(s, "foo"); + + func(32); tcc_delete(s); return 0; |
