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

1.1     ! root        1:    1  00000000                                  LL0:
        !             2:    2  00000000                                         .data
        !             3:    3  00000c8c *                                       .text
        !             4:    4  00000000                                         .align  1
        !             5:    5  00000000                                         .globl  _cmpf
        !             6:    6  00000000                                  _cmpf:
        !             7:    7  000123B8    0000                                 .word   L215
        !             8:    8  000123BA                                   # #include "fpp_defs.h"
        !             9:    9  000123BA                                   # 
        !            10:   10  000123BA                                   # 
        !            11:   11  000123BA                                   # 
        !            12:   12  000123BA                                   # /***************************************************************************
        !            13:   13  000123BA                                   # *
        !            14:   14  000123BA                                   # *       CMPF  -COMPARE SGL ACCUMULATOR TO SGL OPERAND
        !            15:   15  000123BA                                   # *
        !            16:   16  000123BA                                   # *****************************************************************************/
        !            17:   17  000123BA                                   # cmpf()
        !            18:   18  000123BA                                   # {
        !            19:   19  000123BA    11 57                                jbr     L217
        !            20:   20  000123BC                                  L218:
        !            21:   21  000123BC                                   #         asm(".globl _cmpf_t");
        !            22:   22  000123BC                                  .globl _cmpf_t
        !            23:   23  000123BC                                   #         asm("_cmpf_t:");                        /* entry address            */
        !            24:   24  000123BC                                  _cmpf_t:
        !            25:   25  000123BC                                   #         if( ( cycle == 1 ) && ( prt_hdrs ) )    /* print headers on 1st pass */
        !            26:   26  000123BC    1d effffffff6 01                     cmpl    _cycle,$1
        !            27:   27  000123C3    21 15                                jneq    L219
        !            28:   28  000123C5    5d efffffffed                        tstl    _prt_hdrs
        !            29:   29  000123CB    31 0d                                jeql    L219
        !            30:   30  000123CD                                   #         {
        !            31:   31  000123CD                                   #            writes(" CMPF");
        !            32:   32  000123CD                                         .data   1
        !            33:   33  00000c8c *                                L221:
        !            34:   34  00000c8c *  20434D504600                         .ascii  " CMPF\0"
        !            35:   35  00000c92 *                                       .text
        !            36:   36  000123CD    dd 8f00000c8c                        pushl   $L221
        !            37:   37  000123D3    fe 08 efffffffde                     callf   $8,_writes
        !            38:   38  000123DA                                   #         }
        !            39:   39  000123DA                                   #         cmpf_1();                               /* test via registers         */
        !            40:   40  000123DA                                  L219:
        !            41:   41  000123DA    fe 04 ef00000035                     callf   $4,_cmpf_1
        !            42:   42  000123E1                                   #         cmpf_2();                               /* test via cache             */
        !            43:   43  000123E1    fe 04 ef00000248                     callf   $4,_cmpf_2
        !            44:   44  000123E8                                   #         cmpf_3();                               /* register corruption test   */
        !            45:   45  000123E8    fe 04 ef00000455                     callf   $4,_cmpf_3
        !            46:   46  000123EF                                   #         cmpf_4();                               /* acc. corruption test       */
        !            47:   47  000123EF    fe 04 ef00000628                     callf   $4,_cmpf_4
        !            48:   48  000123F6                                   #     if( !no_fpp_wcs ) {
        !            49:   49  000123F6    5d efffffffbc                        tstl    _no_fpp_wcs
        !            50:   50  000123FC    21 0e                                jneq    L226
        !            51:   51  000123FE                                   #              cmpf_5();                          /* pipelined entry test       */
        !            52:   52  000123FE    fe 04 ef000007a3                     callf   $4,_cmpf_5
        !            53:   53  00012405                                   #              cmpf_6();                          /* pipelined exit test        */
        !            54:   54  00012405    fe 04 ef000009b6                     callf   $4,_cmpf_6
        !            55:   55  0001240C                                   #         };
        !            56:   56  0001240C                                  L226:
        !            57:   57  0001240C                                   #     asm("jmp *return");                     /* return to the test monitor */
        !            58:   58  0001240C    71 ffffffffa6                 jmp *return
        !            59:   59  00012412                                   # }
        !            60:   60  00012412    40                                   ret#2
        !            61:   61  00012413                                         .set    L215,0x0
        !            62:   62  00012413                                  L217:
        !            63:   63  00012413    11 a7                                jbr     L218
        !            64:   64  00012415                                         .data
        !            65:   65  00000c8c *                                       .text
        !            66:   66  00012415    00                                   .align  1
        !            67:   67  00012416                                         .globl  _cmpf_1
        !            68:   68  00012416                                  _cmpf_1:
        !            69:   69  00012416    0000                                 .word   L229
        !            70:   70  00012418                                   #   
        !            71:   71  00012418                                   # 
        !            72:   72  00012418                                   # 
        !            73:   73  00012418                                   # /****************************************************************************
        !            74:   74  00012418                                   # *
        !            75:   75  00012418                                   # *               SUBTEST 1 - CMPF status test  -register data
        !            76:   76  00012418                                   # *
        !            77:   77  00012418                                   # ****************************************************************************/
        !            78:   78  00012418                                   # cmpf_1() 
        !            79:   79  00012418                                   # {
        !            80:   80  00012418    13 0212                              jbr     L231
        !            81:   81  0001241B                                  L232:
        !            82:   82  0001241B                                   #         force_loop = FALSE;
        !            83:   83  0001241B    4d efffffff97                        clrl    _force_loop
        !            84:   84  00012421                                   #         subtest = 1;
        !            85:   85  00012421    0d 01 efffffff90                     movl    $1,_subtest
        !            86:   86  00012428                                   #     index = 0;
        !            87:   87  00012428    4d efffffff8a                        clrl    _index
        !            88:   88  0001242E                                   #         do 
        !            89:   89  0001242E                                  L235:
        !            90:   90  0001242E                                   #         {
        !            91:   91  0001242E                                   #            sgl_value_1  = cmpf_1_data[index].one; /* get the data operands  */
        !            92:   92  0001242E    5c 0c efffffff83 50                  mull3   $12,_index,r0
        !            93:   93  00012436    0d e000000000 efffffff77             movl    _cmpf_1_data(r0),_sgl_value_1
        !            94:   94  00012441                                   #            sgl_value_2  = cmpf_1_data[index].two;
        !            95:   95  00012441    5c 0c efffffff70 50                  mull3   $12,_index,r0
        !            96:   96  00012449    0d e000000004 efffffff64             movl    _cmpf_1_data+4(r0),_sgl_value_2
        !            97:   97  00012454                                   #            sgl_expected = cmpf_1_data[index].flag; /* get expected results */
        !            98:   98  00012454    5c 0c efffffff5d 50                  mull3   $12,_index,r0
        !            99:   99  0001245C    0d e000000008 efffffff51             movl    _cmpf_1_data+8(r0),_sgl_expected
        !           100:  100  00012467                                   #            status_index = 0;                           /* clear the status index */
        !           101:  101  00012467    4d efffffff4b                        clrl    _status_index
        !           102:  102  0001246D                                   #            do
        !           103:  103  0001246D                                  L238:
        !           104:  104  0001246D                                   #            {
        !           105:  105  0001246D                                   #                sgl_dummy1 = status_array[status_index]; /* array = +, -, 0  */
        !           106:  106  0001246D    0d efffffff45 50                     movl    _status_index,r0
        !           107:  107  00012474    0d 40efffffff3d                      movl    _status_array[r0],_sgl_dummy1
        !           108:                   efffffff38 
        !           109:  108  00012480                                   # /*
        !           110:  109  00012480                                   #  * If LOOP ON ERROR is set, this is the loop for this subtest.
        !           111:  110  00012480                                   #  * The force loop flag is set after the first error.
        !           112:  111  00012480                                   # */
        !           113:  112  00012480                                   #                asm("_cmpf_1_lp1:");
        !           114:  113  00012480                                  _cmpf_1_lp1:
        !           115:  114  00012480                                   #                asm("movl _sgl_value_1,r4");     /* move operand #1 to r4    */
        !           116:  115  00012480    0d efffffff32 54              movl _sgl_value_1,r4
        !           117:  116  00012487                                   #                asm("movl _sgl_value_2,r5");     /* move operand #2 to r5    */
        !           118:  117  00012487    0d efffffff2b 55              movl _sgl_value_2,r5
        !           119:  118  0001248E                                   #                asm("ldf r4");                   /* load the 1st operand     */
        !           120:  119  0001248E    06 54                         ldf r4
        !           121:  120  00012490                                   #                asm("tstl _sgl_dummy1");         /* generate initial status  */
        !           122:  121  00012490    5d efffffff22                 tstl _sgl_dummy1
        !           123:  122  00012496                                   #                asm("movpsl _init_psl");         /* save the initial status  */
        !           124:  123  00012496    cd efffffff1c                 movpsl _init_psl
        !           125:  124  0001249C                                   #                asm("cmpf r5");                  /* compare the operands     */
        !           126:  125  0001249C    36 55                         cmpf r5
        !           127:  126  0001249E                                   #                asm("movpsl _psl_val");          /* save the final status    */
        !           128:  127  0001249E    cd efffffff14                 movpsl _psl_val
        !           129:  128  000124A4                                   #                asm("stf _sgl_st_acc");          /* save the final acc       */
        !           130:  129  000124A4    26 efffffff0e                 stf _sgl_st_acc
        !           131:  130  000124AA                                   #                if( force_loop )                 /* loop?                    */
        !           132:  131  000124AA    5d efffffff08                        tstl    _force_loop
        !           133:  132  000124B0    31 02                                jeql    L239
        !           134:  133  000124B2                                   #                    asm("brb _cmpf_1_lp1");;     /* run the loop again       */
        !           135:  134  000124B2    11 cc                         brb _cmpf_1_lp1
        !           136:  135  000124B4                                  L239:
        !           137:  136  000124B4                                   #                exp_psl = init_psl;              /* get the initial PSL      */
        !           138:  137  000124B4    0d effffffefe effffffef9             movl    _init_psl,_exp_psl
        !           139:  138  000124BF                                   #                exp_psl &= 0xfffffff3;           /* clear ZERO, NEGATIVE     */
        !           140:  139  000124BF    ac 88f3 effffffef1                   andl2   $-13,_exp_psl
        !           141:  140  000124C7                                   #                if( sgl_expected == ZERO )
        !           142:  141  000124C7    1d effffffeeb 04                     cmpl    _sgl_expected,$4
        !           143:  142  000124CE    21 07                                jneq    L240
        !           144:  143  000124D0                                   #                    exp_psl |= PSL_Z;            /* expect the ZERO bit set  */
        !           145:  144  000124D0    8c 04 effffffee1                     orl2    $4,_exp_psl
        !           146:  145  000124D7                                   #                if( sgl_expected == NEGATIVE )
        !           147:  146  000124D7                                  L240:
        !           148:  147  000124D7    1d effffffedb 08                     cmpl    _sgl_expected,$8
        !           149:  148  000124DE    21 07                                jneq    L241
        !           150:  149  000124E0                                   #                    exp_psl |= PSL_N;            /* expect the NEG bit set   */
        !           151:  150  000124E0    8c 08 effffffed1                     orl2    $8,_exp_psl
        !           152:  151  000124E7                                   #                if( psl_val != exp_psl )   {     /* COMPARE the values       */
        !           153:  152  000124E7                                  L241:
        !           154:  153  000124E7    1d effffffecb effffffec6             cmpl    _psl_val,_exp_psl
        !           155:  154  000124F2    21 03 13 0107                        jeql    L242
        !           156:  155  000124F7                                   #                   errcnt++;                     /* bump the error count     */
        !           157:  156  000124F7    6d effffffebb                        incl    _errcnt
        !           158:  157  000124FD                                   #                   if ( prt_error ) {
        !           159:  158  000124FD    5d effffffeb5                        tstl    _prt_error
        !           160:  159  00012503    21 03 13 00d3                        jeql    L243
        !           161:  160  00012508                                   #                      writes(" \n");      /* start a new print line   */
        !           162:  161  00012508                                         .data   1
        !           163:  162  00000c92 *                                L244:
        !           164:  163  00000c92 *  200A00                               .ascii  " \12\0"
        !           165:  164  00000c95 *                                       .text
        !           166:  165  00012508    dd 8f00000c92                        pushl   $L244
        !           167:  166  0001250E    fe 08 effffffea3                     callf   $8,_writes
        !           168:  167  00012515                                   #                      writes("cycle: ");
        !           169:  168  00012515                                         .data   1
        !           170:  169  00000c95 *                                L245:
        !           171:  170  00000c95 *  6379636C653A2000                     .ascii  "cycle: \0"
        !           172:  171  00000c9d *                                       .text
        !           173:  172  00012515    dd 8f00000c95                        pushl   $L245
        !           174:  173  0001251B    fe 08 effffffe96                     callf   $8,_writes
        !           175:  174  00012522                                   #                      writed( cycle );
        !           176:  175  00012522    dd effffffe90                        pushl   _cycle
        !           177:  176  00012528    fe 08 effffffe89                     callf   $8,_writed
        !           178:  177  0001252F                                   #                      writes("  CMPF test ");
        !           179:  178  0001252F                                         .data   1
        !           180:  179  00000c9d *                                L247:
        !           181:  180  00000c9d *  2020434D50462074657374200            .ascii  "  CMPF test \0"
        !           182:                   0
        !           183:  181  00000caa *                                       .text
        !           184:  182  0001252F    dd 8f00000c9d                        pushl   $L247
        !           185:  183  00012535    fe 08 effffffe7c                     callf   $8,_writes
        !           186:  184  0001253C                                   #                  writed( test_no );
        !           187:  185  0001253C    dd effffffe76                        pushl   _test_no
        !           188:  186  00012542    fe 08 effffffe6f                     callf   $8,_writed
        !           189:  187  00012549                                   #                  writes(", subtest 1 (Reg. Data) - BAD FINAL PSL\n");
        !           190:  188  00012549                                         .data   1
        !           191:  189  00000caa *                                L248:
        !           192:  190  00000caa *  2C20737562746573742031202            .ascii  ", subtest 1 (Reg. Data) - BAD FINAL PSL\12\0"
        !           193:                   85265672E204461746129202D
        !           194:                   204241442046494E414C20505
        !           195:                   34C0A00
        !           196:  191  00000cd3 *                                       .text
        !           197:  192  00012549    dd 8f00000caa                        pushl   $L248
        !           198:  193  0001254F    fe 08 effffffe62                     callf   $8,_writes
        !           199:  194  00012556                                   #                      print_cmpf_data();
        !           200:  195  00012556    fe 04 ef000009fb                     callf   $4,_print_cmpf_data
        !           201:  196  0001255D                                   #                      writes(",  data index = ");
        !           202:  197  0001255D                                         .data   1
        !           203:  198  00000cd3 *                                L250:
        !           204:  199  00000cd3 *  2C20206461746120696E64657            .ascii  ",  data index = \0"
        !           205:                   8203D2000
        !           206:  200  00000ce4 *                                       .text
        !           207:  201  0001255D    dd 8f00000cd3                        pushl   $L250
        !           208:  202  00012563    fe 08 effffffe4e                     callf   $8,_writes
        !           209:  203  0001256A                                   #                      writed( index );
        !           210:  204  0001256A    dd effffffe48                        pushl   _index
        !           211:  205  00012570    fe 08 effffffe41                     callf   $8,_writed
        !           212:  206  00012577                                   #                      writec('\n');
        !           213:  207  00012577    dd 0a                                pushl   $10
        !           214:  208  00012579    fe 08 effffffe38                     callf   $8,_writec
        !           215:  209  00012580                                   #                      writes("initial PSL = ");
        !           216:  210  00012580                                         .data   1
        !           217:  211  00000ce4 *                                L252:
        !           218:  212  00000ce4 *  696E697469616C2050534C203            .ascii  "initial PSL = \0"
        !           219:                   D2000
        !           220:  213  00000cf3 *                                       .text
        !           221:  214  00012580    dd 8f00000ce4                        pushl   $L252
        !           222:  215  00012586    fe 08 effffffe2b                     callf   $8,_writes
        !           223:  216  0001258D                                   #                      write32h( init_psl );
        !           224:  217  0001258D    dd effffffe25                        pushl   _init_psl
        !           225:  218  00012593    fe 08 effffffe1e                     callf   $8,_write32h
        !           226:  219  0001259A                                   #                      writes(", final PSL = ");
        !           227:  220  0001259A                                         .data   1
        !           228:  221  00000cf3 *                                L254:
        !           229:  222  00000cf3 *  2C2066696E616C2050534C203            .ascii  ", final PSL = \0"
        !           230:                   D2000
        !           231:  223  00000d02 *                                       .text
        !           232:  224  0001259A    dd 8f00000cf3                        pushl   $L254
        !           233:  225  000125A0    fe 08 effffffe11                     callf   $8,_writes
        !           234:  226  000125A7                                   #                      write32h( psl_val );
        !           235:  227  000125A7    dd effffffe0b                        pushl   _psl_val
        !           236:  228  000125AD    fe 08 effffffe04                     callf   $8,_write32h
        !           237:  229  000125B4                                   #                      writes(", expected PSL = ");
        !           238:  230  000125B4                                         .data   1
        !           239:  231  00000d02 *                                L255:
        !           240:  232  00000d02 *  2C20657870656374656420505            .ascii  ", expected PSL = \0"
        !           241:                   34C203D2000
        !           242:  233  00000d14 *                                       .text
        !           243:  234  000125B4    dd 8f00000d02                        pushl   $L255
        !           244:  235  000125BA    fe 08 effffffdf7                     callf   $8,_writes
        !           245:  236  000125C1                                   #                      write32h( exp_psl );
        !           246:  237  000125C1    dd effffffdf1                        pushl   _exp_psl
        !           247:  238  000125C7    fe 08 effffffdea                     callf   $8,_write32h
        !           248:  239  000125CE                                   #                      writes("\n");
        !           249:  240  000125CE                                         .data   1
        !           250:  241  00000d14 *                                L256:
        !           251:  242  00000d14 *  0A00                                 .ascii  "\12\0"
        !           252:  243  00000d16 *                                       .text
        !           253:  244  000125CE    dd 8f00000d14                        pushl   $L256
        !           254:  245  000125D4    fe 08 effffffddd                     callf   $8,_writes
        !           255:  246  000125DB                                   #                   }
        !           256:  247  000125DB                                   #                   if ( halt_flg )
        !           257:  248  000125DB                                  L243:
        !           258:  249  000125DB    5d effffffdd7                        tstl    _halt_flg
        !           259:  250  000125E1    31 09                                jeql    L257
        !           260:  251  000125E3                                   #                      cmpf_er_halt( BAD_PSL_HLT ); /* halt on the error      */
        !           261:  252  000125E3    dd 03                                pushl   $3
        !           262:  253  000125E5    fe 08 ef000009a8                     callf   $8,_cmpf_er_halt
        !           263:  254  000125EC                                   #                   if ( loop_on_err ) {
        !           264:  255  000125EC                                  L257:
        !           265:  256  000125EC    5d effffffdc6                        tstl    _loop_on_err
        !           266:  257  000125F2    31 0a                                jeql    L259
        !           267:  258  000125F4                                   #                      force_loop = TRUE;         /* set the force loop flag */
        !           268:  259  000125F4    0d 01 effffffdbd                     movl    $1,_force_loop
        !           269:  260  000125FB                                   #                      asm("brw _cmpf_1_lp1");    /* and loop on the error   */
        !           270:  261  000125FB    13 fe82                       brw _cmpf_1_lp1
        !           271:  262  000125FE                                   #                   }   /* end of loop on error    */
        !           272:  263  000125FE                                   #                }   /* end of compare error    */
        !           273:  264  000125FE                                  L259:
        !           274:  265  000125FE                                   #             }  while ( ++status_index < 3 ); /* end of PSL WHILE loop */
        !           275:  266  000125FE                                  L242:
        !           276:  267  000125FE                                  L237:
        !           277:  268  000125FE    6d effffffdb4                        incl    _status_index
        !           278:  269  00012604    0d effffffdae 50                     movl    _status_index,r0
        !           279:  270  0001260B    1d 50 03                             cmpl    r0,$3
        !           280:  271  0001260E    81 03 13 fe5a                        jlss    L238
        !           281:  272  00012613                                  L236:
        !           282:  273  00012613                                   #         } while( index++ < max_cmpf_1_index);/* end of data loop      */
        !           283:  274  00012613                                  L234:
        !           284:  275  00012613    0d effffffd9f 50                     movl    _index,r0
        !           285:  276  0001261A    6d effffffd98                        incl    _index
        !           286:  277  00012620    1d 50 effffffd91                     cmpl    r0,_max_cmpf_1_index
        !           287:  278  00012627    81 03 13 fe02                        jlss    L235
        !           288:  279  0001262C                                  L233:
        !           289:  280  0001262C                                   # }  /* end of subtest 1 */
        !           290:  281  0001262C    40                                   ret#2
        !           291:  282  0001262D                                         .set    L229,0x0
        !           292:  283  0001262D                                  L231:
        !           293:  284  0001262D    13 fdeb                              jbr     L232
        !           294:  285  00012630                                         .data
        !           295:  286  00000c8c *                                       .text
        !           296:  287  00012630                                         .align  1
        !           297:  288  00012630                                         .globl  _cmpf_2
        !           298:  289  00012630                                  _cmpf_2:
        !           299:  290  00012630    0000                                 .word   L260
        !           300:  291  00012632                                   #   
        !           301:  292  00012632                                   # 
        !           302:  293  00012632                                   # 
        !           303:  294  00012632                                   # /****************************************************************************
        !           304:  295  00012632                                   # *
        !           305:  296  00012632                                   # *               SUBTEST 2 - CMPF status test  -cache data
        !           306:  297  00012632                                   # *
        !           307:  298  00012632                                   # ****************************************************************************/
        !           308:  299  00012632                                   # cmpf_2() 
        !           309:  300  00012632                                   # {
        !           310:  301  00012632    13 020c                              jbr     L262
        !           311:  302  00012635                                  L263:
        !           312:  303  00012635                                   #         force_loop = FALSE; 
        !           313:  304  00012635    4d effffffd7d                        clrl    _force_loop
        !           314:  305  0001263B                                   #     subtest = 2;
        !           315:  306  0001263B    0d 02 effffffd76                     movl    $2,_subtest
        !           316:  307  00012642                                   #     index = 0;
        !           317:  308  00012642    4d effffffd70                        clrl    _index
        !           318:  309  00012648                                   #         do 
        !           319:  310  00012648                                  L266:
        !           320:  311  00012648                                   #         {
        !           321:  312  00012648                                   #            sgl_value_1  = cmpf_1_data[index].one; /* get the data operands  */
        !           322:  313  00012648    5c 0c effffffd69 50                  mull3   $12,_index,r0
        !           323:  314  00012650    0d e000000000 effffffd5d             movl    _cmpf_1_data(r0),_sgl_value_1
        !           324:  315  0001265B                                   #            sgl_value_2  = cmpf_1_data[index].two;
        !           325:  316  0001265B    5c 0c effffffd56 50                  mull3   $12,_index,r0
        !           326:  317  00012663    0d e000000004 effffffd4a             movl    _cmpf_1_data+4(r0),_sgl_value_2
        !           327:  318  0001266E                                   #            sgl_expected = cmpf_1_data[index].flag;/* get expected results */
        !           328:  319  0001266E    5c 0c effffffd43 50                  mull3   $12,_index,r0
        !           329:  320  00012676    0d e000000008 effffffd37             movl    _cmpf_1_data+8(r0),_sgl_expected
        !           330:  321  00012681                                   #            status_index = 0;                      /* clear the status index */
        !           331:  322  00012681    4d effffffd31                        clrl    _status_index
        !           332:  323  00012687                                   #            do
        !           333:  324  00012687                                  L269:
        !           334:  325  00012687                                   #            {
        !           335:  326  00012687                                   #                sgl_dummy1 = status_array[status_index]; /* array = +, -, 0  */
        !           336:  327  00012687    0d effffffd2b 50                     movl    _status_index,r0
        !           337:  328  0001268E    0d 40effffffd23                      movl    _status_array[r0],_sgl_dummy1
        !           338:                   effffffd1e 
        !           339:  329  0001269A                                   # /*
        !           340:  330  0001269A                                   #  * If LOOP ON ERROR is set, this is the loop for this subtest.
        !           341:  331  0001269A                                   #  * The force loop flag is set after the first error.
        !           342:  332  0001269A                                   # */
        !           343:  333  0001269A                                   #                asm("_cmpf_2_lp1:");
        !           344:  334  0001269A                                  _cmpf_2_lp1:
        !           345:  335  0001269A                                   #                asm("ldf _sgl_value_1");         /* load the 1st operand     */
        !           346:  336  0001269A    06 effffffd18                 ldf _sgl_value_1
        !           347:  337  000126A0                                   #                asm("tstl _sgl_dummy1");         /* generate initial status  */
        !           348:  338  000126A0    5d effffffd12                 tstl _sgl_dummy1
        !           349:  339  000126A6                                   #                asm("movpsl _init_psl");         /* save the initial status  */
        !           350:  340  000126A6    cd effffffd0c                 movpsl _init_psl
        !           351:  341  000126AC                                   #                asm("cmpf _sgl_value_2");        /* compare the operands     */
        !           352:  342  000126AC    36 effffffd06                 cmpf _sgl_value_2
        !           353:  343  000126B2                                   #                asm("movpsl _psl_val");          /* save the final status    */
        !           354:  344  000126B2    cd effffffd00                 movpsl _psl_val
        !           355:  345  000126B8                                   #                asm("stf _sgl_st_acc");          /* save the final acc       */
        !           356:  346  000126B8    26 effffffcfa                 stf _sgl_st_acc
        !           357:  347  000126BE                                   #                if( force_loop )                 /* loop?                    */
        !           358:  348  000126BE    5d effffffcf4                        tstl    _force_loop
        !           359:  349  000126C4    31 02                                jeql    L270
        !           360:  350  000126C6                                   #                    asm("brb _cmpf_2_lp1");;     /* run the loop again       */
        !           361:  351  000126C6    11 d2                         brb _cmpf_2_lp1
        !           362:  352  000126C8                                  L270:
        !           363:  353  000126C8                                   #                exp_psl = init_psl;              /* get the initial PSL      */
        !           364:  354  000126C8    0d effffffcea effffffce5             movl    _init_psl,_exp_psl
        !           365:  355  000126D3                                   #                exp_psl &= 0xfffffff3;           /* clear ZERO, NEGATIVE     */
        !           366:  356  000126D3    ac 88f3 effffffcdd                   andl2   $-13,_exp_psl
        !           367:  357  000126DB                                   #                if( sgl_expected == ZERO )
        !           368:  358  000126DB    1d effffffcd7 04                     cmpl    _sgl_expected,$4
        !           369:  359  000126E2    21 07                                jneq    L271
        !           370:  360  000126E4                                   #                    exp_psl |= PSL_Z;            /* expect the ZERO bit set  */
        !           371:  361  000126E4    8c 04 effffffccd                     orl2    $4,_exp_psl
        !           372:  362  000126EB                                   #                if( sgl_expected == NEGATIVE )
        !           373:  363  000126EB                                  L271:
        !           374:  364  000126EB    1d effffffcc7 08                     cmpl    _sgl_expected,$8
        !           375:  365  000126F2    21 07                                jneq    L272
        !           376:  366  000126F4                                   #                    exp_psl |= PSL_N;            /* expect the NEG bit set   */
        !           377:  367  000126F4    8c 08 effffffcbd                     orl2    $8,_exp_psl
        !           378:  368  000126FB                                   #                if( psl_val != exp_psl ) {       /* COMPARE the values       */
        !           379:  369  000126FB                                  L272:
        !           380:  370  000126FB    1d effffffcb7 effffffcb2             cmpl    _psl_val,_exp_psl
        !           381:  371  00012706    21 03 13 0107                        jeql    L273
        !           382:  372  0001270B                                   #                   errcnt++;                     /* bump the error count     */
        !           383:  373  0001270B    6d effffffca7                        incl    _errcnt
        !           384:  374  00012711                                   #                   if ( prt_error ) {
        !           385:  375  00012711    5d effffffca1                        tstl    _prt_error
        !           386:  376  00012717    21 03 13 00d3                        jeql    L274
        !           387:  377  0001271C                                   #                      writes(" \n");      /* start a new print line   */
        !           388:  378  0001271C                                         .data   1
        !           389:  379  00000d16 *                                L275:
        !           390:  380  00000d16 *  200A00                               .ascii  " \12\0"
        !           391:  381  00000d19 *                                       .text
        !           392:  382  0001271C    dd 8f00000d16                        pushl   $L275
        !           393:  383  00012722    fe 08 effffffc8f                     callf   $8,_writes
        !           394:  384  00012729                                   #                      writes("cycle: ");
        !           395:  385  00012729                                         .data   1
        !           396:  386  00000d19 *                                L276:
        !           397:  387  00000d19 *  6379636C653A2000                     .ascii  "cycle: \0"
        !           398:  388  00000d21 *                                       .text
        !           399:  389  00012729    dd 8f00000d19                        pushl   $L276
        !           400:  390  0001272F    fe 08 effffffc82                     callf   $8,_writes
        !           401:  391  00012736                                   #                      writed( cycle );
        !           402:  392  00012736    dd effffffc7c                        pushl   _cycle
        !           403:  393  0001273C    fe 08 effffffc75                     callf   $8,_writed
        !           404:  394  00012743                                   #                      writes("  CMPF test ");
        !           405:  395  00012743                                         .data   1
        !           406:  396  00000d21 *                                L277:
        !           407:  397  00000d21 *  2020434D50462074657374200            .ascii  "  CMPF test \0"
        !           408:                   0
        !           409:  398  00000d2e *                                       .text
        !           410:  399  00012743    dd 8f00000d21                        pushl   $L277
        !           411:  400  00012749    fe 08 effffffc68                     callf   $8,_writes
        !           412:  401  00012750                                   #                  writed( test_no );
        !           413:  402  00012750    dd effffffc62                        pushl   _test_no
        !           414:  403  00012756    fe 08 effffffc5b                     callf   $8,_writed
        !           415:  404  0001275D                                   #                  writes(", subtest 2 (Cache Data) - BAD FINAL PSL\n");
        !           416:  405  0001275D                                         .data   1
        !           417:  406  00000d2e *                                L278:
        !           418:  407  00000d2e *  2C20737562746573742032202            .ascii  ", subtest 2 (Cache Data) - BAD FINAL PSL\12\0"
        !           419:                   8436163686520446174612920
        !           420:                   2D204241442046494E414C205
        !           421:                   0534C0A00
        !           422:  408  00000d58 *                                       .text
        !           423:  409  0001275D    dd 8f00000d2e                        pushl   $L278
        !           424:  410  00012763    fe 08 effffffc4e                     callf   $8,_writes
        !           425:  411  0001276A                                   #                      print_cmpf_data();
        !           426:  412  0001276A    fe 04 ef000007e7                     callf   $4,_print_cmpf_data
        !           427:  413  00012771                                   #                      writes(",  data index = ");
        !           428:  414  00012771                                         .data   1
        !           429:  415  00000d58 *                                L279:
        !           430:  416  00000d58 *  2C20206461746120696E64657            .ascii  ",  data index = \0"
        !           431:                   8203D2000
        !           432:  417  00000d69 *                                       .text
        !           433:  418  00012771    dd 8f00000d58                        pushl   $L279
        !           434:  419  00012777    fe 08 effffffc3a                     callf   $8,_writes
        !           435:  420  0001277E                                   #                      writed( index );
        !           436:  421  0001277E    dd effffffc34                        pushl   _index
        !           437:  422  00012784    fe 08 effffffc2d                     callf   $8,_writed
        !           438:  423  0001278B                                   #                      writec('\n');
        !           439:  424  0001278B    dd 0a                                pushl   $10
        !           440:  425  0001278D    fe 08 effffffc24                     callf   $8,_writec
        !           441:  426  00012794                                   #                      writes("initial PSL = ");
        !           442:  427  00012794                                         .data   1
        !           443:  428  00000d69 *                                L280:
        !           444:  429  00000d69 *  696E697469616C2050534C203            .ascii  "initial PSL = \0"
        !           445:                   D2000
        !           446:  430  00000d78 *                                       .text
        !           447:  431  00012794    dd 8f00000d69                        pushl   $L280
        !           448:  432  0001279A    fe 08 effffffc17                     callf   $8,_writes
        !           449:  433  000127A1                                   #                      write32h( init_psl );
        !           450:  434  000127A1    dd effffffc11                        pushl   _init_psl
        !           451:  435  000127A7    fe 08 effffffc0a                     callf   $8,_write32h
        !           452:  436  000127AE                                   #                      writes(", final PSL = ");
        !           453:  437  000127AE                                         .data   1
        !           454:  438  00000d78 *                                L281:
        !           455:  439  00000d78 *  2C2066696E616C2050534C203            .ascii  ", final PSL = \0"
        !           456:                   D2000
        !           457:  440  00000d87 *                                       .text
        !           458:  441  000127AE    dd 8f00000d78                        pushl   $L281
        !           459:  442  000127B4    fe 08 effffffbfd                     callf   $8,_writes
        !           460:  443  000127BB                                   #                      write32h( psl_val );
        !           461:  444  000127BB    dd effffffbf7                        pushl   _psl_val
        !           462:  445  000127C1    fe 08 effffffbf0                     callf   $8,_write32h
        !           463:  446  000127C8                                   #                      writes(", expected PSL = ");
        !           464:  447  000127C8                                         .data   1
        !           465:  448  00000d87 *                                L282:
        !           466:  449  00000d87 *  2C20657870656374656420505            .ascii  ", expected PSL = \0"
        !           467:                   34C203D2000
        !           468:  450  00000d99 *                                       .text
        !           469:  451  000127C8    dd 8f00000d87                        pushl   $L282
        !           470:  452  000127CE    fe 08 effffffbe3                     callf   $8,_writes
        !           471:  453  000127D5                                   #                      write32h( exp_psl );
        !           472:  454  000127D5    dd effffffbdd                        pushl   _exp_psl
        !           473:  455  000127DB    fe 08 effffffbd6                     callf   $8,_write32h
        !           474:  456  000127E2                                   #                      writes("\n");
        !           475:  457  000127E2                                         .data   1
        !           476:  458  00000d99 *                                L283:
        !           477:  459  00000d99 *  0A00                                 .ascii  "\12\0"
        !           478:  460  00000d9b *                                       .text
        !           479:  461  000127E2    dd 8f00000d99                        pushl   $L283
        !           480:  462  000127E8    fe 08 effffffbc9                     callf   $8,_writes
        !           481:  463  000127EF                                   #                   }
        !           482:  464  000127EF                                   #                   if ( halt_flg ) 
        !           483:  465  000127EF                                  L274:
        !           484:  466  000127EF    5d effffffbc3                        tstl    _halt_flg
        !           485:  467  000127F5    31 09                                jeql    L284
        !           486:  468  000127F7                                   #                      cmpf_er_halt( BAD_PSL_HLT );   /* halt on the error   */
        !           487:  469  000127F7    dd 03                                pushl   $3
        !           488:  470  000127F9    fe 08 ef00000794                     callf   $8,_cmpf_er_halt
        !           489:  471  00012800                                   #                   if ( loop_on_err ) {
        !           490:  472  00012800                                  L284:
        !           491:  473  00012800    5d effffffbb2                        tstl    _loop_on_err
        !           492:  474  00012806    31 0a                                jeql    L285
        !           493:  475  00012808                                   #                      force_loop = TRUE;         /* set the force loop flag */
        !           494:  476  00012808    0d 01 effffffba9                     movl    $1,_force_loop
        !           495:  477  0001280F                                   #                      asm("brw _cmpf_2_lp1");    /* and loop on the error   */
        !           496:  478  0001280F    13 fe88                       brw _cmpf_2_lp1
        !           497:  479  00012812                                   #                   }   /* end of loop on error    */
        !           498:  480  00012812                                   #                }  /* end of compare error */
        !           499:  481  00012812                                  L285:
        !           500:  482  00012812                                   #             }  while ( ++status_index < 3 ); /* end of PSL WHILE loop */
        !           501:  483  00012812                                  L273:
        !           502:  484  00012812                                  L268:
        !           503:  485  00012812    6d effffffba0                        incl    _status_index
        !           504:  486  00012818    0d effffffb9a 50                     movl    _status_index,r0
        !           505:  487  0001281F    1d 50 03                             cmpl    r0,$3
        !           506:  488  00012822    81 03 13 fe60                        jlss    L269
        !           507:  489  00012827                                  L267:
        !           508:  490  00012827                                   #         } while( index++ < max_cmpf_1_index);/* end of data loop      */
        !           509:  491  00012827                                  L265:
        !           510:  492  00012827    0d effffffb8b 50                     movl    _index,r0
        !           511:  493  0001282E    6d effffffb84                        incl    _index
        !           512:  494  00012834    1d 50 effffffb7d                     cmpl    r0,_max_cmpf_1_index
        !           513:  495  0001283B    81 03 13 fe08                        jlss    L266
        !           514:  496  00012840                                  L264:
        !           515:  497  00012840                                   # }  /* end of subtest 2 */
        !           516:  498  00012840    40                                   ret#2
        !           517:  499  00012841                                         .set    L260,0x0
        !           518:  500  00012841                                  L262:
        !           519:  501  00012841    13 fdf1                              jbr     L263
        !           520:  502  00012844                                         .data
        !           521:  503  00000c8c *                                       .text
        !           522:  504  00012844                                         .align  1
        !           523:  505  00012844                                         .globl  _cmpf_3
        !           524:  506  00012844                                  _cmpf_3:
        !           525:  507  00012844    0000                                 .word   L286
        !           526:  508  00012846                                   #   
        !           527:  509  00012846                                   # 
        !           528:  510  00012846                                   # 
        !           529:  511  00012846                                   # /************************************************************************
        !           530:  512  00012846                                   # *
        !           531:  513  00012846                                   # *       SUBTEST 3 - Check for register corruption
        !           532:  514  00012846                                   # *
        !           533:  515  00012846                                   # ************************************************************************/
        !           534:  516  00012846                                   # cmpf_3() 
        !           535:  517  00012846                                   # {
        !           536:  518  00012846    13 01d2                              jbr     L288
        !           537:  519  00012849                                  L289:
        !           538:  520  00012849                                   #         force_loop = FALSE;                     /* clear force_loop flg   */
        !           539:  521  00012849    4d effffffb69                        clrl    _force_loop
        !           540:  522  0001284F                                   #         subtest = 3;
        !           541:  523  0001284F    0d 03 effffffb62                     movl    $3,_subtest
        !           542:  524  00012856                                   #     fill_reg_buf( load_regs );              /* get pattern for regs   */
        !           543:  525  00012856    dd 8f00000000                        pushl   $_load_regs
        !           544:  526  0001285C    fe 08 effffffb55                     callf   $8,_fill_reg_buf
        !           545:  527  00012863                                   #     index = 0;
        !           546:  528  00012863    4d effffffb4f                        clrl    _index
        !           547:  529  00012869                                   #         do 
        !           548:  530  00012869                                  L293:
        !           549:  531  00012869                                   #         {
        !           550:  532  00012869                                   #              sgl_value_1  = cmpf_1_data[index].one;   /* data to load    */
        !           551:  533  00012869    5c 0c effffffb48 50                  mull3   $12,_index,r0
        !           552:  534  00012871    0d e000000000 effffffb3c             movl    _cmpf_1_data(r0),_sgl_value_1
        !           553:  535  0001287C                                   #              sgl_value_2  = cmpf_1_data[index].two;   /* data to compare */
        !           554:  536  0001287C    5c 0c effffffb35 50                  mull3   $12,_index,r0
        !           555:  537  00012884    0d e000000004 effffffb29             movl    _cmpf_1_data+4(r0),_sgl_value_2
        !           556:  538  0001288F                                   # /*
        !           557:  539  0001288F                                   #  * If LOOP ON ERROR is set, this is the loop for this subtest.
        !           558:  540  0001288F                                   #  * The force loop flag is set after the first error.
        !           559:  541  0001288F                                   # */
        !           560:  542  0001288F                                   #              asm("_cmpf_3_lp1:");
        !           561:  543  0001288F                                  _cmpf_3_lp1:
        !           562:  544  0001288F                                   #              asm("ldf _sgl_value_1");           /* LOAD the accumulator  */
        !           563:  545  0001288F    06 effffffb23                 ldf _sgl_value_1
        !           564:  546  00012895                                   #              asm("nop");
        !           565:  547  00012895    10                            nop
        !           566:  548  00012896                                   #          asm("loadr $0x1fff,_load_regs");   /* load regs 0 - 12       */
        !           567:  549  00012896    ab 891fff effffffb19          loadr $0x1fff,_load_regs
        !           568:  550  0001289F                                   #              asm("nop");
        !           569:  551  0001289F    10                            nop
        !           570:  552  000128A0                                   #              asm("cmpf _sgl_value_2");          /* test the values        */
        !           571:  553  000128A0    36 effffffb12                 cmpf _sgl_value_2
        !           572:  554  000128A6                                   #              asm("nop");
        !           573:  555  000128A6    10                            nop
        !           574:  556  000128A7                                   #              asm("storer $0x1fff,_store_regs"); /* store regs 0 - 12 */
        !           575:  557  000128A7    bb 891fff effffffb08          storer $0x1fff,_store_regs
        !           576:  558  000128B0                                   #              asm("stf _sgl_st_acc");            /* save the final acc       */
        !           577:  559  000128B0    26 effffffb02                 stf _sgl_st_acc
        !           578:  560  000128B6                                   #              if( force_loop )                   /* loop?                    */
        !           579:  561  000128B6    5d effffffafc                        tstl    _force_loop
        !           580:  562  000128BC    31 02                                jeql    L294
        !           581:  563  000128BE                                   #                    asm("brb _cmpf_3_lp1");;     /* run the loop again       */
        !           582:  564  000128BE    11 cf                         brb _cmpf_3_lp1
        !           583:  565  000128C0                                  L294:
        !           584:  566  000128C0                                   # /*
        !           585:  567  000128C0                                   #  * Now compare the stored register values to those that were loaded
        !           586:  568  000128C0                                   # */
        !           587:  569  000128C0                                   #              index2 = 0;
        !           588:  570  000128C0    4d effffffaf2                        clrl    _index2
        !           589:  571  000128C6                                   #              while( (load_regs[index2] == store_regs[index2]) && (index2 < 13) )
        !           590:  572  000128C6                                  L295:
        !           591:  573  000128C6    0d effffffaec 50                     movl    _index2,r0
        !           592:  574  000128CD    0d effffffae5 51                     movl    _index2,r1
        !           593:  575  000128D4    1d 40effffffadd                      cmpl    _load_regs[r0],_store_regs[r1]
        !           594:                   41effffffad7 
        !           595:  576  000128E1    21 11                                jneq    L296
        !           596:  577  000128E3    1d effffffacf 0d                     cmpl    _index2,$13
        !           597:  578  000128EA    81 08                                jgeq    L296
        !           598:  579  000128EC                                   #                   index2++;                     /* check reg values */
        !           599:  580  000128EC    6d effffffac6                        incl    _index2
        !           600:  581  000128F2    11 d2                                jbr     L295
        !           601:  582  000128F4                                  L296:
        !           602:  583  000128F4                                   #              if( index2 < 13 )  {               /* error if index2 < 13 */
        !           603:  584  000128F4    1d effffffabe 0d                     cmpl    _index2,$13
        !           604:  585  000128FB    91 03 13 0101                        jgeq    L297
        !           605:  586  00012900                                   #                   errcnt++;                     /* bump the error count */
        !           606:  587  00012900    6d effffffab2                        incl    _errcnt
        !           607:  588  00012906                                   #                   if ( prt_error ) {
        !           608:  589  00012906    5d effffffaac                        tstl    _prt_error
        !           609:  590  0001290C    21 03 13 00cd                        jeql    L298
        !           610:  591  00012911                                   #                        writes(" \n");      /* start a new print line   */
        !           611:  592  00012911                                         .data   1
        !           612:  593  00000d9b *                                L299:
        !           613:  594  00000d9b *  200A00                               .ascii  " \12\0"
        !           614:  595  00000d9e *                                       .text
        !           615:  596  00012911    dd 8f00000d9b                        pushl   $L299
        !           616:  597  00012917    fe 08 effffffa9a                     callf   $8,_writes
        !           617:  598  0001291E                                   #                        writes("cycle: ");
        !           618:  599  0001291E                                         .data   1
        !           619:  600  00000d9e *                                L300:
        !           620:  601  00000d9e *  6379636C653A2000                     .ascii  "cycle: \0"
        !           621:  602  00000da6 *                                       .text
        !           622:  603  0001291E    dd 8f00000d9e                        pushl   $L300
        !           623:  604  00012924    fe 08 effffffa8d                     callf   $8,_writes
        !           624:  605  0001292B                                   #                        writed( cycle );
        !           625:  606  0001292B    dd effffffa87                        pushl   _cycle
        !           626:  607  00012931    fe 08 effffffa80                     callf   $8,_writed
        !           627:  608  00012938                                   #                        writes(", CMPF test ");
        !           628:  609  00012938                                         .data   1
        !           629:  610  00000da6 *                                L301:
        !           630:  611  00000da6 *  2C20434D50462074657374200            .ascii  ", CMPF test \0"
        !           631:                   0
        !           632:  612  00000db3 *                                       .text
        !           633:  613  00012938    dd 8f00000da6                        pushl   $L301
        !           634:  614  0001293E    fe 08 effffffa73                     callf   $8,_writes
        !           635:  615  00012945                                   #                    writed( test_no );
        !           636:  616  00012945    dd effffffa6d                        pushl   _test_no
        !           637:  617  0001294B    fe 08 effffffa66                     callf   $8,_writed
        !           638:  618  00012952                                   #     writes(", subtest 3 - A REGISTER WAS MODIFIED\n");
        !           639:  619  00012952                                         .data   1
        !           640:  620  00000db3 *                                L302:
        !           641:  621  00000db3 *  2C20737562746573742033202            .ascii  ", subtest 3 - A REGISTER WAS MODIFIED\12\0"
        !           642:                   D204120524547495354455220
        !           643:                   574153204D4F4449464945440
        !           644:                   A00
        !           645:  622  00000dda *                                       .text
        !           646:  623  00012952    dd 8f00000db3                        pushl   $L302
        !           647:  624  00012958    fe 08 effffffa59                     callf   $8,_writes
        !           648:  625  0001295F                                   #                        print_cmpf_data();       /* print the operands      */
        !           649:  626  0001295F    fe 04 ef000005f2                     callf   $4,_print_cmpf_data
        !           650:  627  00012966                                   #                        writes("\n");
        !           651:  628  00012966                                         .data   1
        !           652:  629  00000dda *                                L303:
        !           653:  630  00000dda *  0A00                                 .ascii  "\12\0"
        !           654:  631  00000ddc *                                       .text
        !           655:  632  00012966    dd 8f00000dda                        pushl   $L303
        !           656:  633  0001296C    fe 08 effffffa45                     callf   $8,_writes
        !           657:  634  00012973                                   #                        writes("register ");     /* print the information   */
        !           658:  635  00012973                                         .data   1
        !           659:  636  00000ddc *                                L304:
        !           660:  637  00000ddc *  72656769737465722000                 .ascii  "register \0"
        !           661:  638  00000de6 *                                       .text
        !           662:  639  00012973    dd 8f00000ddc                        pushl   $L304
        !           663:  640  00012979    fe 08 effffffa38                     callf   $8,_writes
        !           664:  641  00012980                                   #                        writed( index2 );        /*    about the corrupted  */
        !           665:  642  00012980    dd effffffa32                        pushl   _index2
        !           666:  643  00012986    fe 08 effffffa2b                     callf   $8,_writed
        !           667:  644  0001298D                                   #                        writes(" = ");           /*        register         */
        !           668:  645  0001298D                                         .data   1
        !           669:  646  00000de6 *                                L305:
        !           670:  647  00000de6 *  203D2000                             .ascii  " = \0"
        !           671:  648  00000dea *                                       .text
        !           672:  649  0001298D    dd 8f00000de6                        pushl   $L305
        !           673:  650  00012993    fe 08 effffffa1e                     callf   $8,_writes
        !           674:  651  0001299A                                   #                        write32h( store_regs[index2] );
        !           675:  652  0001299A    0d effffffa18 50                     movl    _index2,r0
        !           676:  653  000129A1    dd 40effffffa10                      pushl   _store_regs[r0]
        !           677:  654  000129A8    fe 08 effffffa09                     callf   $8,_write32h
        !           678:  655  000129AF                                   #                        writes(",  should be = ");
        !           679:  656  000129AF                                         .data   1
        !           680:  657  00000dea *                                L306:
        !           681:  658  00000dea *  2C202073686F756C642062652            .ascii  ",  should be = \0"
        !           682:                   03D2000
        !           683:  659  00000dfa *                                       .text
        !           684:  660  000129AF    dd 8f00000dea                        pushl   $L306
        !           685:  661  000129B5    fe 08 effffff9fc                     callf   $8,_writes
        !           686:  662  000129BC                                   #                        write32h( load_regs[index2] );
        !           687:  663  000129BC    0d effffff9f6 50                     movl    _index2,r0
        !           688:  664  000129C3    dd 40effffff9ee                      pushl   _load_regs[r0]
        !           689:  665  000129CA    fe 08 effffff9e7                     callf   $8,_write32h
        !           690:  666  000129D1                                   #                        writes("\n");
        !           691:  667  000129D1                                         .data   1
        !           692:  668  00000dfa *                                L307:
        !           693:  669  00000dfa *  0A00                                 .ascii  "\12\0"
        !           694:  670  00000dfc *                                       .text
        !           695:  671  000129D1    dd 8f00000dfa                        pushl   $L307
        !           696:  672  000129D7    fe 08 effffff9da                     callf   $8,_writes
        !           697:  673  000129DE                                   #                    }
        !           698:  674  000129DE                                   #                   if ( halt_flg )               /* halt on error? */
        !           699:  675  000129DE                                  L298:
        !           700:  676  000129DE    5d effffff9d4                        tstl    _halt_flg
        !           701:  677  000129E4    31 09                                jeql    L308
        !           702:  678  000129E6                                   #                        cmpf_er_halt( BAD_REG_HLT );    /* PC after the halt */
        !           703:  679  000129E6    dd 02                                pushl   $2
        !           704:  680  000129E8    fe 08 ef000005a5                     callf   $8,_cmpf_er_halt
        !           705:  681  000129EF                                   #                   if ( loop_on_err ) {
        !           706:  682  000129EF                                  L308:
        !           707:  683  000129EF    5d effffff9c3                        tstl    _loop_on_err
        !           708:  684  000129F5    31 0a                                jeql    L309
        !           709:  685  000129F7                                   #                      force_loop = TRUE;         /* set the force loop flag */
        !           710:  686  000129F7    0d 01 effffff9ba                     movl    $1,_force_loop
        !           711:  687  000129FE                                   #                      asm("brw _cmpf_3_lp1");    /* and loop on the error   */
        !           712:  688  000129FE    13 fe8e                       brw _cmpf_3_lp1
        !           713:  689  00012A01                                   #                   }   /* end of loop on error    */
        !           714:  690  00012A01                                   #              }    /* end of register corruption error */
        !           715:  691  00012A01                                  L309:
        !           716:  692  00012A01                                   #         } while( index++ < max_cmpf_1_index);/* end of data loop      */
        !           717:  693  00012A01                                  L297:
        !           718:  694  00012A01                                  L292:
        !           719:  695  00012A01    0d effffff9b1 50                     movl    _index,r0
        !           720:  696  00012A08    6d effffff9aa                        incl    _index
        !           721:  697  00012A0E    1d 50 effffff9a3                     cmpl    r0,_max_cmpf_1_index
        !           722:  698  00012A15    81 03 13 fe4f                        jlss    L293
        !           723:  699  00012A1A                                  L291:
        !           724:  700  00012A1A                                   # }  /* end of subtest 3 */
        !           725:  701  00012A1A    40                                   ret#2
        !           726:  702  00012A1B                                         .set    L286,0x0
        !           727:  703  00012A1B                                  L288:
        !           728:  704  00012A1B    13 fe2b                              jbr     L289
        !           729:  705  00012A1E                                         .data
        !           730:  706  00000c8c *                                       .text
        !           731:  707  00012A1E                                         .align  1
        !           732:  708  00012A1E                                         .globl  _cmpf_4
        !           733:  709  00012A1E                                  _cmpf_4:
        !           734:  710  00012A1E    0000                                 .word   L310
        !           735:  711  00012A20                                   #   
        !           736:  712  00012A20                                   # 
        !           737:  713  00012A20                                   # 
        !           738:  714  00012A20                                   # /************************************************************************
        !           739:  715  00012A20                                   # *
        !           740:  716  00012A20                                   # *       SUBTEST 4 - Check for accumulator corruption
        !           741:  717  00012A20                                   # *
        !           742:  718  00012A20                                   # ************************************************************************/
        !           743:  719  00012A20                                   # cmpf_4() 
        !           744:  720  00012A20                                   # {
        !           745:  721  00012A20    13 0181                              jbr     L312
        !           746:  722  00012A23                                  L313:
        !           747:  723  00012A23                                   #         force_loop = FALSE;                         /* clear force_loop flg */
        !           748:  724  00012A23    4d effffff98f                        clrl    _force_loop
        !           749:  725  00012A29                                   #         index = 0;
        !           750:  726  00012A29    4d effffff989                        clrl    _index
        !           751:  727  00012A2F                                   #         do 
        !           752:  728  00012A2F                                  L316:
        !           753:  729  00012A2F                                   #         {
        !           754:  730  00012A2F                                   #              sgl_value_1   = cmpf_1_data[index].one; /* data to load */
        !           755:  731  00012A2F    5c 0c effffff982 50                  mull3   $12,_index,r0
        !           756:  732  00012A37    0d e000000000 effffff976             movl    _cmpf_1_data(r0),_sgl_value_1
        !           757:  733  00012A42                                   #              sgl_value_2   = cmpf_1_data[index].two;
        !           758:  734  00012A42    5c 0c effffff96f 50                  mull3   $12,_index,r0
        !           759:  735  00012A4A    0d e000000004 effffff963             movl    _cmpf_1_data+4(r0),_sgl_value_2
        !           760:  736  00012A55                                   #               if( sgl_value_1 & 0x7f800000 )
        !           761:  737  00012A55    3d 8f7f800000 effffff958             bitl    $2139095040,_sgl_value_1
        !           762:  738  00012A60    31 0d                                jeql    L317
        !           763:  739  00012A62                                   #                   sgl_expected = sgl_value_1;       /* expected = loaded */
        !           764:  740  00012A62    0d effffff950 effffff94b             movl    _sgl_value_1,_sgl_expected
        !           765:  741  00012A6D                                   #              else 
        !           766:  742  00012A6D    11 06                                jbr     L318
        !           767:  743  00012A6F                                  L317:
        !           768:  744  00012A6F                                   #                   sgl_expected = 0;         /* expect a '0' stored */
        !           769:  745  00012A6F    4d effffff943                        clrl    _sgl_expected
        !           770:  746  00012A75                                  L318:
        !           771:  747  00012A75                                   # /*
        !           772:  748  00012A75                                   #  * If LOOP ON ERROR is set, this is the loop for this subtest.
        !           773:  749  00012A75                                   #  * The force loop flag is set after the first error.
        !           774:  750  00012A75                                   # */
        !           775:  751  00012A75                                   #              asm("_cmpf_4_lp1:");
        !           776:  752  00012A75                                  _cmpf_4_lp1:
        !           777:  753  00012A75                                   #              asm("ldf _sgl_value_1");           /* LOAD the accumulator  */
        !           778:  754  00012A75    06 effffff93d                 ldf _sgl_value_1
        !           779:  755  00012A7B                                   #              asm("cmpf _sgl_value_2");          /* test the values       */
        !           780:  756  00012A7B    36 effffff937                 cmpf _sgl_value_2
        !           781:  757  00012A81                                   #              asm("stf _sgl_st_acc");            /* store the accumulator */
        !           782:  758  00012A81    26 effffff931                 stf _sgl_st_acc
        !           783:  759  00012A87                                   #              if( force_loop )                   /* loop?                    */
        !           784:  760  00012A87    5d effffff92b                        tstl    _force_loop
        !           785:  761  00012A8D    31 02                                jeql    L319
        !           786:  762  00012A8F                                   #                    asm("brb _cmpf_4_lp1");;     /* run the loop again       */
        !           787:  763  00012A8F    11 e4                         brb _cmpf_4_lp1
        !           788:  764  00012A91                                  L319:
        !           789:  765  00012A91                                   #              if( sgl_st_acc != sgl_expected )   /* COMPARE the values */
        !           790:  766  00012A91    1d effffff921 effffff91c             cmpl    _sgl_st_acc,_sgl_expected
        !           791:  767  00012A9C    21 03 13 00e9                        jeql    L320
        !           792:  768  00012AA1                                   #              {
        !           793:  769  00012AA1                                   #                   errcnt++;                     /* bump the error count */
        !           794:  770  00012AA1    6d effffff911                        incl    _errcnt
        !           795:  771  00012AA7                                   #                   if ( prt_error ) {
        !           796:  772  00012AA7    5d effffff90b                        tstl    _prt_error
        !           797:  773  00012AAD    21 03 13 00b5                        jeql    L321
        !           798:  774  00012AB2                                   #                        writes(" \n");      /* start a new print line   */
        !           799:  775  00012AB2                                         .data   1
        !           800:  776  00000dfc *                                L322:
        !           801:  777  00000dfc *  200A00                               .ascii  " \12\0"
        !           802:  778  00000dff *                                       .text
        !           803:  779  00012AB2    dd 8f00000dfc                        pushl   $L322
        !           804:  780  00012AB8    fe 08 effffff8f9                     callf   $8,_writes
        !           805:  781  00012ABF                                   #                        writes("cycle: ");
        !           806:  782  00012ABF                                         .data   1
        !           807:  783  00000dff *                                L323:
        !           808:  784  00000dff *  6379636C653A2000                     .ascii  "cycle: \0"
        !           809:  785  00000e07 *                                       .text
        !           810:  786  00012ABF    dd 8f00000dff                        pushl   $L323
        !           811:  787  00012AC5    fe 08 effffff8ec                     callf   $8,_writes
        !           812:  788  00012ACC                                   #                        writed( cycle );
        !           813:  789  00012ACC    dd effffff8e6                        pushl   _cycle
        !           814:  790  00012AD2    fe 08 effffff8df                     callf   $8,_writed
        !           815:  791  00012AD9                                   #                        writes("  CMPF test ");
        !           816:  792  00012AD9                                         .data   1
        !           817:  793  00000e07 *                                L324:
        !           818:  794  00000e07 *  2020434D50462074657374200            .ascii  "  CMPF test \0"
        !           819:                   0
        !           820:  795  00000e14 *                                       .text
        !           821:  796  00012AD9    dd 8f00000e07                        pushl   $L324
        !           822:  797  00012ADF    fe 08 effffff8d2                     callf   $8,_writes
        !           823:  798  00012AE6                                   #                    writed( test_no );
        !           824:  799  00012AE6    dd effffff8cc                        pushl   _test_no
        !           825:  800  00012AEC    fe 08 effffff8c5                     callf   $8,_writed
        !           826:  801  00012AF3                                   #            writes(", subtest 4 (Cache Data) - THE ACC WAS MODIFIED\n");
        !           827:  802  00012AF3                                         .data   1
        !           828:  803  00000e14 *                                L325:
        !           829:  804  00000e14 *  2C20737562746573742034202            .ascii  ", subtest 4 (Cache Data) - THE ACC WAS MODIFIED\12\0"
        !           830:                   8436163686520446174612920
        !           831:                   2D20544845204143432057415
        !           832:                   3204D4F4449464945440A00
        !           833:  805  00000e45 *                                       .text
        !           834:  806  00012AF3    dd 8f00000e14                        pushl   $L325
        !           835:  807  00012AF9    fe 08 effffff8b8                     callf   $8,_writes
        !           836:  808  00012B00                                   #                        print_cmpf_data();
        !           837:  809  00012B00    fe 04 ef00000451                     callf   $4,_print_cmpf_data
        !           838:  810  00012B07                                   #                        writes(",  data index = ");
        !           839:  811  00012B07                                         .data   1
        !           840:  812  00000e45 *                                L326:
        !           841:  813  00000e45 *  2C20206461746120696E64657            .ascii  ",  data index = \0"
        !           842:                   8203D2000
        !           843:  814  00000e56 *                                       .text
        !           844:  815  00012B07    dd 8f00000e45                        pushl   $L326
        !           845:  816  00012B0D    fe 08 effffff8a4                     callf   $8,_writes
        !           846:  817  00012B14                                   #                        writed( index );
        !           847:  818  00012B14    dd effffff89e                        pushl   _index
        !           848:  819  00012B1A    fe 08 effffff897                     callf   $8,_writed
        !           849:  820  00012B21                                   #                        writec('\n');
        !           850:  821  00012B21    dd 0a                                pushl   $10
        !           851:  822  00012B23    fe 08 effffff88e                     callf   $8,_writec
        !           852:  823  00012B2A                                   #                        writes("  final Acc = ");
        !           853:  824  00012B2A                                         .data   1
        !           854:  825  00000e56 *                                L327:
        !           855:  826  00000e56 *  202066696E616C20416363203            .ascii  "  final Acc = \0"
        !           856:                   D2000
        !           857:  827  00000e65 *                                       .text
        !           858:  828  00012B2A    dd 8f00000e56                        pushl   $L327
        !           859:  829  00012B30    fe 08 effffff881                     callf   $8,_writes
        !           860:  830  00012B37                                   #                        write32h( sgl_st_acc );
        !           861:  831  00012B37    dd effffff87b                        pushl   _sgl_st_acc
        !           862:  832  00012B3D    fe 08 effffff874                     callf   $8,_write32h
        !           863:  833  00012B44                                   #                        writes(",  Acc expected = ");
        !           864:  834  00012B44                                         .data   1
        !           865:  835  00000e65 *                                L328:
        !           866:  836  00000e65 *  2C20204163632065787065637            .ascii  ",  Acc expected = \0"
        !           867:                   46564203D2000
        !           868:  837  00000e78 *                                       .text
        !           869:  838  00012B44    dd 8f00000e65                        pushl   $L328
        !           870:  839  00012B4A    fe 08 effffff867                     callf   $8,_writes
        !           871:  840  00012B51                                   #                        write32h( sgl_expected );
        !           872:  841  00012B51    dd effffff861                        pushl   _sgl_expected
        !           873:  842  00012B57    fe 08 effffff85a                     callf   $8,_write32h
        !           874:  843  00012B5E                                   #                        writec('\n');
        !           875:  844  00012B5E    dd 0a                                pushl   $10
        !           876:  845  00012B60    fe 08 effffff851                     callf   $8,_writec
        !           877:  846  00012B67                                   #                   }
        !           878:  847  00012B67                                   #                   if ( halt_flg )               /* halt on error? */
        !           879:  848  00012B67                                  L321:
        !           880:  849  00012B67    5d effffff84b                        tstl    _halt_flg
        !           881:  850  00012B6D    31 09                                jeql    L329
        !           882:  851  00012B6F                                   #                        cmpf_er_halt( BAD_ACC_HLT ); /* halt on the error */
        !           883:  852  00012B6F    dd 01                                pushl   $1
        !           884:  853  00012B71    fe 08 ef0000041c                     callf   $8,_cmpf_er_halt
        !           885:  854  00012B78                                   #                   if ( loop_on_err ) {
        !           886:  855  00012B78                                  L329:
        !           887:  856  00012B78    5d effffff83a                        tstl    _loop_on_err
        !           888:  857  00012B7E    31 0a                                jeql    L330
        !           889:  858  00012B80                                   #                      force_loop = TRUE;         /* set the force loop flag */
        !           890:  859  00012B80    0d 01 effffff831                     movl    $1,_force_loop
        !           891:  860  00012B87                                   #                      asm("brw _cmpf_4_lp1");    /* and loop on the error   */
        !           892:  861  00012B87    13 feeb                       brw _cmpf_4_lp1
        !           893:  862  00012B8A                                   #                   }   /* end of loop on error    */
        !           894:  863  00012B8A                                   #              }   /* end of compare error    */
        !           895:  864  00012B8A                                  L330:
        !           896:  865  00012B8A                                   #         } while( index++ < max_cmpf_1_index);/* end of data loop      */
        !           897:  866  00012B8A                                  L320:
        !           898:  867  00012B8A                                  L315:
        !           899:  868  00012B8A    0d effffff828 50                     movl    _index,r0
        !           900:  869  00012B91    6d effffff821                        incl    _index
        !           901:  870  00012B97    1d 50 effffff81a                     cmpl    r0,_max_cmpf_1_index
        !           902:  871  00012B9E    81 03 13 fe8c                        jlss    L316
        !           903:  872  00012BA3                                  L314:
        !           904:  873  00012BA3                                   # }  /* end of subtest 4 */
        !           905:  874  00012BA3    40                                   ret#2
        !           906:  875  00012BA4                                         .set    L310,0x0
        !           907:  876  00012BA4                                  L312:
        !           908:  877  00012BA4    13 fe7c                              jbr     L313
        !           909:  878  00012BA7                                         .data
        !           910:  879  00000c8c *                                       .text
        !           911:  880  00012BA7    00                                   .align  1
        !           912:  881  00012BA8                                         .globl  _cmpf_5
        !           913:  882  00012BA8                                  _cmpf_5:
        !           914:  883  00012BA8    0000                                 .word   L331
        !           915:  884  00012BAA                                   #   
        !           916:  885  00012BAA                                   # 
        !           917:  886  00012BAA                                   # 
        !           918:  887  00012BAA                                   # /****************************************************************************
        !           919:  888  00012BAA                                   # *
        !           920:  889  00012BAA                                   # *               SUBTEST 5 - CMPF status test  - piped entry
        !           921:  890  00012BAA                                   # *
        !           922:  891  00012BAA                                   # ****************************************************************************/
        !           923:  892  00012BAA                                   # cmpf_5() 
        !           924:  893  00012BAA                                   # {
        !           925:  894  00012BAA    13 0211                              jbr     L333
        !           926:  895  00012BAD                                  L334:
        !           927:  896  00012BAD                                   #         force_loop = FALSE; 
        !           928:  897  00012BAD    4d effffff805                        clrl    _force_loop
        !           929:  898  00012BB3                                   #     subtest = 5;
        !           930:  899  00012BB3    0d 05 effffff7fe                     movl    $5,_subtest
        !           931:  900  00012BBA                                   #     index = 0;
        !           932:  901  00012BBA    4d effffff7f8                        clrl    _index
        !           933:  902  00012BC0                                   #         do 
        !           934:  903  00012BC0                                  L337:
        !           935:  904  00012BC0                                   #         {
        !           936:  905  00012BC0                                   #            sgl_value_1  = cmpf_1_data[index].one; /* get the data operands  */
        !           937:  906  00012BC0    5c 0c effffff7f1 50                  mull3   $12,_index,r0
        !           938:  907  00012BC8    0d e000000000 effffff7e5             movl    _cmpf_1_data(r0),_sgl_value_1
        !           939:  908  00012BD3                                   #            sgl_value_2  = cmpf_1_data[index].two;
        !           940:  909  00012BD3    5c 0c effffff7de 50                  mull3   $12,_index,r0
        !           941:  910  00012BDB    0d e000000004 effffff7d2             movl    _cmpf_1_data+4(r0),_sgl_value_2
        !           942:  911  00012BE6                                   #            sgl_expected = cmpf_1_data[index].flag;/* get expected results */
        !           943:  912  00012BE6    5c 0c effffff7cb 50                  mull3   $12,_index,r0
        !           944:  913  00012BEE    0d e000000008 effffff7bf             movl    _cmpf_1_data+8(r0),_sgl_expected
        !           945:  914  00012BF9                                   #            status_index = 0;                      /* clear the status index */
        !           946:  915  00012BF9    4d effffff7b9                        clrl    _status_index
        !           947:  916  00012BFF                                   #            do
        !           948:  917  00012BFF                                  L340:
        !           949:  918  00012BFF                                   #            {
        !           950:  919  00012BFF                                   #                sgl_dummy1 = status_array[status_index]; /* array = +, -, 0  */
        !           951:  920  00012BFF    0d effffff7b3 50                     movl    _status_index,r0
        !           952:  921  00012C06    0d 40effffff7ab                      movl    _status_array[r0],_sgl_dummy1
        !           953:                   effffff7a6 
        !           954:  922  00012C12                                   # /*
        !           955:  923  00012C12                                   #  * If LOOP ON ERROR is set, this is the loop for this subtest.
        !           956:  924  00012C12                                   #  * The force loop flag is set after the first error.
        !           957:  925  00012C12                                   # */
        !           958:  926  00012C12                                   #                asm("_cmpf_5_lp1:");
        !           959:  927  00012C12                                  _cmpf_5_lp1:
        !           960:  928  00012C12                                   #                asm("movl $0,r0");               /* clear r0                 */
        !           961:  929  00012C12    0d 00 50                      movl $0,r0
        !           962:  930  00012C15                                   #                asm("ldf r0");                   /* load the accumulator     */
        !           963:  931  00012C15    06 50                         ldf r0
        !           964:  932  00012C17                                   #                asm("addf _sgl_value_1");        /* add the 1st operand      */
        !           965:  933  00012C17    c6 effffff79b                 addf _sgl_value_1
        !           966:  934  00012C1D                                   #                asm("tstl _sgl_dummy1");         /* generate initial status  */
        !           967:  935  00012C1D    5d effffff795                 tstl _sgl_dummy1
        !           968:  936  00012C23                                   #                asm("movpsl _init_psl");         /* save the initial status  */
        !           969:  937  00012C23    cd effffff78f                 movpsl _init_psl
        !           970:  938  00012C29                                   #                asm("cmpf _sgl_value_2");        /* compare the operands     */
        !           971:  939  00012C29    36 effffff789                 cmpf _sgl_value_2
        !           972:  940  00012C2F                                   #                asm("movpsl _psl_val");          /* save the final status    */
        !           973:  941  00012C2F    cd effffff783                 movpsl _psl_val
        !           974:  942  00012C35                                   #                asm("stf _sgl_st_acc");          /* save the final acc       */
        !           975:  943  00012C35    26 effffff77d                 stf _sgl_st_acc
        !           976:  944  00012C3B                                   #                if( force_loop )                 /* loop?                    */
        !           977:  945  00012C3B    5d effffff777                        tstl    _force_loop
        !           978:  946  00012C41    31 02                                jeql    L341
        !           979:  947  00012C43                                   #                    asm("brb _cmpf_5_lp1");;     /* run the loop again       */
        !           980:  948  00012C43    11 cd                         brb _cmpf_5_lp1
        !           981:  949  00012C45                                  L341:
        !           982:  950  00012C45                                   #                exp_psl = init_psl;              /* get the initial PSL      */
        !           983:  951  00012C45    0d effffff76d effffff768             movl    _init_psl,_exp_psl
        !           984:  952  00012C50                                   #                exp_psl &= 0xfffffff3;           /* clear ZERO, NEGATIVE     */
        !           985:  953  00012C50    ac 88f3 effffff760                   andl2   $-13,_exp_psl
        !           986:  954  00012C58                                   #                if( sgl_expected == ZERO )
        !           987:  955  00012C58    1d effffff75a 04                     cmpl    _sgl_expected,$4
        !           988:  956  00012C5F    21 07                                jneq    L342
        !           989:  957  00012C61                                   #                    exp_psl |= PSL_Z;            /* expect the ZERO bit set  */
        !           990:  958  00012C61    8c 04 effffff750                     orl2    $4,_exp_psl
        !           991:  959  00012C68                                   #                if( sgl_expected == NEGATIVE )
        !           992:  960  00012C68                                  L342:
        !           993:  961  00012C68    1d effffff74a 08                     cmpl    _sgl_expected,$8
        !           994:  962  00012C6F    21 07                                jneq    L343
        !           995:  963  00012C71                                   #                    exp_psl |= PSL_N;            /* expect the NEG bit set   */
        !           996:  964  00012C71    8c 08 effffff740                     orl2    $8,_exp_psl
        !           997:  965  00012C78                                   #                if( psl_val != exp_psl ) {       /* COMPARE the values       */
        !           998:  966  00012C78                                  L343:
        !           999:  967  00012C78    1d effffff73a effffff735             cmpl    _psl_val,_exp_psl
        !          1000:  968  00012C83    21 03 13 0107                        jeql    L344
        !          1001:  969  00012C88                                   #                   errcnt++;                     /* bump the error count     */
        !          1002:  970  00012C88    6d effffff72a                        incl    _errcnt
        !          1003:  971  00012C8E                                   #                   if ( prt_error ) {
        !          1004:  972  00012C8E    5d effffff724                        tstl    _prt_error
        !          1005:  973  00012C94    21 03 13 00d3                        jeql    L345
        !          1006:  974  00012C99                                   #                      writes(" \n");         /* start a new print line   */
        !          1007:  975  00012C99                                         .data   1
        !          1008:  976  00000e78 *                                L346:
        !          1009:  977  00000e78 *  200A00                               .ascii  " \12\0"
        !          1010:  978  00000e7b *                                       .text
        !          1011:  979  00012C99    dd 8f00000e78                        pushl   $L346
        !          1012:  980  00012C9F    fe 08 effffff712                     callf   $8,_writes
        !          1013:  981  00012CA6                                   #                      writes("cycle: ");
        !          1014:  982  00012CA6                                         .data   1
        !          1015:  983  00000e7b *                                L347:
        !          1016:  984  00000e7b *  6379636C653A2000                     .ascii  "cycle: \0"
        !          1017:  985  00000e83 *                                       .text
        !          1018:  986  00012CA6    dd 8f00000e7b                        pushl   $L347
        !          1019:  987  00012CAC    fe 08 effffff705                     callf   $8,_writes
        !          1020:  988  00012CB3                                   #                      writed( cycle );
        !          1021:  989  00012CB3    dd effffff6ff                        pushl   _cycle
        !          1022:  990  00012CB9    fe 08 effffff6f8                     callf   $8,_writed
        !          1023:  991  00012CC0                                   #                      writes("  CMPF test ");
        !          1024:  992  00012CC0                                         .data   1
        !          1025:  993  00000e83 *                                L348:
        !          1026:  994  00000e83 *  2020434D50462074657374200            .ascii  "  CMPF test \0"
        !          1027:                   0
        !          1028:  995  00000e90 *                                       .text
        !          1029:  996  00012CC0    dd 8f00000e83                        pushl   $L348
        !          1030:  997  00012CC6    fe 08 effffff6eb                     callf   $8,_writes
        !          1031:  998  00012CCD                                   #                  writed( test_no );
        !          1032:  999  00012CCD    dd effffff6e5                        pushl   _test_no
        !          1033: 1000  00012CD3    fe 08 effffff6de                     callf   $8,_writed
        !          1034: 1001  00012CDA                                   #                  writes(", subtest 5 (Piped Entry) - BAD FINAL PSL\n");
        !          1035: 1002  00012CDA                                         .data   1
        !          1036: 1003  00000e90 *                                L349:
        !          1037: 1004  00000e90 *  2C20737562746573742035202            .ascii  ", subtest 5 (Piped Entry) - BAD FINAL PSL\12\0"
        !          1038:                   8506970656420456E74727929
        !          1039:                   202D204241442046494E414C2
        !          1040:                   050534C0A00
        !          1041: 1005  00000ebb *                                       .text
        !          1042: 1006  00012CDA    dd 8f00000e90                        pushl   $L349
        !          1043: 1007  00012CE0    fe 08 effffff6d1                     callf   $8,_writes
        !          1044: 1008  00012CE7                                   #                      print_cmpf_data();
        !          1045: 1009  00012CE7    fe 04 ef0000026a                     callf   $4,_print_cmpf_data
        !          1046: 1010  00012CEE                                   #                      writes(",  data index = ");
        !          1047: 1011  00012CEE                                         .data   1
        !          1048: 1012  00000ebb *                                L350:
        !          1049: 1013  00000ebb *  2C20206461746120696E64657            .ascii  ",  data index = \0"
        !          1050:                   8203D2000
        !          1051: 1014  00000ecc *                                       .text
        !          1052: 1015  00012CEE    dd 8f00000ebb                        pushl   $L350
        !          1053: 1016  00012CF4    fe 08 effffff6bd                     callf   $8,_writes
        !          1054: 1017  00012CFB                                   #                      writed( index );
        !          1055: 1018  00012CFB    dd effffff6b7                        pushl   _index
        !          1056: 1019  00012D01    fe 08 effffff6b0                     callf   $8,_writed
        !          1057: 1020  00012D08                                   #                      writec('\n');
        !          1058: 1021  00012D08    dd 0a                                pushl   $10
        !          1059: 1022  00012D0A    fe 08 effffff6a7                     callf   $8,_writec
        !          1060: 1023  00012D11                                   #                      writes("initial PSL = ");
        !          1061: 1024  00012D11                                         .data   1
        !          1062: 1025  00000ecc *                                L351:
        !          1063: 1026  00000ecc *  696E697469616C2050534C203            .ascii  "initial PSL = \0"
        !          1064:                   D2000
        !          1065: 1027  00000edb *                                       .text
        !          1066: 1028  00012D11    dd 8f00000ecc                        pushl   $L351
        !          1067: 1029  00012D17    fe 08 effffff69a                     callf   $8,_writes
        !          1068: 1030  00012D1E                                   #                      write32h( init_psl );
        !          1069: 1031  00012D1E    dd effffff694                        pushl   _init_psl
        !          1070: 1032  00012D24    fe 08 effffff68d                     callf   $8,_write32h
        !          1071: 1033  00012D2B                                   #                      writes(",  final PSL = ");
        !          1072: 1034  00012D2B                                         .data   1
        !          1073: 1035  00000edb *                                L352:
        !          1074: 1036  00000edb *  2C202066696E616C2050534C2            .ascii  ",  final PSL = \0"
        !          1075:                   03D2000
        !          1076: 1037  00000eeb *                                       .text
        !          1077: 1038  00012D2B    dd 8f00000edb                        pushl   $L352
        !          1078: 1039  00012D31    fe 08 effffff680                     callf   $8,_writes
        !          1079: 1040  00012D38                                   #                      write32h( psl_val );
        !          1080: 1041  00012D38    dd effffff67a                        pushl   _psl_val
        !          1081: 1042  00012D3E    fe 08 effffff673                     callf   $8,_write32h
        !          1082: 1043  00012D45                                   #                      writes(",  expected PSL = ");
        !          1083: 1044  00012D45                                         .data   1
        !          1084: 1045  00000eeb *                                L353:
        !          1085: 1046  00000eeb *  2C20206578706563746564205            .ascii  ",  expected PSL = \0"
        !          1086:                   0534C203D2000
        !          1087: 1047  00000efe *                                       .text
        !          1088: 1048  00012D45    dd 8f00000eeb                        pushl   $L353
        !          1089: 1049  00012D4B    fe 08 effffff666                     callf   $8,_writes
        !          1090: 1050  00012D52                                   #                      write32h( exp_psl );
        !          1091: 1051  00012D52    dd effffff660                        pushl   _exp_psl
        !          1092: 1052  00012D58    fe 08 effffff659                     callf   $8,_write32h
        !          1093: 1053  00012D5F                                   #                      writes("\n");
        !          1094: 1054  00012D5F                                         .data   1
        !          1095: 1055  00000efe *                                L354:
        !          1096: 1056  00000efe *  0A00                                 .ascii  "\12\0"
        !          1097: 1057  00000f00 *                                       .text
        !          1098: 1058  00012D5F    dd 8f00000efe                        pushl   $L354
        !          1099: 1059  00012D65    fe 08 effffff64c                     callf   $8,_writes
        !          1100: 1060  00012D6C                                   #                   }
        !          1101: 1061  00012D6C                                   #                   if ( halt_flg ) 
        !          1102: 1062  00012D6C                                  L345:
        !          1103: 1063  00012D6C    5d effffff646                        tstl    _halt_flg
        !          1104: 1064  00012D72    31 09                                jeql    L355
        !          1105: 1065  00012D74                                   #                      cmpf_er_halt( BAD_PSL_HLT );   /* halt on the error   */
        !          1106: 1066  00012D74    dd 03                                pushl   $3
        !          1107: 1067  00012D76    fe 08 ef00000217                     callf   $8,_cmpf_er_halt
        !          1108: 1068  00012D7D                                   #                   if ( loop_on_err ) {
        !          1109: 1069  00012D7D                                  L355:
        !          1110: 1070  00012D7D    5d effffff635                        tstl    _loop_on_err
        !          1111: 1071  00012D83    31 0a                                jeql    L356
        !          1112: 1072  00012D85                                   #                      force_loop = TRUE;         /* set the force loop flag */
        !          1113: 1073  00012D85    0d 01 effffff62c                     movl    $1,_force_loop
        !          1114: 1074  00012D8C                                   #                      asm("brw _cmpf_5_lp1");    /* and loop on the error   */
        !          1115: 1075  00012D8C    13 fe83                       brw _cmpf_5_lp1
        !          1116: 1076  00012D8F                                   #                   }   /* end of loop on error    */
        !          1117: 1077  00012D8F                                   #                }  /* end of compare error */
        !          1118: 1078  00012D8F                                  L356:
        !          1119: 1079  00012D8F                                   #             }  while ( ++status_index < 3 ); /* end of PSL WHILE loop */
        !          1120: 1080  00012D8F                                  L344:
        !          1121: 1081  00012D8F                                  L339:
        !          1122: 1082  00012D8F    6d effffff623                        incl    _status_index
        !          1123: 1083  00012D95    0d effffff61d 50                     movl    _status_index,r0
        !          1124: 1084  00012D9C    1d 50 03                             cmpl    r0,$3
        !          1125: 1085  00012D9F    81 03 13 fe5b                        jlss    L340
        !          1126: 1086  00012DA4                                  L338:
        !          1127: 1087  00012DA4                                   #         } while( index++ < max_cmpf_1_index);/* end of data loop      */
        !          1128: 1088  00012DA4                                  L336:
        !          1129: 1089  00012DA4    0d effffff60e 50                     movl    _index,r0
        !          1130: 1090  00012DAB    6d effffff607                        incl    _index
        !          1131: 1091  00012DB1    1d 50 effffff600                     cmpl    r0,_max_cmpf_1_index
        !          1132: 1092  00012DB8    81 03 13 fe03                        jlss    L337
        !          1133: 1093  00012DBD                                  L335:
        !          1134: 1094  00012DBD                                   # }  /* end of subtest 5 */
        !          1135: 1095  00012DBD    40                                   ret#2
        !          1136: 1096  00012DBE                                         .set    L331,0x0
        !          1137: 1097  00012DBE                                  L333:
        !          1138: 1098  00012DBE    13 fdec                              jbr     L334
        !          1139: 1099  00012DC1                                         .data
        !          1140: 1100  00000c8c *                                       .text
        !          1141: 1101  00012DC1    00                                   .align  1
        !          1142: 1102  00012DC2                                         .globl  _cmpf_6
        !          1143: 1103  00012DC2                                  _cmpf_6:
        !          1144: 1104  00012DC2    0000                                 .word   L357
        !          1145: 1105  00012DC4                                   #   
        !          1146: 1106  00012DC4                                   # 
        !          1147: 1107  00012DC4                                   # 
        !          1148: 1108  00012DC4                                   # /****************************************************************************
        !          1149: 1109  00012DC4                                   # *
        !          1150: 1110  00012DC4                                   # *               SUBTEST 6 - CMPF status test  -piped exit 
        !          1151: 1111  00012DC4                                   # *
        !          1152: 1112  00012DC4                                   # ****************************************************************************/
        !          1153: 1113  00012DC4                                   # cmpf_6() 
        !          1154: 1114  00012DC4                                   # {
        !          1155: 1115  00012DC4    13 018d                              jbr     L359
        !          1156: 1116  00012DC7                                  L360:
        !          1157: 1117  00012DC7                                   #         force_loop = FALSE; 
        !          1158: 1118  00012DC7    4d effffff5eb                        clrl    _force_loop
        !          1159: 1119  00012DCD                                   #     subtest = 2;
        !          1160: 1120  00012DCD    0d 02 effffff5e4                     movl    $2,_subtest
        !          1161: 1121  00012DD4                                   #     index = 0;
        !          1162: 1122  00012DD4    4d effffff5de                        clrl    _index
        !          1163: 1123  00012DDA                                   #         do 
        !          1164: 1124  00012DDA                                  L363:
        !          1165: 1125  00012DDA                                   #         {
        !          1166: 1126  00012DDA                                   #              sgl_value_1   = cmpf_1_data[index].one; /* data to load */
        !          1167: 1127  00012DDA    5c 0c effffff5d7 50                  mull3   $12,_index,r0
        !          1168: 1128  00012DE2    0d e000000000 effffff5cb             movl    _cmpf_1_data(r0),_sgl_value_1
        !          1169: 1129  00012DED                                   #              sgl_value_2   = cmpf_1_data[index].two;
        !          1170: 1130  00012DED    5c 0c effffff5c4 50                  mull3   $12,_index,r0
        !          1171: 1131  00012DF5    0d e000000004 effffff5b8             movl    _cmpf_1_data+4(r0),_sgl_value_2
        !          1172: 1132  00012E00                                   #               if( sgl_value_1 & 0x7f800000 )
        !          1173: 1133  00012E00    3d 8f7f800000 effffff5ad             bitl    $2139095040,_sgl_value_1
        !          1174: 1134  00012E0B    31 0d                                jeql    L364
        !          1175: 1135  00012E0D                                   #                   sgl_expected = sgl_value_1;       /* expected = loaded */
        !          1176: 1136  00012E0D    0d effffff5a5 effffff5a0             movl    _sgl_value_1,_sgl_expected
        !          1177: 1137  00012E18                                   #              else 
        !          1178: 1138  00012E18    11 06                                jbr     L365
        !          1179: 1139  00012E1A                                  L364:
        !          1180: 1140  00012E1A                                   #                   sgl_expected = 0;         /* expect a '0' stored */
        !          1181: 1141  00012E1A    4d effffff598                        clrl    _sgl_expected
        !          1182: 1142  00012E20                                  L365:
        !          1183: 1143  00012E20                                   # /*
        !          1184: 1144  00012E20                                   #  * If LOOP ON ERROR is set, this is the loop for this subtest.
        !          1185: 1145  00012E20                                   #  * The force loop flag is set after the first error.
        !          1186: 1146  00012E20                                   # */
        !          1187: 1147  00012E20                                   #                asm("_cmpf_6_lp1:");
        !          1188: 1148  00012E20                                  _cmpf_6_lp1:
        !          1189: 1149  00012E20                                   #                asm("movl $0,r0");               /* clear r0                 */
        !          1190: 1150  00012E20    0d 00 50                      movl $0,r0
        !          1191: 1151  00012E23                                   #                asm("ldf _sgl_value_1");         /* load the 1st operand     */
        !          1192: 1152  00012E23    06 effffff58f                 ldf _sgl_value_1
        !          1193: 1153  00012E29                                   #                asm("cmpf _sgl_value_2");        /* compare the value        */
        !          1194: 1154  00012E29    36 effffff589                 cmpf _sgl_value_2
        !          1195: 1155  00012E2F                                   #                asm("addf r0");                  /* add a zero to the acc    */
        !          1196: 1156  00012E2F    c6 50                         addf r0
        !          1197: 1157  00012E31                                   #                asm("stf _sgl_st_acc");          /* save the accumulator     */
        !          1198: 1158  00012E31    26 effffff581                 stf _sgl_st_acc
        !          1199: 1159  00012E37                                   #                if( force_loop )                 /* loop?                    */
        !          1200: 1160  00012E37    5d effffff57b                        tstl    _force_loop
        !          1201: 1161  00012E3D    31 02                                jeql    L366
        !          1202: 1162  00012E3F                                   #                    asm("brb _cmpf_6_lp1");;     /* run the loop again       */
        !          1203: 1163  00012E3F    11 df                         brb _cmpf_6_lp1
        !          1204: 1164  00012E41                                  L366:
        !          1205: 1165  00012E41                                   #                if( sgl_st_acc != sgl_expected ) { /* COMPARE the values */
        !          1206: 1166  00012E41    1d effffff571 effffff56c             cmpl    _sgl_st_acc,_sgl_expected
        !          1207: 1167  00012E4C    21 03 13 00e9                        jeql    L367
        !          1208: 1168  00012E51                                   #                   errcnt++;                     /* bump the error count     */
        !          1209: 1169  00012E51    6d effffff561                        incl    _errcnt
        !          1210: 1170  00012E57                                   #                   if ( prt_error ) {
        !          1211: 1171  00012E57    5d effffff55b                        tstl    _prt_error
        !          1212: 1172  00012E5D    21 03 13 00b5                        jeql    L368
        !          1213: 1173  00012E62                                   #                      writes(" \n");         /* start a new print line   */
        !          1214: 1174  00012E62                                         .data   1
        !          1215: 1175  00000f00 *                                L369:
        !          1216: 1176  00000f00 *  200A00                               .ascii  " \12\0"
        !          1217: 1177  00000f03 *                                       .text
        !          1218: 1178  00012E62    dd 8f00000f00                        pushl   $L369
        !          1219: 1179  00012E68    fe 08 effffff549                     callf   $8,_writes
        !          1220: 1180  00012E6F                                   #                      writes("cycle: ");
        !          1221: 1181  00012E6F                                         .data   1
        !          1222: 1182  00000f03 *                                L370:
        !          1223: 1183  00000f03 *  6379636C653A2000                     .ascii  "cycle: \0"
        !          1224: 1184  00000f0b *                                       .text
        !          1225: 1185  00012E6F    dd 8f00000f03                        pushl   $L370
        !          1226: 1186  00012E75    fe 08 effffff53c                     callf   $8,_writes
        !          1227: 1187  00012E7C                                   #                      writed( cycle );
        !          1228: 1188  00012E7C    dd effffff536                        pushl   _cycle
        !          1229: 1189  00012E82    fe 08 effffff52f                     callf   $8,_writed
        !          1230: 1190  00012E89                                   #                      writes("  CMPF test ");
        !          1231: 1191  00012E89                                         .data   1
        !          1232: 1192  00000f0b *                                L371:
        !          1233: 1193  00000f0b *  2020434D50462074657374200            .ascii  "  CMPF test \0"
        !          1234:                   0
        !          1235: 1194  00000f18 *                                       .text
        !          1236: 1195  00012E89    dd 8f00000f0b                        pushl   $L371
        !          1237: 1196  00012E8F    fe 08 effffff522                     callf   $8,_writes
        !          1238: 1197  00012E96                                   #                  writed( test_no );
        !          1239: 1198  00012E96    dd effffff51c                        pushl   _test_no
        !          1240: 1199  00012E9C    fe 08 effffff515                     callf   $8,_writed
        !          1241: 1200  00012EA3                                   #          writes(", subtest 6 (Piped Exit) - THE ACC WAS MODIFIED\n");
        !          1242: 1201  00012EA3                                         .data   1
        !          1243: 1202  00000f18 *                                L372:
        !          1244: 1203  00000f18 *  2C20737562746573742036202            .ascii  ", subtest 6 (Piped Exit) - THE ACC WAS MODIFIED\12\0"
        !          1245:                   8506970656420457869742920
        !          1246:                   2D20544845204143432057415
        !          1247:                   3204D4F4449464945440A00
        !          1248: 1204  00000f49 *                                       .text
        !          1249: 1205  00012EA3    dd 8f00000f18                        pushl   $L372
        !          1250: 1206  00012EA9    fe 08 effffff508                     callf   $8,_writes
        !          1251: 1207  00012EB0                                   #                      print_cmpf_data();
        !          1252: 1208  00012EB0    fe 04 ef000000a1                     callf   $4,_print_cmpf_data
        !          1253: 1209  00012EB7                                   #                      writes(",  data index = ");
        !          1254: 1210  00012EB7                                         .data   1
        !          1255: 1211  00000f49 *                                L373:
        !          1256: 1212  00000f49 *  2C20206461746120696E64657            .ascii  ",  data index = \0"
        !          1257:                   8203D2000
        !          1258: 1213  00000f5a *                                       .text
        !          1259: 1214  00012EB7    dd 8f00000f49                        pushl   $L373
        !          1260: 1215  00012EBD    fe 08 effffff4f4                     callf   $8,_writes
        !          1261: 1216  00012EC4                                   #                      writed( index );
        !          1262: 1217  00012EC4    dd effffff4ee                        pushl   _index
        !          1263: 1218  00012ECA    fe 08 effffff4e7                     callf   $8,_writed
        !          1264: 1219  00012ED1                                   #                      writec('\n');
        !          1265: 1220  00012ED1    dd 0a                                pushl   $10
        !          1266: 1221  00012ED3    fe 08 effffff4de                     callf   $8,_writec
        !          1267: 1222  00012EDA                                   #                      writes("  final Acc = ");
        !          1268: 1223  00012EDA                                         .data   1
        !          1269: 1224  00000f5a *                                L374:
        !          1270: 1225  00000f5a *  202066696E616C20416363203            .ascii  "  final Acc = \0"
        !          1271:                   D2000
        !          1272: 1226  00000f69 *                                       .text
        !          1273: 1227  00012EDA    dd 8f00000f5a                        pushl   $L374
        !          1274: 1228  00012EE0    fe 08 effffff4d1                     callf   $8,_writes
        !          1275: 1229  00012EE7                                   #                      write32h( sgl_st_acc );
        !          1276: 1230  00012EE7    dd effffff4cb                        pushl   _sgl_st_acc
        !          1277: 1231  00012EED    fe 08 effffff4c4                     callf   $8,_write32h
        !          1278: 1232  00012EF4                                   #                      writes(",  Acc expected = ");
        !          1279: 1233  00012EF4                                         .data   1
        !          1280: 1234  00000f69 *                                L375:
        !          1281: 1235  00000f69 *  2C20204163632065787065637            .ascii  ",  Acc expected = \0"
        !          1282:                   46564203D2000
        !          1283: 1236  00000f7c *                                       .text
        !          1284: 1237  00012EF4    dd 8f00000f69                        pushl   $L375
        !          1285: 1238  00012EFA    fe 08 effffff4b7                     callf   $8,_writes
        !          1286: 1239  00012F01                                   #                      write32h( sgl_expected );
        !          1287: 1240  00012F01    dd effffff4b1                        pushl   _sgl_expected
        !          1288: 1241  00012F07    fe 08 effffff4aa                     callf   $8,_write32h
        !          1289: 1242  00012F0E                                   #                      writec('\n');
        !          1290: 1243  00012F0E    dd 0a                                pushl   $10
        !          1291: 1244  00012F10    fe 08 effffff4a1                     callf   $8,_writec
        !          1292: 1245  00012F17                                   #                   }
        !          1293: 1246  00012F17                                   #                   if ( halt_flg ) 
        !          1294: 1247  00012F17                                  L368:
        !          1295: 1248  00012F17    5d effffff49b                        tstl    _halt_flg
        !          1296: 1249  00012F1D    31 09                                jeql    L376
        !          1297: 1250  00012F1F                                   #                      cmpf_er_halt( BAD_ACC_HLT );   /* halt on the error   */
        !          1298: 1251  00012F1F    dd 01                                pushl   $1
        !          1299: 1252  00012F21    fe 08 ef0000006c                     callf   $8,_cmpf_er_halt
        !          1300: 1253  00012F28                                   #                   if ( loop_on_err ) {
        !          1301: 1254  00012F28                                  L376:
        !          1302: 1255  00012F28    5d effffff48a                        tstl    _loop_on_err
        !          1303: 1256  00012F2E    31 0a                                jeql    L377
        !          1304: 1257  00012F30                                   #                      force_loop = TRUE;         /* set the force loop flag */
        !          1305: 1258  00012F30    0d 01 effffff481                     movl    $1,_force_loop
        !          1306: 1259  00012F37                                   #                      asm("brw _cmpf_6_lp1");    /* and loop on the error   */
        !          1307: 1260  00012F37    13 fee6                       brw _cmpf_6_lp1
        !          1308: 1261  00012F3A                                   #                   }   /* end of loop on error */
        !          1309: 1262  00012F3A                                   #                }  /* end of compare error */
        !          1310: 1263  00012F3A                                  L377:
        !          1311: 1264  00012F3A                                   #         } while( index++ < max_cmpf_1_index);  /* end of data loop      */
        !          1312: 1265  00012F3A                                  L367:
        !          1313: 1266  00012F3A                                  L362:
        !          1314: 1267  00012F3A    0d effffff478 50                     movl    _index,r0
        !          1315: 1268  00012F41    6d effffff471                        incl    _index
        !          1316: 1269  00012F47    1d 50 effffff46a                     cmpl    r0,_max_cmpf_1_index
        !          1317: 1270  00012F4E    81 03 13 fe87                        jlss    L363
        !          1318: 1271  00012F53                                  L361:
        !          1319: 1272  00012F53                                   # }  /* end of subtest 6 */
        !          1320: 1273  00012F53    40                                   ret#2
        !          1321: 1274  00012F54                                         .set    L357,0x0
        !          1322: 1275  00012F54                                  L359:
        !          1323: 1276  00012F54    13 fe70                              jbr     L360
        !          1324: 1277  00012F57                                         .data
        !          1325: 1278  00000c8c *                                       .text
        !          1326: 1279  00012F57    00                                   .align  1
        !          1327: 1280  00012F58                                         .globl  _print_cmpf_data
        !          1328: 1281  00012F58                                  _print_cmpf_data:
        !          1329: 1282  00012F58    0000                                 .word   L378
        !          1330: 1283  00012F5A                                   #   
        !          1331: 1284  00012F5A                                   # 
        !          1332: 1285  00012F5A                                   # 
        !          1333: 1286  00012F5A                                   # /**************************************************************************
        !          1334: 1287  00012F5A                                   # *
        !          1335: 1288  00012F5A                                   # *       PRINT THE DATA AND STORE RESULTS
        !          1336: 1289  00012F5A                                   # *
        !          1337: 1290  00012F5A                                   # *  initial Acc = xxxxxxxx,     stored = xxxxxxxx,   data index = xx
        !          1338: 1291  00012F5A                                   # *      operand = xxxxxxxx,   expected = xxxxxxxx
        !          1339: 1292  00012F5A                                   # **************************************************************************/
        !          1340: 1293  00012F5A                                   # print_cmpf_data()
        !          1341: 1294  00012F5A                                   # {
        !          1342: 1295  00012F5A    11 35                                jbr     L380
        !          1343: 1296  00012F5C                                  L381:
        !          1344: 1297  00012F5C                                   #         writes("initial Acc = ");
        !          1345: 1298  00012F5C                                         .data   1
        !          1346: 1299  00000f7c *                                L382:
        !          1347: 1300  00000f7c *  696E697469616C20416363203            .ascii  "initial Acc = \0"
        !          1348:                   D2000
        !          1349: 1301  00000f8b *                                       .text
        !          1350: 1302  00012F5C    dd 8f00000f7c                        pushl   $L382
        !          1351: 1303  00012F62    fe 08 effffff44f                     callf   $8,_writes
        !          1352: 1304  00012F69                                   #         write32h( sgl_value_1 );
        !          1353: 1305  00012F69    dd effffff449                        pushl   _sgl_value_1
        !          1354: 1306  00012F6F    fe 08 effffff442                     callf   $8,_write32h
        !          1355: 1307  00012F76                                   #         writes(",   operand = ");
        !          1356: 1308  00012F76                                         .data   1
        !          1357: 1309  00000f8b *                                L383:
        !          1358: 1310  00000f8b *  2C2020206F706572616E64203            .ascii  ",   operand = \0"
        !          1359:                   D2000
        !          1360: 1311  00000f9a *                                       .text
        !          1361: 1312  00012F76    dd 8f00000f8b                        pushl   $L383
        !          1362: 1313  00012F7C    fe 08 effffff435                     callf   $8,_writes
        !          1363: 1314  00012F83                                   #         write32h( sgl_value_2 );
        !          1364: 1315  00012F83    dd effffff42f                        pushl   _sgl_value_2
        !          1365: 1316  00012F89    fe 08 effffff428                     callf   $8,_write32h
        !          1366: 1317  00012F90                                   # }
        !          1367: 1318  00012F90    40                                   ret#2
        !          1368: 1319  00012F91                                         .set    L378,0x0
        !          1369: 1320  00012F91                                  L380:
        !          1370: 1321  00012F91    11 c9                                jbr     L381
        !          1371: 1322  00012F93                                         .data
        !          1372: 1323  00000c8c *                                       .text
        !          1373: 1324  00012F93    00                                   .align  1
        !          1374: 1325  00012F94                                         .globl  _cmpf_er_halt
        !          1375: 1326  00012F94                                  _cmpf_er_halt:
        !          1376: 1327  00012F94    0000                                 .word   L384
        !          1377: 1328  00012F96                                   #    
        !          1378: 1329  00012F96                                   # 
        !          1379: 1330  00012F96                                   # 
        !          1380: 1331  00012F96                                   # /**************************************************************************
        !          1381: 1332  00012F96                                   # *
        !          1382: 1333  00012F96                                   # *               HALT ON ERROR ROUTINE 
        !          1383: 1334  00012F96                                   # *
        !          1384: 1335  00012F96                                   # **************************************************************************/
        !          1385: 1336  00012F96                                   # cmpf_er_halt( halt_code )
        !          1386: 1337  00012F96                                   # int halt_code;
        !          1387: 1338  00012F96                                   # {
        !          1388: 1339  00012F96    13 00a8                              jbr     L386
        !          1389: 1340  00012F99                                  L387:
        !          1390: 1341  00012F99                                   #         sgl_dummy1 = halt_code;                 /* get the error type    */
        !          1391: 1342  00012F99    0d ad04 effffff417                   movl    4(fp),_sgl_dummy1
        !          1392: 1343  00012FA1                                   #         asm("movl _test_no,r0");                /* r0  = test number     */
        !          1393: 1344  00012FA1    0d effffff411 50              movl _test_no,r0
        !          1394: 1345  00012FA8                                   #         asm("movl _subtest,r1");                /* r1  = subtest number  */
        !          1395: 1346  00012FA8    0d effffff40a 51              movl _subtest,r1
        !          1396: 1347  00012FAF                                   #         asm("movl _sgl_dummy1,r2");             /* r2  = error code      */
        !          1397: 1348  00012FAF    0d effffff403 52              movl _sgl_dummy1,r2
        !          1398: 1349  00012FB6                                   #         asm("movl _cycle,r3");                  /* r3  = cycle count     */
        !          1399: 1350  00012FB6    0d effffff3fc 53              movl _cycle,r3
        !          1400: 1351  00012FBD                                   #         asm("movl _sgl_value_1,r4");            /* r4  = initial acc     */
        !          1401: 1352  00012FBD    0d effffff3f5 54              movl _sgl_value_1,r4
        !          1402: 1353  00012FC4                                   #         asm("movl _sgl_value_2,r5");            /* r5  = data compared   */
        !          1403: 1354  00012FC4    0d effffff3ee 55              movl _sgl_value_2,r5
        !          1404: 1355  00012FCB                                   #         asm("movl _psl_val,r6");                /* r6  = final PSL       */
        !          1405: 1356  00012FCB    0d effffff3e7 56              movl _psl_val,r6
        !          1406: 1357  00012FD2                                   #         if( halt_code == BAD_ACC_HLT ) {
        !          1407: 1358  00012FD2    1d ad04 01                           cmpl    4(fp),$1
        !          1408: 1359  00012FD6    21 10                                jneq    L388
        !          1409: 1360  00012FD8                                   #              asm("movl _sgl_st_acc,r7");        /* r7  = actual value    */
        !          1410: 1361  00012FD8    0d effffff3da 57              movl _sgl_st_acc,r7
        !          1411: 1362  00012FDF                                   #              asm("movl _sgl_expected,r8");      /* r8  = expected value  */
        !          1412: 1363  00012FDF    0d effffff3d3 58              movl _sgl_expected,r8
        !          1413: 1364  00012FE6                                   #         } else
        !          1414: 1365  00012FE6    11 57                                jbr     L389
        !          1415: 1366  00012FE8                                  L388:
        !          1416: 1367  00012FE8                                   #         if( halt_code == BAD_REG_HLT ) {
        !          1417: 1368  00012FE8    1d ad04 02                           cmpl    4(fp),$2
        !          1418: 1369  00012FEC    21 3d                                jneq    L390
        !          1419: 1370  00012FEE                                   #              sgl_dummy1 = load_regs[index2];
        !          1420: 1371  00012FEE    0d effffff3c4 50                     movl    _index2,r0
        !          1421: 1372  00012FF5    0d 40effffff3bc                      movl    _load_regs[r0],_sgl_dummy1
        !          1422:                   effffff3b7 
        !          1423: 1373  00013001                                   #              sgl_dummy2 = store_regs[index2];
        !          1424: 1374  00013001    0d effffff3b1 50                     movl    _index2,r0
        !          1425: 1375  00013008    0d 40effffff3a9                      movl    _store_regs[r0],_sgl_dummy2
        !          1426:                   effffff3a4 
        !          1427: 1376  00013014                                   #              asm("movl _index2,r7");            /* r7  = bad register #  */
        !          1428: 1377  00013014    0d effffff39e 57              movl _index2,r7
        !          1429: 1378  0001301B                                   #              asm("movl _sgl_dummy2,r8");        /* r8  = actual value    */
        !          1430: 1379  0001301B    0d effffff397 58              movl _sgl_dummy2,r8
        !          1431: 1380  00013022                                   #              asm("movl _sgl_dummy1,r9");        /* r9  = expected value  */
        !          1432: 1381  00013022    0d effffff390 59              movl _sgl_dummy1,r9
        !          1433: 1382  00013029                                   #         } else
        !          1434: 1383  00013029    11 14                                jbr     L391
        !          1435: 1384  0001302B                                  L390:
        !          1436: 1385  0001302B                                   #           if( halt_code == BAD_PSL_HLT ) {
        !          1437: 1386  0001302B    1d ad04 03                           cmpl    4(fp),$3
        !          1438: 1387  0001302F    21 0e                                jneq    L392
        !          1439: 1388  00013031                                   #              asm("movl _exp_psl,r7");           /* r7  = expected PSL    */
        !          1440: 1389  00013031    0d effffff381 57              movl _exp_psl,r7
        !          1441: 1390  00013038                                   #              asm("movl _index,r7");             /* r8  = data index      */
        !          1442: 1391  00013038    0d effffff37a 57              movl _index,r7
        !          1443: 1392  0001303F                                   #         };
        !          1444: 1393  0001303F                                  L392:
        !          1445: 1394  0001303F                                  L391:
        !          1446: 1395  0001303F                                  L389:
        !          1447: 1396  0001303F                                   #         asm("halt");                            /* HALT ...              */
        !          1448: 1397  0001303F    00                            halt
        !          1449: 1398  00013040                                   # }  
        !          1450: 1399  00013040    40                                   ret#2
        !          1451: 1400  00013041                                         .set    L384,0x0
        !          1452: 1401  00013041                                  L386:
        !          1453: 1402  00013041    13 ff55                              jbr     L387
        !          1454: 1403  00000c8c *                                       .data
        !          1455: 1403  00000c8c *                                       .data

unix.superglobalmegacorp.com

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