Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

mod2pi broken with USE_SYSTEM_LIBM #5365

Closed
nolta opened this issue Jan 12, 2014 · 13 comments
Closed

mod2pi broken with USE_SYSTEM_LIBM #5365

nolta opened this issue Jan 12, 2014 · 13 comments
Labels
bug Indicates an unexpected problem or unintended behavior building Build system, or building Julia or its dependencies

Comments

@nolta
Copy link
Member

nolta commented Jan 12, 2014

Currently mod2pi calls __ieee754_rem_pio2, which is an openlibm specific function. This causes make test to fail if julia is compiled w/ USE_SYSTEM_LIBM=1.

Not really a big deal right now, but w/ ARM & PowerPC ports on the horizon, it would be nice to fix, since openlibm is likely to remain Intel-only.

@ViralBShah
Copy link
Member

We can bring the arm and powerpc bits into openlibm from FreeBSD msun at the right time.

@JeffBezanson
Copy link
Member

We should try to make USE_SYSTEM_LIBM work. Maybe __ieee754_rem_pio2 should be copied into openspecfun or just into the runtime system to ensure availability.

@ViralBShah
Copy link
Member

Let's just have a Julia implementation of it.

@andrioni
Copy link
Member

andrioni commented Jul 1, 2014

This could also be a good time to add a BigFloat version of it.

@ViralBShah
Copy link
Member

I am going to copy this into openspecfun for now.

@nalimilan
Copy link
Member

This makes me think it would be nice to list the minimum openspecfun version required by Julia in the docs (and bump the version in openspecfun). A packager not aware of this issue wouldn't have noticed this requirement.

@ViralBShah
Copy link
Member

I did bump the openspecfun and openlibm versions.

@ViralBShah
Copy link
Member

Cc: @staticfloat @sebastien-villemot

@tkelman
Copy link
Contributor

tkelman commented Jul 12, 2014

Interesting, now that the issue with __ieee754_rem_pio2 has been resolved, there's an O(ε) mismatch between system libm's (at least for Ubuntu 14.04) gamma(Float64[1:25]) and gamma(1:25) which does a lookup into the factorial table for n ≤ 20.

@jiahao
Copy link
Member

jiahao commented Jul 12, 2014

Perhaps they were computed in a different rounding mode?

@nalimilan
Copy link
Member

Should I make releases for openlibm and openspecfun 0.4? I need them to build packages for Julia RC1.

@ViralBShah
Copy link
Member

I think we should fix the SONAME stuff ideally before we do that. What do you think?

@nalimilan
Copy link
Member

Right. Should be pretty easy.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Indicates an unexpected problem or unintended behavior building Build system, or building Julia or its dependencies
Projects
None yet
Development

No branches or pull requests

7 participants