Subversion Repositories planix.SVN

Rev

Rev 2 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
2 - 1
TEXT	asin(SB), $0
2
	FMOVD	a+0(FP), F0	/* a */
3
	FMOVD	F0, F0		/* a,a */
4
	FMULD	F0, F0		/* a*a,a */
5
	FLD1			/* 1,a*a,a */
6
	FSUBRDP	F0, F1		/* 1-a*a,a */
7
 
8
	FTST
9
	WAIT
10
	FSTSW	AX
11
	SAHF
12
	JLO	bad
13
 
14
	FSQRT			/* sqrt(1-a*a),a */
15
	FPATAN			/* atan2(sqrt(1-a*a),a) */
16
	RET
17
 
18
TEXT	acos(SB), $0
19
	FMOVD	a+0(FP), F0
20
	FMOVD	F0, F0
21
	FMULD	F0, F0
22
	FLD1
23
	FSUBRDP	F0, F1
24
 
25
	FTST
26
	WAIT
27
	FSTSW	AX
28
	SAHF
29
	JLO	bad
30
 
31
	FSQRT
32
	FXCHD	F0, F1		/* identical except this */
33
	FPATAN
34
	RET
35
 
36
bad:
37
	FMOVDP	F0, F0
38
	FMOVDP	F0, F0
39
	CALL	NaN(SB)
40
	RET