This commit is contained in:
Jakub Jelinek 2012-03-22 12:15:35 +01:00
parent ceba2f7e86
commit 76070518ae
6 changed files with 11 additions and 179 deletions

1
.gitignore vendored
View File

@ -26,3 +26,4 @@
/gcc-4.7.0-20120229.tar.bz2
/gcc-4.7.0-20120308.tar.bz2
/gcc-4.7.0-20120315.tar.bz2
/gcc-4.7.0-20120322.tar.bz2

View File

@ -1,9 +1,9 @@
%global DATE 20120315
%global SVNREV 185441
%global DATE 20120322
%global SVNREV 185684
%global gcc_version 4.7.0
# 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 0.20
%global gcc_release 1
%global _unpackaged_files_terminate_build 0
%global multilib_64_archs sparc64 ppc64 s390x x86_64
%ifarch %{ix86} x86_64 ia64 ppc ppc64 alpha
@ -175,9 +175,6 @@ Patch13: gcc47-no-add-needed.patch
Patch14: gcc47-ppl-0.10.patch
Patch15: gcc47-libitm-fno-exceptions.patch
Patch16: gcc47-pr52582.patch
Patch17: gcc47-smmintrin.patch
Patch18: gcc47-pr52577.patch
Patch19: gcc47-pr52521.patch
Patch1000: fastjar-0.97-segfault.patch
Patch1001: fastjar-0.97-len1.patch
@ -680,9 +677,6 @@ package or when debugging this package.
%endif
%patch15 -p0 -b .libitm-fno-exceptions~
%patch16 -p0 -b .pr52582~
%patch17 -p0 -b .smmintrin~
%patch18 -p0 -b .pr52577~
%patch19 -p0 -b .pr52521~
%if 0%{?_enable_debug_packages}
cat > split-debuginfo.sh <<\EOF
@ -746,7 +740,7 @@ tar xzf %{SOURCE4}
tar xjf %{SOURCE10}
%endif
sed -i -e 's/4\.7\.0/4.7.0/' gcc/BASE-VER
sed -i -e 's/4\.7\.1/4.7.0/' gcc/BASE-VER
echo 'Red Hat %{version}-%{gcc_release}' > gcc/DEV-PHASE
%if 0%{?fedora} >= 16 || 0%{?rhel} >= 7
@ -2649,6 +2643,11 @@ fi
%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_version}/plugin
%changelog
* Thu Mar 22 2012 Jakub Jelinek <jakub@redhat.com> 4.7.0-1
- update from the 4.7 branch
- GCC 25th Anniversary 4.7.0 release
- fix up new auto mangling
* Thu Mar 15 2012 Jakub Jelinek <jakub@redhat.com> 4.7.0-0.20
- update from the 4.7 branch
- PRs fortran/52469, libitm/52526, libstdc++/52456, target/52450

View File

@ -1,52 +0,0 @@
2012-03-14 Jakub Jelinek <jakub@redhat.com>
PR c++/52521
* parser.c (lookup_literal_operator): Return fn only if
processed all arguments from args vector and argtypes is
void_list_node.
* g++.dg/cpp0x/udlit-args2.C: New test.
--- gcc/cp/parser.c (revision 185374)
+++ gcc/cp/parser.c (revision 185375)
@@ -1,6 +1,6 @@
/* C++ Parser.
Copyright (C) 2000, 2001, 2002, 2003, 2004,
- 2005, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
+ 2005, 2007, 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
Written by Mark Mitchell <mark@codesourcery.com>.
This file is part of GCC.
@@ -3581,7 +3581,13 @@ lookup_literal_operator (tree name, VEC(
TREE_TYPE (tparm))))
found = false;
}
- if (found)
+ if (found
+ && ix == VEC_length (tree, args)
+ /* May be this should be sufficient_parms_p instead,
+ depending on how exactly should user-defined literals
+ work in presence of default arguments on the literal
+ operator parameters. */
+ && argtypes == void_list_node)
return fn;
}
}
--- gcc/testsuite/g++.dg/cpp0x/udlit-args2.C (revision 0)
+++ gcc/testsuite/g++.dg/cpp0x/udlit-args2.C (revision 185375)
@@ -0,0 +1,15 @@
+// PR c++/52521
+// { dg-do compile }
+// { dg-options -std=c++11 }
+
+#include <cstddef>
+
+int operator "" _a (const char *);
+int operator "" _a (const char *, std::size_t);
+int a = 123_a;
+int a2 = "abc"_a;
+
+int operator "" _b (const char *, std::size_t);
+int operator "" _b (const char *);
+int b = 123_b;
+int b2 = "abc"_b;

