Annotation of 43BSDReno/sys/tahoealign/Aadwc.c, revision 1.1.1.1

1.1       root        1: /*     Aadwc.c 1.1     86/07/20        */
                      2: 
                      3: #include "../tahoealign/align.h" 
                      4: adwc(infop)    process_info *infop;
                      5: /*
                      6: /*     Add with carry.
                      7: /*     Note : the play with 'tmp' just before the 'asm' line makes
                      8: /*             sure that when the adwc opcode is executed, the current
                      9: /*             carry in psl is the same as the 'offending' process'.
                     10: /*             Don't change unless you know exactly what you're doing.
                     11: /*
                     12: /*****************************/
                     13: {
                     14:        register        long    Register_12;    /* Has to be first reg ! */
                     15:        register        long    Register_11;
                     16:        register        long    Register_10;
                     17:        register        long    tmp;
                     18: 
                     19:        Register_12 = operand(infop,0)->data;
                     20:        Register_11 = operand(infop,1)->data;
                     21:        if (carry)      /* If process' carry set */
                     22:                tmp = -1;
                     23:        else tmp = 0;
                     24:        tmp++;          /* 0 => carry set.  1 => carry clear */
                     25: 
                     26:        Register_10=psl;
                     27:        Set_psl(r10);   /* restore the user psl */
                     28:        asm("   adwc    r11,r12");
                     29:        asm("   movpsl  r11");
                     30:        New_cc (Register_11);
                     31: 
                     32:        write_back(infop, Register_12, operand(infop,1) );
                     33: }

unix.superglobalmegacorp.com

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