Annotation of cci/d/macro4/cvdf.lst, revision 1.1

1.1     ! root        1:    1  00000000                                  LL0:
        !             2:    2  00000000                                         .data
        !             3:    3  000006b4 *                                       .text
        !             4:    4  00000000                                         .align  1
        !             5:    5  00000000                                         .globl  _cvdf
        !             6:    6  00000000                                  _cvdf:
        !             7:    7  0001E6F0    0000                                 .word   L215
        !             8:    8  0001E6F2                                   # 
        !             9:    9  0001E6F2                                   # #include "fpp_defs.h"
        !            10:   10  0001E6F2                                   # 
        !            11:   11  0001E6F2                                   # 
        !            12:   12  0001E6F2                                   # /*****************************************************************************
        !            13:   13  0001E6F2                                   # *
        !            14:   14  0001E6F2                                   # *       CVDF - SINGLE PRECISION FLOATING POINT CONVERT LONG TO FLOAT TEST
        !            15:   15  0001E6F2                                   # *
        !            16:   16  0001E6F2                                   # *****************************************************************************/
        !            17:   17  0001E6F2                                   # cvdf()
        !            18:   18  0001E6F2                                   # {
        !            19:   19  0001E6F2    11 3a                                jbr     L217
        !            20:   20  0001E6F4                                  L218:
        !            21:   21  0001E6F4                                   #         asm(".globl _cvdf_t");
        !            22:   22  0001E6F4                                  .globl _cvdf_t
        !            23:   23  0001E6F4                                   #         asm("_cvdf_t:");                       /* entry address              */
        !            24:   24  0001E6F4                                  _cvdf_t:
        !            25:   25  0001E6F4                                   #         if( ( cycle == 1 ) && ( prt_hdrs ) )   /* print headers on 1st pass  */
        !            26:   26  0001E6F4    1d effffffff6 01                     cmpl    _cycle,$1
        !            27:   27  0001E6FB    21 15                                jneq    L219
        !            28:   28  0001E6FD    5d efffffffed                        tstl    _prt_hdrs
        !            29:   29  0001E703    31 0d                                jeql    L219
        !            30:   30  0001E705                                   #            writes("\n CVDF");
        !            31:   31  0001E705                                         .data   1
        !            32:   32  000006b4 *                                L221:
        !            33:   33  000006b4 *  0A204356444600                       .ascii  "\12 CVDF\0"
        !            34:   34  000006bb *                                       .text
        !            35:   35  0001E705    dd 8f000006b4                        pushl   $L221
        !            36:   36  0001E70B    fe 08 efffffffde                     callf   $8,_writes
        !            37:   37  0001E712                                   #         cvdf_1();                              /* load through a register    */
        !            38:   38  0001E712                                  L219:
        !            39:   39  0001E712    fe 04 ef00000017                     callf   $4,_cvdf_1
        !            40:   40  0001E719                                   #         cvdf_2();                              /* register stability         */
        !            41:   41  0001E719    fe 04 ef0000017e                     callf   $4,_cvdf_2
        !            42:   42  0001E720                                   #         cvdf_3();                              /* PSL stability test         */
        !            43:   43  0001E720    fe 04 ef00000343                     callf   $4,_cvdf_3
        !            44:   44  0001E727                                   #         asm("jmp *return");                    /* return to the test monitor */
        !            45:   45  0001E727    71 ffffffffc3                 jmp *return
        !            46:   46  0001E72D                                   # }
        !            47:   47  0001E72D    40                                   ret#2
        !            48:   48  0001E72E                                         .set    L215,0x0
        !            49:   49  0001E72E                                  L217:
        !            50:   50  0001E72E    11 c4                                jbr     L218
        !            51:   51  0001E730                                         .data
        !            52:   52  000006b4 *                                       .text
        !            53:   53  0001E730                                         .align  1
        !            54:   54  0001E730                                         .globl  _cvdf_1
        !            55:   55  0001E730                                  _cvdf_1:
        !            56:   56  0001E730    0000                                 .word   L225
        !            57:   57  0001E732                                   #  
        !            58:   58  0001E732                                   # 
        !            59:   59  0001E732                                   # 
        !            60:   60  0001E732                                   # /************************************************************************
        !            61:   61  0001E732                                   # *
        !            62:   62  0001E732                                   # *               SUBTEST 1
        !            63:   63  0001E732                                   # *
        !            64:   64  0001E732                                   # ************************************************************************/
        !            65:   65  0001E732                                   # cvdf_1() 
        !            66:   66  0001E732                                   # {
        !            67:   67  0001E732    13 0166                              jbr     L227
        !            68:   68  0001E735                                  L228:
        !            69:   69  0001E735                                   #         force_loop = FALSE;
        !            70:   70  0001E735    4d efffffffb5                        clrl    _force_loop
        !            71:   71  0001E73B                                   #         subtest = 1;
        !            72:   72  0001E73B    0d 01 efffffffae                     movl    $1,_subtest
        !            73:   73  0001E742                                   #         index = 0;
        !            74:   74  0001E742    4d efffffffa8                        clrl    _index
        !            75:   75  0001E748                                   #         do {
        !            76:   76  0001E748                                  L231:
        !            77:   77  0001E748                                   #              dbl_ld_acc   = cvdf_1_data[index].ld;   /* get the operand     */
        !            78:   78  0001E748    5c 0c efffffffa1 50                  mull3   $12,_index,r0
        !            79:   79  0001E750    0c 8f00000000 50                     addl2   $_cvdf_1_data,r0
        !            80:   80  0001E757    0d a004 efffffff95                   movl    4(r0),_dbl_ld_acc+4
        !            81:   81  0001E75F    0d 60 efffffff8a                     movl    (r0),_dbl_ld_acc
        !            82:   82  0001E766                                   #              sgl_expected = cvdf_1_data[index].exp;  /* get expected result */
        !            83:   83  0001E766    5c 0c efffffff83 50                  mull3   $12,_index,r0
        !            84:   84  0001E76E    0d e000000008 efffffff77             movl    _cvdf_1_data+8(r0),_sgl_expected
        !            85:   85  0001E779                                   #          if( (dbl_ld_acc.m & 0x7f800000) ) {
        !            86:   86  0001E779    3d 8f7f800000 efffffff6c             bitl    $2139095040,_dbl_ld_acc
        !            87:   87  0001E784    31 1e                                jeql    L232
        !            88:   88  0001E786                                   #               sgl_expected = dbl_ld_acc.m;
        !            89:   89  0001E786    0d efffffff64 efffffff5f             movl    _dbl_ld_acc,_sgl_expected
        !            90:   90  0001E791                                   #               if( dbl_ld_acc.l & 0x80000000)
        !            91:   91  0001E791    3d 8f80000000 efffffff58             bitl    $-2147483648,_dbl_ld_acc+4
        !            92:   92  0001E79C    31 06                                jeql    L233
        !            93:   93  0001E79E                                   #                   sgl_expected++;
        !            94:   94  0001E79E    6d efffffff4c                        incl    _sgl_expected
        !            95:   95  0001E7A4                                   #          }
        !            96:   96  0001E7A4                                  L233:
        !            97:   97  0001E7A4                                   # /*
        !            98:   98  0001E7A4                                   #  * If LOOP ON ERROR is set, this is the loop for this subtest.
        !            99:   99  0001E7A4                                   #  * The force loop flag is set after the first error.
        !           100:  100  0001E7A4                                   # */
        !           101:  101  0001E7A4                                   #              asm("_cvdf_1_lp1:");
        !           102:  102  0001E7A4                                  L232:
        !           103:  103  0001E7A4                                  _cvdf_1_lp1:
        !           104:  104  0001E7A4                                   #              asm("movl _dbl_ld_acc,r4");       /* get the value to convert */
        !           105:  105  0001E7A4    0d efffffff46 54              movl _dbl_ld_acc,r4
        !           106:  106  0001E7AB                                   #              asm("movl _dbl_ld_acc+4,r5");
        !           107:  107  0001E7AB    0d efffffff43 55              movl _dbl_ld_acc+4,r5
        !           108:  108  0001E7B2                                   #              asm("ldd r4");                     /* load the data            */
        !           109:  109  0001E7B2    07 54                         ldd r4
        !           110:  110  0001E7B4                                   #              asm("cvdf");                       /* convert the value        */
        !           111:  111  0001E7B4    a6                            cvdf
        !           112:  112  0001E7B5                                   #              asm("stf r8");                     /* store the result         */
        !           113:  113  0001E7B5    26 58                         stf r8
        !           114:  114  0001E7B7                                   #              if( force_loop )
        !           115:  115  0001E7B7    5d efffffff33                        tstl    _force_loop
        !           116:  116  0001E7BD    31 02                                jeql    L234
        !           117:  117  0001E7BF                                   #                   asm("brb _cvdf_1_lp1");;      /* loop on the error       */
        !           118:  118  0001E7BF    11 e3                         brb _cvdf_1_lp1
        !           119:  119  0001E7C1                                  L234:
        !           120:  120  0001E7C1                                   # /* 
        !           121:  121  0001E7C1                                   #  * end error loop - test the results
        !           122:  122  0001E7C1                                   # */
        !           123:  123  0001E7C1                                   #              asm("movl r8,_sgl_st_acc");        /* move result to cache   */
        !           124:  124  0001E7C1    0d 58 efffffff28              movl r8,_sgl_st_acc
        !           125:  125  0001E7C8                                   #              if( sgl_st_acc != sgl_expected ) { /* COMPARE the values     */
        !           126:  126  0001E7C8    1d efffffff22 efffffff1d             cmpl    _sgl_st_acc,_sgl_expected
        !           127:  127  0001E7D3    21 03 13 00a9                        jeql    L235
        !           128:  128  0001E7D8                                   #                    errcnt++;                    /* bump the error count   */
        !           129:  129  0001E7D8    6d efffffff12                        incl    _errcnt
        !           130:  130  0001E7DE                                   #                    if( prt_error ) {
        !           131:  131  0001E7DE    5d efffffff0c                        tstl    _prt_error
        !           132:  132  0001E7E4    31 78                                jeql    L236
        !           133:  133  0001E7E6                                   #                         writes(" \n");      /* start a new print line */
        !           134:  134  0001E7E6                                         .data   1
        !           135:  135  000006bb *                                L237:
        !           136:  136  000006bb *  200A00                               .ascii  " \12\0"
        !           137:  137  000006be *                                       .text
        !           138:  138  0001E7E6    dd 8f000006bb                        pushl   $L237
        !           139:  139  0001E7EC    fe 08 effffffefd                     callf   $8,_writes
        !           140:  140  0001E7F3                                   #                         writes("cycle: ");
        !           141:  141  0001E7F3                                         .data   1
        !           142:  142  000006be *                                L238:
        !           143:  143  000006be *  6379636C653A2000                     .ascii  "cycle: \0"
        !           144:  144  000006c6 *                                       .text
        !           145:  145  0001E7F3    dd 8f000006be                        pushl   $L238
        !           146:  146  0001E7F9    fe 08 effffffef0                     callf   $8,_writes
        !           147:  147  0001E800                                   #                         writed( cycle );
        !           148:  148  0001E800    dd effffffeea                        pushl   _cycle
        !           149:  149  0001E806    fe 08 effffffee3                     callf   $8,_writed
        !           150:  150  0001E80D                                   #                         writes("  CVDF test ");
        !           151:  151  0001E80D                                         .data   1
        !           152:  152  000006c6 *                                L240:
        !           153:  153  000006c6 *  2020435644462074657374200            .ascii  "  CVDF test \0"
        !           154:                   0
        !           155:  154  000006d3 *                                       .text
        !           156:  155  0001E80D    dd 8f000006c6                        pushl   $L240
        !           157:  156  0001E813    fe 08 effffffed6                     callf   $8,_writes
        !           158:  157  0001E81A                                   #                     writed( test_no );
        !           159:  158  0001E81A    dd effffffed0                        pushl   _test_no
        !           160:  159  0001E820    fe 08 effffffec9                     callf   $8,_writed
        !           161:  160  0001E827                                   #                     writes(", subtest 1 (Reg. Data) - BAD FINAL ACC\n");
        !           162:  161  0001E827                                         .data   1
        !           163:  162  000006d3 *                                L241:
        !           164:  163  000006d3 *  2C20737562746573742031202            .ascii  ", subtest 1 (Reg. Data) - BAD FINAL ACC\12\0"
        !           165:                   85265672E204461746129202D
        !           166:                   204241442046494E414C20414
        !           167:                   3430A00
        !           168:  164  000006fc *                                       .text
        !           169:  165  0001E827    dd 8f000006d3                        pushl   $L241
        !           170:  166  0001E82D    fe 08 effffffebc                     callf   $8,_writes
        !           171:  167  0001E834                                   #                         print_cvdf_data();
        !           172:  168  0001E834    fe 04 ef00000411                     callf   $4,_print_cvdf_data
        !           173:  169  0001E83B                                   #     writes("                               Acc expected = ");
        !           174:  170  0001E83B                                         .data   1
        !           175:  171  000006fc *                                L243:
        !           176:  172  000006fc *  2020202020202020202020202            .ascii  "                               Acc expected = \0"
        !           177:                   0202020202020202020202020
        !           178:                   2020202020204163632065787
        !           179:                   06563746564203D2000
        !           180:  173  0000072b *                                       .text
        !           181:  174  0001E83B    dd 8f000006fc                        pushl   $L243
        !           182:  175  0001E841    fe 08 effffffea8                     callf   $8,_writes
        !           183:  176  0001E848                                   #                         write32h( sgl_expected );
        !           184:  177  0001E848    dd effffffea2                        pushl   _sgl_expected
        !           185:  178  0001E84E    fe 08 effffffe9b                     callf   $8,_write32h
        !           186:  179  0001E855                                   #                         writec('\n');
        !           187:  180  0001E855    dd 0a                                pushl   $10
        !           188:  181  0001E857    fe 08 effffffe92                     callf   $8,_writec
        !           189:  182  0001E85E                                   #                         }
        !           190:  183  0001E85E                                   #                    if( halt_flg ) 
        !           191:  184  0001E85E                                  L236:
        !           192:  185  0001E85E    5d effffffe8c                        tstl    _halt_flg
        !           193:  186  0001E864    31 09                                jeql    L246
        !           194:  187  0001E866                                   #                         cvdf_er_halt( BAD_ACC_HLT );    /* halt on the error */
        !           195:  188  0001E866    dd 01                                pushl   $1
        !           196:  189  0001E868    fe 08 ef00000451                     callf   $8,_cvdf_er_halt
        !           197:  190  0001E86F                                   #                    if( loop_on_err ) {
        !           198:  191  0001E86F                                  L246:
        !           199:  192  0001E86F    5d effffffe7b                        tstl    _loop_on_err
        !           200:  193  0001E875    31 0a                                jeql    L248
        !           201:  194  0001E877                                   #                         force_loop = TRUE;        /* set the force loop flag */
        !           202:  195  0001E877    0d 01 effffffe72                     movl    $1,_force_loop
        !           203:  196  0001E87E                                   #                         asm("brw _cvdf_1_lp1");;  /* and loop on the error   */
        !           204:  197  0001E87E    13 ff23                       brw _cvdf_1_lp1
        !           205:  198  0001E881                                   #                    }   /* end of loop on error */
        !           206:  199  0001E881                                   #              }   /* end of compare error */
        !           207:  200  0001E881                                  L248:
        !           208:  201  0001E881                                   #         }  while( index++ < max_cvdf_1_index ); /* end of WHILE loop */
        !           209:  202  0001E881                                  L235:
        !           210:  203  0001E881                                  L230:
        !           211:  204  0001E881    0d effffffe69 50                     movl    _index,r0
        !           212:  205  0001E888    6d effffffe62                        incl    _index
        !           213:  206  0001E88E    1d 50 effffffe5b                     cmpl    r0,_max_cvdf_1_index
        !           214:  207  0001E895    81 03 13 feae                        jlss    L231
        !           215:  208  0001E89A                                  L229:
        !           216:  209  0001E89A                                   # }  /* end of subtest 1 */
        !           217:  210  0001E89A    40                                   ret#2
        !           218:  211  0001E89B                                         .set    L225,0x0
        !           219:  212  0001E89B                                  L227:
        !           220:  213  0001E89B    13 fe97                              jbr     L228
        !           221:  214  0001E89E                                         .data
        !           222:  215  000006b4 *                                       .text
        !           223:  216  0001E89E                                         .align  1
        !           224:  217  0001E89E                                         .globl  _cvdf_2
        !           225:  218  0001E89E                                  _cvdf_2:
        !           226:  219  0001E89E    0000                                 .word   L249
        !           227:  220  0001E8A0                                   #  
        !           228:  221  0001E8A0                                   # 
        !           229:  222  0001E8A0                                   # 
        !           230:  223  0001E8A0                                   # /************************************************************************
        !           231:  224  0001E8A0                                   # *
        !           232:  225  0001E8A0                                   # *       SUBTEST 2 - Check for register corruption 
        !           233:  226  0001E8A0                                   # *
        !           234:  227  0001E8A0                                   # ************************************************************************/
        !           235:  228  0001E8A0                                   # cvdf_2() 
        !           236:  229  0001E8A0                                   # {
        !           237:  230  0001E8A0    13 01c3                              jbr     L251
        !           238:  231  0001E8A3                                  L252:
        !           239:  232  0001E8A3                                   #         force_loop = FALSE;                     /* clear force_loop flg */
        !           240:  233  0001E8A3    4d effffffe47                        clrl    _force_loop
        !           241:  234  0001E8A9                                   #         subtest = 2;
        !           242:  235  0001E8A9    0d 02 effffffe40                     movl    $2,_subtest
        !           243:  236  0001E8B0                                   #         fill_reg_buf( load_regs );              /* get patterns for regs */
        !           244:  237  0001E8B0    dd 8f00000000                        pushl   $_load_regs
        !           245:  238  0001E8B6    fe 08 effffffe33                     callf   $8,_fill_reg_buf
        !           246:  239  0001E8BD                                   #         index = 0;
        !           247:  240  0001E8BD    4d effffffe2d                        clrl    _index
        !           248:  241  0001E8C3                                   #              dbl_ld_acc   = cvdf_1_data[index].ld;   /* get the operand     */
        !           249:  242  0001E8C3    5c 0c effffffe26 50                  mull3   $12,_index,r0
        !           250:  243  0001E8CB    0c 8f00000000 50                     addl2   $_cvdf_1_data,r0
        !           251:  244  0001E8D2    0d a004 effffffe1a                   movl    4(r0),_dbl_ld_acc+4
        !           252:  245  0001E8DA    0d 60 effffffe0f                     movl    (r0),_dbl_ld_acc
        !           253:  246  0001E8E1                                   #              sgl_expected = cvdf_1_data[index].exp;  /* get expected result */
        !           254:  247  0001E8E1    5c 0c effffffe08 50                  mull3   $12,_index,r0
        !           255:  248  0001E8E9    0d e000000008 effffffdfc             movl    _cvdf_1_data+8(r0),_sgl_expected
        !           256:  249  0001E8F4                                   # /*
        !           257:  250  0001E8F4                                   #  * If LOOP ON ERROR is set, this is the loop for this subtest.
        !           258:  251  0001E8F4                                   #  * The force loop flag is set after the first error.
        !           259:  252  0001E8F4                                   # */
        !           260:  253  0001E8F4                                   #         asm("_cvdf_2_lp1:");
        !           261:  254  0001E8F4                                  _cvdf_2_lp1:
        !           262:  255  0001E8F4                                   #         asm("ldd _dbl_ld_acc");                 /* load the data            */
        !           263:  256  0001E8F4    07 effffffdf6                 ldd _dbl_ld_acc
        !           264:  257  0001E8FA                                   #         asm("loadr $0x1fff,_load_regs");        /* load regs 0 - 12      */
        !           265:  258  0001E8FA    ab 891fff effffffded          loadr $0x1fff,_load_regs
        !           266:  259  0001E903                                   #         asm("nop");
        !           267:  260  0001E903    10                            nop
        !           268:  261  0001E904                                   #         asm("cvdf");                            /* convert the value     */
        !           269:  262  0001E904    a6                            cvdf
        !           270:  263  0001E905                                   #         asm("nop");
        !           271:  264  0001E905    10                            nop
        !           272:  265  0001E906                                   #         asm("storer $0x1fff,_store_regs");      /* store regs 0 - 12 */
        !           273:  266  0001E906    bb 891fff effffffde1          storer $0x1fff,_store_regs
        !           274:  267  0001E90F                                   #         if( force_loop )
        !           275:  268  0001E90F    5d effffffddb                        tstl    _force_loop
        !           276:  269  0001E915    31 02                                jeql    L254
        !           277:  270  0001E917                                   #              asm("brb _cvdf_2_lp1");;           /* loop on the error     */
        !           278:  271  0001E917    11 db                         brb _cvdf_2_lp1
        !           279:  272  0001E919                                  L254:
        !           280:  273  0001E919                                   # /*
        !           281:  274  0001E919                                   #  * Now compare the stored register values to those that were loaded
        !           282:  275  0001E919                                   # */
        !           283:  276  0001E919                                   #         index2 = 0;
        !           284:  277  0001E919    4d effffffdd1                        clrl    _index2
        !           285:  278  0001E91F                                   #         while( (load_regs[index2] == store_regs[index2]) && (index2 < 13) )
        !           286:  279  0001E91F                                  L255:
        !           287:  280  0001E91F    0d effffffdcb 50                     movl    _index2,r0
        !           288:  281  0001E926    0d effffffdc4 51                     movl    _index2,r1
        !           289:  282  0001E92D    1d 40effffffdbc                      cmpl    _load_regs[r0],_store_regs[r1]
        !           290:                   41effffffdb6 
        !           291:  283  0001E93A    21 11                                jneq    L256
        !           292:  284  0001E93C    1d effffffdae 0d                     cmpl    _index2,$13
        !           293:  285  0001E943    81 08                                jgeq    L256
        !           294:  286  0001E945                                   #              index2++;                          /* check reg values        */
        !           295:  287  0001E945    6d effffffda5                        incl    _index2
        !           296:  288  0001E94B    11 d2                                jbr     L255
        !           297:  289  0001E94D                                  L256:
        !           298:  290  0001E94D                                   #         if( index2 < 13 ) {                     /* error if index2 < 13    */
        !           299:  291  0001E94D    1d effffffd9d 0d                     cmpl    _index2,$13
        !           300:  292  0001E954    91 03 13 00f4                        jgeq    L257
        !           301:  293  0001E959                                   #              errcnt++;                          /* bump the error count    */
        !           302:  294  0001E959    6d effffffd91                        incl    _errcnt
        !           303:  295  0001E95F                                   #              if( prt_error ) {
        !           304:  296  0001E95F    5d effffffd8b                        tstl    _prt_error
        !           305:  297  0001E965    21 03 13 00c0                        jeql    L258
        !           306:  298  0001E96A                                   #                   writes(" \n");           /* start a new print line  */
        !           307:  299  0001E96A                                         .data   1
        !           308:  300  0000072b *                                L259:
        !           309:  301  0000072b *  200A00                               .ascii  " \12\0"
        !           310:  302  0000072e *                                       .text
        !           311:  303  0001E96A    dd 8f0000072b                        pushl   $L259
        !           312:  304  0001E970    fe 08 effffffd79                     callf   $8,_writes
        !           313:  305  0001E977                                   #                   writes("cycle: ");
        !           314:  306  0001E977                                         .data   1
        !           315:  307  0000072e *                                L260:
        !           316:  308  0000072e *  6379636C653A2000                     .ascii  "cycle: \0"
        !           317:  309  00000736 *                                       .text
        !           318:  310  0001E977    dd 8f0000072e                        pushl   $L260
        !           319:  311  0001E97D    fe 08 effffffd6c                     callf   $8,_writes
        !           320:  312  0001E984                                   #                   writed( cycle );
        !           321:  313  0001E984    dd effffffd66                        pushl   _cycle
        !           322:  314  0001E98A    fe 08 effffffd5f                     callf   $8,_writed
        !           323:  315  0001E991                                   #                   writes("  CVDF test ");
        !           324:  316  0001E991                                         .data   1
        !           325:  317  00000736 *                                L261:
        !           326:  318  00000736 *  2020435644462074657374200            .ascii  "  CVDF test \0"
        !           327:                   0
        !           328:  319  00000743 *                                       .text
        !           329:  320  0001E991    dd 8f00000736                        pushl   $L261
        !           330:  321  0001E997    fe 08 effffffd52                     callf   $8,_writes
        !           331:  322  0001E99E                                   #               writed( test_no );
        !           332:  323  0001E99E    dd effffffd4c                        pushl   _test_no
        !           333:  324  0001E9A4    fe 08 effffffd45                     callf   $8,_writed
        !           334:  325  0001E9AB                                   #     writes(", subtest 2 - A REGISTER WAS MODIFIED\n");
        !           335:  326  0001E9AB                                         .data   1
        !           336:  327  00000743 *                                L262:
        !           337:  328  00000743 *  2C20737562746573742032202            .ascii  ", subtest 2 - A REGISTER WAS MODIFIED\12\0"
        !           338:                   D204120524547495354455220
        !           339:                   574153204D4F4449464945440
        !           340:                   A00
        !           341:  329  0000076a *                                       .text
        !           342:  330  0001E9AB    dd 8f00000743                        pushl   $L262
        !           343:  331  0001E9B1    fe 08 effffffd38                     callf   $8,_writes
        !           344:  332  0001E9B8                                   #                   print_cvdf_data();            /* print the operands      */
        !           345:  333  0001E9B8    fe 04 ef0000028d                     callf   $4,_print_cvdf_data
        !           346:  334  0001E9BF                                   #                   writes("register ");          /* print the information   */
        !           347:  335  0001E9BF                                         .data   1
        !           348:  336  0000076a *                                L263:
        !           349:  337  0000076a *  72656769737465722000                 .ascii  "register \0"
        !           350:  338  00000774 *                                       .text
        !           351:  339  0001E9BF    dd 8f0000076a                        pushl   $L263
        !           352:  340  0001E9C5    fe 08 effffffd24                     callf   $8,_writes
        !           353:  341  0001E9CC                                   #                   writed( index2 );             /*    about the corrupted  */
        !           354:  342  0001E9CC    dd effffffd1e                        pushl   _index2
        !           355:  343  0001E9D2    fe 08 effffffd17                     callf   $8,_writed
        !           356:  344  0001E9D9                                   #                   writes(" = ");                /*        register         */
        !           357:  345  0001E9D9                                         .data   1
        !           358:  346  00000774 *                                L264:
        !           359:  347  00000774 *  203D2000                             .ascii  " = \0"
        !           360:  348  00000778 *                                       .text
        !           361:  349  0001E9D9    dd 8f00000774                        pushl   $L264
        !           362:  350  0001E9DF    fe 08 effffffd0a                     callf   $8,_writes
        !           363:  351  0001E9E6                                   #                   write32h( store_regs[index2] );
        !           364:  352  0001E9E6    0d effffffd04 50                     movl    _index2,r0
        !           365:  353  0001E9ED    dd 40effffffcfc                      pushl   _store_regs[r0]
        !           366:  354  0001E9F4    fe 08 effffffcf5                     callf   $8,_write32h
        !           367:  355  0001E9FB                                   #                   writes(",  should be = ");
        !           368:  356  0001E9FB                                         .data   1
        !           369:  357  00000778 *                                L265:
        !           370:  358  00000778 *  2C202073686F756C642062652            .ascii  ",  should be = \0"
        !           371:                   03D2000
        !           372:  359  00000788 *                                       .text
        !           373:  360  0001E9FB    dd 8f00000778                        pushl   $L265
        !           374:  361  0001EA01    fe 08 effffffce8                     callf   $8,_writes
        !           375:  362  0001EA08                                   #                   write32h( load_regs[index2] );
        !           376:  363  0001EA08    0d effffffce2 50                     movl    _index2,r0
        !           377:  364  0001EA0F    dd 40effffffcda                      pushl   _load_regs[r0]
        !           378:  365  0001EA16    fe 08 effffffcd3                     callf   $8,_write32h
        !           379:  366  0001EA1D                                   #                   writes("\n");
        !           380:  367  0001EA1D                                         .data   1
        !           381:  368  00000788 *                                L266:
        !           382:  369  00000788 *  0A00                                 .ascii  "\12\0"
        !           383:  370  0000078a *                                       .text
        !           384:  371  0001EA1D    dd 8f00000788                        pushl   $L266
        !           385:  372  0001EA23    fe 08 effffffcc6                     callf   $8,_writes
        !           386:  373  0001EA2A                                   #              }
        !           387:  374  0001EA2A                                   #              if( halt_flg )   
        !           388:  375  0001EA2A                                  L258:
        !           389:  376  0001EA2A    5d effffffcc0                        tstl    _halt_flg
        !           390:  377  0001EA30    31 09                                jeql    L267
        !           391:  378  0001EA32                                   #                   cvdf_er_halt( BAD_REG_HLT );  /* halt on the error      */
        !           392:  379  0001EA32    dd 02                                pushl   $2
        !           393:  380  0001EA34    fe 08 ef00000285                     callf   $8,_cvdf_er_halt
        !           394:  381  0001EA3B                                   #              if( loop_on_err ) {
        !           395:  382  0001EA3B                                  L267:
        !           396:  383  0001EA3B    5d effffffcaf                        tstl    _loop_on_err
        !           397:  384  0001EA41    31 0a                                jeql    L268
        !           398:  385  0001EA43                                   #                   force_loop = TRUE;        /* set the force loop flag */
        !           399:  386  0001EA43    0d 01 effffffca6                     movl    $1,_force_loop
        !           400:  387  0001EA4A                                   #                   asm("brw _cvdf_2_lp1");;  /* and loop on the error   */
        !           401:  388  0001EA4A    13 fea7                       brw _cvdf_2_lp1
        !           402:  389  0001EA4D                                   #              }   /* end of loop on error */
        !           403:  390  0001EA4D                                   #         } while( index++ < max_cvdf_1_index ); /* end of reg corruption error */
        !           404:  391  0001EA4D                                  L268:
        !           405:  392  0001EA4D                                  L257:
        !           406:  393  0001EA4D                                  L269:
        !           407:  394  0001EA4D    0d effffffc9d 50                     movl    _index,r0
        !           408:  395  0001EA54    6d effffffc96                        incl    _index
        !           409:  396  0001EA5A    1d 50 effffffc8f                     cmpl    r0,_max_cvdf_1_index
        !           410:  397  0001EA61    81 02                                jgeq    L270
        !           411:  398  0001EA63    11 e8                                jbr     L269
        !           412:  399  0001EA65                                  L270:
        !           413:  400  0001EA65                                   # }  /* end of subtest 2 */
        !           414:  401  0001EA65    40                                   ret#2
        !           415:  402  0001EA66                                         .set    L249,0x0
        !           416:  403  0001EA66                                  L251:
        !           417:  404  0001EA66    13 fe3a                              jbr     L252
        !           418:  405  0001EA69                                         .data
        !           419:  406  000006b4 *                                       .text
        !           420:  407  0001EA69    00                                   .align  1
        !           421:  408  0001EA6A                                         .globl  _cvdf_3
        !           422:  409  0001EA6A                                  _cvdf_3:
        !           423:  410  0001EA6A    0000                                 .word   L271
        !           424:  411  0001EA6C                                   #   
        !           425:  412  0001EA6C                                   # 
        !           426:  413  0001EA6C                                   # 
        !           427:  414  0001EA6C                                   # /************************************************************************
        !           428:  415  0001EA6C                                   # *
        !           429:  416  0001EA6C                                   # *       SUBTEST 3 - Check for PSL corruption 
        !           430:  417  0001EA6C                                   # *
        !           431:  418  0001EA6C                                   # ************************************************************************/
        !           432:  419  0001EA6C                                   # cvdf_3() 
        !           433:  420  0001EA6C                                   # {
        !           434:  421  0001EA6C    13 01da                              jbr     L273
        !           435:  422  0001EA6F                                  L274:
        !           436:  423  0001EA6F                                   #         force_loop = FALSE;                     /* clear force_loop flg */
        !           437:  424  0001EA6F    4d effffffc7b                        clrl    _force_loop
        !           438:  425  0001EA75                                   #         subtest = 3;
        !           439:  426  0001EA75    0d 03 effffffc74                     movl    $3,_subtest
        !           440:  427  0001EA7C                                   #         fill_reg_buf( load_regs );              /* get patterns for regs */
        !           441:  428  0001EA7C    dd 8f00000000                        pushl   $_load_regs
        !           442:  429  0001EA82    fe 08 effffffc67                     callf   $8,_fill_reg_buf
        !           443:  430  0001EA89                                   #         for( index = 0; index < 3; index++ ) {
        !           444:  431  0001EA89    4d effffffc61                        clrl    _index
        !           445:  432  0001EA8F                                  L277:
        !           446:  433  0001EA8F    1d effffffc5b 03                     cmpl    _index,$3
        !           447:  434  0001EA96    91 03 13 0195                        jgeq    L276
        !           448:  435  0001EA9B                                   #              dbl_ld_acc   = cvdf_1_data[index].ld;   /* get the operand     */
        !           449:  436  0001EA9B    5c 0c effffffc4e 50                  mull3   $12,_index,r0
        !           450:  437  0001EAA3    0c 8f00000000 50                     addl2   $_cvdf_1_data,r0
        !           451:  438  0001EAAA    0d a004 effffffc42                   movl    4(r0),_dbl_ld_acc+4
        !           452:  439  0001EAB2    0d 60 effffffc37                     movl    (r0),_dbl_ld_acc
        !           453:  440  0001EAB9                                   #              sgl_expected = cvdf_1_data[index].exp;  /* get expected result */
        !           454:  441  0001EAB9    5c 0c effffffc30 50                  mull3   $12,_index,r0
        !           455:  442  0001EAC1    0d e000000008 effffffc24             movl    _cvdf_1_data+8(r0),_sgl_expected
        !           456:  443  0001EACC                                   #              status_index = 0;
        !           457:  444  0001EACC    4d effffffc1e                        clrl    _status_index
        !           458:  445  0001EAD2                                   #              do {
        !           459:  446  0001EAD2                                  L280:
        !           460:  447  0001EAD2                                   #                   sgl_dummy1 = status_array[status_index]; /* +, -, 0 status */
        !           461:  448  0001EAD2    0d effffffc18 50                     movl    _status_index,r0
        !           462:  449  0001EAD9    0d 40effffffc10                      movl    _status_array[r0],_sgl_dummy1
        !           463:                   effffffc0b 
        !           464:  450  0001EAE5                                   # /*
        !           465:  451  0001EAE5                                   #  * If LOOP ON ERROR is set, this is the loop for this subtest.
        !           466:  452  0001EAE5                                   #  * The force loop flag is set after the first error.
        !           467:  453  0001EAE5                                   # */
        !           468:  454  0001EAE5                                   #                   asm("_cvdf_3_lp1:");
        !           469:  455  0001EAE5                                  _cvdf_3_lp1:
        !           470:  456  0001EAE5                                   #                   asm("ldd _dbl_ld_acc");       /* load the data         */
        !           471:  457  0001EAE5    07 effffffc05                 ldd _dbl_ld_acc
        !           472:  458  0001EAEB                                   #                   asm("tstl _sgl_dummy1");  /* set the PSL status    */
        !           473:  459  0001EAEB    5d effffffbff                 tstl _sgl_dummy1
        !           474:  460  0001EAF1                                   #               asm("movpsl _init_psl");      /* save the initial PSL  */
        !           475:  461  0001EAF1    cd effffffbf9                 movpsl _init_psl
        !           476:  462  0001EAF7                                   #                   asm("nop");
        !           477:  463  0001EAF7    10                            nop
        !           478:  464  0001EAF8                                   #                   asm("cvdf");              /* convert the value     */
        !           479:  465  0001EAF8    a6                            cvdf
        !           480:  466  0001EAF9                                   #                   asm("nop");
        !           481:  467  0001EAF9    10                            nop
        !           482:  468  0001EAFA                                   #                   asm("movpsl _psl_val");       /* save the final PSL    */
        !           483:  469  0001EAFA    cd effffffbf0                 movpsl _psl_val
        !           484:  470  0001EB00                                   #                   if( force_loop )
        !           485:  471  0001EB00    5d effffffbea                        tstl    _force_loop
        !           486:  472  0001EB06    31 02                                jeql    L281
        !           487:  473  0001EB08                                   #                        asm("brb _cvdf_3_lp1");; /* loop on the error     */
        !           488:  474  0001EB08    11 db                         brb _cvdf_3_lp1
        !           489:  475  0001EB0A                                  L281:
        !           490:  476  0001EB0A                                   # /*
        !           491:  477  0001EB0A                                   #  * Now compare the final PSL to the initial PSL -they should be the same
        !           492:  478  0001EB0A                                   # */
        !           493:  479  0001EB0A                                   #                   exp_psl = init_psl;
        !           494:  480  0001EB0A    0d effffffbe0 effffffbdb             movl    _init_psl,_exp_psl
        !           495:  481  0001EB15                                   #                   exp_psl &= 0xffffff7f;
        !           496:  482  0001EB15    ac 89ff7f effffffbd2                 andl2   $-129,_exp_psl
        !           497:  483  0001EB1E                                   #                   if( psl_val != exp_psl ) {
        !           498:  484  0001EB1E    1d effffffbcc effffffbc7             cmpl    _psl_val,_exp_psl
        !           499:  485  0001EB29    21 03 13 00e4                        jeql    L282
        !           500:  486  0001EB2E                                   #                        errcnt++;            /* bump the error count  */
        !           501:  487  0001EB2E    6d effffffbbc                        incl    _errcnt
        !           502:  488  0001EB34                                   #                        if( prt_error ) {
        !           503:  489  0001EB34    5d effffffbb6                        tstl    _prt_error
        !           504:  490  0001EB3A    21 03 13 00b0                        jeql    L283
        !           505:  491  0001EB3F                                   #                             writes(" \n");      /* start a new line */
        !           506:  492  0001EB3F                                         .data   1
        !           507:  493  0000078a *                                L284:
        !           508:  494  0000078a *  200A00                               .ascii  " \12\0"
        !           509:  495  0000078d *                                       .text
        !           510:  496  0001EB3F    dd 8f0000078a                        pushl   $L284
        !           511:  497  0001EB45    fe 08 effffffba4                     callf   $8,_writes
        !           512:  498  0001EB4C                                   #                             writes("cycle: ");
        !           513:  499  0001EB4C                                         .data   1
        !           514:  500  0000078d *                                L285:
        !           515:  501  0000078d *  6379636C653A2000                     .ascii  "cycle: \0"
        !           516:  502  00000795 *                                       .text
        !           517:  503  0001EB4C    dd 8f0000078d                        pushl   $L285
        !           518:  504  0001EB52    fe 08 effffffb97                     callf   $8,_writes
        !           519:  505  0001EB59                                   #                             writed( cycle );
        !           520:  506  0001EB59    dd effffffb91                        pushl   _cycle
        !           521:  507  0001EB5F    fe 08 effffffb8a                     callf   $8,_writed
        !           522:  508  0001EB66                                   #                             writes("  CVDF test ");
        !           523:  509  0001EB66                                         .data   1
        !           524:  510  00000795 *                                L286:
        !           525:  511  00000795 *  2020435644462074657374200            .ascii  "  CVDF test \0"
        !           526:                   0
        !           527:  512  000007a2 *                                       .text
        !           528:  513  0001EB66    dd 8f00000795                        pushl   $L286
        !           529:  514  0001EB6C    fe 08 effffffb7d                     callf   $8,_writes
        !           530:  515  0001EB73                                   #                         writed( test_no );
        !           531:  516  0001EB73    dd effffffb77                        pushl   _test_no
        !           532:  517  0001EB79    fe 08 effffffb70                     callf   $8,_writed
        !           533:  518  0001EB80                                   #          writes(", subtest 3  - INCORRECT FINAL PSL\n");
        !           534:  519  0001EB80                                         .data   1
        !           535:  520  000007a2 *                                L287:
        !           536:  521  000007a2 *  2C20737562746573742033202            .ascii  ", subtest 3  - INCORRECT FINAL PSL\12\0"
        !           537:                   02D20494E434F525245435420
        !           538:                   46494E414C2050534C0A00
        !           539:  522  000007c6 *                                       .text
        !           540:  523  0001EB80    dd 8f000007a2                        pushl   $L287
        !           541:  524  0001EB86    fe 08 effffffb63                     callf   $8,_writes
        !           542:  525  0001EB8D                                   #                             print_cvdf_data();       /* print the operands */
        !           543:  526  0001EB8D    fe 04 ef000000b8                     callf   $4,_print_cvdf_data
        !           544:  527  0001EB94                                   #                             writes("initial PSL = ");
        !           545:  528  0001EB94                                         .data   1
        !           546:  529  000007c6 *                                L288:
        !           547:  530  000007c6 *  696E697469616C2050534C203            .ascii  "initial PSL = \0"
        !           548:                   D2000
        !           549:  531  000007d5 *                                       .text
        !           550:  532  0001EB94    dd 8f000007c6                        pushl   $L288
        !           551:  533  0001EB9A    fe 08 effffffb4f                     callf   $8,_writes
        !           552:  534  0001EBA1                                   #                             write32h( init_psl );
        !           553:  535  0001EBA1    dd effffffb49                        pushl   _init_psl
        !           554:  536  0001EBA7    fe 08 effffffb42                     callf   $8,_write32h
        !           555:  537  0001EBAE                                   #                             writes(",  final PSL = ");
        !           556:  538  0001EBAE                                         .data   1
        !           557:  539  000007d5 *                                L289:
        !           558:  540  000007d5 *  2C202066696E616C2050534C2            .ascii  ",  final PSL = \0"
        !           559:                   03D2000
        !           560:  541  000007e5 *                                       .text
        !           561:  542  0001EBAE    dd 8f000007d5                        pushl   $L289
        !           562:  543  0001EBB4    fe 08 effffffb35                     callf   $8,_writes
        !           563:  544  0001EBBB                                   #                             write32h( psl_val );
        !           564:  545  0001EBBB    dd effffffb2f                        pushl   _psl_val
        !           565:  546  0001EBC1    fe 08 effffffb28                     callf   $8,_write32h
        !           566:  547  0001EBC8                                   #                             writes(",  expected PSL = ");
        !           567:  548  0001EBC8                                         .data   1
        !           568:  549  000007e5 *                                L290:
        !           569:  550  000007e5 *  2C20206578706563746564205            .ascii  ",  expected PSL = \0"
        !           570:                   0534C203D2000
        !           571:  551  000007f8 *                                       .text
        !           572:  552  0001EBC8    dd 8f000007e5                        pushl   $L290
        !           573:  553  0001EBCE    fe 08 effffffb1b                     callf   $8,_writes
        !           574:  554  0001EBD5                                   #                             write32h( exp_psl );
        !           575:  555  0001EBD5    dd effffffb15                        pushl   _exp_psl
        !           576:  556  0001EBDB    fe 08 effffffb0e                     callf   $8,_write32h
        !           577:  557  0001EBE2                                   #                             writes("\n");
        !           578:  558  0001EBE2                                         .data   1
        !           579:  559  000007f8 *                                L291:
        !           580:  560  000007f8 *  0A00                                 .ascii  "\12\0"
        !           581:  561  000007fa *                                       .text
        !           582:  562  0001EBE2    dd 8f000007f8                        pushl   $L291
        !           583:  563  0001EBE8    fe 08 effffffb01                     callf   $8,_writes
        !           584:  564  0001EBEF                                   #                        }
        !           585:  565  0001EBEF                                   #                        if( halt_flg )   
        !           586:  566  0001EBEF                                  L283:
        !           587:  567  0001EBEF    5d effffffafb                        tstl    _halt_flg
        !           588:  568  0001EBF5    31 09                                jeql    L292
        !           589:  569  0001EBF7                                   #                             cvdf_er_halt( BAD_PSL_HLT );   /* halt on error */
        !           590:  570  0001EBF7    dd 03                                pushl   $3
        !           591:  571  0001EBF9    fe 08 ef000000c0                     callf   $8,_cvdf_er_halt
        !           592:  572  0001EC00                                   #                        if( loop_on_err ) {
        !           593:  573  0001EC00                                  L292:
        !           594:  574  0001EC00    5d effffffaea                        tstl    _loop_on_err
        !           595:  575  0001EC06    31 0a                                jeql    L293
        !           596:  576  0001EC08                                   #                             force_loop = TRUE;        /* set force loop flag */
        !           597:  577  0001EC08    0d 01 effffffae1                     movl    $1,_force_loop
        !           598:  578  0001EC0F                                   #                             asm("brw _cvdf_3_lp1");;  /* and loop            */
        !           599:  579  0001EC0F    13 fed3                       brw _cvdf_3_lp1
        !           600:  580  0001EC12                                   #                        }   /* end of loop on error */
        !           601:  581  0001EC12                                   #                   }  /* end of PSL corruption error */
        !           602:  582  0001EC12                                  L293:
        !           603:  583  0001EC12                                   #              }  while( ++status_index < 3 ); /* end of status loop */
        !           604:  584  0001EC12                                  L282:
        !           605:  585  0001EC12                                  L279:
        !           606:  586  0001EC12    6d effffffad8                        incl    _status_index
        !           607:  587  0001EC18    0d effffffad2 50                     movl    _status_index,r0
        !           608:  588  0001EC1F    1d 50 03                             cmpl    r0,$3
        !           609:  589  0001EC22    81 03 13 feab                        jlss    L280
        !           610:  590  0001EC27                                  L278:
        !           611:  591  0001EC27                                   #     }  while( index++ < max_cvdf_1_index ); /* end of WHILE loop */
        !           612:  592  0001EC27                                  L275:
        !           613:  593  0001EC27    6d effffffac3                        incl    _index
        !           614:  594  0001EC2D    13 fe5f                              jbr     L277
        !           615:  595  0001EC30                                  L276:
        !           616:  596  0001EC30                                  L294:
        !           617:  597  0001EC30    0d effffffaba 50                     movl    _index,r0
        !           618:  598  0001EC37    6d effffffab3                        incl    _index
        !           619:  599  0001EC3D    1d 50 effffffaac                     cmpl    r0,_max_cvdf_1_index
        !           620:  600  0001EC44    81 02                                jgeq    L295
        !           621:  601  0001EC46    11 e8                                jbr     L294
        !           622:  602  0001EC48                                  L295:
        !           623:  603  0001EC48                                   # }  /* end of subtest 3 */
        !           624:  604  0001EC48    40                                   ret#2
        !           625:  605  0001EC49                                         .set    L271,0x0
        !           626:  606  0001EC49                                  L273:
        !           627:  607  0001EC49    13 fe23                              jbr     L274
        !           628:  608  0001EC4C                                         .data
        !           629:  609  000006b4 *                                       .text
        !           630:  610  0001EC4C                                         .align  1
        !           631:  611  0001EC4C                                         .globl  _print_cvdf_data
        !           632:  612  0001EC4C                                  _print_cvdf_data:
        !           633:  613  0001EC4C    0000                                 .word   L296
        !           634:  614  0001EC4E                                   #   
        !           635:  615  0001EC4E                                   # 
        !           636:  616  0001EC4E                                   # 
        !           637:  617  0001EC4E                                   # /**************************************************************************
        !           638:  618  0001EC4E                                   # *
        !           639:  619  0001EC4E                                   # *       PRINT THE DATA AND STORE RESULTS
        !           640:  620  0001EC4E                                   # *
        !           641:  621  0001EC4E                                   # * initial Acc = xxxxxxxx xxxxxxxx,    stored = xxxxxxxx xxxxxxxx,  index = xx
        !           642:  622  0001EC4E                                   # **************************************************************************/
        !           643:  623  0001EC4E                                   # print_cvdf_data()
        !           644:  624  0001EC4E                                   # {
        !           645:  625  0001EC4E    11 6e                                jbr     L298
        !           646:  626  0001EC50                                  L299:
        !           647:  627  0001EC50                                   #         writes("initial Acc = ");
        !           648:  628  0001EC50                                         .data   1
        !           649:  629  000007fa *                                L300:
        !           650:  630  000007fa *  696E697469616C20416363203            .ascii  "initial Acc = \0"
        !           651:                   D2000
        !           652:  631  00000809 *                                       .text
        !           653:  632  0001EC50    dd 8f000007fa                        pushl   $L300
        !           654:  633  0001EC56    fe 08 effffffa93                     callf   $8,_writes
        !           655:  634  0001EC5D                                   #         write32h( dbl_ld_acc.m );
        !           656:  635  0001EC5D    dd effffffa8d                        pushl   _dbl_ld_acc
        !           657:  636  0001EC63    fe 08 effffffa86                     callf   $8,_write32h
        !           658:  637  0001EC6A                                   #         writec(' ');
        !           659:  638  0001EC6A    dd 20                                pushl   $32
        !           660:  639  0001EC6C    fe 08 effffffa7d                     callf   $8,_writec
        !           661:  640  0001EC73                                   #         write32h( dbl_ld_acc.l );
        !           662:  641  0001EC73    dd effffffa7b                        pushl   _dbl_ld_acc+4
        !           663:  642  0001EC79    fe 08 effffffa70                     callf   $8,_write32h
        !           664:  643  0001EC80                                   #         writes(",  final Acc = ");
        !           665:  644  0001EC80                                         .data   1
        !           666:  645  00000809 *                                L301:
        !           667:  646  00000809 *  2C202066696E616C204163632            .ascii  ",  final Acc = \0"
        !           668:                   03D2000
        !           669:  647  00000819 *                                       .text
        !           670:  648  0001EC80    dd 8f00000809                        pushl   $L301
        !           671:  649  0001EC86    fe 08 effffffa63                     callf   $8,_writes
        !           672:  650  0001EC8D                                   #         write32h( sgl_st_acc );
        !           673:  651  0001EC8D    dd effffffa5d                        pushl   _sgl_st_acc
        !           674:  652  0001EC93    fe 08 effffffa56                     callf   $8,_write32h
        !           675:  653  0001EC9A                                   #         writes(",  index = ");
        !           676:  654  0001EC9A                                         .data   1
        !           677:  655  00000819 *                                L302:
        !           678:  656  00000819 *  2C2020696E646578203D2000             .ascii  ",  index = \0"
        !           679:  657  00000825 *                                       .text
        !           680:  658  0001EC9A    dd 8f00000819                        pushl   $L302
        !           681:  659  0001ECA0    fe 08 effffffa49                     callf   $8,_writes
        !           682:  660  0001ECA7                                   #         writed( index );
        !           683:  661  0001ECA7    dd effffffa43                        pushl   _index
        !           684:  662  0001ECAD    fe 08 effffffa3c                     callf   $8,_writed
        !           685:  663  0001ECB4                                   #         writec('\n');
        !           686:  664  0001ECB4    dd 0a                                pushl   $10
        !           687:  665  0001ECB6    fe 08 effffffa33                     callf   $8,_writec
        !           688:  666  0001ECBD                                   # }
        !           689:  667  0001ECBD    40                                   ret#2
        !           690:  668  0001ECBE                                         .set    L296,0x0
        !           691:  669  0001ECBE                                  L298:
        !           692:  670  0001ECBE    11 90                                jbr     L299
        !           693:  671  0001ECC0                                         .data
        !           694:  672  000006b4 *                                       .text
        !           695:  673  0001ECC0                                         .align  1
        !           696:  674  0001ECC0                                         .globl  _cvdf_er_halt
        !           697:  675  0001ECC0                                  _cvdf_er_halt:
        !           698:  676  0001ECC0    0000                                 .word   L303
        !           699:  677  0001ECC2                                   #   
        !           700:  678  0001ECC2                                   # 
        !           701:  679  0001ECC2                                   # 
        !           702:  680  0001ECC2                                   # /**************************************************************************
        !           703:  681  0001ECC2                                   # *
        !           704:  682  0001ECC2                                   # *               HALT ON ERROR ROUTINE 
        !           705:  683  0001ECC2                                   # *
        !           706:  684  0001ECC2                                   # **************************************************************************/
        !           707:  685  0001ECC2                                   # cvdf_er_halt( halt_code )
        !           708:  686  0001ECC2                                   # int halt_code;
        !           709:  687  0001ECC2                                   # {
        !           710:  688  0001ECC2    13 00db                              jbr     L305
        !           711:  689  0001ECC5                                  L306:
        !           712:  690  0001ECC5                                   #         sgl_value_1 = dbl_ld_acc.m;
        !           713:  691  0001ECC5    0d effffffa25 effffffa20             movl    _dbl_ld_acc,_sgl_value_1
        !           714:  692  0001ECD0                                   #         sgl_value_2 = dbl_ld_acc.l;
        !           715:  693  0001ECD0    0d effffffa1e effffffa15             movl    _dbl_ld_acc+4,_sgl_value_2
        !           716:  694  0001ECDB                                   #         sgl_value_3 = sgl_st_acc;
        !           717:  695  0001ECDB    0d effffffa0f effffffa0a             movl    _sgl_st_acc,_sgl_value_3
        !           718:  696  0001ECE6                                   #         sgl_dummy1 = halt_code;                 /* get the error type    */
        !           719:  697  0001ECE6    0d ad04 effffffa02                   movl    4(fp),_sgl_dummy1
        !           720:  698  0001ECEE                                   #         asm("movl _test_no,r0");                /* r0  = test number     */
        !           721:  699  0001ECEE    0d effffff9fc 50              movl _test_no,r0
        !           722:  700  0001ECF5                                   #         asm("movl _subtest,r1");                /* r1  = subtest number  */
        !           723:  701  0001ECF5    0d effffff9f5 51              movl _subtest,r1
        !           724:  702  0001ECFC                                   #         asm("movl _sgl_dummy1,r2");             /* r2  = error code      */
        !           725:  703  0001ECFC    0d effffff9ee 52              movl _sgl_dummy1,r2
        !           726:  704  0001ED03                                   #         asm("movl _cycle,r3");                  /* r3  = cycle count     */
        !           727:  705  0001ED03    0d effffff9e7 53              movl _cycle,r3
        !           728:  706  0001ED0A                                   #         asm("movl _sgl_value_1,r4");            /* r4  = MS accumulator  */
        !           729:  707  0001ED0A    0d effffff9e0 54              movl _sgl_value_1,r4
        !           730:  708  0001ED11                                   #         asm("movl _sgl_value_2,r5");            /* r5  = LS accumulator  */
        !           731:  709  0001ED11    0d effffff9d9 55              movl _sgl_value_2,r5
        !           732:  710  0001ED18                                   #         asm("movl _sgl_value_3,r6");            /* r6  = final acc       */
        !           733:  711  0001ED18    0d effffff9d2 56              movl _sgl_value_3,r6
        !           734:  712  0001ED1F                                   #         if( halt_code == BAD_ACC_HLT ) {
        !           735:  713  0001ED1F    1d ad04 01                           cmpl    4(fp),$1
        !           736:  714  0001ED23    21 1b                                jneq    L307
        !           737:  715  0001ED25                                   #              sgl_value_1 = sgl_expected;
        !           738:  716  0001ED25    0d effffff9c5 effffff9c0             movl    _sgl_expected,_sgl_value_1
        !           739:  717  0001ED30                                   #              asm("movl _sgl_value_1,r7");       /* r7  = expected acc    */
        !           740:  718  0001ED30    0d effffff9ba 57              movl _sgl_value_1,r7
        !           741:  719  0001ED37                                   #              asm("movl _index,r8");             /* r8  = data index      */
        !           742:  720  0001ED37    0d effffff9b3 58              movl _index,r8
        !           743:  721  0001ED3E                                   #         } else 
        !           744:  722  0001ED3E    11 5e                                jbr     L308
        !           745:  723  0001ED40                                  L307:
        !           746:  724  0001ED40                                   #           if( halt_code == BAD_REG_HLT ) {
        !           747:  725  0001ED40    1d ad04 02                           cmpl    4(fp),$2
        !           748:  726  0001ED44    21 3d                                jneq    L309
        !           749:  727  0001ED46                                   #              sgl_dummy1 = load_regs[index2];
        !           750:  728  0001ED46    0d effffff9a4 50                     movl    _index2,r0
        !           751:  729  0001ED4D    0d 40effffff99c                      movl    _load_regs[r0],_sgl_dummy1
        !           752:                   effffff997 
        !           753:  730  0001ED59                                   #              sgl_dummy2 = store_regs[index2];
        !           754:  731  0001ED59    0d effffff991 50                     movl    _index2,r0
        !           755:  732  0001ED60    0d 40effffff989                      movl    _store_regs[r0],_sgl_dummy2
        !           756:                   effffff984 
        !           757:  733  0001ED6C                                   #              asm("movl _index2,r7");            /* r7  = bad register #  */
        !           758:  734  0001ED6C    0d effffff97e 57              movl _index2,r7
        !           759:  735  0001ED73                                   #              asm("movl _sgl_dummy2,r8");        /* r8  = actual value    */
        !           760:  736  0001ED73    0d effffff977 58              movl _sgl_dummy2,r8
        !           761:  737  0001ED7A                                   #              asm("movl _sgl_dummy1,r9");        /* r9  = expected value  */
        !           762:  738  0001ED7A    0d effffff970 59              movl _sgl_dummy1,r9
        !           763:  739  0001ED81                                   #         } else
        !           764:  740  0001ED81    11 1b                                jbr     L310
        !           765:  741  0001ED83                                  L309:
        !           766:  742  0001ED83                                   #           if( halt_code == BAD_PSL_HLT ) {
        !           767:  743  0001ED83    1d ad04 03                           cmpl    4(fp),$3
        !           768:  744  0001ED87    21 15                                jneq    L311
        !           769:  745  0001ED89                                   #              asm("movl _init_psl,r7");          /* r7  = initial PSL     */
        !           770:  746  0001ED89    0d effffff961 57              movl _init_psl,r7
        !           771:  747  0001ED90                                   #              asm("movl _psl_val,r8");           /* r8  = final PSL       */
        !           772:  748  0001ED90    0d effffff95a 58              movl _psl_val,r8
        !           773:  749  0001ED97                                   #              asm("movl _exp_psl,r9");           /* r9  = expected PSL    */
        !           774:  750  0001ED97    0d effffff953 59              movl _exp_psl,r9
        !           775:  751  0001ED9E                                   #         };
        !           776:  752  0001ED9E                                  L311:
        !           777:  753  0001ED9E                                  L310:
        !           778:  754  0001ED9E                                  L308:
        !           779:  755  0001ED9E                                   #         asm("halt");                            /* HALT ...              */
        !           780:  756  0001ED9E    00                            halt
        !           781:  757  0001ED9F                                   # }  
        !           782:  758  0001ED9F    40                                   ret#2
        !           783:  759  0001EDA0                                         .set    L303,0x0
        !           784:  760  0001EDA0                                  L305:
        !           785:  761  0001EDA0    13 ff22                              jbr     L306
        !           786:  762  0001EDA3                                         .data
        !           787:  762  0003D493                                         .data

unix.superglobalmegacorp.com

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