Hello community, here is the log from the commit of package gcc7 for openSUSE:Factory checked in at 2020-01-18 12:14:14 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/gcc7 (Old) and /work/SRC/openSUSE:Factory/.gcc7.new.26092 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gcc7" Sat Jan 18 12:14:14 2020 rev:27 rq:762642 version:7.5.0+r278197 Changes: -------- --- /work/SRC/openSUSE:Factory/gcc7/cross-aarch64-gcc7.changes 2019-11-18 20:04:24.293773233 +0100 +++ /work/SRC/openSUSE:Factory/.gcc7.new.26092/cross-aarch64-gcc7.changes 2020-01-18 12:15:18.567048115 +0100 @@ -1,0 +2,11 @@ +Thu Jan 9 14:26:17 UTC 2020 - Andreas Schwab <[email protected]> + +- gcc7-pr92154.patch: Backport PR sanitizer/92154 + +------------------------------------------------------------------- +Tue Jan 7 08:38:25 UTC 2020 - Richard Biener <[email protected]> + +- Add gcc7-bsc1160086.patch to fix miscompilation in vectorized code + for s390x. [bsc#1160086] [gcc#92950] + +------------------------------------------------------------------- cross-arm-gcc7.changes: same change cross-arm-none-gcc7-bootstrap.changes: same change cross-arm-none-gcc7.changes: same change cross-avr-gcc7-bootstrap.changes: same change cross-avr-gcc7.changes: same change cross-epiphany-gcc7-bootstrap.changes: same change cross-epiphany-gcc7.changes: same change cross-hppa-gcc7.changes: same change cross-i386-gcc7.changes: same change cross-m68k-gcc7.changes: same change cross-mips-gcc7.changes: same change cross-nvptx-gcc7.changes: same change cross-ppc64-gcc7.changes: same change cross-ppc64le-gcc7.changes: same change cross-rx-gcc7-bootstrap.changes: same change cross-rx-gcc7.changes: same change cross-s390x-gcc7.changes: same change cross-sparc-gcc7.changes: same change cross-sparc64-gcc7.changes: same change cross-x86_64-gcc7.changes: same change gcc7-testresults.changes: same change gcc7.changes: same change New: ---- gcc7-bsc1160086.patch gcc7-pr92154.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ cross-aarch64-gcc7.spec ++++++ --- /var/tmp/diff_new_pack.OgeJ3j/_old 2020-01-18 12:16:11.331076412 +0100 +++ /var/tmp/diff_new_pack.OgeJ3j/_new 2020-01-18 12:16:11.335076414 +0100 @@ -1,7 +1,7 @@ # # spec file for package cross-aarch64-gcc7 # -# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2020 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -126,6 +126,8 @@ Patch17: gcc7-flive-patching.patch Patch18: gcc7-bsc1146475.patch Patch19: gcc7-pr85887.patch +Patch20: gcc7-bsc1160086.patch +Patch21: gcc7-pr92154.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -273,6 +275,8 @@ %patch17 -p1 %patch18 %patch19 +%patch20 +%patch21 -p1 %patch51 %patch60 %patch61 cross-arm-gcc7.spec: same change cross-arm-none-gcc7-bootstrap.spec: same change cross-arm-none-gcc7.spec: same change cross-avr-gcc7-bootstrap.spec: same change cross-avr-gcc7.spec: same change cross-epiphany-gcc7-bootstrap.spec: same change cross-epiphany-gcc7.spec: same change cross-hppa-gcc7.spec: same change cross-i386-gcc7.spec: same change cross-m68k-gcc7.spec: same change cross-mips-gcc7.spec: same change cross-nvptx-gcc7.spec: same change cross-ppc64-gcc7.spec: same change cross-ppc64le-gcc7.spec: same change cross-rx-gcc7-bootstrap.spec: same change cross-rx-gcc7.spec: same change cross-s390x-gcc7.spec: same change cross-sparc-gcc7.spec: same change cross-sparc64-gcc7.spec: same change cross-x86_64-gcc7.spec: same change gcc7-testresults.spec: same change ++++++ gcc7.spec ++++++ --- /var/tmp/diff_new_pack.OgeJ3j/_old 2020-01-18 12:16:11.791076658 +0100 +++ /var/tmp/diff_new_pack.OgeJ3j/_new 2020-01-18 12:16:11.795076661 +0100 @@ -1,7 +1,7 @@ # # spec file for package gcc7 # -# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2020 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -301,6 +301,8 @@ Patch17: gcc7-flive-patching.patch Patch18: gcc7-bsc1146475.patch Patch19: gcc7-pr85887.patch +Patch20: gcc7-bsc1160086.patch +Patch21: gcc7-pr92154.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -1754,6 +1756,8 @@ %patch17 -p1 %patch18 %patch19 +%patch20 +%patch21 -p1 %patch51 %patch60 %patch61 ++++++ gcc.spec.in ++++++ --- /var/tmp/diff_new_pack.OgeJ3j/_old 2020-01-18 12:16:11.939076737 +0100 +++ /var/tmp/diff_new_pack.OgeJ3j/_new 2020-01-18 12:16:11.939076737 +0100 @@ -307,6 +307,8 @@ Patch17: gcc7-flive-patching.patch Patch18: gcc7-bsc1146475.patch Patch19: gcc7-pr85887.patch +Patch20: gcc7-bsc1160086.patch +Patch21: gcc7-pr92154.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -1064,6 +1066,8 @@ %patch17 -p1 %patch18 %patch19 +%patch20 +%patch21 -p1 %patch51 %patch60 %patch61 ++++++ gcc7-bsc1160086.patch ++++++ 2019-12-17 Andreas Krebbel <[email protected]> Backport from mainline 2019-12-16 Andreas Krebbel <[email protected]> PR target/92950 * config/s390/vector.md ("mov<mode>" for V_8): Replace lh, lhy, and lhrl with llc. * gcc.target/s390/vector/pr92950.c: New test. Index: gcc/testsuite/gcc.target/s390/vector/pr92950.c =================================================================== --- gcc/testsuite/gcc.target/s390/vector/pr92950.c (nonexistent) +++ gcc/testsuite/gcc.target/s390/vector/pr92950.c (revision 279454) @@ -0,0 +1,24 @@ +/* { dg-do run } */ +/* { dg-options "-O3 -mzarch -march=z13" } */ + +struct a { + int b; + char c; +}; +struct a d = {1, 16}; +struct a *e = &d; + +int f = 0; + +int main() { + struct a g = {0, 0 }; + f = 0; + + for (; f <= 1; f++) { + g = d; + *e = g; + } + + if (d.c != 16) + __builtin_abort(); +} Index: gcc/config/s390/vector.md =================================================================== --- gcc/config/s390/vector.md (revision 279453) +++ gcc/config/s390/vector.md (revision 279454) @@ -289,9 +289,9 @@ (define_split ; However, this would probably be slower. (define_insn "mov<mode>" - [(set (match_operand:V_8 0 "nonimmediate_operand" "=v,v,d,v,R, v, v, v, v,d, Q, S, Q, S, d, d,d,d,d,R,T") - (match_operand:V_8 1 "general_operand" " v,d,v,R,v,j00,jm1,jyy,jxx,d,j00,j00,jm1,jm1,j00,jm1,R,T,b,d,d"))] - "" + [(set (match_operand:V_8 0 "nonimmediate_operand" "=v,v,d,v,R, v, v, v, v,d, Q, S, Q, S, d, d,d,R,T") + (match_operand:V_8 1 "general_operand" " v,d,v,R,v,j00,jm1,jyy,jxx,d,j00,j00,jm1,jm1,j00,jm1,T,d,d"))] + "TARGET_VX" "@ vlr\t%v0,%v1 vlvgb\t%v0,%1,0 @@ -309,12 +309,10 @@ (define_insn "mov<mode>" mviy\t%0,-1 lhi\t%0,0 lhi\t%0,-1 - lh\t%0,%1 - lhy\t%0,%1 - lhrl\t%0,%1 + llc\t%0,%1 stc\t%1,%0 stcy\t%1,%0" - [(set_attr "op_type" "VRR,VRS,VRS,VRX,VRX,VRI,VRI,VRI,VRI,RR,SI,SIY,SI,SIY,RI,RI,RX,RXY,RIL,RX,RXY")]) + [(set_attr "op_type" "VRR,VRS,VRS,VRX,VRX,VRI,VRI,VRI,VRI,RR,SI,SIY,SI,SIY,RI,RI,RXY,RX,RXY")]) (define_insn "mov<mode>" [(set (match_operand:V_16 0 "nonimmediate_operand" "=v,v,d,v,R, v, v, v, v,d, Q, Q, d, d,d,d,d,R,T,b") ++++++ gcc7-pr92154.patch ++++++ 2019-11-26 Jakub Jelinek <[email protected]> PR sanitizer/92154 * sanitizer_common/sanitizer_platform_limits_posix.h: Cherry-pick llvm-project revision 947f9692440836dcb8d88b74b69dd379d85974ce. * sanitizer_common/sanitizer_platform_limits_posix.cc: Likewise. Index: gcc-7.5.0+r278197/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc =================================================================== --- gcc-7.5.0+r278197.orig/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc +++ gcc-7.5.0+r278197/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc @@ -1145,8 +1145,9 @@ CHECK_SIZE_AND_OFFSET(ipc_perm, uid); CHECK_SIZE_AND_OFFSET(ipc_perm, gid); CHECK_SIZE_AND_OFFSET(ipc_perm, cuid); CHECK_SIZE_AND_OFFSET(ipc_perm, cgid); -#if !defined(__aarch64__) || !SANITIZER_LINUX || __GLIBC_PREREQ (2, 21) -/* On aarch64 glibc 2.20 and earlier provided incorrect mode field. */ +#if !SANITIZER_LINUX || __GLIBC_PREREQ (2, 31) +/* glibc 2.30 and earlier provided 16-bit mode field instead of 32-bit + on many architectures. */ CHECK_SIZE_AND_OFFSET(ipc_perm, mode); #endif Index: gcc-7.5.0+r278197/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h =================================================================== --- gcc-7.5.0+r278197.orig/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h +++ gcc-7.5.0+r278197/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h @@ -204,27 +204,14 @@ namespace __sanitizer { unsigned __seq; u64 __unused1; u64 __unused2; -#elif defined(__mips__) || defined(__aarch64__) || defined(__s390x__) - unsigned int mode; - unsigned short __seq; - unsigned short __pad1; - unsigned long __unused1; - unsigned long __unused2; #elif defined(__sparc__) -# if defined(__arch64__) unsigned mode; - unsigned short __pad1; -# else - unsigned short __pad1; - unsigned short mode; unsigned short __pad2; -# endif unsigned short __seq; unsigned long long __unused1; unsigned long long __unused2; #else - unsigned short mode; - unsigned short __pad1; + unsigned int mode; unsigned short __seq; unsigned short __pad2; #if defined(__x86_64__) && !defined(_LP64)
