Annotation of coherent/b/lib/libm/i387/acos87.s, revision 1.1.1.1

1.1       root        1: //////////
                      2: / /usr/src/libm/i387/acos87.s
                      3: / i387 mathematics library
                      4: / acos(d)
                      5: //////////
                      6: 
                      7: RASIZE =       4
                      8: 
                      9:        .globl  acos
                     10:        .globl  _asin
                     11: 
                     12: //////////
                     13: / double
                     14: / acos(d)
                     15: / double d;
                     16: //////////
                     17: 
                     18: d      =       RASIZE          / arg offset
                     19: 
                     20: acos:
                     21:        fldl    d(%esp)         / Load argument d.
                     22: 
                     23:        call    _asin           / asin(d)
                     24:        jc      ?0              / d < -1 or 1 < d, domain error.
                     25:        fld1                    / 1, asin(d)
                     26:        fchs                    / -1, asin(d)
                     27:        fldpi                   / pi, -1, asin(d)
                     28:        fscale                  / pi/2, -1, asin(d)
                     29:        fstp    %st(1)          / pi/2, asin(d)
                     30:        fsub                    / acos(d) = pi/2 - asin(d)
                     31: 
                     32: ?0:
                     33:        ret
                     34: 
                     35: / end of acos87.s

unix.superglobalmegacorp.com

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