This commit is contained in:
Jakub Jelinek 2017-06-22 09:55:37 +02:00
parent 7a880b1a75
commit dcf86feb99
4 changed files with 22 additions and 79 deletions

1
.gitignore vendored
View File

@ -17,3 +17,4 @@
/gcc-7.0.1-20170425.tar.bz2
/gcc-7.1.1-20170503.tar.bz2
/gcc-7.1.1-20170526.tar.bz2
/gcc-7.1.1-20170622.tar.bz2

View File

@ -1,10 +1,10 @@
%global DATE 20170526
%global SVNREV 248505
%global DATE 20170622
%global SVNREV 249497
%global gcc_version 7.1.1
%global gcc_major 7
# Note, gcc_release must be integer, if you want to add suffixes to
# %{release}, append them after %{gcc_release} on Release: line.
%global gcc_release 2
%global gcc_release 3
%global nvptx_tools_gitrev c28050f60193b3b95a18866a96f03334e874e78f
%global nvptx_newlib_gitrev aadc8eb0ec43b7cd0dd2dfb484bae63c8b05ef24
%global _unpackaged_files_terminate_build 0
@ -232,7 +232,6 @@ Patch8: gcc7-no-add-needed.patch
Patch9: gcc7-aarch64-async-unw-tables.patch
Patch10: gcc7-foffload-default.patch
Patch11: gcc7-Wno-format-security.patch
Patch12: gcc7-pr80725.patch
Patch1000: nvptx-tools-no-ptxas.patch
Patch1001: nvptx-tools-build.patch
@ -822,7 +821,6 @@ package or when debugging this package.
%patch9 -p0 -b .aarch64-async-unw-tables~
%patch10 -p0 -b .foffload-default~
%patch11 -p0 -b .Wno-format-security~
%patch12 -p0 -b .pr80725~
cd nvptx-tools-%{nvptx_tools_gitrev}
%patch1000 -p1 -b .nvptx-tools-no-ptxas~
@ -3240,6 +3238,23 @@ fi
%endif
%changelog
* Thu Jun 22 2017 Jakub Jelinek <jakub@redhat.com> 7.1.1-3
- update from the 7 branch
- PRs ada/80921, ada/81070, ada/81105, c++/60063, c++/66297, c++/70844,
c++/71747, c++/80179, c++/80384, c++/80465, c++/80562, c++/80593,
c++/80605, c++/80614, c++/80639, c++/80829, c++/80831, c++/80840,
c++/80856, c++/80972, c++/80973, c++/80984, c++/81011, c++/81045,
c++/81073, c++/81074, c++/81102, c++/81130, c++/81154, c/80919,
c/81006, fortran/70601, fortran/80766, fortran/80904, fortran/80918,
fortran/80975, libgcc/80037, libgomp/80822, libstdc++/80675,
libstdc++/80940, libstdc++/81002, libstdc++/81092,
rtl-optimization/80474, rtl-optimization/80903, sanitizer/81111,
sanitizer/81125, target/59874, target/71607, target/71778,
target/80718, target/80968, target/80970, target/81015, target/81121,
target/81151, tree-optimization/80293, tree-optimization/80549,
tree-optimization/80705, tree-optimization/80842,
tree-optimization/80906
* Fri May 26 2017 Jakub Jelinek <jakub@redhat.com> 7.1.1-2
- update from the 7 branch
- PRs ada/80626, ada/80784, documentation/50642, fortran/78659,

View File

@ -1,73 +0,0 @@
2017-05-24 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
PR target/80725
* config/s390/s390.c (s390_check_qrst_address): Check incoming
address against address_operand predicate.
* config/s390/s390.md ("*indirect_jump"): Swap alternatives.
* gcc.target/s390/pr80725.c: New test.
--- gcc/config/s390/s390.c (revision 248406)
+++ gcc/config/s390/s390.c (revision 248407)
@@ -3102,6 +3102,9 @@ s390_check_qrst_address (char c, rtx op,
struct s390_address addr;
bool decomposed = false;
+ if (!address_operand (op, GET_MODE (op)))
+ return 0;
+
/* This check makes sure that no symbolic address (except literal
pool references) are accepted by the R or T constraints. */
if (s390_loadrelative_operand_p (op, NULL, NULL))
--- gcc/config/s390/s390.md (revision 248406)
+++ gcc/config/s390/s390.md (revision 248407)
@@ -9660,14 +9660,16 @@ (define_expand "indirect_jump"
operands[0] = force_reg (Pmode, operands[0]);
})
+; The first constraint must be an "extra address constraint" in order
+; to trigger address reloading in LRA/reload
(define_insn "*indirect_jump"
[(set (pc)
- (match_operand 0 "address_operand" "a,ZR"))]
+ (match_operand 0 "address_operand" "ZR,a"))]
""
"@
- br\t%0
- b\t%a0"
- [(set_attr "op_type" "RR,RX")
+ b\t%a0
+ br\t%0"
+ [(set_attr "op_type" "RX,RR")
(set_attr "type" "branch")
(set_attr "atype" "agen")
(set_attr "cpu_facility" "*")])
--- gcc/testsuite/gcc.target/s390/pr80725.c (nonexistent)
+++ gcc/testsuite/gcc.target/s390/pr80725.c (revision 248407)
@@ -0,0 +1,26 @@
+/* Regression test for PR/80725. */
+
+/* { dg-do compile } */
+/* { dg-options "-O2 -march=zEC12" } */
+
+int a, e;
+const char b;
+char c;
+const int d;
+void bar (short);
+
+void
+foo (int x, int y)
+{
+ long f = d;
+ short g = 0;
+ while (e)
+ while (a < x)
+ {
+ if (y)
+ goto *d;
+ g = b | b + g;
+ bar (g);
+ c = (char) (long) foo;
+ }
+}

View File

@ -1,3 +1,3 @@
SHA512 (gcc-7.1.1-20170526.tar.bz2) = 988af807ca2ea9c194a8e172eee6b596d948ba64979ed9b0d1c96cb2513b891ffa786e6e1a42a75cedf4ba0c16d04ad95663cf7564c03956dd3e86ccab8e6d57
SHA512 (gcc-7.1.1-20170622.tar.bz2) = 55de9c43036acfffd2ef77ee93c4c54f7f50b63611108a12c7a01b17e71a38f54e8ceb3866041c6c385f98ad974c7e969686856a2134d18a5c170c91317b2f41
SHA512 (nvptx-newlib-aadc8eb0ec43b7cd0dd2dfb484bae63c8b05ef24.tar.bz2) = 38f97c9297ad108568352a4d28277455a3c01fd8b7864e798037e5006b6f757022e874bbf3f165775fe3b873781bc108137bbeb42dd5ed3c7d3e6747746fa918
SHA512 (nvptx-tools-c28050f60193b3b95a18866a96f03334e874e78f.tar.bz2) = 95b577a06a93bb044dbc8033e550cb36bcf2ab2687da030a7318cdc90e7467ed49665e247dcafb5ff4a7e92cdc264291d19728bd17fab902fb64b22491269330