This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC 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: [PATCH] PR target/85358: Add target hook to prevent default widening


On Mon, Jun 04, 2018 at 08:46:42AM +0200, Richard Biener wrote:
> On Fri, 1 Jun 2018, Joseph Myers wrote:
> 
> > On Fri, 1 Jun 2018, Michael Meissner wrote:
> > 
> > > I'm wondering if there are other suggestions to make this patch acceptable.
> > > 
> > > As I mentioned previously, the initialization process needs to go through all
> > > of the widening tables in order to initialize all FP types, so we can't just
> > > arbitrarily eliminate IFmode from the widening table.
> > 
> > Initialization that's meant to cover all floating-point modes logically 
> > should not rely on everything being reachable by the "wider" relation.
> > 
> > That is, I'd expect it to do something equivalent to 
> > FOR_EACH_MODE_IN_CLASS (mode, MODE_FLOAT) rather than something based on 
> > "wider".
> 
> The unfortunate thing is that all iterators are wrapped around
> the "wider" relationship - we do not have any other way to find
> related modes.  So the concept that all modes in a class can be
> ordered after their width is baked in very deeply.  That's IMHO
> something we need to eventually fix to avoid this kind of
> target-hook "hacks".
> 
> Richard.

Given the related modes are in sequential order now, I could imagine ways to do
the initialization and iterators using those values.

-- 
Michael Meissner, IBM
IBM, M/S 2506R, 550 King Street, Littleton, MA 01460-6245, USA
email: meissner@linux.ibm.com, phone: +1 (978) 899-4797


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