11.0.1-0.1

This commit is contained in:
Jakub Jelinek 2021-03-07 10:18:50 +01:00
parent 7ddd78661a
commit c3f10cec8a
7 changed files with 150 additions and 26 deletions

1
.gitignore vendored
View File

@ -34,3 +34,4 @@
/gcc-11.0.0-20210130.tar.xz
/gcc-11.0.0-20210210.tar.xz
/gcc-11.0.0-20210225.tar.xz
/gcc-11.0.1-20210307.tar.xz

View File

@ -1,6 +1,6 @@
%global DATE 20210225
%global gitrev 441dcf7e3bfd4aae42bb0d520cfc904fb14f84aa
%global gcc_version 11.0.0
%global DATE 20210307
%global gitrev e13870b7c083e39ab17cc827bab5cb45387e8f19
%global gcc_version 11.0.1
%global gcc_major 11
# Note, gcc_release must be integer, if you want to add suffixes to
# %%{release}, append them after %%{gcc_release} on Release: line.
@ -119,7 +119,7 @@
Summary: Various compilers (C, C++, Objective-C, ...)
Name: gcc
Version: %{gcc_version}
Release: %{gcc_release}.20%{?dist}
Release: %{gcc_release}.1%{?dist}
# libgcc, libgfortran, libgomp, libstdc++ and crtstuff have
# GCC Runtime Exception.
License: GPLv3+ and GPLv3+ with exceptions and GPLv2+ with exceptions and LGPLv2+ and BSD
@ -271,7 +271,8 @@ Patch8: gcc11-foffload-default.patch
Patch9: gcc11-Wno-format-security.patch
Patch10: gcc11-rh1574936.patch
Patch11: gcc11-d-shared-libphobos.patch
Patch12: gcc11-pr98338-workaround.patch
Patch12: gcc11-pr99378-revert.patch
Patch13: gcc11-pr99388.patch
Patch100: gcc11-fortran-fdec-duplicates.patch
Patch101: gcc11-fortran-flogical-as-integer.patch
@ -793,7 +794,8 @@ to NVidia PTX capable devices if available.
%patch10 -p0 -b .rh1574936~
%endif
%patch11 -p0 -b .d-shared-libphobos~
%patch12 -p0 -b .pr98338-workaround~
%patch12 -p0 -b .pr99378-revert~
%patch13 -p0 -b .pr99388~
%if 0%{?rhel} >= 9
%patch100 -p1 -b .fortran-fdec-duplicates~
@ -808,7 +810,6 @@ to NVidia PTX capable devices if available.
%patch109 -p1 -b .fortran-fdec-add-missing-indexes~
%endif
rm -f libgomp/testsuite/*/*task-detach*
%ifarch %{arm}
rm -f gcc/testsuite/go.test/test/fixedbugs/issue19182.go
%endif
@ -3096,6 +3097,32 @@ end
%endif
%changelog
* Sun Mar 7 2021 Jakub Jelinek <jakub@redhat.com> 11.0.1-0.1
- update from trunk
- PRs ada/98996, ada/99020, ada/99095, ada/99264, analyzer/96374,
analyzer/99193, bootstrap/92002, bootstrap/98590, c++/82959,
c++/88146, c++/90333, c++/94521, c++/95451, c++/95615, c++/95616,
c++/95675, c++/95822, c++/96078, c++/96330, c++/96443, c++/96474,
c++/96960, c++/97034, c++/97587, c++/98118, c++/98318, c++/98810,
c++/98990, c++/99009, c++/99103, c++/99120, c++/99166, c++/99170,
c++/99176, c++/99213, c++/99245, c++/99251, c++/99287, c++/99294,
c++/99344, c++/99362, c++/99365, c++/99374, c++/99377, c++/99389,
c/99137, c/99275, c/99304, c/99323, c/99324, c/99325, c/99363,
d/99337, debug/66668, debug/99090, debug/99319, fortran/57871,
fortran/99300, fortran/99303, fortran/99355, gcov-profile/97461,
gcov-profile/99105, gcov-profile/99385, gcov-profile/99406, ipa/98078,
ipa/98338, libbacktrace/98818, libfortran/81986, libfortran/99218,
libgomp/98738, libstdc++/99265, libstdc++/99270, libstdc++/99301,
libstdc++/99382, libstdc++/99396, middle-end/93235, middle-end/94655,
middle-end/95757, middle-end/96963, middle-end/97172,
middle-end/97855, middle-end/99276, middle-end/99281,
middle-end/99295, middle-end/99322, other/99288,
rtl-optimization/99376, target/44107, target/48097, target/95798,
target/98996, target/99085, target/99234, target/99271, target/99279,
target/99313, target/99321, target/99381, testsuite/99233,
tree-optimization/80635, tree-optimization/99253
- fix debug info for __fp16 constants (PR debug/99388)
* Thu Feb 25 2021 Jakub Jelinek <jakub@redhat.com> 11.0.0-0.20
- update from trunk
- PRs analyzer/94596, analyzer/98969, analyzer/99196, c++/94034, c++/94546,

View File

@ -1,17 +0,0 @@
2020-12-17 Jakub Jelinek <jakub@redhat.com>
PR bootstrap/98338
* range-op.cc (operator_plus::op2_range): Tail-call op1_range
to work-around ICF profile merging ICE during profiledbootstrap.
--- gcc/range-op.cc.jj 2020-12-17 16:06:39.789526868 +0100
+++ gcc/range-op.cc 2020-12-17 16:19:18.127240700 +0100
@@ -950,7 +950,7 @@ operator_plus::op2_range (irange &r, tre
const irange &lhs,
const irange &op1) const
{
- return range_op_handler (MINUS_EXPR, type)->fold_range (r, type, lhs, op1);
+ return op1_range (r, type, lhs, op1);
}

View File

@ -0,0 +1,21 @@
Revert:
2021-03-05 Vladimir N. Makarov <vmakarov@redhat.com>
PR target/99378
* lra-constraints.c (process_address_1): Skip decomposing address
for asm insn operand with unknown constraint.
--- gcc/lra-constraints.c
+++ gcc/lra-constraints.c
@@ -3450,9 +3450,8 @@ process_address_1 (int nop, bool check_only_p,
i.e. bcst_mem_operand in i386 backend. */
else if (MEM_P (mem)
&& !(INSN_CODE (curr_insn) < 0
- && (cn == CONSTRAINT__UNKNOWN
- || (get_constraint_type (cn) == CT_FIXED_FORM
- && constraint_satisfied_p (op, cn)))))
+ && get_constraint_type (cn) == CT_FIXED_FORM
+ && constraint_satisfied_p (op, cn)))
decompose_mem_address (&ad, mem);
else if (GET_CODE (op) == SUBREG
&& MEM_P (SUBREG_REG (op)))

