Patch 12 of 14 (https://gcc.gnu.org/ml/gcc-patches/2014-09/msg01475.html) will break bigendian targets implementing vec_shr. This is a PowerPC parallel of patch 13 of 14 (https://gcc.gnu.org/ml/gcc-patches/2014-09/msg01477.html) for AArch64. I've checked I can build a stage 1 compiler for powerpc-none-eabi and that the assembly output looks plausible but no further than that. In fact I find BYTES_BIG_ENDIAN is defined to true on powerpcle-none-eabi as well as powerpc-none-eabi (and also on ppc64-none-elf, but to false on ppc64le-none-elf), so I'm not quite sure how your backend works in this regard - nonetheless I hope this is a helpful starting point even if not definitive. gcc/ChangeLog: * config/rs6000/vector.md (vec_shl_): Remove. (vec_shr_): Reverse shift if BYTES_BIG_ENDIAN.