https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67728

--- Comment #17 from Marc Glisse <glisse at gcc dot gnu.org> ---
(In reply to Andrew Roberts from comment #15)
> not entirely clear what you mean by reproducing the issue without
> downloading mpfr, mpc, isl etc. Do you mean the missing symbol in GMP or the
> issues with GMP when using assembly code? If you could please clarify.

The missing symbol (not sure what "issues with GMP when using assembly code"
you are talking about).

> I've built GMP 6.1.0 on its own on ARM armv7l, using the following
> conifgurations:

The whole point is that those external builds don't seem to reproduce the
issue, probably because they don't use exactly the same options...

> So I think the problem is that ISL is using a symbol which isn't always
> available on all targets when no assembler is selected.

In PR 70211, I see:

/home/alarm/gcc/gcc-build/./gmp/.libs/libgmp.a(divrem_1.o): In function
`__gmpn_divrem_1':
divrem_1.c:(.text+0xb0): undefined reference to `__gmpn_invert_limb'

meaning that the reference to __gmpn_invert_limb comes from GMP itself, not
ISL. If you called nm on this libgmp.a, you would see uses of
__gmpn_invert_limb but no definition.

> 2) I've also found that different gcc versions require different versions of
> ISL to build. For example ISL 0.14 does not work with gcc < 5.0.0, you need
> ISL 0.12.2. If there are dependencies on on which versions gcc needs for a
> given release, shouldn't they also be documented (and the
> download_prerequisites script updated accordingly).

I think download_prerequisites is updated. And the requirements were
documented, although I am not sure how to get them except looking at the
archives for https://gcc.gnu.org/install/prerequisites.html around the date of
the release of 4.9.0 or 5.0.1.

Reply via email to