diff options
Diffstat (limited to 'bugs/ultrixcc.c')
-rw-r--r-- | bugs/ultrixcc.c | 44 |
1 files changed, 0 insertions, 44 deletions
diff --git a/bugs/ultrixcc.c b/bugs/ultrixcc.c deleted file mode 100644 index 6e24549d5e..0000000000 --- a/bugs/ultrixcc.c +++ /dev/null @@ -1,44 +0,0 @@ -#include <stdio.h> - -/*- - * This is a cc optimiser bug for ultrix 4.3, mips CPU. - * What happens is that the compiler, due to the (a)&7, - * does - * i=a&7; - * i--; - * i*=4; - * Then uses i as the offset into a jump table. - * The problem is that a value of 0 generates an offset of - * 0xfffffffc. - */ - -main() -{ - f(5); - f(0); -} - -int f(a) -int a; -{ - switch (a & 7) { - case 7: - printf("7\n"); - case 6: - printf("6\n"); - case 5: - printf("5\n"); - case 4: - printf("4\n"); - case 3: - printf("3\n"); - case 2: - printf("2\n"); - case 1: - printf("1\n"); -#ifdef FIX_BUG - case 0: - ; -#endif - } -} |