When I submitted my recent patches, in updating one of the patches, I made a
thinko that resulted in a lot of failures on big endian systems (but not as
many on the little endian systems).

I have done bootstraps on both big endian and little endian systems.  Can I
check in this patch?

On a big endian power8 system, the following tests now pass:

gcc.target/powerpc/pr87532-mc.c
gcc.target/powerpc/pr89765-mc.c
gcc.target/powerpc/vec-extract-3.c
gcc.target/powerpc/vec-extract-5.c
gcc.target/powerpc/vec-extract-6.c
gcc.target/powerpc/vec-extract-7.c
gcc.target/powerpc/vec-extract-8.c
gcc.target/powerpc/vec-extract-9.c
gcc.target/powerpc/vec-extract-v16qi-df.c
gcc.target/powerpc/vec-extract-v16qi.c
gcc.target/powerpc/vec-extract-v16qiu-df.c
gcc.target/powerpc/vec-extract-v16qiu.c
gcc.target/powerpc/vec-extract-v2df.c
gcc.target/powerpc/vec-extract-v2di.c
gcc.target/powerpc/vec-extract-v4sf.c
gcc.target/powerpc/vec-extract-v4si-df.c
gcc.target/powerpc/vec-extract-v4si.c
gcc.target/powerpc/vec-extract-v4siu-df.c
gcc.target/powerpc/vec-extract-v4siu.c
gcc.target/powerpc/vec-extract-v8hi-df.c
gcc.target/powerpc/vec-extract-v8hi.c
gcc.target/powerpc/vec-extract-v8hiu-df.c
gcc.target/powerpc/vec-extract-v8hiu.c
gcc.target/powerpc/vsx-builtin-10b.c
gcc.target/powerpc/vsx-builtin-11b.c
gcc.target/powerpc/vsx-builtin-12b.c
gcc.target/powerpc/vsx-builtin-14b.c
gcc.target/powerpc/vsx-builtin-15b.c
gcc.target/powerpc/vsx-builtin-16b.c
gcc.target/powerpc/vsx-builtin-17b.c
gcc.target/powerpc/vsx-builtin-18b.c
gcc.target/powerpc/vsx-builtin-19b.c
gcc.target/powerpc/vsx-builtin-9b.c

On a little endian power8 system, the following tests now pass:

gcc.target/powerpc/pr87532-mc.c
gcc.target/powerpc/pr89765-mc.c
gcc.target/powerpc/vec-extract-v2di.c
gcc.target/powerpc/vsx-builtin-12b.c
gcc.target/powerpc/vsx-builtin-19b.c

2020-02-05  Michael Meissner  <meiss...@linux.ibm.com>

        PR target/93568
        * config/rs6000/rs6000.c (get_vector_offset): Fix

--- /tmp/a8cqkr_rs6000.c        2020-02-05 14:55:36.255021903 -0600
+++ gcc/config/rs6000/rs6000.c  2020-02-05 13:27:00.393877012 -0600
@@ -6744,8 +6744,7 @@ get_vector_offset (rtx mem, rtx element,
 
   /* All insns should use the 'Q' constraint (address is a single register) if
      the element number is not a constant.  */
-  rtx addr = XEXP (mem, 0);
-  gcc_assert (satisfies_constraint_Q (addr));
+  gcc_assert (satisfies_constraint_Q (mem));
 
   /* Mask the element to make sure the element number is between 0 and the
      maximum number of elements - 1 so that we don't generate an address

-- 
Michael Meissner, IBM
IBM, M/S 2506R, 550 King Street, Littleton, MA 01460-6245, USA
email: meiss...@linux.ibm.com, phone: +1 (978) 899-4797

Reply via email to