https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61397
--- Comment #7 from Martin Sebor <msebor at gcc dot gnu.org> --- Created attachment 34859 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=34859&action=edit Proposed patch. I may be missing something but, AFAICS, simply changing the type of the constants to long long as in the attached patch makes the test pass in both 32-bit and 64-bit modes. $ /build/gcc-trunk/gcc/xgcc -B/build/gcc-trunk/gcc -Wall ~/fsf/gcc/trunk/gcc/testsuite/gcc.target/powerpc/p8vector-ldst.c -O2 -S -mcpu=power8 -mupper-regs-df -mupper-regs-sf -m32 && for insn in lxsspx lxsdx stxsspx stxsdx xsaddsp xsadddp; do if ! grep -q $insn p8vector-ldst.s ; then echo $insn; fi; done | wc -l 0 $ make -C /build/gcc-trunk RUNTESTFLAGS='powerpc.exp=p8vector-ldst.c' check-c ... === gcc Summary === # of expected passes 7 /build/gcc-trunk/gcc/xgcc version 5.0.0 20150221 (experimental) (GCC)