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

1.1     ! root        1:    1  00000000                                  LL0:
        !             2:    2  00000000                                         .data
        !             3:    3  00000a60 *                                       .text
        !             4:    4  00000000                                         .align  1
        !             5:    5  00000000                                         .globl  _logf
        !             6:    6  00000000                                  _logf:
        !             7:    7  000215BC    0000                                 .word   L215
        !             8:    8  000215BE                                   # #include "fpp_defs.h"
        !             9:    9  000215BE                                   # 
        !            10:   10  000215BE                                   # 
        !            11:   11  000215BE                                   # 
        !            12:   12  000215BE                                   # /***************************************************************************
        !            13:   13  000215BE                                   # *
        !            14:   14  000215BE                                   # *   LOGF - SINGLE PRECISION FLOATING POINT LOGF FUNCTION TEST
        !            15:   15  000215BE                                   # *
        !            16:   16  000215BE                                   # *                   LOGF TEST MONITOR
        !            17:   17  000215BE                                   # *
        !            18:   18  000215BE                                   # *****************************************************************************/
        !            19:   19  000215BE                                   # logf()
        !            20:   20  000215BE                                   # {
        !            21:   21  000215BE    11 4f                                jbr     L217
        !            22:   22  000215C0                                  L218:
        !            23:   23  000215C0                                   #     asm(".globl _logf_t");
        !            24:   24  000215C0                                  .globl _logf_t
        !            25:   25  000215C0                                   #     asm("_logf_t:");                        /* entry address            */
        !            26:   26  000215C0                                  _logf_t:
        !            27:   27  000215C0                                   #     if( ( cycle == 1 ) && ( prt_hdrs ) )    /* print headers on 1st pass */
        !            28:   28  000215C0    1d effffffff6 01                     cmpl    _cycle,$1
        !            29:   29  000215C7    21 15                                jneq    L219
        !            30:   30  000215C9    5d efffffffed                        tstl    _prt_hdrs
        !            31:   31  000215CF    31 0d                                jeql    L219
        !            32:   32  000215D1                                   #     {
        !            33:   33  000215D1                                   #        writes(" LOGF");
        !            34:   34  000215D1                                         .data   1
        !            35:   35  00000a60 *                                L221:
        !            36:   36  00000a60 *  204C4F474600                         .ascii  " LOGF\0"
        !            37:   37  00000a66 *                                       .text
        !            38:   38  000215D1    dd 8f00000a60                        pushl   $L221
        !            39:   39  000215D7    fe 08 efffffffde                     callf   $8,_writes
        !            40:   40  000215DE                                   #     }
        !            41:   41  000215DE                                   #     logf_1();                               /* test log function w/ delay */
        !            42:   42  000215DE                                  L219:
        !            43:   43  000215DE    fe 04 ef0000002d                     callf   $4,_logf_1
        !            44:   44  000215E5                                   #     logf_2();                               /* test log function          */
        !            45:   45  000215E5    fe 04 ef00000198                     callf   $4,_logf_2
        !            46:   46  000215EC                                   #     logf_3();                               /* register corruption        */
        !            47:   47  000215EC    fe 04 ef000002f1                     callf   $4,_logf_3
        !            48:   48  000215F3                                   #     logf_4();                               /* test the PSL               */
        !            49:   49  000215F3    fe 04 ef000004d4                     callf   $4,_logf_4
        !            50:   50  000215FA                                   #     logf_5();                               /* pipelined entry            */
        !            51:   51  000215FA    fe 04 ef0000067d                     callf   $4,_logf_5
        !            52:   52  00021601                                   #     logf_6();                               /* pipelined exit             */
        !            53:   53  00021601    fe 04 ef000007d2                     callf   $4,_logf_6
        !            54:   54  00021608                                   #     asm("jmp *return");                     /* return to the test monitor */
        !            55:   55  00021608    71 ffffffffae                 jmp *return
        !            56:   56  0002160E                                   # }
        !            57:   57  0002160E    40                                   ret#2
        !            58:   58  0002160F                                         .set    L215,0x0
        !            59:   59  0002160F                                  L217:
        !            60:   60  0002160F    11 af                                jbr     L218
        !            61:   61  00021611                                         .data
        !            62:   62  00000a60 *                                       .text
        !            63:   63  00021611    00                                   .align  1
        !            64:   64  00021612                                         .globl  _logf_1
        !            65:   65  00021612                                  _logf_1:
        !            66:   66  00021612    0000                                 .word   L228
        !            67:   67  00021614                                   # 
        !            68:   68  00021614                                   # /***************************************************************************
        !            69:   69  00021614                                   # *
        !            70:   70  00021614                                   # *   SUBTEST 1 - LOGF FUNCTION 
        !            71:   71  00021614                                   # *
        !            72:   72  00021614                                   # ***************************************************************************/
        !            73:   73  00021614                                   # logf_1() 
        !            74:   74  00021614                                   # {
        !            75:   75  00021614    13 016a                              jbr     L230
        !            76:   76  00021617                                  L231:
        !            77:   77  00021617                                   # #define DELAY 15                    /* delay 30 ticks between LOGF & STF */
        !            78:   78  00021617                                   #     force_loop = FALSE;                        /* clear the LOOP flag */
        !            79:   79  00021617    4d efffffff9f                        clrl    _force_loop
        !            80:   80  0002161D                                   #     subtest = 1;
        !            81:   81  0002161D    0d 01 efffffff98                     movl    $1,_subtest
        !            82:   82  00021624                                   #         index = 0;
        !            83:   83  00021624    4d efffffff92                        clrl    _index
        !            84:   84  0002162A                                   #     do 
        !            85:   85  0002162A                                  L234:
        !            86:   86  0002162A                                   #     {
        !            87:   87  0002162A                                   #        sgl_ld_acc   = logf_1_data[index].ld;   /* get the operand      */
        !            88:   88  0002162A    0d efffffff8c 50                     movl    _index,r0
        !            89:   89  00021631    48 03 50 50                          shll    $3,r0,r0
        !            90:   90  00021635    0d e000000000 efffffff7c             movl    _logf_1_data(r0),_sgl_ld_acc
        !            91:   91  00021640                                   #        sgl_expected = logf_1_data[index].exp;  /* get expected results */
        !            92:   92  00021640    0d efffffff76 50                     movl    _index,r0
        !            93:   93  00021647    48 03 50 50                          shll    $3,r0,r0
        !            94:   94  0002164B    0d e000000004 efffffff66             movl    _logf_1_data+4(r0),_sgl_expected
        !            95:   95  00021656                                   #        sgl_dummy1 = DELAY;
        !            96:   96  00021656    0d 0f efffffff5f                     movl    $15,_sgl_dummy1
        !            97:   97  0002165D                                   # /*
        !            98:   98  0002165D                                   #  * If LOOP ON ERROR is set, this is the loop for this subtest.
        !            99:   99  0002165D                                   #  * The force loop flag is set after the first error.
        !           100:  100  0002165D                                   # */
        !           101:  101  0002165D                                   #        asm("_logf_1_lp1:");
        !           102:  102  0002165D                                  _logf_1_lp1:
        !           103:  103  0002165D                                   #        asm("movl _sgl_ld_acc,r4");          /* set the data to load     */
        !           104:  104  0002165D    0d efffffff59 54              movl _sgl_ld_acc,r4
        !           105:  105  00021664                                   #        asm("ldf r4");                       /* load the accumulator     */
        !           106:  106  00021664    06 54                         ldf r4
        !           107:  107  00021666                                   #        asm("movl _sgl_dummy1,r0");          /* get the delay factor     */
        !           108:  108  00021666    0d efffffff50 50              movl _sgl_dummy1,r0
        !           109:  109  0002166D                                   #            asm("logf");                             /* get ACC.'s log           */
        !           110:  110  0002166D    35                            logf
        !           111:  111  0002166E                                   #        asm("1:");
        !           112:  112  0002166E                                  1:
        !           113:  113  0002166E                                   #        asm("decl r0");                      /* delay to let the LOGF    */
        !           114:  114  0002166E    7d 50                         decl r0
        !           115:  115  00021670                                   #        asm("bgtr 1b");                      /*   instruction finish     */
        !           116:  116  00021670    41 fc                         bgtr 1b
        !           117:  117  00021672                                   #        asm("stf r5");                       /* store the result         */
        !           118:  118  00021672    26 55                         stf r5
        !           119:  119  00021674                                   #            if( force_loop )
        !           120:  120  00021674    5d efffffff42                        tstl    _force_loop
        !           121:  121  0002167A    31 02                                jeql    L235
        !           122:  122  0002167C                                   #                 asm("brb _logf_1_lp1");;      /* loop on the error     */
        !           123:  123  0002167C    11 df                         brb _logf_1_lp1
        !           124:  124  0002167E                                  L235:
        !           125:  125  0002167E                                   # /* 
        !           126:  126  0002167E                                   #  * end error loop 
        !           127:  127  0002167E                                   # */
        !           128:  128  0002167E                                   #        asm("movl r5,_sgl_st_acc");          /* save the result          */
        !           129:  129  0002167E    0d 55 efffffff37              movl r5,_sgl_st_acc
        !           130:  130  00021685                                   #        if( sgl_st_acc != sgl_expected ) {   /* COMPARE the values       */
        !           131:  131  00021685    1d efffffff31 efffffff2c             cmpl    _sgl_st_acc,_sgl_expected
        !           132:  132  00021690    21 03 13 00d2                        jeql    L236
        !           133:  133  00021695                                   #           errcnt++;                         /* bump the error count     */
        !           134:  134  00021695    6d efffffff21                        incl    _errcnt
        !           135:  135  0002169B                                   #           if ( prt_error ) {
        !           136:  136  0002169B    5d efffffff1b                        tstl    _prt_error
        !           137:  137  000216A1    21 03 13 009b                        jeql    L237
        !           138:  138  000216A6                                   #              writes(" \n");         /* start a new print line   */
        !           139:  139  000216A6                                         .data   1
        !           140:  140  00000a66 *                                L238:
        !           141:  141  00000a66 *  200A00                               .ascii  " \12\0"
        !           142:  142  00000a69 *                                       .text
        !           143:  143  000216A6    dd 8f00000a66                        pushl   $L238
        !           144:  144  000216AC    fe 08 efffffff09                     callf   $8,_writes
        !           145:  145  000216B3                                   #              writes("cycle: ");
        !           146:  146  000216B3                                         .data   1
        !           147:  147  00000a69 *                                L239:
        !           148:  148  00000a69 *  6379636C653A2000                     .ascii  "cycle: \0"
        !           149:  149  00000a71 *                                       .text
        !           150:  150  000216B3    dd 8f00000a69                        pushl   $L239
        !           151:  151  000216B9    fe 08 effffffefc                     callf   $8,_writes
        !           152:  152  000216C0                                   #              writed( cycle );
        !           153:  153  000216C0    dd effffffef6                        pushl   _cycle
        !           154:  154  000216C6    fe 08 effffffeef                     callf   $8,_writed
        !           155:  155  000216CD                                   #              writes("   LOGF test ");
        !           156:  156  000216CD                                         .data   1
        !           157:  157  00000a71 *                                L241:
        !           158:  158  00000a71 *  2020204C4F474620746573742            .ascii  "   LOGF test \0"
        !           159:                   000
        !           160:  159  00000a7f *                                       .text
        !           161:  160  000216CD    dd 8f00000a71                        pushl   $L241
        !           162:  161  000216D3    fe 08 effffffee2                     callf   $8,_writes
        !           163:  162  000216DA                                   #              writed( test_no );
        !           164:  163  000216DA    dd effffffedc                        pushl   _test_no
        !           165:  164  000216E0    fe 08 effffffed5                     callf   $8,_writed
        !           166:  165  000216E7                                   #              writes(", subtest 1 (delayed store) - BAD FINAL ACC\n");
        !           167:  166  000216E7                                         .data   1
        !           168:  167  00000a7f *                                L242:
        !           169:  168  00000a7f *  2C20737562746573742031202            .ascii  ", subtest 1 (delayed store) - BAD FINAL ACC\12\0"
        !           170:                   864656C617965642073746F72
        !           171:                   6529202D204241442046494E4
        !           172:                   14C204143430A00
        !           173:  169  00000aac *                                       .text
        !           174:  170  000216E7    dd 8f00000a7f                        pushl   $L242
        !           175:  171  000216ED    fe 08 effffffec8                     callf   $8,_writes
        !           176:  172  000216F4                                   #              print_logf_data();
        !           177:  173  000216F4    fe 04 ef0000083b                     callf   $4,_print_logf_data
        !           178:  174  000216FB                                   #                  writes(",  data index = ");
        !           179:  175  000216FB                                         .data   1
        !           180:  176  00000aac *                                L244:
        !           181:  177  00000aac *  2C20206461746120696E64657            .ascii  ",  data index = \0"
        !           182:                   8203D2000
        !           183:  178  00000abd *                                       .text
        !           184:  179  000216FB    dd 8f00000aac                        pushl   $L244
        !           185:  180  00021701    fe 08 effffffeb4                     callf   $8,_writes
        !           186:  181  00021708                                   #                  writed( index );
        !           187:  182  00021708    dd effffffeae                        pushl   _index
        !           188:  183  0002170E    fe 08 effffffea7                     callf   $8,_writed
        !           189:  184  00021715                                   #                  writec('\n');
        !           190:  185  00021715    dd 0a                                pushl   $10
        !           191:  186  00021717    fe 08 effffffe9e                     callf   $8,_writec
        !           192:  187  0002171E                                   #                  writes("                          expected = ");
        !           193:  188  0002171E                                         .data   1
        !           194:  189  00000abd *                                L246:
        !           195:  190  00000abd *  2020202020202020202020202            .ascii  "                          expected = \0"
        !           196:                   0202020202020202020202020
        !           197:                   206578706563746564203D200
        !           198:                   0
        !           199:  191  00000ae3 *                                       .text
        !           200:  192  0002171E    dd 8f00000abd                        pushl   $L246
        !           201:  193  00021724    fe 08 effffffe91                     callf   $8,_writes
        !           202:  194  0002172B                                   #                  write32h( sgl_expected );
        !           203:  195  0002172B    dd effffffe8b                        pushl   _sgl_expected
        !           204:  196  00021731    fe 08 effffffe84                     callf   $8,_write32h
        !           205:  197  00021738                                   #                  writec('\n');
        !           206:  198  00021738    dd 0a                                pushl   $10
        !           207:  199  0002173A    fe 08 effffffe7b                     callf   $8,_writec
        !           208:  200  00021741                                   #               }
        !           209:  201  00021741                                   #               if ( halt_flg )                       /* halt on error?        */
        !           210:  202  00021741                                  L237:
        !           211:  203  00021741    5d effffffe75                        tstl    _halt_flg
        !           212:  204  00021747    31 09                                jeql    L248
        !           213:  205  00021749                                   #              logf_er_halt( BAD_ACC_HLT );
        !           214:  206  00021749    dd 01                                pushl   $1
        !           215:  207  0002174B    fe 08 ef00000820                     callf   $8,_logf_er_halt
        !           216:  208  00021752                                   #               if ( loop_on_err ) 
        !           217:  209  00021752                                  L248:
        !           218:  210  00021752    5d effffffe64                        tstl    _loop_on_err
        !           219:  211  00021758    31 0d                                jeql    L250
        !           220:  212  0002175A                                   #           {
        !           221:  213  0002175A                                   #              force_loop = TRUE;             /* set the force loop flag */
        !           222:  214  0002175A    0d 01 effffffe5b                     movl    $1,_force_loop
        !           223:  215  00021761                                   #              asm("jmp _logf_1_lp1");        /* and loop                */
        !           224:  216  00021761    71 effffffef6                 jmp _logf_1_lp1
        !           225:  217  00021767                                   #           }
        !           226:  218  00021767                                   #        }   /* end of compare error */
        !           227:  219  00021767                                  L250:
        !           228:  220  00021767                                   #     } while( index++ < max_logf_1_index );
        !           229:  221  00021767                                  L236:
        !           230:  222  00021767                                  L233:
        !           231:  223  00021767    0d effffffe4f 50                     movl    _index,r0
        !           232:  224  0002176E    6d effffffe48                        incl    _index
        !           233:  225  00021774    1d 50 effffffe41                     cmpl    r0,_max_logf_1_index
        !           234:  226  0002177B    81 03 13 feaa                        jlss    L234
        !           235:  227  00021780                                  L232:
        !           236:  228  00021780                                   # }  /* end of subtest 1 */
        !           237:  229  00021780    40                                   ret#2
        !           238:  230  00021781                                         .set    L228,0x0
        !           239:  231  00021781                                  L230:
        !           240:  232  00021781    13 fe93                              jbr     L231
        !           241:  233  00021784                                         .data
        !           242:  234  00000a60 *                                       .text
        !           243:  235  00021784                                         .align  1
        !           244:  236  00021784                                         .globl  _logf_2
        !           245:  237  00021784                                  _logf_2:
        !           246:  238  00021784    0000                                 .word   L251
        !           247:  239  00021786                                   #   
        !           248:  240  00021786                                   # 
        !           249:  241  00021786                                   # 
        !           250:  242  00021786                                   # /***************************************************************************
        !           251:  243  00021786                                   # *
        !           252:  244  00021786                                   # *   SUBTEST 2 - LOGF FUNCTION 
        !           253:  245  00021786                                   # *
        !           254:  246  00021786                                   # ***************************************************************************/
        !           255:  247  00021786                                   # logf_2() 
        !           256:  248  00021786                                   # {
        !           257:  249  00021786    13 0158                              jbr     L253
        !           258:  250  00021789                                  L254:
        !           259:  251  00021789                                   #     force_loop = FALSE;                        /* clear the LOOP flag */
        !           260:  252  00021789    4d effffffe2d                        clrl    _force_loop
        !           261:  253  0002178F                                   #     subtest = 2;
        !           262:  254  0002178F    0d 02 effffffe26                     movl    $2,_subtest
        !           263:  255  00021796                                   #         index = 0;
        !           264:  256  00021796    4d effffffe20                        clrl    _index
        !           265:  257  0002179C                                   #     do 
        !           266:  258  0002179C                                  L257:
        !           267:  259  0002179C                                   #     {
        !           268:  260  0002179C                                   #        sgl_ld_acc   = logf_1_data[index].ld;   /* get the operand      */
        !           269:  261  0002179C    0d effffffe1a 50                     movl    _index,r0
        !           270:  262  000217A3    48 03 50 50                          shll    $3,r0,r0
        !           271:  263  000217A7    0d e000000000 effffffe0a             movl    _logf_1_data(r0),_sgl_ld_acc
        !           272:  264  000217B2                                   #        sgl_expected = logf_1_data[index].exp;  /* get expected results */
        !           273:  265  000217B2    0d effffffe04 50                     movl    _index,r0
        !           274:  266  000217B9    48 03 50 50                          shll    $3,r0,r0
        !           275:  267  000217BD    0d e000000004 effffffdf4             movl    _logf_1_data+4(r0),_sgl_expected
        !           276:  268  000217C8                                   # /*
        !           277:  269  000217C8                                   #  * If LOOP ON ERROR is set, this is the loop for this subtest.
        !           278:  270  000217C8                                   #  * The force loop flag is set after the first error.
        !           279:  271  000217C8                                   # */
        !           280:  272  000217C8                                   #        asm("_logf_2_lp1:");
        !           281:  273  000217C8                                  _logf_2_lp1:
        !           282:  274  000217C8                                   #        asm("movl _sgl_ld_acc,r4");          /* set the data to load     */
        !           283:  275  000217C8    0d effffffdee 54              movl _sgl_ld_acc,r4
        !           284:  276  000217CF                                   #        asm("ldf r4");                       /* load the accumulator     */
        !           285:  277  000217CF    06 54                         ldf r4
        !           286:  278  000217D1                                   #            asm("logf");                             /* get ACC.'s log           */
        !           287:  279  000217D1    35                            logf
        !           288:  280  000217D2                                   #        asm("stf r5");                       /* store the result         */
        !           289:  281  000217D2    26 55                         stf r5
        !           290:  282  000217D4                                   #            if( force_loop )
        !           291:  283  000217D4    5d effffffde2                        tstl    _force_loop
        !           292:  284  000217DA    31 02                                jeql    L258
        !           293:  285  000217DC                                   #                   asm("brb _logf_2_lp1");;      /* loop on the error     */
        !           294:  286  000217DC    11 ea                         brb _logf_2_lp1
        !           295:  287  000217DE                                  L258:
        !           296:  288  000217DE                                   # /* 
        !           297:  289  000217DE                                   #  * end error loop 
        !           298:  290  000217DE                                   # */
        !           299:  291  000217DE                                   #        asm("movl r5,_sgl_st_acc");          /* save the result          */
        !           300:  292  000217DE    0d 55 effffffdd7              movl r5,_sgl_st_acc
        !           301:  293  000217E5                                   #        if( sgl_st_acc != sgl_expected ) {   /* COMPARE the values       */
        !           302:  294  000217E5    1d effffffdd1 effffffdcc             cmpl    _sgl_st_acc,_sgl_expected
        !           303:  295  000217F0    21 03 13 00d2                        jeql    L259
        !           304:  296  000217F5                                   #           errcnt++;                         /* bump the error count     */
        !           305:  297  000217F5    6d effffffdc1                        incl    _errcnt
        !           306:  298  000217FB                                   #           if ( prt_error ) {
        !           307:  299  000217FB    5d effffffdbb                        tstl    _prt_error
        !           308:  300  00021801    21 03 13 009b                        jeql    L260
        !           309:  301  00021806                                   #              writes(" \n");         /* start a new print line   */
        !           310:  302  00021806                                         .data   1
        !           311:  303  00000ae3 *                                L261:
        !           312:  304  00000ae3 *  200A00                               .ascii  " \12\0"
        !           313:  305  00000ae6 *                                       .text
        !           314:  306  00021806    dd 8f00000ae3                        pushl   $L261
        !           315:  307  0002180C    fe 08 effffffda9                     callf   $8,_writes
        !           316:  308  00021813                                   #              writes("cycle: ");
        !           317:  309  00021813                                         .data   1
        !           318:  310  00000ae6 *                                L262:
        !           319:  311  00000ae6 *  6379636C653A2000                     .ascii  "cycle: \0"
        !           320:  312  00000aee *                                       .text
        !           321:  313  00021813    dd 8f00000ae6                        pushl   $L262
        !           322:  314  00021819    fe 08 effffffd9c                     callf   $8,_writes
        !           323:  315  00021820                                   #              writed( cycle );
        !           324:  316  00021820    dd effffffd96                        pushl   _cycle
        !           325:  317  00021826    fe 08 effffffd8f                     callf   $8,_writed
        !           326:  318  0002182D                                   #              writes("   LOGF test ");
        !           327:  319  0002182D                                         .data   1
        !           328:  320  00000aee *                                L263:
        !           329:  321  00000aee *  2020204C4F474620746573742            .ascii  "   LOGF test \0"
        !           330:                   000
        !           331:  322  00000afc *                                       .text
        !           332:  323  0002182D    dd 8f00000aee                        pushl   $L263
        !           333:  324  00021833    fe 08 effffffd82                     callf   $8,_writes
        !           334:  325  0002183A                                   #              writed( test_no );
        !           335:  326  0002183A    dd effffffd7c                        pushl   _test_no
        !           336:  327  00021840    fe 08 effffffd75                     callf   $8,_writed
        !           337:  328  00021847                                   #              writes(", subtest 2 (immediate store) - BAD FINAL ACC\n");
        !           338:  329  00021847                                         .data   1
        !           339:  330  00000afc *                                L264:
        !           340:  331  00000afc *  2C20737562746573742032202            .ascii  ", subtest 2 (immediate store) - BAD FINAL ACC\12\0"
        !           341:                   8696D6D656469617465207374
        !           342:                   6F726529202D2042414420464
        !           343:                   94E414C204143430A00
        !           344:  332  00000b2b *                                       .text
        !           345:  333  00021847    dd 8f00000afc                        pushl   $L264
        !           346:  334  0002184D    fe 08 effffffd68                     callf   $8,_writes
        !           347:  335  00021854                                   #              print_logf_data();
        !           348:  336  00021854    fe 04 ef000006db                     callf   $4,_print_logf_data
        !           349:  337  0002185B                                   #                  writes(",  data index = ");
        !           350:  338  0002185B                                         .data   1
        !           351:  339  00000b2b *                                L265:
        !           352:  340  00000b2b *  2C20206461746120696E64657            .ascii  ",  data index = \0"
        !           353:                   8203D2000
        !           354:  341  00000b3c *                                       .text
        !           355:  342  0002185B    dd 8f00000b2b                        pushl   $L265
        !           356:  343  00021861    fe 08 effffffd54                     callf   $8,_writes
        !           357:  344  00021868                                   #                  writed( index );
        !           358:  345  00021868    dd effffffd4e                        pushl   _index
        !           359:  346  0002186E    fe 08 effffffd47                     callf   $8,_writed
        !           360:  347  00021875                                   #                  writec('\n');
        !           361:  348  00021875    dd 0a                                pushl   $10
        !           362:  349  00021877    fe 08 effffffd3e                     callf   $8,_writec
        !           363:  350  0002187E                                   #                  writes("                          expected = ");
        !           364:  351  0002187E                                         .data   1
        !           365:  352  00000b3c *                                L266:
        !           366:  353  00000b3c *  2020202020202020202020202            .ascii  "                          expected = \0"
        !           367:                   0202020202020202020202020
        !           368:                   206578706563746564203D200
        !           369:                   0
        !           370:  354  00000b62 *                                       .text
        !           371:  355  0002187E    dd 8f00000b3c                        pushl   $L266
        !           372:  356  00021884    fe 08 effffffd31                     callf   $8,_writes
        !           373:  357  0002188B                                   #                  write32h( sgl_expected );
        !           374:  358  0002188B    dd effffffd2b                        pushl   _sgl_expected
        !           375:  359  00021891    fe 08 effffffd24                     callf   $8,_write32h
        !           376:  360  00021898                                   #                  writec('\n');
        !           377:  361  00021898    dd 0a                                pushl   $10
        !           378:  362  0002189A    fe 08 effffffd1b                     callf   $8,_writec
        !           379:  363  000218A1                                   #               }
        !           380:  364  000218A1                                   #               if ( halt_flg )                       /* halt on error?        */
        !           381:  365  000218A1                                  L260:
        !           382:  366  000218A1    5d effffffd15                        tstl    _halt_flg
        !           383:  367  000218A7    31 09                                jeql    L267
        !           384:  368  000218A9                                   #              logf_er_halt( BAD_ACC_HLT );
        !           385:  369  000218A9    dd 01                                pushl   $1
        !           386:  370  000218AB    fe 08 ef000006c0                     callf   $8,_logf_er_halt
        !           387:  371  000218B2                                   #               if ( loop_on_err ) 
        !           388:  372  000218B2                                  L267:
        !           389:  373  000218B2    5d effffffd04                        tstl    _loop_on_err
        !           390:  374  000218B8    31 0d                                jeql    L268
        !           391:  375  000218BA                                   #           {
        !           392:  376  000218BA                                   #              force_loop = TRUE;             /* set the force loop flag */
        !           393:  377  000218BA    0d 01 effffffcfb                     movl    $1,_force_loop
        !           394:  378  000218C1                                   #              asm("jmp _logf_2_lp1");        /* and loop                */
        !           395:  379  000218C1    71 efffffff01                 jmp _logf_2_lp1
        !           396:  380  000218C7                                   #           }
        !           397:  381  000218C7                                   #        }   /* end of compare error */
        !           398:  382  000218C7                                  L268:
        !           399:  383  000218C7                                   #     } while( index++ < max_logf_1_index );
        !           400:  384  000218C7                                  L259:
        !           401:  385  000218C7                                  L256:
        !           402:  386  000218C7    0d effffffcef 50                     movl    _index,r0
        !           403:  387  000218CE    6d effffffce8                        incl    _index
        !           404:  388  000218D4    1d 50 effffffce1                     cmpl    r0,_max_logf_1_index
        !           405:  389  000218DB    81 03 13 febc                        jlss    L257
        !           406:  390  000218E0                                  L255:
        !           407:  391  000218E0                                   # }  /* end of subtest 2 */
        !           408:  392  000218E0    40                                   ret#2
        !           409:  393  000218E1                                         .set    L251,0x0
        !           410:  394  000218E1                                  L253:
        !           411:  395  000218E1    13 fea5                              jbr     L254
        !           412:  396  000218E4                                         .data
        !           413:  397  00000a60 *                                       .text
        !           414:  398  000218E4                                         .align  1
        !           415:  399  000218E4                                         .globl  _logf_3
        !           416:  400  000218E4                                  _logf_3:
        !           417:  401  000218E4    0000                                 .word   L269
        !           418:  402  000218E6                                   #   
        !           419:  403  000218E6                                   # 
        !           420:  404  000218E6                                   # 
        !           421:  405  000218E6                                   # /***************************************************************************
        !           422:  406  000218E6                                   # *
        !           423:  407  000218E6                                   # *   SUBTEST 3 - REGISTER INTEGRITY WITH THE LOGF FUNCTION 
        !           424:  408  000218E6                                   # *
        !           425:  409  000218E6                                   # ***************************************************************************/
        !           426:  410  000218E6                                   # logf_3() 
        !           427:  411  000218E6                                   # {
        !           428:  412  000218E6    13 01e1                              jbr     L271
        !           429:  413  000218E9                                  L272:
        !           430:  414  000218E9                                   #     fill_reg_buf( load_regs );              /* set reg values to load */
        !           431:  415  000218E9    dd 8f00000000                        pushl   $_load_regs
        !           432:  416  000218EF    fe 08 effffffcc6                     callf   $8,_fill_reg_buf
        !           433:  417  000218F6                                   #     force_loop = FALSE;                     /* clear the LOOP flag */
        !           434:  418  000218F6    4d effffffcc0                        clrl    _force_loop
        !           435:  419  000218FC                                   #     subtest = 3;
        !           436:  420  000218FC    0d 03 effffffcb9                     movl    $3,_subtest
        !           437:  421  00021903                                   #         index = 0;
        !           438:  422  00021903    4d effffffcb3                        clrl    _index
        !           439:  423  00021909                                   #     do 
        !           440:  424  00021909                                  L276:
        !           441:  425  00021909                                   #     {
        !           442:  426  00021909                                   #        sgl_ld_acc   = logf_1_data[index].ld;   /* get the operand      */
        !           443:  427  00021909    0d effffffcad 50                     movl    _index,r0
        !           444:  428  00021910    48 03 50 50                          shll    $3,r0,r0
        !           445:  429  00021914    0d e000000000 effffffc9d             movl    _logf_1_data(r0),_sgl_ld_acc
        !           446:  430  0002191F                                   #        sgl_expected = logf_1_data[index].exp;  /* get expected results */
        !           447:  431  0002191F    0d effffffc97 50                     movl    _index,r0
        !           448:  432  00021926    48 03 50 50                          shll    $3,r0,r0
        !           449:  433  0002192A    0d e000000004 effffffc87             movl    _logf_1_data+4(r0),_sgl_expected
        !           450:  434  00021935                                   # /*
        !           451:  435  00021935                                   #  * If LOOP ON ERROR is set, this is the loop for this subtest.
        !           452:  436  00021935                                   #  * The force loop flag is set after the first error.
        !           453:  437  00021935                                   # */
        !           454:  438  00021935                                   #        asm("_logf_3_lp1:");
        !           455:  439  00021935                                  _logf_3_lp1:
        !           456:  440  00021935                                   #        asm("loadr $0x1fff,_load_regs");     /* load regs 0 - 12         */
        !           457:  441  00021935    ab 891fff effffffc7e          loadr $0x1fff,_load_regs
        !           458:  442  0002193E                                   #        asm("ldf _sgl_ld_acc");              /* load the accumulator     */
        !           459:  443  0002193E    06 effffffc78                 ldf _sgl_ld_acc
        !           460:  444  00021944                                   #        asm("logf");                         /* get ACC.'s log           */
        !           461:  445  00021944    35                            logf
        !           462:  446  00021945                                   #        asm("stf _sgl_st_acc");              /* store the result         */
        !           463:  447  00021945    26 effffffc71                 stf _sgl_st_acc
        !           464:  448  0002194B                                   #        asm("storer $0x1fff,_store_regs");   /* store regs 0 - 12        */
        !           465:  449  0002194B    bb 891fff effffffc68          storer $0x1fff,_store_regs
        !           466:  450  00021954                                   #            if( force_loop )
        !           467:  451  00021954    5d effffffc62                        tstl    _force_loop
        !           468:  452  0002195A    31 02                                jeql    L277
        !           469:  453  0002195C                                   #                 asm("brb _logf_3_lp1");;      /* loop on the error     */
        !           470:  454  0002195C    11 d7                         brb _logf_3_lp1
        !           471:  455  0002195E                                  L277:
        !           472:  456  0002195E                                   # /* 
        !           473:  457  0002195E                                   #  * end error loop 
        !           474:  458  0002195E                                   # */
        !           475:  459  0002195E                                   #        reg_no = 0;
        !           476:  460  0002195E    4d effffffc58                        clrl    _reg_no
        !           477:  461  00021964                                   #        regs_ok = TRUE;
        !           478:  462  00021964    0d 01 effffffc51                     movl    $1,_regs_ok
        !           479:  463  0002196B                                   #        while( (reg_no < 13) && (regs_ok) )  /* check 1st 12 regs */
        !           480:  464  0002196B                                  L278:
        !           481:  465  0002196B    1d effffffc4b 0d                     cmpl    _reg_no,$13
        !           482:  466  00021972    81 35                                jgeq    L279
        !           483:  467  00021974    5d effffffc42                        tstl    _regs_ok
        !           484:  468  0002197A    31 2d                                jeql    L279
        !           485:  469  0002197C                                   #           if( store_regs[ reg_no ] == load_regs[ reg_no ] )
        !           486:  470  0002197C    0d effffffc3a 50                     movl    _reg_no,r0
        !           487:  471  00021983    0d effffffc33 51                     movl    _reg_no,r1
        !           488:  472  0002198A    1d 40effffffc2b                      cmpl    _store_regs[r0],_load_regs[r1]
        !           489:                   41effffffc25 
        !           490:  473  00021997    21 08                                jneq    L280
        !           491:  474  00021999                                   #               reg_no++;
        !           492:  475  00021999    6d effffffc1d                        incl    _reg_no
        !           493:  476  0002199F                                   #           else
        !           494:  477  0002199F    11 06                                jbr     L281
        !           495:  478  000219A1                                  L280:
        !           496:  479  000219A1                                   #               regs_ok = FALSE;
        !           497:  480  000219A1    4d effffffc15                        clrl    _regs_ok
        !           498:  481  000219A7                                  L281:
        !           499:  482  000219A7    11 c2                                jbr     L278
        !           500:  483  000219A9                                  L279:
        !           501:  484  000219A9                                   #        if( !regs_ok ) {
        !           502:  485  000219A9    5d effffffc0d                        tstl    _regs_ok
        !           503:  486  000219AF    31 03 13 00fc                        jneq    L282
        !           504:  487  000219B4                                   #           errcnt++;                         /* bump the error count     */
        !           505:  488  000219B4    6d effffffc02                        incl    _errcnt
        !           506:  489  000219BA                                   #           if ( prt_error ) {
        !           507:  490  000219BA    5d effffffbfc                        tstl    _prt_error
        !           508:  491  000219C0    21 03 13 00eb                        jeql    L283
        !           509:  492  000219C5                                   #              writes(" \n");         /* start a new print line   */
        !           510:  493  000219C5                                         .data   1
        !           511:  494  00000b62 *                                L284:
        !           512:  495  00000b62 *  200A00                               .ascii  " \12\0"
        !           513:  496  00000b65 *                                       .text
        !           514:  497  000219C5    dd 8f00000b62                        pushl   $L284
        !           515:  498  000219CB    fe 08 effffffbea                     callf   $8,_writes
        !           516:  499  000219D2                                   #              writes("cycle: ");
        !           517:  500  000219D2                                         .data   1
        !           518:  501  00000b65 *                                L285:
        !           519:  502  00000b65 *  6379636C653A2000                     .ascii  "cycle: \0"
        !           520:  503  00000b6d *                                       .text
        !           521:  504  000219D2    dd 8f00000b65                        pushl   $L285
        !           522:  505  000219D8    fe 08 effffffbdd                     callf   $8,_writes
        !           523:  506  000219DF                                   #              writed( cycle );
        !           524:  507  000219DF    dd effffffbd7                        pushl   _cycle
        !           525:  508  000219E5    fe 08 effffffbd0                     callf   $8,_writed
        !           526:  509  000219EC                                   #              writes("   LOGF test ");
        !           527:  510  000219EC                                         .data   1
        !           528:  511  00000b6d *                                L286:
        !           529:  512  00000b6d *  2020204C4F474620746573742            .ascii  "   LOGF test \0"
        !           530:                   000
        !           531:  513  00000b7b *                                       .text
        !           532:  514  000219EC    dd 8f00000b6d                        pushl   $L286
        !           533:  515  000219F2    fe 08 effffffbc3                     callf   $8,_writes
        !           534:  516  000219F9                                   #              writed( test_no );
        !           535:  517  000219F9    dd effffffbbd                        pushl   _test_no
        !           536:  518  000219FF    fe 08 effffffbb6                     callf   $8,_writed
        !           537:  519  00021A06                                   #              writes(", subtest 3 - A REGISTER WAS MODIFIED\n"); {
        !           538:  520  00021A06                                         .data   1
        !           539:  521  00000b7b *                                L287:
        !           540:  522  00000b7b *  2C20737562746573742033202            .ascii  ", subtest 3 - A REGISTER WAS MODIFIED\12\0"
        !           541:                   D204120524547495354455220
        !           542:                   574153204D4F4449464945440
        !           543:                   A00
        !           544:  523  00000ba2 *                                       .text
        !           545:  524  00021A06    dd 8f00000b7b                        pushl   $L287
        !           546:  525  00021A0C    fe 08 effffffba9                     callf   $8,_writes
        !           547:  526  00021A13                                   #              print_logf_data();
        !           548:  527  00021A13    fe 04 ef0000051c                     callf   $4,_print_logf_data
        !           549:  528  00021A1A                                   #              writec('\n');
        !           550:  529  00021A1A    dd 0a                                pushl   $10
        !           551:  530  00021A1C    fe 08 effffffb99                     callf   $8,_writec
        !           552:  531  00021A23                                   #              writes("register ");
        !           553:  532  00021A23                                         .data   1
        !           554:  533  00000ba2 *                                L288:
        !           555:  534  00000ba2 *  72656769737465722000                 .ascii  "register \0"
        !           556:  535  00000bac *                                       .text
        !           557:  536  00021A23    dd 8f00000ba2                        pushl   $L288
        !           558:  537  00021A29    fe 08 effffffb8c                     callf   $8,_writes
        !           559:  538  00021A30                                   #                  writed( reg_no );
        !           560:  539  00021A30    dd effffffb86                        pushl   _reg_no
        !           561:  540  00021A36    fe 08 effffffb7f                     callf   $8,_writed
        !           562:  541  00021A3D                                   #              writes(" = ");
        !           563:  542  00021A3D                                         .data   1
        !           564:  543  00000bac *                                L289:
        !           565:  544  00000bac *  203D2000                             .ascii  " = \0"
        !           566:  545  00000bb0 *                                       .text
        !           567:  546  00021A3D    dd 8f00000bac                        pushl   $L289
        !           568:  547  00021A43    fe 08 effffffb72                     callf   $8,_writes
        !           569:  548  00021A4A                                   #              write32h( load_regs[reg_no] );
        !           570:  549  00021A4A    0d effffffb6c 50                     movl    _reg_no,r0
        !           571:  550  00021A51    dd 40effffffb64                      pushl   _load_regs[r0]
        !           572:  551  00021A58    fe 08 effffffb5d                     callf   $8,_write32h
        !           573:  552  00021A5F                                   #              writes(",  should be = ");
        !           574:  553  00021A5F                                         .data   1
        !           575:  554  00000bb0 *                                L290:
        !           576:  555  00000bb0 *  2C202073686F756C642062652            .ascii  ",  should be = \0"
        !           577:                   03D2000
        !           578:  556  00000bc0 *                                       .text
        !           579:  557  00021A5F    dd 8f00000bb0                        pushl   $L290
        !           580:  558  00021A65    fe 08 effffffb50                     callf   $8,_writes
        !           581:  559  00021A6C                                   #              write32h( store_regs[reg_no] );
        !           582:  560  00021A6C    0d effffffb4a 50                     movl    _reg_no,r0
        !           583:  561  00021A73    dd 40effffffb42                      pushl   _store_regs[r0]
        !           584:  562  00021A7A    fe 08 effffffb3b                     callf   $8,_write32h
        !           585:  563  00021A81                                   #              writec('\n');
        !           586:  564  00021A81    dd 0a                                pushl   $10
        !           587:  565  00021A83    fe 08 effffffb32                     callf   $8,_writec
        !           588:  566  00021A8A                                   #           }
        !           589:  567  00021A8A                                   #           if ( halt_flg )                   /* halt on error?        */
        !           590:  568  00021A8A    5d effffffb2c                        tstl    _halt_flg
        !           591:  569  00021A90    31 09                                jeql    L291
        !           592:  570  00021A92                                   #              logf_er_halt( BAD_REG_HLT );
        !           593:  571  00021A92    dd 02                                pushl   $2
        !           594:  572  00021A94    fe 08 ef000004d7                     callf   $8,_logf_er_halt
        !           595:  573  00021A9B                                   #           if ( loop_on_err ) 
        !           596:  574  00021A9B                                  L291:
        !           597:  575  00021A9B    5d effffffb1b                        tstl    _loop_on_err
        !           598:  576  00021AA1    31 0d                                jeql    L292
        !           599:  577  00021AA3                                   #           {
        !           600:  578  00021AA3                                   #              force_loop = TRUE;             /* get the force loop flag */
        !           601:  579  00021AA3    0d 01 effffffb12                     movl    $1,_force_loop
        !           602:  580  00021AAA                                   #              asm("jmp _logf_3_lp1");        /* and loop                */
        !           603:  581  00021AAA    71 effffffe85                 jmp _logf_3_lp1
        !           604:  582  00021AB0                                   #           }
        !           605:  583  00021AB0                                   #        }   /* end of compare error */
        !           606:  584  00021AB0                                  L292:
        !           607:  585  00021AB0                                   #        } /* end of while loop */
        !           608:  586  00021AB0                                  L283:
        !           609:  587  00021AB0                                   #    } while( index++ < max_logf_1_index );
        !           610:  588  00021AB0                                  L282:
        !           611:  589  00021AB0                                  L275:
        !           612:  590  00021AB0    0d effffffb06 50                     movl    _index,r0
        !           613:  591  00021AB7    6d effffffaff                        incl    _index
        !           614:  592  00021ABD    1d 50 effffffaf8                     cmpl    r0,_max_logf_1_index
        !           615:  593  00021AC4    81 03 13 fe40                        jlss    L276
        !           616:  594  00021AC9                                  L274:
        !           617:  595  00021AC9                                   # }  /* end of subtest 3 */
        !           618:  596  00021AC9    40                                   ret#2
        !           619:  597  00021ACA                                         .set    L269,0x0
        !           620:  598  00021ACA                                  L271:
        !           621:  599  00021ACA    13 fe1c                              jbr     L272
        !           622:  600  00021ACD                                         .data
        !           623:  601  00000a60 *                                       .text
        !           624:  602  00021ACD    00                                   .align  1
        !           625:  603  00021ACE                                         .globl  _logf_4
        !           626:  604  00021ACE                                  _logf_4:
        !           627:  605  00021ACE    0000                                 .word   L293
        !           628:  606  00021AD0                                   #   
        !           629:  607  00021AD0                                   # 
        !           630:  608  00021AD0                                   # 
        !           631:  609  00021AD0                                   # /************************************************************************
        !           632:  610  00021AD0                                   # *
        !           633:  611  00021AD0                                   # *       SUBTEST 4 - Check for PSL corruption
        !           634:  612  00021AD0                                   # *
        !           635:  613  00021AD0                                   # ************************************************************************/
        !           636:  614  00021AD0                                   # logf_4() 
        !           637:  615  00021AD0                                   # {
        !           638:  616  00021AD0    13 01a8                              jbr     L295
        !           639:  617  00021AD3                                  L296:
        !           640:  618  00021AD3                                   #         force_loop = FALSE;                     /* clear force_loop flg */
        !           641:  619  00021AD3    4d effffffae3                        clrl    _force_loop
        !           642:  620  00021AD9                                   #         subtest = 4;
        !           643:  621  00021AD9    0d 04 effffffadc                     movl    $4,_subtest
        !           644:  622  00021AE0                                   #         fill_reg_buf( load_regs );              /* get patterns for regs */
        !           645:  623  00021AE0    dd 8f00000000                        pushl   $_load_regs
        !           646:  624  00021AE6    fe 08 effffffacf                     callf   $8,_fill_reg_buf
        !           647:  625  00021AED                                   #         for( index = 0; index < 3; index++ ) {
        !           648:  626  00021AED    4d effffffac9                        clrl    _index
        !           649:  627  00021AF3                                  L299:
        !           650:  628  00021AF3    1d effffffac3 03                     cmpl    _index,$3
        !           651:  629  00021AFA    91 03 13 017b                        jgeq    L298
        !           652:  630  00021AFF                                   #              sgl_ld_acc   = logf_1_data[index].ld;    /* get operand 1 */
        !           653:  631  00021AFF    0d effffffab7 50                     movl    _index,r0
        !           654:  632  00021B06    48 03 50 50                          shll    $3,r0,r0
        !           655:  633  00021B0A    0d e000000000 effffffaa7             movl    _logf_1_data(r0),_sgl_ld_acc
        !           656:  634  00021B15                                   #              sgl_expected = logf_1_data[index].exp;   /* get expected  */
        !           657:  635  00021B15    0d effffffaa1 50                     movl    _index,r0
        !           658:  636  00021B1C    48 03 50 50                          shll    $3,r0,r0
        !           659:  637  00021B20    0d e000000004 effffffa91             movl    _logf_1_data+4(r0),_sgl_expected
        !           660:  638  00021B2B                                   #              sgl_dummy1 = status_array[status_index];    /* status = +, -, 0 */
        !           661:  639  00021B2B    0d effffffa8b 50                     movl    _status_index,r0
        !           662:  640  00021B32    0d 40effffffa83                      movl    _status_array[r0],_sgl_dummy1
        !           663:                   effffffa7e 
        !           664:  641  00021B3E                                   # /*
        !           665:  642  00021B3E                                   #  * If LOOP ON ERROR is set, this is the loop for this subtest.
        !           666:  643  00021B3E                                   #  * The force loop flag is set after the first error.
        !           667:  644  00021B3E                                   # */
        !           668:  645  00021B3E                                   #              asm("_logf_4_lp1:");
        !           669:  646  00021B3E                                  _logf_4_lp1:
        !           670:  647  00021B3E                                   #              asm("ldf _sgl_ld_acc");            /* LOAD the accumulator  */
        !           671:  648  00021B3E    06 effffffa78                 ldf _sgl_ld_acc
        !           672:  649  00021B44                                   #              asm("nop");
        !           673:  650  00021B44    10                            nop
        !           674:  651  00021B45                                   #              asm("tstl _sgl_dummy1");               /* set the PSL status    */
        !           675:  652  00021B45    5d effffffa71                 tstl _sgl_dummy1
        !           676:  653  00021B4B                                   #          asm("movpsl _init_psl");           /* save the initial PSL  */
        !           677:  654  00021B4B    cd effffffa6b                 movpsl _init_psl
        !           678:  655  00021B51                                   #              asm("logf");                       /* do the log            */
        !           679:  656  00021B51    35                            logf
        !           680:  657  00021B52                                   #              asm("nop");
        !           681:  658  00021B52    10                            nop
        !           682:  659  00021B53                                   #              asm("movpsl _psl_val");            /* save the final PSL    */
        !           683:  660  00021B53    cd effffffa63                 movpsl _psl_val
        !           684:  661  00021B59                                   #              asm("stf _sgl_st_acc");            /* save the accumulator  */
        !           685:  662  00021B59    26 effffffa5d                 stf _sgl_st_acc
        !           686:  663  00021B5F                                   #              if( force_loop )
        !           687:  664  00021B5F    5d effffffa57                        tstl    _force_loop
        !           688:  665  00021B65    31 02                                jeql    L300
        !           689:  666  00021B67                                   #                   asm("brb _logf_4_lp1");;      /* loop on the error     */
        !           690:  667  00021B67    11 d5                         brb _logf_4_lp1
        !           691:  668  00021B69                                  L300:
        !           692:  669  00021B69                                   # /*
        !           693:  670  00021B69                                   #  * Now compare the final PSL to the initial PSL -they should be the same
        !           694:  671  00021B69                                   # */
        !           695:  672  00021B69                                   #              exp_psl = init_psl;
        !           696:  673  00021B69    0d effffffa4d effffffa48             movl    _init_psl,_exp_psl
        !           697:  674  00021B74                                   #          if( psl_val != exp_psl ) {
        !           698:  675  00021B74    1d effffffa42 effffffa3d             cmpl    _psl_val,_exp_psl
        !           699:  676  00021B7F    21 03 13 00ed                        jeql    L301
        !           700:  677  00021B84                                   #                   errcnt++;                     /* bump the error count    */
        !           701:  678  00021B84    6d effffffa32                        incl    _errcnt
        !           702:  679  00021B8A                                   #                   if( prt_error ) {
        !           703:  680  00021B8A    5d effffffa2c                        tstl    _prt_error
        !           704:  681  00021B90    21 03 13 00b9                        jeql    L302
        !           705:  682  00021B95                                   #                        writes(" \n");      /* start a new print line  */
        !           706:  683  00021B95                                         .data   1
        !           707:  684  00000bc0 *                                L303:
        !           708:  685  00000bc0 *  200A00                               .ascii  " \12\0"
        !           709:  686  00000bc3 *                                       .text
        !           710:  687  00021B95    dd 8f00000bc0                        pushl   $L303
        !           711:  688  00021B9B    fe 08 effffffa1a                     callf   $8,_writes
        !           712:  689  00021BA2                                   #                        writes("cycle: ");
        !           713:  690  00021BA2                                         .data   1
        !           714:  691  00000bc3 *                                L304:
        !           715:  692  00000bc3 *  6379636C653A2000                     .ascii  "cycle: \0"
        !           716:  693  00000bcb *                                       .text
        !           717:  694  00021BA2    dd 8f00000bc3                        pushl   $L304
        !           718:  695  00021BA8    fe 08 effffffa0d                     callf   $8,_writes
        !           719:  696  00021BAF                                   #                        writed( cycle );
        !           720:  697  00021BAF    dd effffffa07                        pushl   _cycle
        !           721:  698  00021BB5    fe 08 effffffa00                     callf   $8,_writed
        !           722:  699  00021BBC                                   #                    writes("   LOGF test ");
        !           723:  700  00021BBC                                         .data   1
        !           724:  701  00000bcb *                                L305:
        !           725:  702  00000bcb *  2020204C4F474620746573742            .ascii  "   LOGF test \0"
        !           726:                   000
        !           727:  703  00000bd9 *                                       .text
        !           728:  704  00021BBC    dd 8f00000bcb                        pushl   $L305
        !           729:  705  00021BC2    fe 08 effffff9f3                     callf   $8,_writes
        !           730:  706  00021BC9                                   #                    writed( test_no );
        !           731:  707  00021BC9    dd effffff9ed                        pushl   _test_no
        !           732:  708  00021BCF    fe 08 effffff9e6                     callf   $8,_writed
        !           733:  709  00021BD6                                   #                        writes(", subtest 4 - INCORRECT FINAL PSL\n");
        !           734:  710  00021BD6                                         .data   1
        !           735:  711  00000bd9 *                                L306:
        !           736:  712  00000bd9 *  2C20737562746573742034202            .ascii  ", subtest 4 - INCORRECT FINAL PSL\12\0"
        !           737:                   D20494E434F52524543542046
        !           738:                   494E414C2050534C0A00
        !           739:  713  00000bfc *                                       .text
        !           740:  714  00021BD6    dd 8f00000bd9                        pushl   $L306
        !           741:  715  00021BDC    fe 08 effffff9d9                     callf   $8,_writes
        !           742:  716  00021BE3                                   #                        print_logf_data();       /* print the operands      */
        !           743:  717  00021BE3    fe 04 ef0000034c                     callf   $4,_print_logf_data
        !           744:  718  00021BEA                                   #                    writec('\n');
        !           745:  719  00021BEA    dd 0a                                pushl   $10
        !           746:  720  00021BEC    fe 08 effffff9c9                     callf   $8,_writec
        !           747:  721  00021BF3                                   #                        writes("initial PSL = ");
        !           748:  722  00021BF3                                         .data   1
        !           749:  723  00000bfc *                                L307:
        !           750:  724  00000bfc *  696E697469616C2050534C203            .ascii  "initial PSL = \0"
        !           751:                   D2000
        !           752:  725  00000c0b *                                       .text
        !           753:  726  00021BF3    dd 8f00000bfc                        pushl   $L307
        !           754:  727  00021BF9    fe 08 effffff9bc                     callf   $8,_writes
        !           755:  728  00021C00                                   #                        write32h( init_psl );
        !           756:  729  00021C00    dd effffff9b6                        pushl   _init_psl
        !           757:  730  00021C06    fe 08 effffff9af                     callf   $8,_write32h
        !           758:  731  00021C0D                                   #                        writes(",  final PSL = ");
        !           759:  732  00021C0D                                         .data   1
        !           760:  733  00000c0b *                                L308:
        !           761:  734  00000c0b *  2C202066696E616C2050534C2            .ascii  ",  final PSL = \0"
        !           762:                   03D2000
        !           763:  735  00000c1b *                                       .text
        !           764:  736  00021C0D    dd 8f00000c0b                        pushl   $L308
        !           765:  737  00021C13    fe 08 effffff9a2                     callf   $8,_writes
        !           766:  738  00021C1A                                   #                        write32h( psl_val );
        !           767:  739  00021C1A    dd effffff99c                        pushl   _psl_val
        !           768:  740  00021C20    fe 08 effffff995                     callf   $8,_write32h
        !           769:  741  00021C27                                   #                        writes(",  expected PSL = ");
        !           770:  742  00021C27                                         .data   1
        !           771:  743  00000c1b *                                L309:
        !           772:  744  00000c1b *  2C20206578706563746564205            .ascii  ",  expected PSL = \0"
        !           773:                   0534C203D2000
        !           774:  745  00000c2e *                                       .text
        !           775:  746  00021C27    dd 8f00000c1b                        pushl   $L309
        !           776:  747  00021C2D    fe 08 effffff988                     callf   $8,_writes
        !           777:  748  00021C34                                   #                        write32h( exp_psl );
        !           778:  749  00021C34    dd effffff982                        pushl   _exp_psl
        !           779:  750  00021C3A    fe 08 effffff97b                     callf   $8,_write32h
        !           780:  751  00021C41                                   #                        writes("\n");
        !           781:  752  00021C41                                         .data   1
        !           782:  753  00000c2e *                                L310:
        !           783:  754  00000c2e *  0A00                                 .ascii  "\12\0"
        !           784:  755  00000c30 *                                       .text
        !           785:  756  00021C41    dd 8f00000c2e                        pushl   $L310
        !           786:  757  00021C47    fe 08 effffff96e                     callf   $8,_writes
        !           787:  758  00021C4E                                   #                   }
        !           788:  759  00021C4E                                   #                   if( halt_flg )   
        !           789:  760  00021C4E                                  L302:
        !           790:  761  00021C4E    5d effffff968                        tstl    _halt_flg
        !           791:  762  00021C54    31 09                                jeql    L311
        !           792:  763  00021C56                                   #                        logf_er_halt( BAD_PSL_HLT );   /* halt on the error */
        !           793:  764  00021C56    dd 03                                pushl   $3
        !           794:  765  00021C58    fe 08 ef00000313                     callf   $8,_logf_er_halt
        !           795:  766  00021C5F                                   #                    if( loop_on_err ) {
        !           796:  767  00021C5F                                  L311:
        !           797:  768  00021C5F    5d effffff957                        tstl    _loop_on_err
        !           798:  769  00021C65    31 0a                                jeql    L312
        !           799:  770  00021C67                                   #                         force_loop = TRUE;        /* set the force loop flag */
        !           800:  771  00021C67    0d 01 effffff94e                     movl    $1,_force_loop
        !           801:  772  00021C6E                                   #                         asm("brw _logf_4_lp1");;  /* and loop on the error   */
        !           802:  773  00021C6E    13 fecd                       brw _logf_4_lp1
        !           803:  774  00021C71                                   #                    }  /* end of loop on error */
        !           804:  775  00021C71                                   #              }  /* end of PSL corruption error */
        !           805:  776  00021C71                                  L312:
        !           806:  777  00021C71                                   #         }  /* end of WHILE loop */
        !           807:  778  00021C71                                  L301:
        !           808:  779  00021C71                                  L297:
        !           809:  780  00021C71    6d effffff945                        incl    _index
        !           810:  781  00021C77    13 fe79                              jbr     L299
        !           811:  782  00021C7A                                  L298:
        !           812:  783  00021C7A                                   # }  /* end of subtest 4 */
        !           813:  784  00021C7A    40                                   ret#2
        !           814:  785  00021C7B                                         .set    L293,0x0
        !           815:  786  00021C7B                                  L295:
        !           816:  787  00021C7B    13 fe55                              jbr     L296
        !           817:  788  00021C7E                                         .data
        !           818:  789  00000a60 *                                       .text
        !           819:  790  00021C7E                                         .align  1
        !           820:  791  00021C7E                                         .globl  _logf_5
        !           821:  792  00021C7E                                  _logf_5:
        !           822:  793  00021C7E    0000                                 .word   L313
        !           823:  794  00021C80                                   #  
        !           824:  795  00021C80                                   # 
        !           825:  796  00021C80                                   # 
        !           826:  797  00021C80                                   # /************************************************************************
        !           827:  798  00021C80                                   # *
        !           828:  799  00021C80                                   # *               SUBTEST 5 - pipelined entry test
        !           829:  800  00021C80                                   # *
        !           830:  801  00021C80                                   # ************************************************************************/
        !           831:  802  00021C80                                   # logf_5() 
        !           832:  803  00021C80                                   # {
        !           833:  804  00021C80    13 0154                              jbr     L315
        !           834:  805  00021C83                                  L316:
        !           835:  806  00021C83                                   #         force_loop = FALSE;
        !           836:  807  00021C83    4d effffff933                        clrl    _force_loop
        !           837:  808  00021C89                                   #         subtest = 8;
        !           838:  809  00021C89    0d 08 effffff92c                     movl    $8,_subtest
        !           839:  810  00021C90                                   #         for( index = 0; index < max_logf_1_index; index++ ) {
        !           840:  811  00021C90    4d effffff926                        clrl    _index
        !           841:  812  00021C96                                  L319:
        !           842:  813  00021C96    1d effffff920 effffff91b             cmpl    _index,_max_logf_1_index
        !           843:  814  00021CA1    91 03 13 0130                        jgeq    L318
        !           844:  815  00021CA6                                   #              sgl_ld_acc   = logf_1_data[index].ld;   /* get operand 1       */
        !           845:  816  00021CA6    0d effffff910 50                     movl    _index,r0
        !           846:  817  00021CAD    48 03 50 50                          shll    $3,r0,r0
        !           847:  818  00021CB1    0d e000000000 effffff900             movl    _logf_1_data(r0),_sgl_ld_acc
        !           848:  819  00021CBC                                   #              sgl_expected = logf_1_data[index].exp;  /* get expected result */
        !           849:  820  00021CBC    0d effffff8fa 50                     movl    _index,r0
        !           850:  821  00021CC3    48 03 50 50                          shll    $3,r0,r0
        !           851:  822  00021CC7    0d e000000004 effffff8ea             movl    _logf_1_data+4(r0),_sgl_expected
        !           852:  823  00021CD2                                   # /*
        !           853:  824  00021CD2                                   #  * If LOOP ON ERROR is set, this is the loop for this subtest.
        !           854:  825  00021CD2                                   #  * The force loop flag is set after the first error.
        !           855:  826  00021CD2                                   # */
        !           856:  827  00021CD2                                   #              asm("_logf_5_lp1:");
        !           857:  828  00021CD2                                  _logf_5_lp1:
        !           858:  829  00021CD2                                   #              asm("movl $0,r0");                 /* clear r0                */
        !           859:  830  00021CD2    0d 00 50                      movl $0,r0
        !           860:  831  00021CD5                                   #              asm("ldf r0");                     /* load the Acc. with 0.0  */
        !           861:  832  00021CD5    06 50                         ldf r0
        !           862:  833  00021CD7                                   #              asm("addf _sgl_ld_acc");           /* add the 1st operand     */
        !           863:  834  00021CD7    c6 effffff8df                 addf _sgl_ld_acc
        !           864:  835  00021CDD                                   #              asm("logf");                       /* get the log             */
        !           865:  836  00021CDD    35                            logf
        !           866:  837  00021CDE                                   #              asm("stf _sgl_st_acc");            /* store the result        */
        !           867:  838  00021CDE    26 effffff8d8                 stf _sgl_st_acc
        !           868:  839  00021CE4                                   #              if( force_loop )
        !           869:  840  00021CE4    5d effffff8d2                        tstl    _force_loop
        !           870:  841  00021CEA    31 02                                jeql    L320
        !           871:  842  00021CEC                                   #                   asm("brb _logf_5_lp1");;      /* loop on the error       */
        !           872:  843  00021CEC    11 e4                         brb _logf_5_lp1
        !           873:  844  00021CEE                                  L320:
        !           874:  845  00021CEE                                   # /* 
        !           875:  846  00021CEE                                   #  * end error loop - test the results
        !           876:  847  00021CEE                                   # */
        !           877:  848  00021CEE                                   #              if( sgl_st_acc != sgl_expected ) { /* COMPARE the values     */
        !           878:  849  00021CEE    1d effffff8c8 effffff8c3             cmpl    _sgl_st_acc,_sgl_expected
        !           879:  850  00021CF9    21 03 13 00cf                        jeql    L321
        !           880:  851  00021CFE                                   #                    errcnt++;                    /* bump the error count   */
        !           881:  852  00021CFE    6d effffff8b8                        incl    _errcnt
        !           882:  853  00021D04                                   #                    if( prt_error ) {
        !           883:  854  00021D04    5d effffff8b2                        tstl    _prt_error
        !           884:  855  00021D0A    21 03 13 009b                        jeql    L322
        !           885:  856  00021D0F                                   #                         writes(" \n");      /* start a new print line */
        !           886:  857  00021D0F                                         .data   1
        !           887:  858  00000c30 *                                L323:
        !           888:  859  00000c30 *  200A00                               .ascii  " \12\0"
        !           889:  860  00000c33 *                                       .text
        !           890:  861  00021D0F    dd 8f00000c30                        pushl   $L323
        !           891:  862  00021D15    fe 08 effffff8a0                     callf   $8,_writes
        !           892:  863  00021D1C                                   #                         writes("cycle: ");
        !           893:  864  00021D1C                                         .data   1
        !           894:  865  00000c33 *                                L324:
        !           895:  866  00000c33 *  6379636C653A2000                     .ascii  "cycle: \0"
        !           896:  867  00000c3b *                                       .text
        !           897:  868  00021D1C    dd 8f00000c33                        pushl   $L324
        !           898:  869  00021D22    fe 08 effffff893                     callf   $8,_writes
        !           899:  870  00021D29                                   #                         writed( cycle );
        !           900:  871  00021D29    dd effffff88d                        pushl   _cycle
        !           901:  872  00021D2F    fe 08 effffff886                     callf   $8,_writed
        !           902:  873  00021D36                                   #                     writes("   LOGF test ");
        !           903:  874  00021D36                                         .data   1
        !           904:  875  00000c3b *                                L325:
        !           905:  876  00000c3b *  2020204C4F474620746573742            .ascii  "   LOGF test \0"
        !           906:                   000
        !           907:  877  00000c49 *                                       .text
        !           908:  878  00021D36    dd 8f00000c3b                        pushl   $L325
        !           909:  879  00021D3C    fe 08 effffff879                     callf   $8,_writes
        !           910:  880  00021D43                                   #                     writed( test_no );
        !           911:  881  00021D43    dd effffff873                        pushl   _test_no
        !           912:  882  00021D49    fe 08 effffff86c                     callf   $8,_writed
        !           913:  883  00021D50                                   #                         writes(", subtest 5 (Piped Entry) - BAD FINAL ACC\n");
        !           914:  884  00021D50                                         .data   1
        !           915:  885  00000c49 *                                L326:
        !           916:  886  00000c49 *  2C20737562746573742035202            .ascii  ", subtest 5 (Piped Entry) - BAD FINAL ACC\12\0"
        !           917:                   8506970656420456E74727929
        !           918:                   202D204241442046494E414C2
        !           919:                   04143430A00
        !           920:  887  00000c74 *                                       .text
        !           921:  888  00021D50    dd 8f00000c49                        pushl   $L326
        !           922:  889  00021D56    fe 08 effffff85f                     callf   $8,_writes
        !           923:  890  00021D5D                                   #                         print_logf_data();
        !           924:  891  00021D5D    fe 04 ef000001d2                     callf   $4,_print_logf_data
        !           925:  892  00021D64                                   #                         writes(",  data index = ");
        !           926:  893  00021D64                                         .data   1
        !           927:  894  00000c74 *                                L327:
        !           928:  895  00000c74 *  2C20206461746120696E64657            .ascii  ",  data index = \0"
        !           929:                   8203D2000
        !           930:  896  00000c85 *                                       .text
        !           931:  897  00021D64    dd 8f00000c74                        pushl   $L327
        !           932:  898  00021D6A    fe 08 effffff84b                     callf   $8,_writes
        !           933:  899  00021D71                                   #                         writed( index );
        !           934:  900  00021D71    dd effffff845                        pushl   _index
        !           935:  901  00021D77    fe 08 effffff83e                     callf   $8,_writed
        !           936:  902  00021D7E                                   #                         writec('\n');
        !           937:  903  00021D7E    dd 0a                                pushl   $10
        !           938:  904  00021D80    fe 08 effffff835                     callf   $8,_writec
        !           939:  905  00021D87                                   #                         writes("                          expected = ");
        !           940:  906  00021D87                                         .data   1
        !           941:  907  00000c85 *                                L328:
        !           942:  908  00000c85 *  2020202020202020202020202            .ascii  "                          expected = \0"
        !           943:                   0202020202020202020202020
        !           944:                   206578706563746564203D200
        !           945:                   0
        !           946:  909  00000cab *                                       .text
        !           947:  910  00021D87    dd 8f00000c85                        pushl   $L328
        !           948:  911  00021D8D    fe 08 effffff828                     callf   $8,_writes
        !           949:  912  00021D94                                   #                         write32h( sgl_expected );
        !           950:  913  00021D94    dd effffff822                        pushl   _sgl_expected
        !           951:  914  00021D9A    fe 08 effffff81b                     callf   $8,_write32h
        !           952:  915  00021DA1                                   #                         writec('\n');
        !           953:  916  00021DA1    dd 0a                                pushl   $10
        !           954:  917  00021DA3    fe 08 effffff812                     callf   $8,_writec
        !           955:  918  00021DAA                                   #                    }
        !           956:  919  00021DAA                                   #                    if( halt_flg ) 
        !           957:  920  00021DAA                                  L322:
        !           958:  921  00021DAA    5d effffff80c                        tstl    _halt_flg
        !           959:  922  00021DB0    31 09                                jeql    L329
        !           960:  923  00021DB2                                   #                         logf_er_halt( BAD_ACC_HLT );    /* halt on the error */
        !           961:  924  00021DB2    dd 01                                pushl   $1
        !           962:  925  00021DB4    fe 08 ef000001b7                     callf   $8,_logf_er_halt
        !           963:  926  00021DBB                                   #                    if( loop_on_err ) {
        !           964:  927  00021DBB                                  L329:
        !           965:  928  00021DBB    5d effffff7fb                        tstl    _loop_on_err
        !           966:  929  00021DC1    31 0a                                jeql    L330
        !           967:  930  00021DC3                                   #                         force_loop = TRUE;        /* set the force loop flag */
        !           968:  931  00021DC3    0d 01 effffff7f2                     movl    $1,_force_loop
        !           969:  932  00021DCA                                   #                         asm("brw _logf_5_lp1");;  /* and loop on the error   */
        !           970:  933  00021DCA    13 ff05                       brw _logf_5_lp1
        !           971:  934  00021DCD                                   #                    }  /* end of loop on error */
        !           972:  935  00021DCD                                   #              }   /* end of compare error */
        !           973:  936  00021DCD                                  L330:
        !           974:  937  00021DCD                                   #         }  /* end of WHILE loop */
        !           975:  938  00021DCD                                  L321:
        !           976:  939  00021DCD                                  L317:
        !           977:  940  00021DCD    6d effffff7e9                        incl    _index
        !           978:  941  00021DD3    13 fec0                              jbr     L319
        !           979:  942  00021DD6                                  L318:
        !           980:  943  00021DD6                                   # }  /* end of subtest 5 */
        !           981:  944  00021DD6    40                                   ret#2
        !           982:  945  00021DD7                                         .set    L313,0x0
        !           983:  946  00021DD7                                  L315:
        !           984:  947  00021DD7    13 fea9                              jbr     L316
        !           985:  948  00021DDA                                         .data
        !           986:  949  00000a60 *                                       .text
        !           987:  950  00021DDA                                         .align  1
        !           988:  951  00021DDA                                         .globl  _logf_6
        !           989:  952  00021DDA                                  _logf_6:
        !           990:  953  00021DDA    0000                                 .word   L331
        !           991:  954  00021DDC                                   #   
        !           992:  955  00021DDC                                   # 
        !           993:  956  00021DDC                                   # 
        !           994:  957  00021DDC                                   # /************************************************************************
        !           995:  958  00021DDC                                   # *
        !           996:  959  00021DDC                                   # *               SUBTEST 6 - pipelined exit test
        !           997:  960  00021DDC                                   # *
        !           998:  961  00021DDC                                   # ************************************************************************/
        !           999:  962  00021DDC                                   # logf_6() 
        !          1000:  963  00021DDC                                   # {
        !          1001:  964  00021DDC    13 0154                              jbr     L333
        !          1002:  965  00021DDF                                  L334:
        !          1003:  966  00021DDF                                   #         force_loop = FALSE;
        !          1004:  967  00021DDF    4d effffff7d7                        clrl    _force_loop
        !          1005:  968  00021DE5                                   #         subtest = 8;
        !          1006:  969  00021DE5    0d 08 effffff7d0                     movl    $8,_subtest
        !          1007:  970  00021DEC                                   #         for( index = 0; index < max_logf_1_index; index++ ) {
        !          1008:  971  00021DEC    4d effffff7ca                        clrl    _index
        !          1009:  972  00021DF2                                  L337:
        !          1010:  973  00021DF2    1d effffff7c4 effffff7bf             cmpl    _index,_max_logf_1_index
        !          1011:  974  00021DFD    91 03 13 0130                        jgeq    L336
        !          1012:  975  00021E02                                   #              sgl_ld_acc   = logf_1_data[index].ld;   /* get operand 1       */
        !          1013:  976  00021E02    0d effffff7b4 50                     movl    _index,r0
        !          1014:  977  00021E09    48 03 50 50                          shll    $3,r0,r0
        !          1015:  978  00021E0D    0d e000000000 effffff7a4             movl    _logf_1_data(r0),_sgl_ld_acc
        !          1016:  979  00021E18                                   #              sgl_expected = logf_1_data[index].exp;  /* get expected result */
        !          1017:  980  00021E18    0d effffff79e 50                     movl    _index,r0
        !          1018:  981  00021E1F    48 03 50 50                          shll    $3,r0,r0
        !          1019:  982  00021E23    0d e000000004 effffff78e             movl    _logf_1_data+4(r0),_sgl_expected
        !          1020:  983  00021E2E                                   # /*
        !          1021:  984  00021E2E                                   #  * If LOOP ON ERROR is set, this is the loop for this subtest.
        !          1022:  985  00021E2E                                   #  * The force loop flag is set after the first error.
        !          1023:  986  00021E2E                                   # */
        !          1024:  987  00021E2E                                   #              asm("_logf_6_lp1:");
        !          1025:  988  00021E2E                                  _logf_6_lp1:
        !          1026:  989  00021E2E                                   #              asm("movl $0,r0");                 /* clear r0                */
        !          1027:  990  00021E2E    0d 00 50                      movl $0,r0
        !          1028:  991  00021E31                                   #              asm("ldf _sgl_ld_acc");             /* load the Acc.           */
        !          1029:  992  00021E31    06 effffff785                 ldf _sgl_ld_acc
        !          1030:  993  00021E37                                   #              asm("logf");                       /* get the log             */
        !          1031:  994  00021E37    35                            logf
        !          1032:  995  00021E38                                   #              asm("addf r0");                    /* add a zero to the acc   */
        !          1033:  996  00021E38    c6 50                         addf r0
        !          1034:  997  00021E3A                                   #              asm("stf _sgl_st_acc");            /* store the result        */
        !          1035:  998  00021E3A    26 effffff77c                 stf _sgl_st_acc
        !          1036:  999  00021E40                                   #              if( force_loop )
        !          1037: 1000  00021E40    5d effffff776                        tstl    _force_loop
        !          1038: 1001  00021E46    31 02                                jeql    L338
        !          1039: 1002  00021E48                                   #                   asm("brb _logf_6_lp1");;      /* loop on the error       */
        !          1040: 1003  00021E48    11 e4                         brb _logf_6_lp1
        !          1041: 1004  00021E4A                                  L338:
        !          1042: 1005  00021E4A                                   # /* 
        !          1043: 1006  00021E4A                                   #  * end error loop - test the results
        !          1044: 1007  00021E4A                                   # */
        !          1045: 1008  00021E4A                                   #              if( sgl_st_acc != sgl_expected ) { /* COMPARE the values     */
        !          1046: 1009  00021E4A    1d effffff76c effffff767             cmpl    _sgl_st_acc,_sgl_expected
        !          1047: 1010  00021E55    21 03 13 00cf                        jeql    L339
        !          1048: 1011  00021E5A                                   #                    errcnt++;                    /* bump the error count   */
        !          1049: 1012  00021E5A    6d effffff75c                        incl    _errcnt
        !          1050: 1013  00021E60                                   #                    if( prt_error ) {
        !          1051: 1014  00021E60    5d effffff756                        tstl    _prt_error
        !          1052: 1015  00021E66    21 03 13 009b                        jeql    L340
        !          1053: 1016  00021E6B                                   #                         writes(" \n");      /* start a new print line */
        !          1054: 1017  00021E6B                                         .data   1
        !          1055: 1018  00000cab *                                L341:
        !          1056: 1019  00000cab *  200A00                               .ascii  " \12\0"
        !          1057: 1020  00000cae *                                       .text
        !          1058: 1021  00021E6B    dd 8f00000cab                        pushl   $L341
        !          1059: 1022  00021E71    fe 08 effffff744                     callf   $8,_writes
        !          1060: 1023  00021E78                                   #                         writes("cycle: ");
        !          1061: 1024  00021E78                                         .data   1
        !          1062: 1025  00000cae *                                L342:
        !          1063: 1026  00000cae *  6379636C653A2000                     .ascii  "cycle: \0"
        !          1064: 1027  00000cb6 *                                       .text
        !          1065: 1028  00021E78    dd 8f00000cae                        pushl   $L342
        !          1066: 1029  00021E7E    fe 08 effffff737                     callf   $8,_writes
        !          1067: 1030  00021E85                                   #                         writed( cycle );
        !          1068: 1031  00021E85    dd effffff731                        pushl   _cycle
        !          1069: 1032  00021E8B    fe 08 effffff72a                     callf   $8,_writed
        !          1070: 1033  00021E92                                   #                     writes("   LOGF test ");
        !          1071: 1034  00021E92                                         .data   1
        !          1072: 1035  00000cb6 *                                L343:
        !          1073: 1036  00000cb6 *  2020204C4F474620746573742            .ascii  "   LOGF test \0"
        !          1074:                   000
        !          1075: 1037  00000cc4 *                                       .text
        !          1076: 1038  00021E92    dd 8f00000cb6                        pushl   $L343
        !          1077: 1039  00021E98    fe 08 effffff71d                     callf   $8,_writes
        !          1078: 1040  00021E9F                                   #                     writed( test_no );
        !          1079: 1041  00021E9F    dd effffff717                        pushl   _test_no
        !          1080: 1042  00021EA5    fe 08 effffff710                     callf   $8,_writed
        !          1081: 1043  00021EAC                                   #                         writes(", subtest 6 (Piped Exit) - BAD FINAL ACC\n");
        !          1082: 1044  00021EAC                                         .data   1
        !          1083: 1045  00000cc4 *                                L344:
        !          1084: 1046  00000cc4 *  2C20737562746573742036202            .ascii  ", subtest 6 (Piped Exit) - BAD FINAL ACC\12\0"
        !          1085:                   8506970656420457869742920
        !          1086:                   2D204241442046494E414C204
        !          1087:                   143430A00
        !          1088: 1047  00000cee *                                       .text
        !          1089: 1048  00021EAC    dd 8f00000cc4                        pushl   $L344
        !          1090: 1049  00021EB2    fe 08 effffff703                     callf   $8,_writes
        !          1091: 1050  00021EB9                                   #                         print_logf_data();
        !          1092: 1051  00021EB9    fe 04 ef00000076                     callf   $4,_print_logf_data
        !          1093: 1052  00021EC0                                   #                         writes(",  data index = ");
        !          1094: 1053  00021EC0                                         .data   1
        !          1095: 1054  00000cee *                                L345:
        !          1096: 1055  00000cee *  2C20206461746120696E64657            .ascii  ",  data index = \0"
        !          1097:                   8203D2000
        !          1098: 1056  00000cff *                                       .text
        !          1099: 1057  00021EC0    dd 8f00000cee                        pushl   $L345
        !          1100: 1058  00021EC6    fe 08 effffff6ef                     callf   $8,_writes
        !          1101: 1059  00021ECD                                   #                         writed( index );
        !          1102: 1060  00021ECD    dd effffff6e9                        pushl   _index
        !          1103: 1061  00021ED3    fe 08 effffff6e2                     callf   $8,_writed
        !          1104: 1062  00021EDA                                   #                         writec('\n');
        !          1105: 1063  00021EDA    dd 0a                                pushl   $10
        !          1106: 1064  00021EDC    fe 08 effffff6d9                     callf   $8,_writec
        !          1107: 1065  00021EE3                                   #                         writes("                          expected = ");
        !          1108: 1066  00021EE3                                         .data   1
        !          1109: 1067  00000cff *                                L346:
        !          1110: 1068  00000cff *  2020202020202020202020202            .ascii  "                          expected = \0"
        !          1111:                   0202020202020202020202020
        !          1112:                   206578706563746564203D200
        !          1113:                   0
        !          1114: 1069  00000d25 *                                       .text
        !          1115: 1070  00021EE3    dd 8f00000cff                        pushl   $L346
        !          1116: 1071  00021EE9    fe 08 effffff6cc                     callf   $8,_writes
        !          1117: 1072  00021EF0                                   #                         write32h( sgl_expected );
        !          1118: 1073  00021EF0    dd effffff6c6                        pushl   _sgl_expected
        !          1119: 1074  00021EF6    fe 08 effffff6bf                     callf   $8,_write32h
        !          1120: 1075  00021EFD                                   #                         writec('\n');
        !          1121: 1076  00021EFD    dd 0a                                pushl   $10
        !          1122: 1077  00021EFF    fe 08 effffff6b6                     callf   $8,_writec
        !          1123: 1078  00021F06                                   #                    }
        !          1124: 1079  00021F06                                   #                    if( halt_flg ) 
        !          1125: 1080  00021F06                                  L340:
        !          1126: 1081  00021F06    5d effffff6b0                        tstl    _halt_flg
        !          1127: 1082  00021F0C    31 09                                jeql    L347
        !          1128: 1083  00021F0E                                   #                         logf_er_halt( BAD_ACC_HLT );    /* halt on the error */
        !          1129: 1084  00021F0E    dd 01                                pushl   $1
        !          1130: 1085  00021F10    fe 08 ef0000005b                     callf   $8,_logf_er_halt
        !          1131: 1086  00021F17                                   #                    if( loop_on_err ) {
        !          1132: 1087  00021F17                                  L347:
        !          1133: 1088  00021F17    5d effffff69f                        tstl    _loop_on_err
        !          1134: 1089  00021F1D    31 0a                                jeql    L348
        !          1135: 1090  00021F1F                                   #                         force_loop = TRUE;        /* set the force loop flag */
        !          1136: 1091  00021F1F    0d 01 effffff696                     movl    $1,_force_loop
        !          1137: 1092  00021F26                                   #                         asm("brw _logf_6_lp1");;  /* and loop on the error   */
        !          1138: 1093  00021F26    13 ff05                       brw _logf_6_lp1
        !          1139: 1094  00021F29                                   #                    }  /* end of loop on error */
        !          1140: 1095  00021F29                                   #              }   /* end of compare error */
        !          1141: 1096  00021F29                                  L348:
        !          1142: 1097  00021F29                                   #         }  /* end of WHILE loop */
        !          1143: 1098  00021F29                                  L339:
        !          1144: 1099  00021F29                                  L335:
        !          1145: 1100  00021F29    6d effffff68d                        incl    _index
        !          1146: 1101  00021F2F    13 fec0                              jbr     L337
        !          1147: 1102  00021F32                                  L336:
        !          1148: 1103  00021F32                                   # }  /* end of subtest 6 */
        !          1149: 1104  00021F32    40                                   ret#2
        !          1150: 1105  00021F33                                         .set    L331,0x0
        !          1151: 1106  00021F33                                  L333:
        !          1152: 1107  00021F33    13 fea9                              jbr     L334
        !          1153: 1108  00021F36                                         .data
        !          1154: 1109  00000a60 *                                       .text
        !          1155: 1110  00021F36                                         .align  1
        !          1156: 1111  00021F36                                         .globl  _print_logf_data
        !          1157: 1112  00021F36                                  _print_logf_data:
        !          1158: 1113  00021F36    0000                                 .word   L349
        !          1159: 1114  00021F38                                   #   
        !          1160: 1115  00021F38                                   # 
        !          1161: 1116  00021F38                                   # /**************************************************************************
        !          1162: 1117  00021F38                                   # *
        !          1163: 1118  00021F38                                   # *       PRINT THE DATA AND STORE RESULTS
        !          1164: 1119  00021F38                                   # *
        !          1165: 1120  00021F38                                   # *  initial Acc = xxxxxxxx,     stored = xxxxxxxx,   data index = xx
        !          1166: 1121  00021F38                                   # *                        Acc expected = xxxxxxxx
        !          1167: 1122  00021F38                                   # **************************************************************************/
        !          1168: 1123  00021F38                                   # print_logf_data()
        !          1169: 1124  00021F38                                   # {
        !          1170: 1125  00021F38    11 35                                jbr     L351
        !          1171: 1126  00021F3A                                  L352:
        !          1172: 1127  00021F3A                                   #         writes("initial Acc = ");
        !          1173: 1128  00021F3A                                         .data   1
        !          1174: 1129  00000d25 *                                L353:
        !          1175: 1130  00000d25 *  696E697469616C20416363203            .ascii  "initial Acc = \0"
        !          1176:                   D2000
        !          1177: 1131  00000d34 *                                       .text
        !          1178: 1132  00021F3A    dd 8f00000d25                        pushl   $L353
        !          1179: 1133  00021F40    fe 08 effffff675                     callf   $8,_writes
        !          1180: 1134  00021F47                                   #         write32h( sgl_ld_acc );
        !          1181: 1135  00021F47    dd effffff66f                        pushl   _sgl_ld_acc
        !          1182: 1136  00021F4D    fe 08 effffff668                     callf   $8,_write32h
        !          1183: 1137  00021F54                                   #         writes(",  final Acc = ");
        !          1184: 1138  00021F54                                         .data   1
        !          1185: 1139  00000d34 *                                L354:
        !          1186: 1140  00000d34 *  2C202066696E616C204163632            .ascii  ",  final Acc = \0"
        !          1187:                   03D2000
        !          1188: 1141  00000d44 *                                       .text
        !          1189: 1142  00021F54    dd 8f00000d34                        pushl   $L354
        !          1190: 1143  00021F5A    fe 08 effffff65b                     callf   $8,_writes
        !          1191: 1144  00021F61                                   #         write32h( sgl_st_acc );
        !          1192: 1145  00021F61    dd effffff655                        pushl   _sgl_st_acc
        !          1193: 1146  00021F67    fe 08 effffff64e                     callf   $8,_write32h
        !          1194: 1147  00021F6E                                   # }
        !          1195: 1148  00021F6E    40                                   ret#2
        !          1196: 1149  00021F6F                                         .set    L349,0x0
        !          1197: 1150  00021F6F                                  L351:
        !          1198: 1151  00021F6F    11 c9                                jbr     L352
        !          1199: 1152  00021F71                                         .data
        !          1200: 1153  00000a60 *                                       .text
        !          1201: 1154  00021F71    00                                   .align  1
        !          1202: 1155  00021F72                                         .globl  _logf_er_halt
        !          1203: 1156  00021F72                                  _logf_er_halt:
        !          1204: 1157  00021F72    0000                                 .word   L355
        !          1205: 1158  00021F74                                   #  
        !          1206: 1159  00021F74                                   # 
        !          1207: 1160  00021F74                                   # 
        !          1208: 1161  00021F74                                   # /**************************************************************************
        !          1209: 1162  00021F74                                   # *
        !          1210: 1163  00021F74                                   # *               HALT ON ERROR ROUTINE 
        !          1211: 1164  00021F74                                   # *
        !          1212: 1165  00021F74                                   # **************************************************************************/
        !          1213: 1166  00021F74                                   # logf_er_halt( halt_code )
        !          1214: 1167  00021F74                                   # int halt_code;
        !          1215: 1168  00021F74                                   # {
        !          1216: 1169  00021F74    13 00a0                              jbr     L357
        !          1217: 1170  00021F77                                  L358:
        !          1218: 1171  00021F77                                   #         sgl_dummy1 = halt_code;                 /* get the error type    */
        !          1219: 1172  00021F77    0d ad04 effffff63d                   movl    4(fp),_sgl_dummy1
        !          1220: 1173  00021F7F                                   #         asm("movl _test_no,r0");                /* r0  = test number     */
        !          1221: 1174  00021F7F    0d effffff637 50              movl _test_no,r0
        !          1222: 1175  00021F86                                   #         asm("movl _subtest,r1");                /* r1  = subtest number  */
        !          1223: 1176  00021F86    0d effffff630 51              movl _subtest,r1
        !          1224: 1177  00021F8D                                   #         asm("movl _sgl_dummy1,r2");             /* r2  = error code      */
        !          1225: 1178  00021F8D    0d effffff629 52              movl _sgl_dummy1,r2
        !          1226: 1179  00021F94                                   #         asm("movl _cycle,r3");                  /* r3  = cycle count     */
        !          1227: 1180  00021F94    0d effffff622 53              movl _cycle,r3
        !          1228: 1181  00021F9B                                   #         asm("movl _sgl_ld_acc,r4");             /* r4  = initial data    */
        !          1229: 1182  00021F9B    0d effffff61b 54              movl _sgl_ld_acc,r4
        !          1230: 1183  00021FA2                                   #         asm("movl _sgl_st_acc,r5");             /* r5  = data stored     */
        !          1231: 1184  00021FA2    0d effffff614 55              movl _sgl_st_acc,r5
        !          1232: 1185  00021FA9                                   #         asm("movl _sgl_expected,r6");           /* r6  = data expected   */
        !          1233: 1186  00021FA9    0d effffff60d 56              movl _sgl_expected,r6
        !          1234: 1187  00021FB0                                   #         asm("movl _index,r7");                  /* r7  = data index      */
        !          1235: 1188  00021FB0    0d effffff606 57              movl _index,r7
        !          1236: 1189  00021FB7                                   #         if( halt_code == BAD_REG_HLT ) {
        !          1237: 1190  00021FB7    1d ad04 02                           cmpl    4(fp),$2
        !          1238: 1191  00021FBB    21 3d                                jneq    L359
        !          1239: 1192  00021FBD                                   #              sgl_dummy1 = load_regs[index2];
        !          1240: 1193  00021FBD    0d effffff5f9 50                     movl    _index2,r0
        !          1241: 1194  00021FC4    0d 40effffff5f1                      movl    _load_regs[r0],_sgl_dummy1
        !          1242:                   effffff5ec 
        !          1243: 1195  00021FD0                                   #              sgl_dummy2 = store_regs[index2];
        !          1244: 1196  00021FD0    0d effffff5e6 50                     movl    _index2,r0
        !          1245: 1197  00021FD7    0d 40effffff5de                      movl    _store_regs[r0],_sgl_dummy2
        !          1246:                   effffff5d9 
        !          1247: 1198  00021FE3                                   #              asm("movl _index2,r6");            /* r6  = bad register #  */
        !          1248: 1199  00021FE3    0d effffff5d3 56              movl _index2,r6
        !          1249: 1200  00021FEA                                   #              asm("movl _sgl_dummy2,r7");        /* r7  = actual value    */
        !          1250: 1201  00021FEA    0d effffff5cc 57              movl _sgl_dummy2,r7
        !          1251: 1202  00021FF1                                   #              asm("movl _sgl_dummy1,r8");        /* r8  = expected value  */
        !          1252: 1203  00021FF1    0d effffff5c5 58              movl _sgl_dummy1,r8
        !          1253: 1204  00021FF8                                   #         } else
        !          1254: 1205  00021FF8    11 1b                                jbr     L360
        !          1255: 1206  00021FFA                                  L359:
        !          1256: 1207  00021FFA                                   #           if( halt_code == BAD_PSL_HLT ) {
        !          1257: 1208  00021FFA    1d ad04 03                           cmpl    4(fp),$3
        !          1258: 1209  00021FFE    21 15                                jneq    L361
        !          1259: 1210  00022000                                   #              asm("movl _init_psl,r6");          /* r6  = initial PSL     */
        !          1260: 1211  00022000    0d effffff5b6 56              movl _init_psl,r6
        !          1261: 1212  00022007                                   #              asm("movl _psl_val,r7");           /* r7  = final PSL       */
        !          1262: 1213  00022007    0d effffff5af 57              movl _psl_val,r7
        !          1263: 1214  0002200E                                   #              asm("movl _exp_psl,r8");           /* r8  = expected PSL    */
        !          1264: 1215  0002200E    0d effffff5a8 58              movl _exp_psl,r8
        !          1265: 1216  00022015                                   #         };
        !          1266: 1217  00022015                                  L361:
        !          1267: 1218  00022015                                  L360:
        !          1268: 1219  00022015                                   #         asm("halt");                            /* HALT ...              */
        !          1269: 1220  00022015    00                            halt
        !          1270: 1221  00022016                                   # }  
        !          1271: 1222  00022016    40                                   ret#2
        !          1272: 1223  00022017                                         .set    L355,0x0
        !          1273: 1224  00022017                                  L357:
        !          1274: 1225  00022017    13 ff5d                              jbr     L358
        !          1275: 1226  0002201A                                         .data
        !          1276: 1226  000435D6                                         .data

unix.superglobalmegacorp.com

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