On 14/02/17 12:55, Sebastian Huber wrote: > Hello Segher, > > On 14/02/17 04:07, Segher Boessenkool wrote: >> Hi all, >> >> I propose to mark powerpc*-*-*spe* as obsolete in GCC 7. This includes >> the spe.h installed header file, all the __builtin_spe* intrinsics, the >> -mfloat-gprs= command-line option, and the support for the SPE ABIs. >> >> No one has properly tested these targets in a long time (the latest >> testresults I could find are from July 2015, >1000 failures), and the >> SPE support makes a lot of code much more complex. >> >> Any objections to this obsoletion? GCC 7 will then be the last release >> with support for SPE (it will need --enable-obsolete to build these >> targets), and we will delete the SPE support during GCC 8 development. > > the SPE unit is still used in the embedded PowerPC processors from > Freescale/NXP/Qualcomm, for example QorIQ P1020. These products are not > obsolete or even not recommended for new designs. These chips have a > long product life-cycle.
It is also used in many PPC based microcontrollers, which are used in the automotive industry and other places where you need highly reliable and robust but powerful microcontrollers. However, gcc support for these has traditionally been poor - there is little support for the variety of cores and configurations available from Freescale/NXP. I believe there is a chicken-and-egg situation here - few people use gcc with these devices because there is poorer device support compared to Freescale CodeWarrior or Green Hills, and there is little incentive for gcc developers (such as the CodeSourcery or IBM PPC folks) to support devices in gcc if no one uses that combination. > > Its a pity that Freescale/NXP/Qualcomm stopped to support GCC > development and IBM is burdened to take care of this. I can understand > your reasoning, however, its not true that there are no users of the SPE > unit. > I think what would be needed would be for Freescale/NXP/Qualcomm to put some money and effort in here, with the aim of making gcc their standard compiler for these targets (as they have done for ARM, replacing the old CodeWarrior compiler). Failing that, it is of course better to have no SPE support than broken SPE support, especially if it makes development harder for other devices.