On Mon, Jun 04, 2018 at 05:19:07PM -0500, Segher Boessenkool wrote: > You can still have overloads, just not two between the same type. So you > can have both __ibm128 and __ieee128.
Yes of course, but the test is explicitly testing whether you can overloads with the same type. > > The test in question was new and written when I did the previous changes. > > It > > is not a long standing problem. The test was explicitly written to make > > sure > > all three types were different. Since we now have only two types, we need > > to > > adjust the test. > > The test currently ICEs. That needs to be fixed. Well that is a C++ front end bug. > > > > +/* Generate old manged name, not new name. */ > > > > +static bool old_mangling; > > > > > > As Andreas said, this is not a good name. Please at least mention for > > > what type this old mangling is. > > > > I will consider this. > > Thanks. Naming is hard :-( My current name is: ieee128_mangling_gcc_8_1 > > > I wonder how hard it would be to alias the long double type to either > > > __ibm128 or __ieee128, instead of the other way around? This would > > > simplify code a lot. Esp. if we can do the same thing for the modes, > > > too. > > > > It depends on whether other parts of the compiler already have links to long > > double before the hook in rs6000.c gets called. I frankly don't see it as > > simplifying the code. > > Not even if we can also get rid of TFmode as separate mode? We have to keep TFmode for the non float128 ports, so I don't see it as buying us much of anything. But also it is a matter of how much you want to destabilize things. -- Michael Meissner, IBM IBM, M/S 2506R, 550 King Street, Littleton, MA 01460-6245, USA email: meiss...@linux.ibm.com, phone: +1 (978) 899-4797