[Bug target/83387] PowerPC64: Infinite loops in do_reload() with -msoft-float
segher at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed Jan 3 10:08:00 GMT 2018
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83387
--- Comment #16 from Segher Boessenkool <segher at gcc dot gnu.org> ---
> > > --- gcc/config/rs6000/rs6000.c (revision 255700)
> > > +++ gcc/config/rs6000/rs6000.c (working copy)
> > > @@ -11095,7 +11095,8 @@ rs6000_discover_homogeneous_aggregate (m
> > > homogeneous aggregates; these types are handled via the
> > > targetm.calls.split_complex_arg mechanism. Complex types
> > > can be elements of homogeneous aggregates, however. */
> > > - if (DEFAULT_ABI == ABI_ELFv2 && type && AGGREGATE_TYPE_P (type))
> > > + if (TARGET_HARD_FLOAT && DEFAULT_ABI == ABI_ELFv2 && type
> > > + && AGGREGATE_TYPE_P (type))
> > > {
> > > machine_mode field_mode = VOIDmode;
> > > int field_count = rs6000_aggregate_candidate (type, &field_mode);
> > >
> > >
> > >
> >
> > With this patch I can build an Ada compiler with a -m64 and -msoft-float
> > multilib.
>
> How do we want to continue with this PR? Close it as WONTFIX or apply the
> patch and close it as FIXED?
If it works, and doesn't regress anything, it is pre-approved. So please
test it on powerp64le-linux (gcc112 for example).
More information about the Gcc-bugs
mailing list