длинные реализации двойной математической библиотеки? - PullRequest
6 голосов
/ 10 мая 2011

Каковы доступные переносимые реализации функций библиотеки длинных двойных математических операций C99 (expl, cosl, logl и т. Д.), Если таковые имеются? Я искал источники fdlibm (на основе Sun), NetBSD (на основе UCB) и т. Д. И не видел их.

Ответы [ 2 ]

4 голосов
/ 10 мая 2011

Вы должны увидеть его в библиотеках на основе Sun (используемых практически во всех известных мне библиотеках C, включая glibc и FreeBSD).

Я обычно предпочитаю BSD-код для математического кода (более читаемый IMO). См. здесь для 80-битного (Intel) длинного двойного формата. Для данной функции разные реализации / архитектуры могут находиться в разных каталогах.

Следует понять, что long double не стандартизирован (точнее, только после версии IEEE754 2008 года, которая пока еще не реализована в большинстве обычных процессоров). Это означает, что каждому ЦПУ требуется разная реализация для множества вещей (IA32, AMD64, PPC, Alpha, Sparc все разные в этом аспекте ...).

1 голос
/ 10 мая 2011

Попробуйте математическую библиотеку Cephes .

...