Annotation of cci/d/dmp4/sched.c, revision 1.1

1.1     ! root        1: 
        !             2: #include "dmp_defs.h"
        !             3: 
        !             4: 
        !             5: 
        !             6: /*************************************************************************
        !             7: *
        !             8: *   SCHEDULE THE ADDRESSING / DEMAND PAGING TESTS FOR AN INSTRUCTION
        !             9: *
        !            10: *************************************************************************/
        !            11: sched_test( test_index )
        !            12: int test_index;
        !            13: {
        !            14:        exp_event = FALSE;              /* clear event expected flag      */
        !            15:        force_loop = FALSE;             /* clear the force a loop flag    */
        !            16:        unexp_event_ret = FALSE;        /* clear unexpected event return  */
        !            17: /*
        !            18:  * get the information about this instruction 
        !            19: */
        !            20:        op_code    =   inst_tbl[ test_index ].inst_code;
        !            21:        op_name    =   inst_tbl[ test_index ].name;
        !            22:        precision  =   inst_tbl[ test_index ].precision;
        !            23:        no_ops     =   inst_tbl[ test_index ].no_operands;
        !            24:        op_type    =   inst_tbl[ test_index ].type;
        !            25:        data_ptr   =   inst_tbl[ test_index ].data;
        !            26:        test_ptr   =   inst_tbl[ test_index ].test_routine;
        !            27:        max_index  =  *inst_tbl[ test_index ].no_patterns;
        !            28: /*
        !            29:  * if we're using the "no-fpp" wcs the instruction might be emulated
        !            30: */
        !            31:        if( no_fpp_wcs ) 
        !            32:             emulated_inst = inst_tbl[ test_index ].emulation_flg;
        !            33:        else 
        !            34:             emulated_inst = FALSE;
        !            35: /*
        !            36:  * set the accumulator type flags based on the instruction type
        !            37: */
        !            38:        if( precision == SGL ) {
        !            39:            acc_ld_size = SGL;          /* load a sgl operand  */
        !            40:            acc_st_size = SGL;          /* store a sgl operand */
        !            41:        } else {
        !            42:            acc_ld_size = DBL;          /* load a dbl operand  */
        !            43:            acc_st_size = DBL;          /* store a dbl operand */
        !            44:        }
        !            45:        if( op_code == CVDF_OP_CODE )
        !            46:            acc_st_size = SGL;          /* store a sgl operand */
        !            47: /*
        !            48:  * set the operand type flags based on the instruction type
        !            49: */
        !            50:        if( (op_code == LDFD_OP_CODE) ||
        !            51:            (op_code == CVLD_OP_CODE) )
        !            52:             s_to_d = TRUE;             /* set sgl-to-dbl conversion flag */
        !            53:         else
        !            54:             s_to_d = FALSE;            /* reset sgl-to-dbl conversion flag */
        !            55:        if( op_code == CVDL_OP_CODE )
        !            56:             d_to_s = TRUE;             /* set dbl-to-sgl conversion flag */
        !            57:         else
        !            58:             d_to_s = FALSE;            /* reset dbl-to-sgl conversion flag */
        !            59:        if( s_to_d || d_to_s || (precision == SGL) )
        !            60:               sgl_op = TRUE;           /* set sgl-operand flag */
        !            61:         else
        !            62:               sgl_op = FALSE;          /* reset sgl-operand flag */
        !            63: /*
        !            64:  *  Now go out there and test 'em
        !            65: */
        !            66:        test_inst();                    /* test the instruction */
        !            67: }
        !            68: 
        !            69: 
        !            70: 

unix.superglobalmegacorp.com

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