Segher and I are planning to remove the machinery supporting RS6000_CALL_GLUE. In the AIX ABI, used by AIX, PowerOpen, PPC64 Linux and mcall-aixdesc, direct calls to named functions that may be external are followed by a special no-op instruction that the linker can replace with an instruction to restore the TOC addressibility register. This no-op instruction changed over time prior to the PowerPC architecture: initially "cror 15,15,15", then "cror 31,31,31" and finally settling on the PowerPC "nop" instruction.
PPC64 Linux only has ever used the PowerPC "nop" instruction. All versions of AIX targeting PowerPC use the PowerPC "nop" instruction. All current configurations of GCC targeting PPC64 Linux and AIX only generate the "nop" instruction. The machinery is not used for the PPC32 SVR4 ABI and eABI. With the recent removal of support for the original POWER instruction set from GCC, we propose to remove the machinery to control the no-op instruction emitted by GCC. The linkers will continue to handle the older no-op instructions in any old object files. However, the default value of RS6000_CALL_GLUE, which almost all targets override, is "cror 31,31,31". The only place this potentially still could be used is in the old mcall-aixdesc "embedded" mode originally designed by Cygnus for a customer who desired an embedded mode with AIX compatibility. We do not believe there are any remaining users of this option, but we want to distribute this announcement widely to ensure that anyone affected has an opportunity to comment. http://gcc.gnu.org/ml/gcc-patches/2012-08/msg01849.html As the saying goes: "Speak now, or forever hold your peace." Thanks, David