Annotation of coherent/b/lib/libc/old/srlq.s,v, revision 1.1.1.1

1.1       root        1: head     1.1;
                      2: branch   ;
                      3: access   ;
                      4: symbols  ;
                      5: locks    bin:1.1; strict;
                      6: comment  @@;
                      7: 
                      8: 
                      9: 1.1
                     10: date     92.10.01.12.05.14;  author bin;  state Exp;
                     11: branches ;
                     12: next     ;
                     13: 
                     14: 
                     15: desc
                     16: @@
                     17: 
                     18: 
                     19: 
                     20: 1.1
                     21: log
                     22: @Initial revision
                     23: @
                     24: text
                     25: @////////
                     26: /
                     27: / srlq( w0, w1, w2, w3, count ) - shift right logical a quad word.
                     28: /
                     29: /      Input:  w0..w3 form a quad word.
                     30: /              count is the number of bits
                     31: /
                     32: /      Action: Perform a shift right logical of w0..w3 by count bits.
                     33: /
                     34: /      Return: _fpac_ contains the shifted result.
                     35: /
                     36: ////////
                     37: 
                     38:        .globl  srlq_
                     39:        .shri
                     40: 
                     41: srlq_: push    si
                     42:        push    di
                     43:        push    bp
                     44:        mov     bp,sp
                     45:        mov     ax,8(bp)
                     46:        mov     dx,10(bp)
                     47:        mov     si,12(bp)
                     48:        mov     di,14(bp)
                     49:        mov     cx,16(bp)
                     50:        jcxz    1f
                     51: 
                     52: 0:     shr     di,$1
                     53:        rcr     si,$1
                     54:        rcr     dx,$1
                     55:        rcr     ax,$1
                     56:        loop    0b
                     57: 
                     58: 1:     mov     _fpac_+0,ax
                     59:        mov     _fpac_+2,dx
                     60:        mov     _fpac_+4,si
                     61:        mov     _fpac_+6,di
                     62:        pop     bp
                     63:        pop     di
                     64:        pop     si
                     65:        ret
                     66: @

unix.superglobalmegacorp.com

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