diff options
Diffstat (limited to 'tests/tcg/cris/check_int64.c')
-rw-r--r-- | tests/tcg/cris/check_int64.c | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/tests/tcg/cris/check_int64.c b/tests/tcg/cris/check_int64.c new file mode 100644 index 0000000000..fc600176e2 --- /dev/null +++ b/tests/tcg/cris/check_int64.c @@ -0,0 +1,47 @@ +#include <stdio.h> +#include <stdlib.h> +#include <stdint.h> +#include "sys.h" +#include "crisutils.h" + + +static inline int64_t add64(const int64_t a, const int64_t b) +{ + return a + b; +} + +static inline int64_t sub64(const int64_t a, const int64_t b) +{ + return a - b; +} + +int main(void) +{ + int64_t a = 1; + int64_t b = 2; + + /* FIXME: add some tests. */ + a = add64(a, b); + if (a != 3) + err(); + + a = sub64(a, b); + if (a != 1) + err(); + + a = add64(a, -4); + if (a != -3) + err(); + + a = add64(a, 3); + if (a != 0) + err(); + + a = 0; + a = sub64(a, 1); + if (a != -1) + err(); + + pass(); + return 0; +} |