Annotation of 43BSDReno/old/libm/liboldnm/asin.s, revision 1.1

1.1     ! root        1: #
        !             2: # Copyright (c) 1980 Regents of the University of California.
        !             3: # All rights reserved.  The Berkeley software License Agreement
        !             4: # specifies the terms and conditions for redistribution.
        !             5: #
        !             6: #      @(#)asin.s      5.1 (Berkeley) 5/8/85
        !             7: # 
        !             8: #
        !             9: #double asin(arg)
        !            10: #double arg; -1.0<=arg<=1.0 or an out of range error return
        !            11: #method: call atan() after range reduction
        !            12: # calls: satan (internal entry point of atan.s), _sqrt
        !            13: # J F Jarvis August 8, 1078
        !            14: .globl _asin
        !            15: .globl _errno
        !            16: .globl _sqrt
        !            17: .globl satan
        !            18: .set   EDOM,33
        !            19: .text
        !            20: .align 1
        !            21: _asin:
        !            22:        .word   0x3c0
        !            23:        bispsw  $0xe0
        !            24:        movd    4(ap),r6
        !            25:        jgtr    a1
        !            26:        mnegd   r6,r6
        !            27: a1:    cmpd    r6,$0d1.0e+0
        !            28:        jleq    a2
        !            29:        movl    $EDOM,_errno
        !            30:        clrd    r0
        !            31:        ret
        !            32: #
        !            33: a2:    muld3   r6,r6,r0
        !            34:        subd3   r0,$0d1.0e+0,-(sp)
        !            35:        calls   $2,_sqrt
        !            36:        cmpd    r6,$0d0.6875
        !            37:        jleq    a3
        !            38:        divd2   r6,r0
        !            39:        jsb     satan
        !            40:        subd3   r0,pio2,r0
        !            41:        jbr     a4
        !            42: a3:    divd3   r0,r6,r0
        !            43:        jsb     satan
        !            44: a4:    tstd    4(ap)
        !            45:        jleq    a5
        !            46:        ret
        !            47: a5:    mnegd   r0,r0
        !            48:        ret
        !            49: .data
        !            50: .align 2
        !            51: pio2: .double 0d1.57079632679489661923e+0

unix.superglobalmegacorp.com

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