Hi Folks, > On 10 Jan 2025, at 18:30, Wilco Dijkstra <wilco.dijks...@arm.com> wrote: > > Hi Andrew, > >> Personally I would like this deprecated even for bare-metal. Yes the >> iwatch ABI is an ILP32 ABI but I don't see GCC implementing that any >> time soon and I suspect it would not be hard to resurrect the code at >> that point. > > My patch deprecates it in all cases currently. It will be a good warning for > people that it will go away in the future (even if we don't yet agree on when > exactly).
Andrew is correct (at least in so far as I am the active person supporting Darwin on GCC). It is not likely to happen any time soon - there are higher priorities. However, the existence of watchOS with a very wide deployment does mean that there is at least one significant use of ILP32 in the wild. I guess if a miracle occurs and somehow watchOS becomes relevant, I’d imagine we’d have ABI work to do anyway - so having to restore old code would be part of that. cheers Iain > >> I have only seen use of this outside of just testing and inside >> Samsung and Huawei but for the most part both of them have not done >> any maintenance to support ILP32. Well Huawei did file a bug a few >> months ago about how the build is broken for libatomic since the >> addition of LSE128 support: >> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118142; Took them 9 >> months to notice too. > > I agree there is no point in fixing any of this. It's never going to work > without > somebody doing a full port and active maintenance. There are lots of uses of > unsigned long in libatomic - and all of those are incorrect in ILP32. And the > assembler would need argument checks etc... > > Thinking it will work fine if it builds without errors is insanity. > > Cheers, > Wilco