diff options
Diffstat (limited to 'sim/testsuite/bfin/argc.c')
-rw-r--r-- | sim/testsuite/bfin/argc.c | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/sim/testsuite/bfin/argc.c b/sim/testsuite/bfin/argc.c new file mode 100644 index 0000000..21f1fef --- /dev/null +++ b/sim/testsuite/bfin/argc.c @@ -0,0 +1,31 @@ +/* Basic argc/argv tests. +# mach: bfin +# cc: -msim +# progopts: a bb ccc dddd +*/ + +int streq(const char *s1, const char *s2) +{ + int i = 0; + + while (s1[i] && s2[i] && s1[i] == s2[i]) + ++i; + + return s1[i] == '\0' && s2[i] == '\0'; +} + +int main(int argc, char *argv[]) +{ + if (argc != 5) + return 1; + if (!streq(argv[1], "a")) + return 2; + if (!streq(argv[2], "bb")) + return 2; + if (!streq(argv[3], "ccc")) + return 2; + if (!streq(argv[4], "dddd")) + return 2; + puts("pass"); + return 0; +} |