OpenCores
URL https://opencores.org/ocsvn/eco32/eco32/trunk

Subversion Repositories eco32

[/] [eco32/] [tags/] [eco32-0.26/] [lcc/] [tst/] [switch.c] - Diff between revs 4 and 270

Only display areas with differences | Details | Blame | View Log

Rev 4 Rev 270
main()
main()
{
{
        int i; char *s;
        int i; char *s;
 
 
        for (s = "bfnrtvx"; *s; s++)
        for (s = "bfnrtvx"; *s; s++)
                printf("%c = 0x%x\n", *s, backslash(*s));
                printf("%c = 0x%x\n", *s, backslash(*s));
        f();
        f();
        g();
        g();
        h();
        h();
        for (i = 0x1000000; i&0x7000000; i += 0x1000000)
        for (i = 0x1000000; i&0x7000000; i += 0x1000000)
                big(i);
                big(i);
        limit();
        limit();
        return 0;
        return 0;
}
}
 
 
backslash(c)
backslash(c)
{
{
        switch (c) {
        switch (c) {
        case 'b':
        case 'b':
                return '\b';
                return '\b';
        case 'f':
        case 'f':
                return '\f';
                return '\f';
        case 'n':
        case 'n':
                return '\n';
                return '\n';
        case 'r':
        case 'r':
                return '\r';
                return '\r';
        case 't':
        case 't':
                return '\t';
                return '\t';
        case 'v':
        case 'v':
                return '\v';
                return '\v';
        }
        }
        return c;
        return c;
}
}
 
 
f() {
f() {
        int i, x = 0, y;
        int i, x = 0, y;
 
 
        printf("f:\n");
        printf("f:\n");
        for (i = 0; i <= 20; i++) {
        for (i = 0; i <= 20; i++) {
                y = i;
                y = i;
                switch (i) {
                switch (i) {
                case 1: x = i; break;
                case 1: x = i; break;
                case 2: x = i; break;
                case 2: x = i; break;
                case 7: x = i; break;
                case 7: x = i; break;
                case 8: x = i; break;
                case 8: x = i; break;
                case 9: x = i; break;
                case 9: x = i; break;
                case 16: x = i; break;
                case 16: x = i; break;
                case 17: x = i; break;
                case 17: x = i; break;
                case 18: x = i; break;
                case 18: x = i; break;
                case 19: x = i; break;
                case 19: x = i; break;
                case 20: x = i; break;
                case 20: x = i; break;
                }
                }
                printf("x = %d\n", x);
                printf("x = %d\n", x);
        }
        }
}
}
 
 
g() {
g() {
        int i;
        int i;
 
 
        printf("g:\n");
        printf("g:\n");
        for (i = 1; i <= 10; i++)
        for (i = 1; i <= 10; i++)
                switch (i) {
                switch (i) {
                case 1: case 2: printf("1 %d\n", i); break;
                case 1: case 2: printf("1 %d\n", i); break;
                case 3: case 4: case 5: printf("2 %d\n", i); break;
                case 3: case 4: case 5: printf("2 %d\n", i); break;
                case 6: case 7: case 8: printf("3 %d\n", i);
                case 6: case 7: case 8: printf("3 %d\n", i);
                default:
                default:
                        printf("d %d\n", i); break;
                        printf("d %d\n", i); break;
                case 1001: case 1002: case 1003: case 1004:
                case 1001: case 1002: case 1003: case 1004:
                        printf("5 %d\n", i); break;
                        printf("5 %d\n", i); break;
                case 3001: case 3002: case 3003: case 3004:
                case 3001: case 3002: case 3003: case 3004:
                        printf("6 %d\n", i); break;
                        printf("6 %d\n", i); break;
        }
        }
}
}
 
 
h()
h()
{
{
        int i, n=0;
        int i, n=0;
 
 
        printf("h:\n");
        printf("h:\n");
        for (i = 1; i <= 500; i++)
        for (i = 1; i <= 500; i++)
                switch (i) {
                switch (i) {
                default: n++; continue;
                default: n++; continue;
                case 128: printf("i = %d\n", i); break;
                case 128: printf("i = %d\n", i); break;
                case 16: printf("i = %d\n", i); break;
                case 16: printf("i = %d\n", i); break;
                case 8: printf("i = %d\n", i); break;
                case 8: printf("i = %d\n", i); break;
                case 120: printf("i = %d\n", i); break;
                case 120: printf("i = %d\n", i); break;
                case 280: printf("i = %d\n", i); break;
                case 280: printf("i = %d\n", i); break;
                case 264: printf("i = %d\n", i); break;
                case 264: printf("i = %d\n", i); break;
                case 248: printf("i = %d\n", i); break;
                case 248: printf("i = %d\n", i); break;
                case 272: printf("i = %d\n", i); break;
                case 272: printf("i = %d\n", i); break;
                case 304: printf("i = %d\n", i); break;
                case 304: printf("i = %d\n", i); break;
                case 296: printf("i = %d\n", i); break;
                case 296: printf("i = %d\n", i); break;
                case 288: printf("i = %d\n", i); break;
                case 288: printf("i = %d\n", i); break;
                case 312: printf("i = %d\n", i); break;
                case 312: printf("i = %d\n", i); break;
                }
                }
        printf("%d defaults\n", n);
        printf("%d defaults\n", n);
}
}
 
 
big(x) unsigned x; {
big(x) unsigned x; {
        switch(x&0x6000000){
        switch(x&0x6000000){
        case -1:
        case -1:
        case -2:
        case -2:
        case 0x0000000:
        case 0x0000000:
                printf("x = 0x%x\n", x); break;
                printf("x = 0x%x\n", x); break;
        case 0x2000000:
        case 0x2000000:
                printf("x = 0x%x\n", x); break;
                printf("x = 0x%x\n", x); break;
        case 0x4000000:
        case 0x4000000:
                printf("x = 0x%x\n", x); break;
                printf("x = 0x%x\n", x); break;
        default:
        default:
                printf("x = 0x%x (default)\n", x); break;
                printf("x = 0x%x (default)\n", x); break;
        }
        }
}
}
 
 
#include <limits.h>
#include <limits.h>
 
 
limit() {
limit() {
        int i;
        int i;
 
 
        for (i = INT_MIN; i <= INT_MIN+5; i++)
        for (i = INT_MIN; i <= INT_MIN+5; i++)
                switch (i) {
                switch (i) {
                case INT_MIN:   printf("0\n"); break;
                case INT_MIN:   printf("0\n"); break;
                case INT_MIN+1: printf("1\n"); break;
                case INT_MIN+1: printf("1\n"); break;
                case INT_MIN+2: printf("2\n"); break;
                case INT_MIN+2: printf("2\n"); break;
                case INT_MIN+3: printf("3\n"); break;
                case INT_MIN+3: printf("3\n"); break;
                case INT_MIN+4: printf("4\n"); break;
                case INT_MIN+4: printf("4\n"); break;
                default:        printf("5\n"); break;
                default:        printf("5\n"); break;
                }
                }
        for (i = INT_MAX; i >= INT_MAX-5; i--)
        for (i = INT_MAX; i >= INT_MAX-5; i--)
                switch (i) {
                switch (i) {
                case INT_MAX:   printf("0\n"); break;
                case INT_MAX:   printf("0\n"); break;
                case INT_MAX-1: printf("1\n"); break;
                case INT_MAX-1: printf("1\n"); break;
                case INT_MAX-2: printf("2\n"); break;
                case INT_MAX-2: printf("2\n"); break;
                case INT_MAX-3: printf("3\n"); break;
                case INT_MAX-3: printf("3\n"); break;
                case INT_MAX-4: printf("4\n"); break;
                case INT_MAX-4: printf("4\n"); break;
                default:        printf("5\n"); break;
                default:        printf("5\n"); break;
                }
                }
}
}
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.