On 11/17/14 11:55, David Edelsohn wrote:
Recent versions of AIX now have support for DWARF. I don't know if it
has arbitrary length limits like this as well. Adacore has an
implementation and I hope that they will contribute the patch
eventually.
Ah. Good. Though we probably shouldn't depend on having these bits in
place.
The other complexity is IBM backported the feature to earlier versions
of AIX, but there is no major or minor AIX version number that
definitely has the support. It's in service packs. AIX support for
ELF-like visibility is the same. This means that there is no easy way
to distribute pre-built binaries of GCC for AIX that end users easily
can know if they have the correct prerequisites. And also means that
one may not be able to share object files and libraries across all AIX
systems at a particular version number. Sigh^2.
Yow :(
Ilya, can we create a tag on the builtins we want to have a _chkp duplicate,
then build a map from the original builtin enum to the _chkp variant so that
we don't have to duplicate the entire table, but so that we still get the
cleaner design of the version that was approved?
That is a fine solution, but is it really necessary to provide this
feature on all targets, even if they don't support CHKP? Why not nop
chkp_versioning for non-Intel targets?
Well, the idea is the infrastructure could be used both for a pure
software implementation as well as a hardware assisted implementation
and that the hardware assist wasn't tied directly to the MPX implementation.
So as a result we have a ton of stuff that many targets won't
necessarily use unless someone was to implement the pure software approach.
So while most of the bits are a NOP in terms of how GCC works on targets
without MPX or a software implementation, we still have the
infrastructure in place and its that infrastructure that's causing AIX
to choke.
Jeff