Annotation of hatari/tests/cpu/int_test.c, revision 1.1

1.1     ! root        1: /*
        !             2:  * CPU integer arithmetics tests.
        !             3:  *
        !             4:  * This file is distributed under the GNU General Public License, version 2
        !             5:  * or at your option any later version. Read the file gpl.txt for details.
        !             6:  */
        !             7: 
        !             8: #include <tos.h>
        !             9: 
        !            10: extern char tst_abcd_1(void);
        !            11: extern char tst_abcd_2(void);
        !            12: extern char tst_abcd_3(void);
        !            13: extern char tst_abcd_4(void);
        !            14: 
        !            15: extern char tst_add_1(void);
        !            16: extern char tst_add_2(void);
        !            17: extern char tst_add_3(void);
        !            18: extern char tst_add_4(void);
        !            19: extern char tst_add_5(void);
        !            20: extern char tst_add_6(void);
        !            21: extern char tst_add_7(void);
        !            22: 
        !            23: extern char tst_addi_1(void);
        !            24: extern char tst_addi_2(void);
        !            25: extern char tst_addi_3(void);
        !            26: extern char tst_addi_4(void);
        !            27: extern char tst_addi_5(void);
        !            28: extern char tst_addi_6(void);
        !            29: 
        !            30: extern char tst_addq_1(void);
        !            31: extern char tst_addq_2(void);
        !            32: extern char tst_addq_3(void);
        !            33: 
        !            34: extern char tst_addx_1(void);
        !            35: extern char tst_addx_2(void);
        !            36: 
        !            37: extern char tst_shift_1(void);
        !            38: extern char tst_shift_2(void);
        !            39: extern char tst_shift_3(void);
        !            40: extern char tst_shift_4(void);
        !            41: extern char tst_shift_5(void);
        !            42: extern char tst_shift_6(void);
        !            43: extern char tst_shift_7(void);
        !            44: extern char tst_shift_8(void);
        !            45: 
        !            46: struct test
        !            47: {
        !            48:        char *name;
        !            49:        char (*testfunc)(void);
        !            50: };
        !            51: 
        !            52: struct test tests[] =
        !            53: {
        !            54:        { "abcd 1", tst_abcd_1 },
        !            55:        { "abcd 2", tst_abcd_2 },
        !            56:        { "abcd 3", tst_abcd_3 },
        !            57:        { "abcd 4", tst_abcd_4 },
        !            58: 
        !            59:        { "add 1", tst_add_1 },
        !            60:        { "add 2", tst_add_2 },
        !            61:        { "add 3", tst_add_3 },
        !            62:        { "add 4", tst_add_4 },
        !            63:        { "add 5", tst_add_5 },
        !            64:        { "add 6", tst_add_6 },
        !            65:        { "add 7", tst_add_7 },
        !            66: 
        !            67:        { "addi 1", tst_addi_1 },
        !            68:        { "addi 2", tst_addi_2 },
        !            69:        { "addi 3", tst_addi_3 },
        !            70:        { "addi 4", tst_addi_4 },
        !            71:        { "addi 5", tst_addi_5 },
        !            72:        { "addi 6", tst_addi_6 },
        !            73: 
        !            74:        { "addq 1", tst_addq_1 },
        !            75:        { "addq 2", tst_addq_2 },
        !            76:        { "addq 3", tst_addq_3 },
        !            77: 
        !            78:        { "addx 1", tst_addx_1 },
        !            79:        { "addx 2", tst_addx_2 },
        !            80: 
        !            81:        { "shift 1", tst_shift_1 },
        !            82:        { "shift 2", tst_shift_2 },
        !            83:        { "shift 3", tst_shift_3 },
        !            84:        { "shift 4", tst_shift_4 },
        !            85:        { "shift 5", tst_shift_5 },
        !            86:        { "shift 6", tst_shift_6 },
        !            87:        { "shift 7", tst_shift_7 },
        !            88:        { "shift 8", tst_shift_8 },
        !            89: 
        !            90:        { 0L, 0L }
        !            91: };
        !            92: 
        !            93: int main()
        !            94: {
        !            95:        int failures = 0;
        !            96:        int idx;
        !            97: 
        !            98:        for (idx = 0; tests[idx].name != 0L; idx++)
        !            99:        {
        !           100:                Cconws("Test '");
        !           101:                Cconws(tests[idx].name);
        !           102:                Cconws("'\t: ");
        !           103:                if (tests[idx].testfunc() != 0)
        !           104:                {
        !           105:                        Cconws("FAILED\n");
        !           106:                        failures++;
        !           107:                }
        !           108:                else
        !           109:                {
        !           110:                        Cconws("OK\n");
        !           111:                }
        !           112:        }
        !           113: 
        !           114:        // Crawcin();
        !           115: 
        !           116:        return !(failures == 0);
        !           117: }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.