From d051c0364fabb8a6fa47883affdcc4bdc7ff1473 Mon Sep 17 00:00:00 2001 From: Matthias Braun Date: Sat, 8 Jul 2006 10:28:00 +0000 Subject: [PATCH] fixed more testapps --- ir/be/test/DivBug.c | 12 +++++++++--- ir/be/test/Strings.c | 2 +- ir/be/test/sret.c | 2 ++ ir/be/test/types.c | 6 +++--- 4 files changed, 15 insertions(+), 7 deletions(-) diff --git a/ir/be/test/DivBug.c b/ir/be/test/DivBug.c index c8e5bb777..72290804d 100644 --- a/ir/be/test/DivBug.c +++ b/ir/be/test/DivBug.c @@ -1,9 +1,15 @@ +#include + int x[(1024 / sizeof (int))]; int main(int argc, char *argv[]) { int y[(1024 / sizeof (int))]; - printf("DivBug. ok!\n"); - printf("Result: %d", y[(1024 / sizeof (int))-1]+x[(1024 / sizeof (int))-1]); - return 0; + memset(y, 20, sizeof(y)); + memset(x, 22, (1024 / sizeof (int))); + + printf("DivBug. ok!\n"); + printf("Result: %d (should be 336860180)", y[(1024 / sizeof (int))-1]+x[(1024 / sizeof (int))-1]); + + return 0; } diff --git a/ir/be/test/Strings.c b/ir/be/test/Strings.c index e71bc9174..ea90e12aa 100644 --- a/ir/be/test/Strings.c +++ b/ir/be/test/Strings.c @@ -30,7 +30,7 @@ int main(int argc, char *argv[]) { char *s = "test"; printf("Strings.c\n"); - for(i = 0; i < argc; i++) { + for(i = 1; i < argc; i++) { print_String(argv[i]); } print_String(s); diff --git a/ir/be/test/sret.c b/ir/be/test/sret.c index d283a712d..08b97cc9d 100644 --- a/ir/be/test/sret.c +++ b/ir/be/test/sret.c @@ -6,12 +6,14 @@ typedef struct _foo_t { foo_t sret_func(int c) { foo_t x; x.a = c; + x.b = 0; return x; } int main(int argc) { foo_t z; + z.b = 13; z = sret_func(argc); return z.b; diff --git a/ir/be/test/types.c b/ir/be/test/types.c index 08d55ce8c..d7c665ab9 100644 --- a/ir/be/test/types.c +++ b/ir/be/test/types.c @@ -7,9 +7,9 @@ struct opcode { int main(void) { int i; - struct opcode oc; + struct opcode oc = { { 42 } }; - i = oc.foo.imm16 & 0x8000; - printf("i: %d\n", i); + i = oc.foo.imm16 & 0x80f4; + printf("Result: %d (should be 32)\n", i); return 0; } -- 2.20.1