diff options
author | camthesaxman <camthesaxman@users.noreply.github.com> | 2020-01-29 18:17:43 -0600 |
---|---|---|
committer | camthesaxman <camthesaxman@users.noreply.github.com> | 2020-01-29 18:17:43 -0600 |
commit | cdc6e2c50f96119bdc4c1205ff5901ca82ec8357 (patch) | |
tree | 3e9217eabcf444e166008411f445315606dded59 /gcc_arm/testsuite/gcc.wendy/gnu5.c | |
parent | 27176890c4a688ea7de44d3f55af32827016a9fd (diff) |
add old compiler with ARM support
Diffstat (limited to 'gcc_arm/testsuite/gcc.wendy/gnu5.c')
-rwxr-xr-x | gcc_arm/testsuite/gcc.wendy/gnu5.c | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/gcc_arm/testsuite/gcc.wendy/gnu5.c b/gcc_arm/testsuite/gcc.wendy/gnu5.c new file mode 100755 index 0000000..58a52a8 --- /dev/null +++ b/gcc_arm/testsuite/gcc.wendy/gnu5.c @@ -0,0 +1,41 @@ +/* +Date: 22 Dec 87 08:38:59 PST (Tuesday) +Subject: Serious bug in gcc 1.16 +From: "James_L_Mayer.WBST128"@xerox.com +To: bug-gcc@prep.ai.mit.edu +Message-Id: <871222-084137-7045@Xerox> + +Here is a bug in release 1.16 of gcc running on a Sun3: + +Problem: + In assembler output, "pointer" is incremented twice for each iteration. + (when compiled optimized.) +*/ + +struct bits +{ + unsigned bit0: 1; + unsigned bit1: 1; +} foo[2]; + +alpha(pointer, count) + struct bits *pointer; + int count; +{ + while (--count >= 0) + { + pointer->bit0 = !pointer->bit0; + pointer++; + } + + if (pointer == &foo[2]) + printf("Test passed\n"); + else + printf("FAILED, pointer=%x, &foo[2]=%x\n", pointer, &foo[2]); +} + +main() +{ + alpha(foo, 2); + return 0; +} |