View File

@ -1,76 +0,0 @@
2012-03-13 Jakub Jelinek <jakub@redhat.com>
PR c/52577
* c-parser.c (c_parser_postfix_expression)
<case RID_BUILTIN_SHUFFLE>: Call mark_exp_read on argument values.
* gcc.dg/Wunused-var-3.c: New test.
--- gcc/c-parser.c (revision 185354)
+++ gcc/c-parser.c (revision 185355)
@@ -1,7 +1,7 @@
/* Parser for C and Objective-C.
Copyright (C) 1987, 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009, 2010, 2011
- Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009, 2010, 2011,
+ 2012 Free Software Foundation, Inc.
Parser actions based on the old Bison parser; structure somewhat
influenced by and fragments based on the C++ parser.
@@ -6647,6 +6647,8 @@ c_parser_postfix_expression (c_parser *p
case RID_BUILTIN_SHUFFLE:
{
VEC(c_expr_t,gc) *cexpr_list;
+ unsigned int i;
+ c_expr_t *p;
c_parser_consume_token (parser);
if (!c_parser_get_builtin_args (parser,
@@ -6657,6 +6659,9 @@ c_parser_postfix_expression (c_parser *p
break;
}
+ FOR_EACH_VEC_ELT (c_expr_t, cexpr_list, i, p)
+ mark_exp_read (p->value);
+
if (VEC_length (c_expr_t, cexpr_list) == 2)
expr.value =
c_build_vec_perm_expr
--- gcc/testsuite/gcc.dg/Wunused-var-3.c (revision 0)
+++ gcc/testsuite/gcc.dg/Wunused-var-3.c (revision 185355)
@@ -0,0 +1,34 @@
+/* PR c/52577 */
+/* { dg-do compile } */
+/* { dg-options "-Wunused" } */
+
+typedef int V __attribute__((vector_size (sizeof (int) * 4)));
+
+void
+f1 (V *p)
+{
+ V mask = { 1, 2, 3, 0 };
+ *p = __builtin_shuffle (*p, mask);
+}
+
+void
+f2 (V *p, V *q)
+{
+ V mask = { 1, 2, 3, 0 };
+ *p = __builtin_shuffle (*p, *q, mask);
+}
+
+void
+f3 (V *p, V *mask)
+{
+ V a = { 1, 2, 3, 0 };
+ *p = __builtin_shuffle (a, *mask);
+}
+
+void
+f4 (V *p, V *mask)
+{
+ V a = { 1, 2, 3, 0 };
+ V b = { 2, 3, 4, 1 };
+ *p = __builtin_shuffle (a, b, *mask);
+}

View File

@ -1,40 +0,0 @@
2012-03-13 Jakub Jelinek <jakub@redhat.com>
* config/i386/smmintrin.h: Avoid /* within a comment.
* config/i386/nmmintrin.h: Likewise.
--- gcc/config/i386/nmmintrin.h (revision 185351)
+++ gcc/config/i386/nmmintrin.h (revision 185352)
@@ -1,4 +1,4 @@
-/* Copyright (C) 2007, 2009 Free Software Foundation, Inc.
+/* Copyright (C) 2007, 2009, 2012 Free Software Foundation, Inc.
This file is part of GCC.
@@ -19,7 +19,7 @@
You should have received a copy of the GNU General Public License and
a copy of the GCC Runtime Library Exception along with this program;
see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
- <http://www.gnu.org/licenses/>.
+ <http://www.gnu.org/licenses/>. */
/* Implemented from the specification included in the Intel C++ Compiler
User Guide and Reference, version 10.0. */
--- gcc/config/i386/smmintrin.h (revision 185351)
+++ gcc/config/i386/smmintrin.h (revision 185352)
@@ -1,4 +1,4 @@
-/* Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
+/* Copyright (C) 2007, 2008, 2009, 2010, 2012 Free Software Foundation, Inc.
This file is part of GCC.
@@ -19,8 +19,7 @@
You should have received a copy of the GNU General Public License and
a copy of the GCC Runtime Library Exception along with this program;
see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
- <http://www.gnu.org/licenses/>.
-
+ <http://www.gnu.org/licenses/>. */
/* Implemented from the specification included in the Intel C++ Compiler
User Guide and Reference, version 10.0. */

View File

@ -1,2 +1,2 @@
2659f09c2e43ef8b7d4406321753f1b2 fastjar-0.97.tar.gz
91d390bd5b26040979fc417025d42684 gcc-4.7.0-20120315.tar.bz2
94a2e611439eddb196421be8dee7828e gcc-4.7.0-20120322.tar.bz2