4.9.1-2
This commit is contained in:
commit
87e4ffffc9
2
.gitignore
vendored
2
.gitignore
vendored
@ -15,3 +15,5 @@
|
||||
/gcc-4.9.0-20140619.tar.bz2
|
||||
/gcc-4.9.0-20140625.tar.bz2
|
||||
/gcc-4.9.0-20140702.tar.bz2
|
||||
/gcc-4.9.1-20140716.tar.bz2
|
||||
/gcc-4.9.1-20140717.tar.bz2
|
||||
|
37
gcc.spec
37
gcc.spec
@ -1,9 +1,9 @@
|
||||
%global DATE 20140702
|
||||
%global SVNREV 212237
|
||||
%global gcc_version 4.9.0
|
||||
%global DATE 20140717
|
||||
%global SVNREV 212747
|
||||
%global gcc_version 4.9.1
|
||||
# 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 15
|
||||
%global gcc_release 2
|
||||
%global _unpackaged_files_terminate_build 0
|
||||
%global _performance_build 1
|
||||
%global multilib_64_archs sparc64 ppc64 ppc64p7 s390x x86_64
|
||||
@ -52,7 +52,7 @@
|
||||
%else
|
||||
%global build_libatomic 0
|
||||
%endif
|
||||
%ifarch %{ix86} x86_64 %{arm} alpha ppc ppc64 ppc64le ppc64p7 s390 s390x
|
||||
%ifarch %{ix86} x86_64 %{arm} alpha ppc ppc64 ppc64le ppc64p7 s390 s390x aarch64
|
||||
%global build_libitm 1
|
||||
%else
|
||||
%global build_libitm 0
|
||||
@ -86,7 +86,7 @@ License: GPLv3+ and GPLv3+ with exceptions and GPLv2+ with exceptions and LGPLv2
|
||||
Group: Development/Languages
|
||||
# The source for this package was pulled from upstream's vcs. Use the
|
||||
# following commands to generate the tarball:
|
||||
# svn export svn://gcc.gnu.org/svn/gcc/branches/redhat/gcc-4_7-branch@%{SVNREV} gcc-%{version}-%{DATE}
|
||||
# svn export svn://gcc.gnu.org/svn/gcc/branches/redhat/gcc-4_9-branch@%{SVNREV} gcc-%{version}-%{DATE}
|
||||
# tar cf - gcc-%{version}-%{DATE} | bzip2 -9 > gcc-%{version}-%{DATE}.tar.bz2
|
||||
Source0: gcc-%{version}-%{DATE}.tar.bz2
|
||||
%global isl_version 0.12.2
|
||||
@ -196,7 +196,8 @@ Patch12: gcc49-no-add-needed.patch
|
||||
Patch14: gcc49-pr56493.patch
|
||||
Patch15: gcc49-color-auto.patch
|
||||
Patch16: gcc49-libgo-p224.patch
|
||||
Patch17: gcc49-pr61673.patch
|
||||
Patch17: gcc49-aarch64-async-unw-tables.patch
|
||||
Patch18: gcc49-aarch64-GNU_STACK.patch
|
||||
|
||||
Patch1100: cloog-%{cloog_version}-ppc64le-config.patch
|
||||
|
||||
@ -723,7 +724,8 @@ package or when debugging this package.
|
||||
%endif
|
||||
%patch16 -p0 -b .libgo-p224~
|
||||
rm -f libgo/go/crypto/elliptic/p224{,_test}.go
|
||||
%patch17 -p0 -b .pr61673~
|
||||
%patch17 -p0 -b .aarch64-async-unw-tables~
|
||||
%patch18 -p0 -b .aarch64-GNU_STACK~
|
||||
|
||||
%if 0%{?_enable_debug_packages}
|
||||
cat > split-debuginfo.sh <<\EOF
|
||||
@ -774,7 +776,7 @@ chmod 755 split-debuginfo.sh
|
||||
|
||||
%patch1100 -p0 -b .cloog-ppc64le-config~
|
||||
|
||||
sed -i -e 's/4\.9\.1/4.9.0/' gcc/BASE-VER
|
||||
sed -i -e 's/4\.9\.2/4.9.1/' gcc/BASE-VER
|
||||
echo 'Red Hat %{version}-%{gcc_release}' > gcc/DEV-PHASE
|
||||
|
||||
%if 0%{?fedora} >= 16 || 0%{?rhel} >= 7
|
||||
@ -2796,6 +2798,23 @@ fi
|
||||
%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_version}/plugin
|
||||
|
||||
%changelog
|
||||
* Thu Jul 17 2014 Jakub Jelinek <jakub@redhat.com> 4.9.1-2
|
||||
- update from the 4.9 branch
|
||||
- PRs c-family/61741, rtl-optimization/61801, target/61737,
|
||||
tree-optimization/61779
|
||||
|
||||
* Wed Jul 16 2014 Jakub Jelinek <jakub@redhat.com> 4.9.1-1
|
||||
- update from the 4.9 branch
|
||||
- GCC 4.9.1 release
|
||||
- PRs c++/58155, c++/58636, c++/61661, fortran/41936, fortran/58883,
|
||||
fortran/61459, libgfortran/61640, middle-end/53590,
|
||||
middle-end/61654, target/59843, target/61062, target/61544,
|
||||
tree-optimization/61680, tree-optimization/61681,
|
||||
tree-optimization/61684, tree-optimization/61725
|
||||
- enable libitm on aarch64
|
||||
- emit .note.GNU-stack on aarch64 (#1119885)
|
||||
- small -fsanitize=bounds fix from the trunk
|
||||
|
||||
* Sat Jul 12 2014 Tom Callaway <spot@fedoraproject.org> 4.9.0-15
|
||||
- fix license handling
|
||||
|
||||
|
13
gcc49-aarch64-GNU_STACK.patch
Normal file
13
gcc49-aarch64-GNU_STACK.patch
Normal file
@ -0,0 +1,13 @@
|
||||
2014-05-15 Kyle McMartin <kmcmarti@redhat.com>
|
||||
|
||||
* config/aarch64/aarch64-linux.h (TARGET_ASM_FILE_END): Define.
|
||||
|
||||
--- gcc/config/aarch64/aarch64-linux.h
|
||||
+++ gcc/config/aarch64/aarch64-linux.h
|
||||
@@ -44,4 +44,6 @@
|
||||
} \
|
||||
while (0)
|
||||
|
||||
+#define TARGET_ASM_FILE_END file_end_indicate_exec_stack
|
||||
+
|
||||
#endif /* GCC_AARCH64_LINUX_H */
|
35
gcc49-aarch64-async-unw-tables.patch
Normal file
35
gcc49-aarch64-async-unw-tables.patch
Normal file
@ -0,0 +1,35 @@
|
||||
2014-04-07 Richard Henderson <rth@redhat.com>
|
||||
|
||||
* common/config/aarch64/aarch64-common.c (TARGET_OPTION_INIT_STRUCT):
|
||||
Define.
|
||||
(aarch64_option_init_struct): New function.
|
||||
|
||||
--- gcc/common/config/aarch64/aarch64-common.c
|
||||
+++ gcc/common/config/aarch64/aarch64-common.c
|
||||
@@ -39,6 +39,9 @@
|
||||
#undef TARGET_OPTION_OPTIMIZATION_TABLE
|
||||
#define TARGET_OPTION_OPTIMIZATION_TABLE aarch_option_optimization_table
|
||||
|
||||
+#undef TARGET_OPTION_INIT_STRUCT
|
||||
+#define TARGET_OPTION_INIT_STRUCT aarch64_option_init_struct
|
||||
+
|
||||
/* Set default optimization options. */
|
||||
static const struct default_options aarch_option_optimization_table[] =
|
||||
{
|
||||
@@ -47,6 +50,16 @@ static const struct default_options aarch_option_optimization_table[] =
|
||||
{ OPT_LEVELS_NONE, 0, NULL, 0 }
|
||||
};
|
||||
|
||||
+/* Implement TARGET_OPTION_INIT_STRUCT. */
|
||||
+
|
||||
+static void
|
||||
+aarch64_option_init_struct (struct gcc_options *opts)
|
||||
+{
|
||||
+ /* By default, always emit DWARF-2 unwind info. This allows debugging
|
||||
+ without maintaining a stack frame back-chain. */
|
||||
+ opts->x_flag_asynchronous_unwind_tables = 1;
|
||||
+}
|
||||
+
|
||||
/* Implement TARGET_HANDLE_OPTION.
|
||||
This function handles the target specific options for CPU/target selection.
|
||||
|
@ -4,7 +4,7 @@
|
||||
<a class="link" href="http://www.fsf.org/" target="_top">FSF
|
||||
</a>
|
||||
</p><p>
|
||||
+ Release 4.9.0
|
||||
+ Release 4.9.1
|
||||
+ </p><p>
|
||||
Permission is granted to copy, distribute and/or modify this
|
||||
document under the terms of the GNU Free Documentation
|
||||
@ -18,7 +18,7 @@
|
||||
- The API documentation, rendered into HTML, can be viewed online:
|
||||
+ The API documentation, rendered into HTML, can be viewed here:
|
||||
</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
|
||||
+ <a class="link" href="api/index.html" target="_top">for the 4.9.0 release, local
|
||||
+ <a class="link" href="api/index.html" target="_top">for the 4.9.1 release, local
|
||||
+ </a>
|
||||
+ </p></li><li class="listitem"><p>
|
||||
<a class="link" href="http://gcc.gnu.org/onlinedocs/libstdc++/libstdc++-html-USERS-3.4/index.html" target="_top">for the 3.4 release
|
||||
|
@ -1,72 +0,0 @@
|
||||
2014-07-02 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
PR rtl-optimization/61673
|
||||
* combine.c (simplify_comparison): Test just mode's sign bit
|
||||
in tmode rather than the sign bit and any bits above it.
|
||||
|
||||
* gcc.c-torture/execute/pr61673.c: New test.
|
||||
|
||||
--- gcc/combine.c.jj 2014-03-28 20:49:52.892077022 +0100
|
||||
+++ gcc/combine.c 2014-07-02 16:56:02.260456040 +0200
|
||||
@@ -11987,7 +11987,7 @@ simplify_comparison (enum rtx_code code,
|
||||
= (unsigned HOST_WIDE_INT) 1 << (GET_MODE_BITSIZE (mode) - 1);
|
||||
op0 = simplify_gen_binary (AND, tmode,
|
||||
gen_lowpart (tmode, op0),
|
||||
- gen_int_mode (sign, mode));
|
||||
+ gen_int_mode (sign, tmode));
|
||||
code = (code == LT) ? NE : EQ;
|
||||
break;
|
||||
}
|
||||
--- gcc/testsuite/gcc.c-torture/execute/pr61673.c.jj 2014-07-02 17:17:01.398908630 +0200
|
||||
+++ gcc/testsuite/gcc.c-torture/execute/pr61673.c 2014-07-02 17:12:36.000000000 +0200
|
||||
@@ -0,0 +1,50 @@
|
||||
+/* PR rtl-optimization/61673 */
|
||||
+
|
||||
+char e;
|
||||
+
|
||||
+__attribute__((noinline, noclone)) void
|
||||
+bar (char x)
|
||||
+{
|
||||
+ if (x != 0x54 && x != (char) 0x87)
|
||||
+ __builtin_abort ();
|
||||
+}
|
||||
+
|
||||
+__attribute__((noinline, noclone)) void
|
||||
+foo (const char *x)
|
||||
+{
|
||||
+ char d = x[0];
|
||||
+ int c = d;
|
||||
+ if ((c >= 0 && c <= 0x7f) == 0)
|
||||
+ e = d;
|
||||
+ bar (d);
|
||||
+}
|
||||
+
|
||||
+__attribute__((noinline, noclone)) void
|
||||
+baz (const char *x)
|
||||
+{
|
||||
+ char d = x[0];
|
||||
+ int c = d;
|
||||
+ if ((c >= 0 && c <= 0x7f) == 0)
|
||||
+ e = d;
|
||||
+}
|
||||
+
|
||||
+int
|
||||
+main ()
|
||||
+{
|
||||
+ const char c[] = { 0x54, 0x87 };
|
||||
+ e = 0x21;
|
||||
+ foo (c);
|
||||
+ if (e != 0x21)
|
||||
+ __builtin_abort ();
|
||||
+ foo (c + 1);
|
||||
+ if (e != 0x87)
|
||||
+ __builtin_abort ();
|
||||
+ e = 0x21;
|
||||
+ baz (c);
|
||||
+ if (e != 0x21)
|
||||
+ __builtin_abort ();
|
||||
+ baz (c + 1);
|
||||
+ if (e != 0x87)
|
||||
+ __builtin_abort ();
|
||||
+ return 0;
|
||||
+}
|
Loading…
Reference in New Issue
Block a user