92
gcc11-pr99388.patch Normal file
View File

@ -0,0 +1,92 @@
2021-03-04 Jakub Jelinek <jakub@redhat.com>
PR debug/99388
* dwarf2out.c (insert_float): Change return type from void to
unsigned, handle GET_MODE_SIZE (mode) == 2 and return element size.
(mem_loc_descriptor, loc_descriptor, add_const_value_attribute):
Adjust callers.
--- gcc/dwarf2out.c.jj 2021-03-03 09:53:55.391191719 +0100
+++ gcc/dwarf2out.c 2021-03-04 15:51:23.174396552 +0100
@@ -3825,7 +3825,7 @@ static void add_data_member_location_att
static bool add_const_value_attribute (dw_die_ref, rtx);
static void insert_int (HOST_WIDE_INT, unsigned, unsigned char *);
static void insert_wide_int (const wide_int &, unsigned char *, int);
-static void insert_float (const_rtx, unsigned char *);
+static unsigned insert_float (const_rtx, unsigned char *);
static rtx rtl_for_decl_location (tree);
static bool add_location_or_const_value_attribute (dw_die_ref, tree, bool);
static bool tree_add_const_value_attribute (dw_die_ref, tree);
@@ -16292,11 +16292,12 @@ mem_loc_descriptor (rtx rtl, machine_mod
scalar_float_mode float_mode = as_a <scalar_float_mode> (mode);
unsigned int length = GET_MODE_SIZE (float_mode);
unsigned char *array = ggc_vec_alloc<unsigned char> (length);
+ unsigned int elt_size = insert_float (rtl, array);
- insert_float (rtl, array);
mem_loc_result->dw_loc_oprnd2.val_class = dw_val_class_vec;
- mem_loc_result->dw_loc_oprnd2.v.val_vec.length = length / 4;
- mem_loc_result->dw_loc_oprnd2.v.val_vec.elt_size = 4;
+ mem_loc_result->dw_loc_oprnd2.v.val_vec.length
+ = length / elt_size;
+ mem_loc_result->dw_loc_oprnd2.v.val_vec.elt_size = elt_size;
mem_loc_result->dw_loc_oprnd2.v.val_vec.array = array;
}
}
@@ -16866,11 +16867,11 @@ loc_descriptor (rtx rtl, machine_mode mo
{
unsigned int length = GET_MODE_SIZE (smode);
unsigned char *array = ggc_vec_alloc<unsigned char> (length);
+ unsigned int elt_size = insert_float (rtl, array);
- insert_float (rtl, array);
loc_result->dw_loc_oprnd2.val_class = dw_val_class_vec;
- loc_result->dw_loc_oprnd2.v.val_vec.length = length / 4;
- loc_result->dw_loc_oprnd2.v.val_vec.elt_size = 4;
+ loc_result->dw_loc_oprnd2.v.val_vec.length = length / elt_size;
+ loc_result->dw_loc_oprnd2.v.val_vec.elt_size = elt_size;
loc_result->dw_loc_oprnd2.v.val_vec.array = array;
}
}
@@ -19689,7 +19690,7 @@ insert_wide_int (const wide_int &val, un
/* Writes floating point values to dw_vec_const array. */
-static void
+static unsigned
insert_float (const_rtx rtl, unsigned char *array)
{
long val[4];
@@ -19699,11 +19700,19 @@ insert_float (const_rtx rtl, unsigned ch
real_to_target (val, CONST_DOUBLE_REAL_VALUE (rtl), mode);
/* real_to_target puts 32-bit pieces in each long. Pack them. */
+ if (GET_MODE_SIZE (mode) < 4)
+ {
+ gcc_assert (GET_MODE_SIZE (mode) == 2);
+ insert_int (val[0], 2, array);
+ return 2;
+ }
+
for (i = 0; i < GET_MODE_SIZE (mode) / 4; i++)
{
insert_int (val[i], 4, array);
array += 4;
}
+ return 4;
}
/* Attach a DW_AT_const_value attribute for a variable or a parameter which
@@ -19752,9 +19761,10 @@ add_const_value_attribute (dw_die_ref di
scalar_float_mode mode = as_a <scalar_float_mode> (GET_MODE (rtl));
unsigned int length = GET_MODE_SIZE (mode);
unsigned char *array = ggc_vec_alloc<unsigned char> (length);
+ unsigned int elt_size = insert_float (rtl, array);
- insert_float (rtl, array);
- add_AT_vec (die, DW_AT_const_value, length / 4, 4, array);
+ add_AT_vec (die, DW_AT_const_value, length / elt_size, elt_size,
+ array);
}
return true;

View File

@ -1,3 +1,3 @@
SHA512 (gcc-11.0.0-20210225.tar.xz) = 9aad03aa5dcc198fda4c465021ac4a0d62012aefdd1fdfa1019aaa8fabfe812bd82aa66997ddd219a7388881b5f2d24d9dd8eb754d7dfeae159af0ceeeef851b
SHA512 (gcc-11.0.1-20210307.tar.xz) = 1efa50991f55de59270af6ff134fc1818ca23e30bdc064f79916e358e46daf301a8d2d3e1afcde58a00a521e8bc2136f8cc5f21c5e05ccd80fa8e5c7e9324e9b
SHA512 (newlib-cygwin-50e2a63b04bdd018484605fbb954fd1bd5147fa0.tar.xz) = 002a48a7b689a81abbf16161bcaec001a842e67dfbe372e9e109092703bfc666675f16198f60ca429370e8850d564547dc505df81bc3aaca4ce6defbc014ad6c
SHA512 (nvptx-tools-5f6f343a302d620b0868edab376c00b15741e39e.tar.xz) = f6d10db94fa1570ae0f94df073fa3c73c8e5ee16d59070b53d94f7db0de8a031bc44d7f3f1852533da04b625ce758e022263855ed43cfc6867e0708d001e53c7

View File

@ -3,5 +3,5 @@
git clone --depth 1 git://gcc.gnu.org/git/gcc.git gcc-dir.tmp
git --git-dir=gcc-dir.tmp/.git fetch --depth 1 origin $1
d=`date --iso | sed 's/-//g'`
git --git-dir=gcc-dir.tmp/.git archive --prefix=gcc-11.0.0-$d/ $1 | xz -9e > gcc-11.0.0-$d.tar.xz
git --git-dir=gcc-dir.tmp/.git archive --prefix=gcc-11.0.1-$d/ $1 | xz -9e > gcc-11.0.1-$d.tar.xz
rm -rf gcc-dir.tmp