> On Mar 19, 2018, at 8:19 AM, Bill Schmidt <wschm...@linux.vnet.ibm.com> wrote: > > On Mar 16, 2018, at 5:51 PM, Segher Boessenkool <seg...@kernel.crashing.org> > wrote: >> >> Hi Carl, >> >> On Wed, Mar 14, 2018 at 08:27:08AM -0700, Carl Love wrote: >>> The following patch fixes an ICE when compiling the test case >>> >>> gcc -mcpu=power7 builtin-fctid-fctiw-runnable.c >>> >>> The GCC compiler now gives a message >>> >>> "error: builtin function ‘__builtin_fctiw’ requires the ‘-mpower8-vector’ >>> option" >>> >>> and exits without generating an internal error. >> >> This is an improvement over the ICE, for sure. >> >> But fctiw is an ISA 1.xx instruction already (and fctid is as well, >> but explicitly undefined for 32-bit implementations until some 2.xx, >> I forgot which, 2.02 I think?) >> >> Requiring power8 for it is weird and surprising. power8-vector doubly so. >> >> It does not seem to be a good idea to only enable the builtin for cases >> where the current implementation is not broken. >> >> (The issue is that pre-power8 we do not allow SImode in FPR registers. >> Which makes the current fctiw implementation fail). >> >> I think we have two good options: >> >> 1) Remove these builtins; >> or >> 2) Make them work. >> > I don't think we can remove them, as for a while they were the only way to > access these instructions. We now have some vec_* intrinsics that are > the preferred interfaces, but for backward compatibility I think we have to > keep the old ones.
Sorry, never mind, I was thinking of vector forms. Please ignore me. Bill > > Thanks, > Bill > >> >> Segher