xref: /aosp_15_r20/external/musl/src/math/i386/asinf.s (revision c9945492fdd68bbe62686c5b452b4dc1be3f8453)
1*c9945492SAndroid Build Coastguard Worker.global asinf
2*c9945492SAndroid Build Coastguard Worker.type asinf,@function
3*c9945492SAndroid Build Coastguard Workerasinf:
4*c9945492SAndroid Build Coastguard Worker	flds 4(%esp)
5*c9945492SAndroid Build Coastguard Worker	mov 4(%esp),%eax
6*c9945492SAndroid Build Coastguard Worker	add %eax,%eax
7*c9945492SAndroid Build Coastguard Worker	cmp $0x01000000,%eax
8*c9945492SAndroid Build Coastguard Worker	jb 1f
9*c9945492SAndroid Build Coastguard Worker	fld %st(0)
10*c9945492SAndroid Build Coastguard Worker	fld1
11*c9945492SAndroid Build Coastguard Worker	fsub %st(0),%st(1)
12*c9945492SAndroid Build Coastguard Worker	fadd %st(2)
13*c9945492SAndroid Build Coastguard Worker	fmulp
14*c9945492SAndroid Build Coastguard Worker	fsqrt
15*c9945492SAndroid Build Coastguard Worker	fpatan
16*c9945492SAndroid Build Coastguard Worker	fstps 4(%esp)
17*c9945492SAndroid Build Coastguard Worker	flds 4(%esp)
18*c9945492SAndroid Build Coastguard Worker	ret
19*c9945492SAndroid Build Coastguard Worker		# subnormal x, return x with underflow
20*c9945492SAndroid Build Coastguard Worker1:	fld %st(0)
21*c9945492SAndroid Build Coastguard Worker	fmul %st(1)
22*c9945492SAndroid Build Coastguard Worker	fstps 4(%esp)
23*c9945492SAndroid Build Coastguard Worker	ret
24