Follow-up Comment #2, bug #24890 (project avr-libc):
Hi DMitry
You may also want to leave out
; compare A with Pi/2
...
ldi rB1, hi8(SPLIT_PIO2 + 1)
ldi rB2, hlo8(SPLIT_PIO2 + 1)
ldi rB3, hhi8(SPLIT_PIO2 + 1)
cpi rA0, lo8(SPLIT_PIO2 + 1)
cpc rA1, rB1
cpc rA2, rB2
cpc rA3, rB3
brlo .L_pack ; A < Pi/2 ==> return A
Or replace it with a exponent test only.. This will in general increase the
performance and is shorter code.
Also the answer to the question:
/* FIXME: Is it possible to obtain a zero value in rA2.1.0.E ?
I do't known. So, there is a check in exponent decrement. */
I do know, it is NO.. The minimum value of RA2....= 0x0000000E
:-)trust me
Anyway I wanted to suggest revising the sine, cosine routines because they
aren't all that accurate and can be speeded up considerably. This would also
introduce a small change in fp_rempio2 (and some other functions which rely on
powsodd, so isn't it perhaps better if you let me handle fp_rempio2 ???
Regards
Ruud
ps. Sorry for the long text
_______________________________________________________
Reply to this item at:
<http://savannah.nongnu.org/bugs/?24890>
_______________________________________________
Message sent via/by Savannah
http://savannah.nongnu.org/
_______________________________________________
AVR-libc-dev mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/avr-libc-dev