This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: _ioperm support for Arm


On Wed, May 29, 2019 at 04:03:26PM +0200, Florian Weimer wrote:
> There's this bug:
> 
>   Remove ARM old-ABI support
>   <https://sourceware.org/bugzilla/show_bug.cgi?id=13556>
> 
> I believe this removed core support for non-EABI platforms.

That's not quite the same thing.  The old ABI differed from the EABI
in several ways, including the stack alignment rules and the way
that system calls were done.  I think the bug you mentioned above
was to remove the support in glibc for those specific "old ABI"
mechanisms.

What you currently get if you build glibc for ARMv4 is an "almost-EABI"
configuration which does everything in the same way as the EABI except
that there is no interworking support.  I think we still have a certain
amount of #ifdef __ARM_ARCH_4__ for that purpose.  If we wanted to clean
things up there then removing support for the half-baked V4T interworking
would probably be more of a win since I think that accounts for a larger
amount of #ifdef scar tissue.

> All the target triplets we test upstream have gnueabi in them, and these
> days, anything that is not built by build-many-glibcs.py in at least
> variant is not considered supported, I think.

For the reasons above, even when building glibc for armv4 you still put
"gnueabi" in the triplet.  But I think you're still correct that
build-many-glibcs.py doesn't actually test anything older than ARMv5TE.

> It's an internal consumer of the sysctl facility.

Fair enough.  I would be supportive of removing it, anyway.

p.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]