Annotation of cci/d/macro4/pipe18.lst, revision 1.1.1.1

1.1       root        1:    1  00000000                                  LL0:
                      2:    2  00000000                                         .data
                      3:    3  00000464 *                                       .text
                      4:    4  00000000                                         .align  1
                      5:    5  00000000                                         .globl  _pipe_18
                      6:    6  00000000                                  _pipe_18:
                      7:    7  00032A84    0000                                 .word   L215
                      8:    8  00032A86                                   # #include "fpp_defs.h"
                      9:    9  00032A86                                   # 
                     10:   10  00032A86                                   # 
                     11:   11  00032A86                                   # /*****************************************************************************
                     12:   12  00032A86                                   # *
                     13:   13  00032A86                                   # *           PIPELINE TEST #18 
                     14:   14  00032A86                                   # *
                     15:   15  00032A86                                   # *   LDD(op1), MULD(op2), CVDL r0, SUBD operand[r0], STD
                     16:   16  00032A86                                   # *
                     17:   17  00032A86                                   # *  -where the operands are the fmacro1 MULD data patterns. The SUBD operand's
                     18:   18  00032A86                                   # *   address is based on the result of the CVDL.
                     19:   19  00032A86                                   # *  -The load, multiply, and convert will be done twice. The first time will
                     20:   20  00032A86                                   # *   be to get the index and the data to subtract. The data to subtract will 
                     21:   21  00032A86                                   # *   be the same as the accumulator so we'll expect a reasult of zero. The 
                     22:   22  00032A86                                   # *   data will be stored based on the 1st CVDL result.
                     23:   23  00032A86                                   # *  -If the 2nd CVDL doesn't get done before the SUBD operand is fetched then
                     24:   24  00032A86                                   # *   we won't get a final accumulator of zero.
                     25:   25  00032A86                                   # *  -For size reasons, only the MULD data with a result between -100 and +100
                     26:   26  00032A86                                   # *   will be used for this test.
                     27:   27  00032A86                                   # *****************************************************************************/
                     28:   28  00032A86                                   # pipe_18()
                     29:   29  00032A86                                   # {
                     30:   30  00032A86    13 01cc                              jbr     L217
                     31:   31  00032A89                                  L218:
                     32:   32  00032A89                                   #     asm(".globl _pipeline_18_t");
                     33:   33  00032A89                                  .globl _pipeline_18_t
                     34:   34  00032A89                                   #     asm("_pipeline_18_t:");
                     35:   35  00032A89                                  _pipeline_18_t:
                     36:   36  00032A89                                   #     if( (cycle == 1) && (prt_hdrs) )        /* print headers on 1st cycle */
                     37:   37  00032A89    1d effffffff5 01                     cmpl    _cycle,$1
                     38:   38  00032A90    21 15                                jneq    L219
                     39:   39  00032A92    5d efffffffec                        tstl    _prt_hdrs
                     40:   40  00032A98    31 0d                                jeql    L219
                     41:   41  00032A9A                                   #        writes(" PIPE_18");
                     42:   42  00032A9A                                         .data   1
                     43:   43  00000464 *                                L221:
                     44:   44  00000464 *  20504950455F313800                   .ascii  " PIPE_18\0"
                     45:   45  0000046d *                                       .text
                     46:   46  00032A9A    dd 8f00000464                        pushl   $L221
                     47:   47  00032AA0    fe 08 efffffffdd                     callf   $8,_writes
                     48:   48  00032AA7                                   #     force_loop = FALSE;                     /* clear force_loop flag */
                     49:   49  00032AA7                                  L219:
                     50:   50  00032AA7    4d efffffffd7                        clrl    _force_loop
                     51:   51  00032AAD                                   #     for( index = 0; index <= max_muld_1_index; index++ ) {
                     52:   52  00032AAD    4d efffffffd1                        clrl    _index
                     53:   53  00032AB3                                  L224:
                     54:   54  00032AB3    1d efffffffcb efffffffc6             cmpl    _index,_max_muld_1_index
                     55:   55  00032ABE    51 03 13 018b                        jgtr    L223
                     56:   56  00032AC3                                   #           dbl_value_1  = muld_1_data[index].op_1;   /* get the data  */
                     57:   57  00032AC3    5c 18 efffffffba 50                  mull3   $24,_index,r0
                     58:   58  00032ACB    0c 8f00000000 50                     addl2   $_muld_1_data,r0
                     59:   59  00032AD2    0d a004 efffffffae                   movl    4(r0),_dbl_value_1+4
                     60:   60  00032ADA    0d 60 efffffffa3                     movl    (r0),_dbl_value_1
                     61:   61  00032AE1                                   #           dbl_value_2  = muld_1_data[index].op_2;   /*   operands    */
                     62:   62  00032AE1    5c 18 efffffff9c 50                  mull3   $24,_index,r0
                     63:   63  00032AE9    0c 8f00000008 50                     addl2   $_muld_1_data+8,r0
                     64:   64  00032AF0    0d a004 efffffff90                   movl    4(r0),_dbl_value_2+4
                     65:   65  00032AF8    0d 60 efffffff85                     movl    (r0),_dbl_value_2
                     66:   66  00032AFF                                   #           dbl_expected.m = dbl_expected.l = 0;      /* result s/b 0  */
                     67:   67  00032AFF    4d efffffff83                        clrl    _dbl_expected+4
                     68:   68  00032B05    0d efffffff7d 50                     movl    _dbl_expected+4,r0
                     69:   69  00032B0C    0d 50 efffffff71                     movl    r0,_dbl_expected
                     70:   70  00032B13                                   #           asm("ldd _dbl_value_1");
                     71:   71  00032B13    07 efffffff6b                 ldd _dbl_value_1
                     72:   72  00032B19                                   #           asm("muld _dbl_value_2");
                     73:   73  00032B19    e7 efffffff65                 muld _dbl_value_2
                     74:   74  00032B1F                                   #           asm("cvdl _index2");
                     75:   75  00032B1F    87 efffffff5f                 cvdl _index2
                     76:   76  00032B25                                   #           asm("nop");
                     77:   77  00032B25    10                            nop
                     78:   78  00032B26                                   #           if( (index2 >= -99) && (index2 <= 99) ) { 
                     79:   79  00032B26    1d efffffff58 889d                   cmpl    _index2,$-99
                     80:   80  00032B2E    81 03 13 0112                        jlss    L225
                     81:   81  00032B33    1d efffffff4b 8863                   cmpl    _index2,$99
                     82:   82  00032B3B    41 f3                                jgtr    L225
                     83:   83  00032B3D                                   #                if( index2 ) {
                     84:   84  00032B3D    5d efffffff41                        tstl    _index2
                     85:   85  00032B43    31 35                                jeql    L226
                     86:   86  00032B45                                   #                     sgl_value_5 = 0;        /* set a dummy index */
                     87:   87  00032B45    4d efffffff39                        clrl    _sgl_value_5
                     88:   88  00032B4B                                   #                     adr_dpipe_ops[sgl_value_5].m = 0;
                     89:   89  00032B4B    0d efffffff33 50                     movl    _sgl_value_5,r0
                     90:   90  00032B52    48 03 50 50                          shll    $3,r0,r0
                     91:   91  00032B56    1c 50 efffffff27 50                  addl3   r0,_adr_dpipe_ops,r0
                     92:   92  00032B5E    4d 60                                clrl    (r0)
                     93:   93  00032B60                                   #                     adr_dpipe_ops[sgl_value_5].l = 0xabadface;
                     94:   94  00032B60    48 03 efffffff1d 50                  shll    $3,_sgl_value_5,r0
                     95:   95  00032B68    1c 50 efffffff15 50                  addl3   r0,_adr_dpipe_ops,r0
                     96:   96  00032B70    0d 8fabadface a004                   movl    $-1414661426,4(r0)
                     97:   97  00032B78                                   #                } else {
                     98:   98  00032B78    11 39                                jbr     L227
                     99:   99  00032B7A                                  L226:
                    100:  100  00032B7A                                   #                     sgl_value_5 = 6;        /* set a dummy index */
                    101:  101  00032B7A    0d 06 efffffff03                     movl    $6,_sgl_value_5
                    102:  102  00032B81                                   #                     adr_dpipe_ops[sgl_value_5].m = 0xabadbabe;
                    103:  103  00032B81    0d effffffefd 50                     movl    _sgl_value_5,r0
                    104:  104  00032B88    48 03 50 50                          shll    $3,r0,r0
                    105:  105  00032B8C    1c 50 effffffef1 50                  addl3   r0,_adr_dpipe_ops,r0
                    106:  106  00032B94    0d 8fabadbabe 60                     movl    $-1414677826,(r0)
                    107:  107  00032B9B                                   #                     adr_dpipe_ops[sgl_value_5].l = 0xabadface;
                    108:  108  00032B9B    48 03 effffffee2 50                  shll    $3,_sgl_value_5,r0
                    109:  109  00032BA3    1c 50 effffffeda 50                  addl3   r0,_adr_dpipe_ops,r0
                    110:  110  00032BAB    0d 8fabadface a004                   movl    $-1414661426,4(r0)
                    111:  111  00032BB3                                   #                }
                    112:  112  00032BB3                                  L227:
                    113:  113  00032BB3                                   #                asm("movl _index2,r0");      /* save the index */
                    114:  114  00032BB3    0d effffffecb 50              movl _index2,r0
                    115:  115  00032BBA                                   #                asm("std _dpipe_ops[r0]");   /* save the Acc's value */
                    116:  116  00032BBA    27 40effffffec3               std _dpipe_ops[r0]
                    117:  117  00032BC1                                   #                asm("std _dbl_value_3");     /* save this value */
                    118:  118  00032BC1    27 effffffebd                 std _dbl_value_3
                    119:  119  00032BC7                                   # /*
                    120:  120  00032BC7                                   #  *  This is the start of the LOOP ON ERROR section
                    121:  121  00032BC7                                   # */
                    122:  122  00032BC7                                   #                asm("_pipe18_1_lp:");
                    123:  123  00032BC7                                  _pipe18_1_lp:
                    124:  124  00032BC7                                   #                asm("movl _sgl_value_5,r0"); /* save the bum index */
                    125:  125  00032BC7    0d effffffeb7 50              movl _sgl_value_5,r0
                    126:  126  00032BCE                                   #                asm("ldd _dbl_value_1");     
                    127:  127  00032BCE    07 effffffeb0                 ldd _dbl_value_1
                    128:  128  00032BD4                                   #                asm("muld _dbl_value_2");
                    129:  129  00032BD4    e7 effffffeaa                 muld _dbl_value_2
                    130:  130  00032BDA                                   #                asm("cvdl r0");              /* set up the index to use */
                    131:  131  00032BDA    87 50                         cvdl r0
                    132:  132  00032BDC                                   #                asm("subd _dpipe_ops[r0]");  /* subtract saved value */
                    133:  133  00032BDC    d7 40effffffea1               subd _dpipe_ops[r0]
                    134:  134  00032BE3                                   #                asm("std _dbl_st_acc");
                    135:  135  00032BE3    27 effffffe9b                 std _dbl_st_acc
                    136:  136  00032BE9                                   #                asm("movl r0,_sgl_value_6"); /* save the index used */
                    137:  137  00032BE9    0d 50 effffffe94              movl r0,_sgl_value_6
                    138:  138  00032BF0                                   #                if( force_loop ) 
                    139:  139  00032BF0    5d effffffe8e                        tstl    _force_loop
                    140:  140  00032BF6    31 02                                jeql    L228
                    141:  141  00032BF8                                   #                     asm("brb _pipe18_1_lp");;       /* loop on the error */
                    142:  142  00032BF8    11 cd                         brb _pipe18_1_lp
                    143:  143  00032BFA                                  L228:
                    144:  144  00032BFA                                   # /*
                    145:  145  00032BFA                                   #  *   Verify the results (the accumulator should be = 0) 
                    146:  146  00032BFA                                   # */
                    147:  147  00032BFA                                   #                if( (dbl_st_acc.m) || (dbl_st_acc.l) ) {
                    148:  148  00032BFA    5d effffffe84                        tstl    _dbl_st_acc
                    149:  149  00032C00    21 08                                jneq    L9999
                    150:  150  00032C02    5d effffffe80                        tstl    _dbl_st_acc+4
                    151:  151  00032C08    31 3b                                jeql    L229
                    152:  152  00032C0A                                  L9999:
                    153:  153  00032C0A                                   #                      errcnt++;              /* bump the error count    */
                    154:  154  00032C0A    6d effffffe74                        incl    _errcnt
                    155:  155  00032C10                                   #                      if ( prt_error ) 
                    156:  156  00032C10    5d effffffe6e                        tstl    _prt_error
                    157:  157  00032C16    31 07                                jeql    L230
                    158:  158  00032C18                                   #                          pipe18_print();    /* print the error mesage  */
                    159:  159  00032C18    fe 04 ef00000039                     callf   $4,_pipe18_print
                    160:  160  00032C1F                                   #                      if ( halt_flg )
                    161:  161  00032C1F                                  L230:
                    162:  162  00032C1F    5d effffffe5f                        tstl    _halt_flg
                    163:  163  00032C25    31 09                                jeql    L232
                    164:  164  00032C27                                   #                          pipe18_halt( 1 );  /* halt on the error       */
                    165:  165  00032C27    dd 01                                pushl   $1
                    166:  166  00032C29    fe 08 ef000001dc                     callf   $8,_pipe18_halt
                    167:  167  00032C30                                   #                      if ( loop_on_err )  {
                    168:  168  00032C30                                  L232:
                    169:  169  00032C30    5d effffffe4e                        tstl    _loop_on_err
                    170:  170  00032C36    31 0d                                jeql    L234
                    171:  171  00032C38                                   #                          force_loop = TRUE;
                    172:  172  00032C38    0d 01 effffffe45                     movl    $1,_force_loop
                    173:  173  00032C3F                                   #                          asm("jmp _pipe18_1_lp");;   
                    174:  174  00032C3F    71 efffffff82                 jmp _pipe18_1_lp
                    175:  175  00032C45                                   #                      }
                    176:  176  00032C45                                   #                }
                    177:  177  00032C45                                  L234:
                    178:  178  00032C45                                   #           }
                    179:  179  00032C45                                  L229:
                    180:  180  00032C45                                   #     } 
                    181:  181  00032C45                                  L225:
                    182:  182  00032C45                                  L222:
                    183:  183  00032C45    6d effffffe39                        incl    _index
                    184:  184  00032C4B    13 fe65                              jbr     L224
                    185:  185  00032C4E                                  L223:
                    186:  186  00032C4E                                   #     asm("jmp *return");             /* return to the test monitor       */
                    187:  187  00032C4E    71 fffffffe30                 jmp *return
                    188:  188  00032C54                                   # }
                    189:  189  00032C54    40                                   ret#2
                    190:  190  00032C55                                         .set    L215,0x0
                    191:  191  00032C55                                  L217:
                    192:  192  00032C55    13 fe31                              jbr     L218
                    193:  193  00032C58                                         .data
                    194:  194  00000464 *                                       .text
                    195:  195  00032C58                                         .align  1
                    196:  196  00032C58                                         .globl  _pipe18_print
                    197:  197  00032C58                                  _pipe18_print:
                    198:  198  00032C58    0000                                 .word   L235
                    199:  199  00032C5A                                   # 
                    200:  200  00032C5A                                   # 
                    201:  201  00032C5A                                   # 
                    202:  202  00032C5A                                   # 
                    203:  203  00032C5A                                   # /*
                    204:  204  00032C5A                                   #  **************************************************************************
                    205:  205  00032C5A                                   #  *
                    206:  206  00032C5A                                   #  *          print an error message of the form
                    207:  207  00032C5A                                   #  *
                    208:  208  00032C5A                                   #  * cycle: xx  Test xx, Error with subtract data based on CVDL value, index = xx
                    209:  209  00032C5A                                   #  * test sequence = LDD(op1), MULD(op2), CVDL r0, SUBD operand[r0], STD
                    210:  210  00032C5A                                   #  *operand 1 = xxxxxxx xxxxxxx,    final Acc = xxxxxxx xxxxxxx,  index = xxxxxxx
                    211:  211  00032C5A                                   #  *operand 2 = xxxxxxx xxxxxxx, expected Acc = xxxxxxx xxxxxxx
                    212:  212  00032C5A                                   #  *operand 3 = xxxxxxx xxxxxxx,  CVDL result = xxxxxxx
                    213:  213  00032C5A                                   #  *                             int expected = xxxxxxx
                    214:  214  00032C5A                                   #  **************************************************************************
                    215:  215  00032C5A                                   # */
                    216:  216  00032C5A                                   # pipe18_print()
                    217:  217  00032C5A                                   # {
                    218:  218  00032C5A    13 01ac                              jbr     L237
                    219:  219  00032C5D                                  L238:
                    220:  220  00032C5D                                   #      writes(" \n");         /* start a new print line   */
                    221:  221  00032C5D                                         .data   1
                    222:  222  0000046d *                                L239:
                    223:  223  0000046d *  200A00                               .ascii  " \12\0"
                    224:  224  00000470 *                                       .text
                    225:  225  00032C5D    dd 8f0000046d                        pushl   $L239
                    226:  226  00032C63    fe 08 effffffe1a                     callf   $8,_writes
                    227:  227  00032C6A                                   #      writes("cycle: ");
                    228:  228  00032C6A                                         .data   1
                    229:  229  00000470 *                                L240:
                    230:  230  00000470 *  6379636C653A2000                     .ascii  "cycle: \0"
                    231:  231  00000478 *                                       .text
                    232:  232  00032C6A    dd 8f00000470                        pushl   $L240
                    233:  233  00032C70    fe 08 effffffe0d                     callf   $8,_writes
                    234:  234  00032C77                                   #      writed( cycle );
                    235:  235  00032C77    dd effffffe07                        pushl   _cycle
                    236:  236  00032C7D    fe 08 effffffe00                     callf   $8,_writed
                    237:  237  00032C84                                   #      writes("  Test ");
                    238:  238  00032C84                                         .data   1
                    239:  239  00000478 *                                L242:
                    240:  240  00000478 *  2020546573742000                     .ascii  "  Test \0"
                    241:  241  00000480 *                                       .text
                    242:  242  00032C84    dd 8f00000478                        pushl   $L242
                    243:  243  00032C8A    fe 08 effffffdf3                     callf   $8,_writes
                    244:  244  00032C91                                   #      writed( test_no );
                    245:  245  00032C91    dd effffffded                        pushl   _test_no
                    246:  246  00032C97    fe 08 effffffde6                     callf   $8,_writed
                    247:  247  00032C9E                                   #      writes("  (Pipe 18),  error\n");
                    248:  248  00032C9E                                         .data   1
                    249:  249  00000480 *                                L243:
                    250:  250  00000480 *  20202850697065203138292C2            .ascii  "  (Pipe 18),  error\12\0"
                    251:                   0206572726F720A00
                    252:  251  00000495 *                                       .text
                    253:  252  00032C9E    dd 8f00000480                        pushl   $L243
                    254:  253  00032CA4    fe 08 effffffdd9                     callf   $8,_writes
                    255:  254  00032CAB                                   #      writes(" LDD(op1), MULD(op2), CVDL(r0), SUBD(op3), STD\n");
                    256:  255  00032CAB                                         .data   1
                    257:  256  00000495 *                                L244:
                    258:  257  00000495 *  204C4444286F7031292C204D5            .ascii  " LDD(op1), MULD(op2), CVDL(r0), SUBD(op3), STD\12\0"
                    259:                   54C44286F7032292C20435644
                    260:                   4C287230292C2053554244286
                    261:                   F7033292C205354440A00
                    262:  258  000004c5 *                                       .text
                    263:  259  00032CAB    dd 8f00000495                        pushl   $L244
                    264:  260  00032CB1    fe 08 effffffdcc                     callf   $8,_writes
                    265:  261  00032CB8                                   #      writes("operand 1 = ");
                    266:  262  00032CB8                                         .data   1
                    267:  263  000004c5 *                                L245:
                    268:  264  000004c5 *  6F706572616E642031203D200            .ascii  "operand 1 = \0"
                    269:                   0
                    270:  265  000004d2 *                                       .text
                    271:  266  00032CB8    dd 8f000004c5                        pushl   $L245
                    272:  267  00032CBE    fe 08 effffffdbf                     callf   $8,_writes
                    273:  268  00032CC5                                   #      write32h( dbl_value_1.m );
                    274:  269  00032CC5    dd effffffdb9                        pushl   _dbl_value_1
                    275:  270  00032CCB    fe 08 effffffdb2                     callf   $8,_write32h
                    276:  271  00032CD2                                   #      writec(' ');
                    277:  272  00032CD2    dd 20                                pushl   $32
                    278:  273  00032CD4    fe 08 effffffda9                     callf   $8,_writec
                    279:  274  00032CDB                                   #      write32h( dbl_value_1.l );
                    280:  275  00032CDB    dd effffffda7                        pushl   _dbl_value_1+4
                    281:  276  00032CE1    fe 08 effffffd9c                     callf   $8,_write32h
                    282:  277  00032CE8                                   #      writes(",    final Acc = ");
                    283:  278  00032CE8                                         .data   1
                    284:  279  000004d2 *                                L248:
                    285:  280  000004d2 *  2C2020202066696E616C20416            .ascii  ",    final Acc = \0"
                    286:                   363203D2000
                    287:  281  000004e4 *                                       .text
                    288:  282  00032CE8    dd 8f000004d2                        pushl   $L248
                    289:  283  00032CEE    fe 08 effffffd8f                     callf   $8,_writes
                    290:  284  00032CF5                                   #      write32h( dbl_st_acc.m );
                    291:  285  00032CF5    dd effffffd89                        pushl   _dbl_st_acc
                    292:  286  00032CFB    fe 08 effffffd82                     callf   $8,_write32h
                    293:  287  00032D02                                   #      writec(' ');
                    294:  288  00032D02    dd 20                                pushl   $32
                    295:  289  00032D04    fe 08 effffffd79                     callf   $8,_writec
                    296:  290  00032D0B                                   #      write32h( dbl_st_acc.l );
                    297:  291  00032D0B    dd effffffd77                        pushl   _dbl_st_acc+4
                    298:  292  00032D11    fe 08 effffffd6c                     callf   $8,_write32h
                    299:  293  00032D18                                   #      writes(",  index = ");
                    300:  294  00032D18                                         .data   1
                    301:  295  000004e4 *                                L249:
                    302:  296  000004e4 *  2C2020696E646578203D2000             .ascii  ",  index = \0"
                    303:  297  000004f0 *                                       .text
                    304:  298  00032D18    dd 8f000004e4                        pushl   $L249
                    305:  299  00032D1E    fe 08 effffffd5f                     callf   $8,_writes
                    306:  300  00032D25                                   #      writed( index );
                    307:  301  00032D25    dd effffffd59                        pushl   _index
                    308:  302  00032D2B    fe 08 effffffd52                     callf   $8,_writed
                    309:  303  00032D32                                   #      writes("\noperand 2 = ");
                    310:  304  00032D32                                         .data   1
                    311:  305  000004f0 *                                L250:
                    312:  306  000004f0 *  0A6F706572616E642032203D2            .ascii  "\12operand 2 = \0"
                    313:                   000
                    314:  307  000004fe *                                       .text
                    315:  308  00032D32    dd 8f000004f0                        pushl   $L250
                    316:  309  00032D38    fe 08 effffffd45                     callf   $8,_writes
                    317:  310  00032D3F                                   #      write32h( dbl_value_2.m );
                    318:  311  00032D3F    dd effffffd3f                        pushl   _dbl_value_2
                    319:  312  00032D45    fe 08 effffffd38                     callf   $8,_write32h
                    320:  313  00032D4C                                   #      writec(' ');
                    321:  314  00032D4C    dd 20                                pushl   $32
                    322:  315  00032D4E    fe 08 effffffd2f                     callf   $8,_writec
                    323:  316  00032D55                                   #      write32h( dbl_value_2.l );
                    324:  317  00032D55    dd effffffd2d                        pushl   _dbl_value_2+4
                    325:  318  00032D5B    fe 08 effffffd22                     callf   $8,_write32h
                    326:  319  00032D62                                   #      writes(", expected Acc = ");
                    327:  320  00032D62                                         .data   1
                    328:  321  000004fe *                                L251:
                    329:  322  000004fe *  2C20657870656374656420416            .ascii  ", expected Acc = \0"
                    330:                   363203D2000
                    331:  323  00000510 *                                       .text
                    332:  324  00032D62    dd 8f000004fe                        pushl   $L251
                    333:  325  00032D68    fe 08 effffffd15                     callf   $8,_writes
                    334:  326  00032D6F                                   #      write32h( dbl_expected.m );
                    335:  327  00032D6F    dd effffffd0f                        pushl   _dbl_expected
                    336:  328  00032D75    fe 08 effffffd08                     callf   $8,_write32h
                    337:  329  00032D7C                                   #      writec(' ');
                    338:  330  00032D7C    dd 20                                pushl   $32
                    339:  331  00032D7E    fe 08 effffffcff                     callf   $8,_writec
                    340:  332  00032D85                                   #      write32h( dbl_expected.l );
                    341:  333  00032D85    dd effffffcfd                        pushl   _dbl_expected+4
                    342:  334  00032D8B    fe 08 effffffcf2                     callf   $8,_write32h
                    343:  335  00032D92                                   #      writes("\noperand 3 = ");
                    344:  336  00032D92                                         .data   1
                    345:  337  00000510 *                                L252:
                    346:  338  00000510 *  0A6F706572616E642033203D2            .ascii  "\12operand 3 = \0"
                    347:                   000
                    348:  339  0000051e *                                       .text
                    349:  340  00032D92    dd 8f00000510                        pushl   $L252
                    350:  341  00032D98    fe 08 effffffce5                     callf   $8,_writes
                    351:  342  00032D9F                                   #      write32h( dbl_value_3.m );
                    352:  343  00032D9F    dd effffffcdf                        pushl   _dbl_value_3
                    353:  344  00032DA5    fe 08 effffffcd8                     callf   $8,_write32h
                    354:  345  00032DAC                                   #      writec(' ');
                    355:  346  00032DAC    dd 20                                pushl   $32
                    356:  347  00032DAE    fe 08 effffffccf                     callf   $8,_writec
                    357:  348  00032DB5                                   #      write32h( dbl_value_3.l );
                    358:  349  00032DB5    dd effffffccd                        pushl   _dbl_value_3+4
                    359:  350  00032DBB    fe 08 effffffcc2                     callf   $8,_write32h
                    360:  351  00032DC2                                   #      writes(",  CVDL result = ");
                    361:  352  00032DC2                                         .data   1
                    362:  353  0000051e *                                L253:
                    363:  354  0000051e *  2C20204356444C20726573756            .ascii  ",  CVDL result = \0"
                    364:                   C74203D2000
                    365:  355  00000530 *                                       .text
                    366:  356  00032DC2    dd 8f0000051e                        pushl   $L253
                    367:  357  00032DC8    fe 08 effffffcb5                     callf   $8,_writes
                    368:  358  00032DCF                                   #      write32h( sgl_value_6 );
                    369:  359  00032DCF    dd effffffcaf                        pushl   _sgl_value_6
                    370:  360  00032DD5    fe 08 effffffca8                     callf   $8,_write32h
                    371:  361  00032DDC                                   #      writec('\n');
                    372:  362  00032DDC    dd 0a                                pushl   $10
                    373:  363  00032DDE    fe 08 effffffc9f                     callf   $8,_writec
                    374:  364  00032DE5                                   #      writes("                               int expected = ");
                    375:  365  00032DE5                                         .data   1
                    376:  366  00000530 *                                L254:
                    377:  367  00000530 *  2020202020202020202020202            .ascii  "                               int expected = \0"
                    378:                   0202020202020202020202020
                    379:                   202020202020696E742065787
                    380:                   06563746564203D2000
                    381:  368  0000055f *                                       .text
                    382:  369  00032DE5    dd 8f00000530                        pushl   $L254
                    383:  370  00032DEB    fe 08 effffffc92                     callf   $8,_writes
                    384:  371  00032DF2                                   #      write32h( index2 );
                    385:  372  00032DF2    dd effffffc8c                        pushl   _index2
                    386:  373  00032DF8    fe 08 effffffc85                     callf   $8,_write32h
                    387:  374  00032DFF                                   #      writec('\n');
                    388:  375  00032DFF    dd 0a                                pushl   $10
                    389:  376  00032E01    fe 08 effffffc7c                     callf   $8,_writec
                    390:  377  00032E08                                   # }
                    391:  378  00032E08    40                                   ret#2
                    392:  379  00032E09                                         .set    L235,0x0
                    393:  380  00032E09                                  L237:
                    394:  381  00032E09    13 fe51                              jbr     L238
                    395:  382  00032E0C                                         .data
                    396:  383  00000464 *                                       .text
                    397:  384  00032E0C                                         .align  1
                    398:  385  00032E0C                                         .globl  _pipe18_halt
                    399:  386  00032E0C                                  _pipe18_halt:
                    400:  387  00032E0C    0000                                 .word   L255
                    401:  388  00032E0E                                   # 
                    402:  389  00032E0E                                   # 
                    403:  390  00032E0E                                   # 
                    404:  391  00032E0E                                   # /*
                    405:  392  00032E0E                                   #  **************************************************************************
                    406:  393  00032E0E                                   #  *
                    407:  394  00032E0E                                   #  *          HALT ON AN ERROR
                    408:  395  00032E0E                                   #  *
                    409:  396  00032E0E                                   #  **************************************************************************
                    410:  397  00032E0E                                   # */
                    411:  398  00032E0E                                   # pipe18_halt()
                    412:  399  00032E0E                                   # {
                    413:  400  00032E0E    13 00d1                              jbr     L257
                    414:  401  00032E11                                  L258:
                    415:  402  00032E11                                   #      sgl_value_1 = dbl_value_1.m;
                    416:  403  00032E11    0d effffffc6d effffffc68             movl    _dbl_value_1,_sgl_value_1
                    417:  404  00032E1C                                   #      sgl_value_2 = dbl_value_1.l;
                    418:  405  00032E1C    0d effffffc66 effffffc5d             movl    _dbl_value_1+4,_sgl_value_2
                    419:  406  00032E27                                   #      sgl_value_3 = dbl_value_2.m;
                    420:  407  00032E27    0d effffffc57 effffffc52             movl    _dbl_value_2,_sgl_value_3
                    421:  408  00032E32                                   #      sgl_value_4 = dbl_value_2.l;
                    422:  409  00032E32    0d effffffc50 effffffc47             movl    _dbl_value_2+4,_sgl_value_4
                    423:  410  00032E3D                                   #      asm("movl _test_no,r0");       /* r0  = test number           */
                    424:  411  00032E3D    0d effffffc41 50              movl _test_no,r0
                    425:  412  00032E44                                   #      asm("movl $1,r1");             /* r1  = subtest number        */
                    426:  413  00032E44    0d 01 51                      movl $1,r1
                    427:  414  00032E47                                   #      asm("movl $1,r2");             /* r2  = error code            */
                    428:  415  00032E47    0d 01 52                      movl $1,r2
                    429:  416  00032E4A                                   #      asm("movl _cycle,r3");         /* r3  = cycle count           */
                    430:  417  00032E4A    0d effffffc34 53              movl _cycle,r3
                    431:  418  00032E51                                   #      asm("movl _sgl_value_1,r4");   /* r4  = MS of dbl operand #1  */
                    432:  419  00032E51    0d effffffc2d 54              movl _sgl_value_1,r4
                    433:  420  00032E58                                   #      asm("movl _sgl_value_2,r5");   /* r5  = LS of dbl operand #1  */
                    434:  421  00032E58    0d effffffc26 55              movl _sgl_value_2,r5
                    435:  422  00032E5F                                   #      asm("movl _sgl_value_3,r6");   /* r6  = MS of dbl operand #2  */
                    436:  423  00032E5F    0d effffffc1f 56              movl _sgl_value_3,r6
                    437:  424  00032E66                                   #      asm("movl _sgl_value_4,r7");   /* r7  = LS of dbl operand #2  */
                    438:  425  00032E66    0d effffffc18 57              movl _sgl_value_4,r7
                    439:  426  00032E6D                                   #      sgl_value_1 = dbl_st_acc.m;
                    440:  427  00032E6D    0d effffffc11 effffffc0c             movl    _dbl_st_acc,_sgl_value_1
                    441:  428  00032E78                                   #      sgl_value_2 = dbl_st_acc.l;
                    442:  429  00032E78    0d effffffc0a effffffc01             movl    _dbl_st_acc+4,_sgl_value_2
                    443:  430  00032E83                                   #      sgl_value_3 = dbl_expected.m;
                    444:  431  00032E83    0d effffffbfb effffffbf6             movl    _dbl_expected,_sgl_value_3
                    445:  432  00032E8E                                   #      sgl_value_4 = dbl_expected.l;
                    446:  433  00032E8E    0d effffffbf4 effffffbeb             movl    _dbl_expected+4,_sgl_value_4
                    447:  434  00032E99                                   #      sgl_value_5 = dbl_value_3.m;
                    448:  435  00032E99    0d effffffbe5 effffffbe0             movl    _dbl_value_3,_sgl_value_5
                    449:  436  00032EA4                                   #      sgl_value_6 = dbl_value_3.l;
                    450:  437  00032EA4    0d effffffbde effffffbd5             movl    _dbl_value_3+4,_sgl_value_6
                    451:  438  00032EAF                                   #      asm("movl _sgl_value_5,r8");   /* r8  = MS of dbl operand #3  */
                    452:  439  00032EAF    0d effffffbcf 58              movl _sgl_value_5,r8
                    453:  440  00032EB6                                   #      asm("movl _sgl_value_6,r9");   /* r9  = LS of dbl operand #3  */
                    454:  441  00032EB6    0d effffffbc8 59              movl _sgl_value_6,r9
                    455:  442  00032EBD                                   #      asm("movl _sgl_value_1,r10");  /* r10 = MS of final result    */
                    456:  443  00032EBD    0d effffffbc1 5a              movl _sgl_value_1,r10
                    457:  444  00032EC4                                   #      asm("movl _sgl_value_2,r11");  /* r11 = LS of final result    */
                    458:  445  00032EC4    0d effffffbba 5b              movl _sgl_value_2,r11
                    459:  446  00032ECB                                   #      asm("movl _sgl_value_3,r12");  /* r12 = MS of expected result */
                    460:  447  00032ECB    0d effffffbb3 5c              movl _sgl_value_3,r12
                    461:  448  00032ED2                                   #      asm("movl _sgl_value_4,r13");  /* r13 = LS of expected result */
                    462:  449  00032ED2    0d effffffbac 5d              movl _sgl_value_4,r13
                    463:  450  00032ED9                                   #      asm("movl _index,r14");        /* r14 = data index            */
                    464:  451  00032ED9    0d effffffba5 5e              movl _index,r14
                    465:  452  00032EE0                                   #      asm("halt");                   /* HALT ...                    */
                    466:  453  00032EE0    00                            halt
                    467:  454  00032EE1                                   # }  
                    468:  455  00032EE1    40                                   ret#2
                    469:  456  00032EE2                                         .set    L255,0x0
                    470:  457  00032EE2                                  L257:
                    471:  458  00032EE2    13 ff2c                              jbr     L258
                    472:  459  00032EE5                                         .data
                    473:  460  00000464 *                                 # 
                    474:  460  00000464 *                                 # 

unix.superglobalmegacorp.com

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