On 2026-09-09 9:38 a.m., Jeff Law wrote: > > > On 9/9/26 6:03 AM, Richard Biener wrote: >> The following exposes function pointer canonicalization for >> comparisons early by lowering to an internal function call >> during gimplification. This allows us to make conversions >> to function pointers useless, restoring symmetry and >> avoiding issues like PR127263. >> >> I have not removed gates on few optimizations. >> >> Function pointer canonicalizations for comparisons are only >> required for 32bit hppa. I built a cc1 cross and verified >> this works for gcc.dg/tree-ssa/pr22051-1.c but I have no >> further means (or intent ...) of testing. Jeff, I suppose >> you have some way of testing 32bit hppa for regressions? > There's two platforms where this mattered.
It also matters on the hppa linux and bsd systems. These are the most important targets. > 32 bit SOM. I shut my last system down eons ago and never even tried to > resurrect something on top of QEMU. 32-bit SOM target is disabled. > 32 bit portable runtime. This may be used on the 32 bit Linux port. I don't > really know as I've not been involved with that in any meaningful I believe the portable runtime is used for gcl on linux to speed up calls. > way. I do have this in my tester (and in fact will need to debug a > regression soon), but the ABI details and such have long since been dropped > from my memory. > > John David Anglin (on cc) may have more state. From a very quick review of > the PA code, I think we need to use the function pointer > canonicalization pattern for expansion rather than going straight to the > canonicalization function. My PA ABI is very rusty, but it looks to be > a bit nonstandard, closer to millicode patterns which use a different ABI > than normal calls. I can test but it will take some time. I'm working on changes to improve spill handling with LRA that are taking some time test. I think I have LRA working properly now. Dave -- John David Anglin [email protected]
