summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--debian/changelog9
-rw-r--r--debian/control1
-rw-r--r--debian/control.m41
-rw-r--r--debian/patches/pr61126.diff51
-rw-r--r--debian/patches/svn-updates.diff646
-rw-r--r--debian/rules.patch3
6 files changed, 678 insertions, 33 deletions
diff --git a/debian/changelog b/debian/changelog
index e40680a..c36e1df 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,6 +1,6 @@
-gcc-4.9 (4.9.0-3) UNRELEASED; urgency=medium
+gcc-4.9 (4.9.0-3) unstable; urgency=medium
- * Update to SVN 20140508 (r210210) from the gcc-4_9-branch.
+ * Update to SVN 20140512 (r210323) from the gcc-4_9-branch.
[ Matthias Klose ]
* Update build dependencies for ada enabled snapshot builds.
@@ -14,12 +14,13 @@ gcc-4.9 (4.9.0-3) UNRELEASED; urgency=medium
with_deps_on_target_arch_pkgs=yes (Helmit Grohne). Closes: #716795.
* Build the gcc-X.Y-base package with with_deps_on_target_arch_pkgs=yes
(Helmit Grohne). Addresses: #744782.
- * Apply the proposed patch for PR driver/61106. Closes: #747345.
+ * Apply the proposed patches for PR driver/61106, PR driver/61126.
+ Closes: #747345.
[ Aurelien Jarno ]
* Fix libasan1 symbols file for sparc and sparc64.
- -- Matthias Klose <doko@debian.org> Thu, 08 May 2014 14:30:02 +0200
+ -- Matthias Klose <doko@debian.org> Tue, 13 May 2014 02:15:27 +0200
gcc-4.9 (4.9.0-2) unstable; urgency=medium
diff --git a/debian/control b/debian/control
index 99cc79d..44e54e7 100644
--- a/debian/control
+++ b/debian/control
@@ -12,6 +12,7 @@ Build-Depends: debhelper (>= 5.0.62), g++-multilib [amd64 i386 kfreebsd-amd64 mi
autogen, zlib1g-dev, gawk, lzma, xz-utils, patchutils,
binutils (>= 2.23.52) | binutils-multiarch (>= 2.23.52), binutils-hppa64 (>= 2.23.52) [hppa],
gperf (>= 3.0.1), bison (>= 1:2.3), flex, gettext,
+ gdb (>= 7.6.2-1.1),
texinfo (>= 4.3), locales, sharutils,
procps, zlib1g-dev, libantlr-java, python, libffi-dev, fastjar, libmagic-dev, libecj-java (>= 3.3.0-2), zip, libasound2-dev [ !hurd-any !kfreebsd-any], libxtst-dev, libxt-dev, libgtk2.0-dev (>= 2.4.4-2), libart-2.0-dev, libcairo2-dev, netbase,
libcloog-isl-dev (>= 0.18), libmpc-dev (>= 1.0), libmpfr-dev (>= 3.0.0-9~), libgmp-dev (>= 2:5.0.1~),
diff --git a/debian/control.m4 b/debian/control.m4
index 9537ecb..2deb57f 100644
--- a/debian/control.m4
+++ b/debian/control.m4
@@ -70,6 +70,7 @@ Build-Depends: debhelper (>= 5.0.62), GCC_MULTILIB_BUILD_DEP
autogen, zlib1g-dev, gawk, lzma, xz-utils, patchutils,
BINUTILS_BUILD_DEP, binutils-hppa64 (>= BINUTILSBDV) [hppa],
gperf (>= 3.0.1), bison (>= 1:2.3), flex, gettext,
+ gdb (>= 7.6.2-1.1),
texinfo (>= 4.3), locales, sharutils,
procps, FORTRAN_BUILD_DEP JAVA_BUILD_DEP GNAT_BUILD_DEP GO_BUILD_DEP GDC_BUILD_DEP
CLOOG_BUILD_DEP MPC_BUILD_DEP MPFR_BUILD_DEP GMP_BUILD_DEP
diff --git a/debian/patches/pr61126.diff b/debian/patches/pr61126.diff
new file mode 100644
index 0000000..2c9aeb9
--- /dev/null
+++ b/debian/patches/pr61126.diff
@@ -0,0 +1,51 @@
+Index: gcc/fortran/lang.opt
+===================================================================
+--- a/src/gcc/fortran/lang.opt (revision 210277)
++++ b/src/gcc/fortran/lang.opt (working copy)
+@@ -301,6 +301,10 @@
+ Fortran Warning
+ Warn about unused dummy arguments.
+
++Wunused-parameter
++LangEnabledBy(Fortran,Wextra)
++; Documented in common.opt
++
+ Wzerotrip
+ Fortran Warning
+ Warn about zero-trip DO loops
+Index: gcc/fortran/options.c
+===================================================================
+--- a/src/gcc/fortran/options.c (revision 210277)
++++ b/src/gcc/fortran/options.c (working copy)
+@@ -674,12 +674,7 @@
+ break;
+
+ case OPT_Wextra:
+- handle_generated_option (&global_options, &global_options_set,
+- OPT_Wunused_parameter, NULL, value,
+- gfc_option_lang_mask (), kind, loc,
+- handlers, global_dc);
+ set_Wextra (value);
+-
+ break;
+
+ case OPT_Wfunction_elimination:
+Index: gcc/opts-global.c
+===================================================================
+--- a/src/gcc/opts-global.c (revision 210277)
++++ b/src/gcc/opts-global.c (working copy)
+@@ -273,10 +273,10 @@
+ handlers->unknown_option_callback = unknown_option_callback;
+ handlers->wrong_lang_callback = complain_wrong_lang;
+ handlers->num_handlers = 3;
+- handlers->handlers[0].handler = lang_handle_option;
+- handlers->handlers[0].mask = initial_lang_mask;
+- handlers->handlers[1].handler = common_handle_option;
+- handlers->handlers[1].mask = CL_COMMON;
++ handlers->handlers[0].handler = common_handle_option;
++ handlers->handlers[0].mask = CL_COMMON;
++ handlers->handlers[1].handler = lang_handle_option;
++ handlers->handlers[1].mask = initial_lang_mask;
+ handlers->handlers[2].handler = target_handle_option;
+ handlers->handlers[2].mask = CL_TARGET;
+ }
diff --git a/debian/patches/svn-updates.diff b/debian/patches/svn-updates.diff
index 72493c7..925905d 100644
--- a/debian/patches/svn-updates.diff
+++ b/debian/patches/svn-updates.diff
@@ -1,10 +1,10 @@
-# DP: updates from the 4.9 branch upto 20140508 (r210210).
+# DP: updates from the 4.9 branch upto 20140508 (r210323).
last_updated()
{
cat > ${dir}LAST_UPDATED <<EOF
-Thu May 8 14:23:10 CEST 2014
-Thu May 8 12:23:10 UTC 2014 (revision 210210)
+Mon May 12 11:40:03 CEST 2014
+Mon May 12 09:40:03 UTC 2014 (revision 210323)
EOF
}
@@ -748,6 +748,45 @@ Index: libstdc++-v3/python/libstdcxx/v6/printers.py
# FIXME: this is weird ... what to do?
# Maybe a 'set' display hint?
result = ('[%d]' % self.count, item)
+Index: libstdc++-v3/src/c++98/ios_init.cc
+===================================================================
+--- a/src/libstdc++-v3/src/c++98/ios_init.cc (.../tags/gcc_4_9_0_release)
++++ b/src/libstdc++-v3/src/c++98/ios_init.cc (.../branches/gcc-4_9-branch)
+@@ -37,7 +37,7 @@
+ {
+ using namespace __gnu_cxx;
+
+- // Extern declarations for global objects in src/globals.cc.
++ // Extern declarations for global objects in src/c++98/globals.cc.
+ extern stdio_sync_filebuf<char> buf_cout_sync;
+ extern stdio_sync_filebuf<char> buf_cin_sync;
+ extern stdio_sync_filebuf<char> buf_cerr_sync;
+Index: libstdc++-v3/doc/xml/faq.xml
+===================================================================
+--- a/src/libstdc++-v3/doc/xml/faq.xml (.../tags/gcc_4_9_0_release)
++++ b/src/libstdc++-v3/doc/xml/faq.xml (.../branches/gcc-4_9-branch)
+@@ -241,7 +241,7 @@
+ </question>
+ <answer xml:id="a-license.what_restrictions">
+ <para>
+- None. We encourage such programs to be released as open source,
++ None. We encourage such programs to be released as free software,
+ but we won't punish you or sue you if you choose otherwise.
+ </para>
+ </answer>
+Index: libstdc++-v3/doc/html/faq.html
+===================================================================
+--- a/src/libstdc++-v3/doc/html/faq.html (.../tags/gcc_4_9_0_release)
++++ b/src/libstdc++-v3/doc/html/faq.html (.../branches/gcc-4_9-branch)
+@@ -223,7 +223,7 @@
+ </p></td></tr><tr class="question"><td align="left" valign="top"><a id="faq.license.what_restrictions"></a><a id="q-license.what_restrictions"></a><p><strong>2.4.</strong></p></td><td align="left" valign="top"><p>
+ I see. So, what restrictions are there on programs that use the library?
+ </p></td></tr><tr class="answer"><td align="left" valign="top"><a id="a-license.what_restrictions"></a></td><td align="left" valign="top"><p>
+- None. We encourage such programs to be released as open source,
++ None. We encourage such programs to be released as free software,
+ but we won't punish you or sue you if you choose otherwise.
+ </p></td></tr><tr class="toc"><td align="left" valign="top" colspan="2"><dl><dt>3.1. <a href="faq.html#faq.how_to_install">How do I install libstdc++?
+ </a></dt><dt>3.2. <a href="faq.html#faq.how_to_get_sources">How does one get current libstdc++ sources?
Index: libstdc++-v3/include/debug/vector
===================================================================
--- a/src/libstdc++-v3/include/debug/vector (.../tags/gcc_4_9_0_release)
@@ -761,6 +800,27 @@ Index: libstdc++-v3/include/debug/vector
#else
return __first;
#endif
+Index: libstdc++-v3/include/std/iostream
+===================================================================
+--- a/src/libstdc++-v3/include/std/iostream (.../tags/gcc_4_9_0_release)
++++ b/src/libstdc++-v3/include/std/iostream (.../branches/gcc-4_9-branch)
+@@ -48,13 +48,13 @@
+ *
+ * The &lt;iostream&gt; header declares the eight <em>standard stream
+ * objects</em>. For other declarations, see
+- * http://gcc.gnu.org/onlinedocs/libstdc++/manual/bk01pt11ch24.html
++ * http://gcc.gnu.org/onlinedocs/libstdc++/manual/io.html
+ * and the @link iosfwd I/O forward declarations @endlink
+ *
+ * They are required by default to cooperate with the global C
+ * library's @c FILE streams, and to be available during program
+- * startup and termination. For more information, see the HOWTO
+- * linked to above.
++ * startup and termination. For more information, see the section of the
++ * manual linked to above.
+ */
+ //@{
+ extern istream cin; /// Linked to standard input
Index: libstdc++-v3/include/std/tuple
===================================================================
--- a/src/libstdc++-v3/include/std/tuple (.../tags/gcc_4_9_0_release)
@@ -1005,7 +1065,19 @@ Index: libstdc++-v3/ChangeLog
===================================================================
--- a/src/libstdc++-v3/ChangeLog (.../tags/gcc_4_9_0_release)
+++ b/src/libstdc++-v3/ChangeLog (.../branches/gcc-4_9-branch)
-@@ -1,3 +1,74 @@
+@@ -1,3 +1,86 @@
++2014-05-08 Joshua Gay <jgay@gnu.org>
++
++ PR libstdc++/61117
++ * doc/xml/faq.xml (faq.license.what_restrictions): Replace "open
++ source" with "free software".
++ * doc/html/faq.html: Likewise.
++
++2014-05-08 Jonathan Wakely <jwakely@redhat.com>
++
++ * include/std/iostream: Fix URL in comment.
++ * src/c++98/ios_init.cc: Fix path in comment.
++
+2014-05-07 Jonathan Wakely <jwakely@redhat.com>
+
+ PR libstdc++/61023
@@ -1558,6 +1630,76 @@ Index: libstdc++-v3/testsuite/20_util/function/60594.cc
+ F g{ &func };
+ g = func;
+}
+Index: libbacktrace/ChangeLog
+===================================================================
+--- a/src/libbacktrace/ChangeLog (.../tags/gcc_4_9_0_release)
++++ b/src/libbacktrace/ChangeLog (.../branches/gcc-4_9-branch)
+@@ -1,3 +1,12 @@
++2014-05-08 Ian Lance Taylor <iant@google.com>
++
++ Backport from mainline:
++ * mmap.c (backtrace_free): If freeing a large aligned block of
++ memory, call munmap rather than holding onto it.
++ (backtrace_vector_grow): When growing a vector, double the number
++ of pages requested. When releasing the old version of a grown
++ vector, pass the correct size to backtrace_free.
++
+ 2014-04-22 Release Manager
+
+ * GCC 4.9.0 released.
+Index: libbacktrace/mmap.c
+===================================================================
+--- a/src/libbacktrace/mmap.c (.../tags/gcc_4_9_0_release)
++++ b/src/libbacktrace/mmap.c (.../branches/gcc-4_9-branch)
+@@ -164,6 +164,26 @@
+ {
+ int locked;
+
++ /* If we are freeing a large aligned block, just release it back to
++ the system. This case arises when growing a vector for a large
++ binary with lots of debug info. Calling munmap here may cause us
++ to call mmap again if there is also a large shared library; we
++ just live with that. */
++ if (size >= 16 * 4096)
++ {
++ size_t pagesize;
++
++ pagesize = getpagesize ();
++ if (((uintptr_t) addr & (pagesize - 1)) == 0
++ && (size & (pagesize - 1)) == 0)
++ {
++ /* If munmap fails for some reason, just add the block to
++ the freelist. */
++ if (munmap (addr, size) == 0)
++ return;
++ }
++ }
++
+ /* If we can acquire the lock, add the new space to the free list.
+ If we can't acquire the lock, just leak the memory.
+ __sync_lock_test_and_set returns the old state of the lock, so we
+@@ -209,7 +229,10 @@
+ alc = pagesize;
+ }
+ else
+- alc = (alc + pagesize - 1) & ~ (pagesize - 1);
++ {
++ alc *= 2;
++ alc = (alc + pagesize - 1) & ~ (pagesize - 1);
++ }
+ base = backtrace_alloc (state, alc, error_callback, data);
+ if (base == NULL)
+ return NULL;
+@@ -216,7 +239,8 @@
+ if (vec->base != NULL)
+ {
+ memcpy (base, vec->base, vec->size);
+- backtrace_free (state, vec->base, vec->alc, error_callback, data);
++ backtrace_free (state, vec->base, vec->size + vec->alc,
++ error_callback, data);
+ }
+ vec->base = base;
+ vec->alc = alc - vec->size;
Index: libgcc/ChangeLog
===================================================================
--- a/src/libgcc/ChangeLog (.../tags/gcc_4_9_0_release)
@@ -1824,7 +1966,7 @@ Index: gcc/DATESTAMP
+++ b/src/gcc/DATESTAMP (.../branches/gcc-4_9-branch)
@@ -1 +1 @@
-20140422
-+20140508
++20140512
Index: gcc/tree-tailcall.c
===================================================================
--- a/src/gcc/tree-tailcall.c (.../tags/gcc_4_9_0_release)
@@ -2132,7 +2274,50 @@ Index: gcc/ChangeLog
===================================================================
--- a/src/gcc/ChangeLog (.../tags/gcc_4_9_0_release)
+++ b/src/gcc/ChangeLog (.../branches/gcc-4_9-branch)
-@@ -1,3 +1,503 @@
+@@ -1,3 +1,546 @@
++2014-05-09 Uros Bizjak <ubizjak@gmail.com>
++
++ Backport from mainline
++ 2014-05-08 Uros Bizjak <ubizjak@gmail.com>
++
++ PR target/61092
++ * config/alpha/alpha.c: Include gimple-iterator.h.
++ (alpha_gimple_fold_builtin): New function. Move
++ ALPHA_BUILTIN_UMULH folding from ...
++ (alpha_fold_builtin): ... here.
++ (TARGET_GIMPLE_FOLD_BUILTIN): New define.
++
++2014-05-09 Pitchumani Sivanupandi <Pitchumani.S@atmel.com>
++
++ Backport from 2014-04-16 trunk r209446
++ 2014-04-16 Pitchumani Sivanupandi <Pitchumani.S@atmel.com>
++
++ * config/avr/avr-mcus.def: Correct typo for atxmega256a3bu macro.
++
++2014-05-09 Georg-Johann Lay <avr@gjlay.de>
++
++ Backport from 2014-05-09 trunk r210267
++
++ PR target/61055
++ * config/avr/avr.md (cc): Add new attribute set_vzn.
++ (addqi3, addqq3, adduqq3, subqi3, subqq3, subuqq3, negqi2) [cc]:
++ Set cc insn attribute to set_vzn instead of set_zn for alternatives
++ with INC, DEC or NEG.
++ * config/avr/avr.c (avr_notice_update_cc): Handle SET_VZN.
++ (avr_out_plus_1): ADIW sets cc0 to CC_SET_CZN.
++ INC, DEC and ADD+ADC set cc0 to CC_CLOBBER.
++
++2014-05-08 Manuel López-Ibáñez <manu@gcc.gnu.org>
++ Matthias Klose <doko@ubuntu.com>
++
++ PR driver/61106
++ * optc-gen.awk: Fix option handling for -Wunused-parameter.
++
++2014-05-08 Uros Bizjak <ubizjak@gmail.com>
++
++ PR target/59952
++ * config/i386/i386.c (PTA_HASWELL): Remove PTA_RTM.
++
+2014-05-05 Marek Polacek <polacek@redhat.com>
+
+ Back port from mainline
@@ -2636,7 +2821,7 @@ Index: gcc/ChangeLog
2014-04-22 Release Manager
* GCC 4.9.0 released.
-@@ -59,8 +564,7 @@
+@@ -59,8 +607,7 @@
2014-04-11 Tobias Burnus <burnus@net-b.de>
PR other/59055
@@ -2646,7 +2831,7 @@ Index: gcc/ChangeLog
* doc/gcc.texi (Service): Update description in the @menu
* doc/invoke.texi (Option Summary): Remove misplaced and
duplicated @menu.
-@@ -86,15 +590,14 @@
+@@ -86,15 +633,14 @@
2014-04-11 Jakub Jelinek <jakub@redhat.com>
PR rtl-optimization/60663
@@ -2665,7 +2850,7 @@ Index: gcc/ChangeLog
2014-04-10 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
-@@ -212,9 +715,10 @@
+@@ -212,9 +758,10 @@
2014-04-05 Pitchumani Sivanupandi <Pitchumani.S@atmel.com>
@@ -2679,7 +2864,7 @@ Index: gcc/ChangeLog
* config/avr/avr-c.c (avr_cpu_cpp_builtins): use dev_attribute to check
errata_skip. Add __AVR_ISA_RMW__ builtin macro if RMW ISA available.
* config/avr/avr-devices.c (avr_mcu_types): Update AVR_MCU macro for
-@@ -282,21 +786,21 @@
+@@ -282,21 +829,21 @@
2014-04-04 Martin Jambor <mjambor@suse.cz>
PR ipa/60640
@@ -2712,7 +2897,7 @@ Index: gcc/ChangeLog
moved setting of a lot of flags to set_new_clone_decl_and_node_flags.
2014-04-04 Jeff Law <law@redhat.com>
-@@ -334,8 +838,8 @@
+@@ -334,8 +881,8 @@
PR tree-optimization/60505
* tree-vectorizer.h (struct _stmt_vec_info): Add th field as the
@@ -2723,7 +2908,7 @@ Index: gcc/ChangeLog
* tree-vect-loop.c (new_loop_vec_info):
Initialize LOOP_VINFO_COST_MODEL_THRESHOLD.
* tree-vect-loop.c (vect_analyze_loop_operations):
-@@ -347,8 +851,7 @@
+@@ -347,8 +894,7 @@
2014-04-03 Richard Biener <rguenther@suse.de>
@@ -2733,7 +2918,7 @@ Index: gcc/ChangeLog
(streamer_tree_cache_create): Adjust.
* tree-streamer.c (streamer_tree_cache_add_to_node_array): Adjust
to allow optional nodes array.
-@@ -359,8 +862,7 @@
+@@ -359,8 +905,7 @@
* lto-streamer-out.c (create_output_block): Avoid maintaining
the node array in the writer cache.
(DFS_write_tree): Remove assertion.
@@ -2743,7 +2928,7 @@ Index: gcc/ChangeLog
* lto-streamer-in.c (lto_data_in_create): Adjust for
streamer_tree_cache_create prototype change.
-@@ -381,24 +883,6 @@
+@@ -381,24 +926,6 @@
(Weffc++): Remove Scott's numbering, merge lists and reference
Wnon-virtual-dtor.
@@ -2768,7 +2953,7 @@ Index: gcc/ChangeLog
2014-04-03 Nick Clifton <nickc@redhat.com>
* config/rl78/rl78-expand.md (movqi): Handle (SUBREG (SYMBOL_REF))
-@@ -414,8 +898,8 @@
+@@ -414,8 +941,8 @@
2014-04-02 Jan Hubicka <hubicka@ucw.cz>
PR ipa/60659
@@ -2779,7 +2964,7 @@ Index: gcc/ChangeLog
(possible_polymorphic_call_targets): For inconsistent contexts
return empty complete list.
-@@ -519,8 +1003,7 @@
+@@ -519,8 +1046,7 @@
2014-04-01 Richard Biener <rguenther@suse.de>
@@ -3650,6 +3835,99 @@ Index: gcc/testsuite/gcc.target/powerpc/ti_math2.c
+ return 0;
+}
+
+Index: gcc/testsuite/gcc.target/avr/torture/pr61055.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.target/avr/torture/pr61055.c (.../tags/gcc_4_9_0_release)
++++ b/src/gcc/testsuite/gcc.target/avr/torture/pr61055.c (.../branches/gcc-4_9-branch)
+@@ -0,0 +1,88 @@
++/* { dg-do run } */
++/* { dg-options { -fno-peephole2 } } */
++
++#include <stdlib.h>
++
++typedef __UINT16_TYPE__ uint16_t;
++typedef __INT16_TYPE__ int16_t;
++typedef __UINT8_TYPE__ uint8_t;
++
++uint8_t __attribute__((noinline,noclone))
++fun_inc (uint8_t c0)
++{
++ register uint8_t c asm ("r15") = c0;
++
++ /* Force target value into R15 (lower register) */
++ asm ("" : "+l" (c));
++
++ c++;
++ if (c >= 0x80)
++ c = 0;
++
++ asm ("" : "+l" (c));
++
++ return c;
++}
++
++uint8_t __attribute__((noinline,noclone))
++fun_dec (uint8_t c0)
++{
++ register uint8_t c asm ("r15") = c0;
++
++ /* Force target value into R15 (lower register) */
++ asm ("" : "+l" (c));
++
++ c--;
++ if (c < 0x80)
++ c = 0;
++
++ asm ("" : "+l" (c));
++
++ return c;
++}
++
++
++uint8_t __attribute__((noinline,noclone))
++fun_neg (uint8_t c0)
++{
++ register uint8_t c asm ("r15") = c0;
++
++ c = -c;
++ if (c >= 0x80)
++ c = 0;
++
++ return c;
++}
++
++uint16_t __attribute__((noinline,noclone))
++fun_adiw (uint16_t c0)
++{
++ register uint16_t c asm ("r24") = c0;
++
++ /* Force target value into R24 (for ADIW) */
++ asm ("" : "+r" (c));
++
++ c += 2;
++ if (c >= 0x8000)
++ c = 0;
++
++ asm ("" : "+r" (c));
++
++ return c;
++}
++
++
++int main()
++{
++ if (fun_inc (0x7f) != 0)
++ abort();
++
++ if (fun_neg (0x80) != 0)
++ abort();
++
++ if (fun_adiw (0x7ffe) != 0)
++ abort();
++
++ exit (0);
++ return 0;
++}
Index: gcc/testsuite/gcc.target/i386/vec-may_alias.c
===================================================================
--- a/src/gcc/testsuite/gcc.target/i386/vec-may_alias.c (.../tags/gcc_4_9_0_release)
@@ -3806,6 +4084,24 @@ Index: gcc/testsuite/gfortran.dg/finalize_25.f90
+ i=s
+ end subroutine ndm2
+end program main
+Index: gcc/testsuite/gfortran.dg/list_read_13.f
+===================================================================
+--- a/src/gcc/testsuite/gfortran.dg/list_read_13.f (.../tags/gcc_4_9_0_release)
++++ b/src/gcc/testsuite/gfortran.dg/list_read_13.f (.../branches/gcc-4_9-branch)
+@@ -0,0 +1,13 @@
++c { dg-do run }
++c PR61049, reduced test case by Dominique d'Humieres
++ character(len=30) :: buff = ", (2.0, 3.0),,6.0D0, 2*,"
++ DOUBLE PRECISION AVD, BVD, CVD, DVCORR
++ COMPLEX AVC, BVC, CVC, ZVCORR
++
++ read(buff, *, err=10) AVD, AVC, BVC, BVD, CVC, CVD
++ goto 20
++ 10 call abort
++ 20 continue
++ end
++
++
Index: gcc/testsuite/gcc.c-torture/execute/20140425-1.c
===================================================================
--- a/src/gcc/testsuite/gcc.c-torture/execute/20140425-1.c (.../tags/gcc_4_9_0_release)
@@ -4004,6 +4300,15 @@ Index: gcc/testsuite/gcc.dg/vmx/merge-vsx.c
+ check (vec_all_eq (vfh, vfrh), "vfh");
+ check (vec_all_eq (vfl, vfrl), "vfl");
}
+Index: gcc/testsuite/gcc.dg/unused-8a.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.dg/unused-8a.c (.../tags/gcc_4_9_0_release)
++++ b/src/gcc/testsuite/gcc.dg/unused-8a.c (.../branches/gcc-4_9-branch)
+@@ -0,0 +1,4 @@
++/* { dg-do compile } */
++/* { dg-options "-Wall -Wextra -Wno-unused" } */
++
++void foo(int x) { }
Index: gcc/testsuite/gcc.dg/graphite/pr55022.c
===================================================================
--- a/src/gcc/testsuite/gcc.dg/graphite/pr55022.c (.../tags/gcc_4_9_0_release)
@@ -4253,6 +4558,15 @@ Index: gcc/testsuite/gcc.dg/torture/pr57864.c
+{
+ fn1 (0, 0, 0);
+}
+Index: gcc/testsuite/gcc.dg/unused-8b.c
+===================================================================
+--- a/src/gcc/testsuite/gcc.dg/unused-8b.c (.../tags/gcc_4_9_0_release)
++++ b/src/gcc/testsuite/gcc.dg/unused-8b.c (.../branches/gcc-4_9-branch)
+@@ -0,0 +1,4 @@
++/* { dg-do compile } */
++/* { dg-options "-Wall -Wno-unused -Wextra" } */
++
++void foo(int x) { }
Index: gcc/testsuite/gcc.dg/tree-ssa/alias-30.c
===================================================================
--- a/src/gcc/testsuite/gcc.dg/tree-ssa/alias-30.c (.../tags/gcc_4_9_0_release)
@@ -4487,7 +4801,26 @@ Index: gcc/testsuite/ChangeLog
===================================================================
--- a/src/gcc/testsuite/ChangeLog (.../tags/gcc_4_9_0_release)
+++ b/src/gcc/testsuite/ChangeLog (.../branches/gcc-4_9-branch)
-@@ -1,3 +1,238 @@
+@@ -1,3 +1,257 @@
++2014-05-10 Jerry DeLisle <jvdelisle@gcc.gnu>
++
++ Backport from trunk.
++ PR libfortran/61049
++ * gfortran.dg/list_read_13.f: New test.
++
++2014-05-09 Georg-Johann Lay <avr@gjlay.de>
++
++ Backport from 2014-05-09 trunk r210267
++
++ PR target/61055
++ * gcc.target/avr/torture/pr61055.c: New test.
++
++2014-05-08 Matthias Klose <doko@ubuntu.com>
++
++ PR driver/61106
++ * gcc-dg/unused-8a.c: New.
++ * gcc-dg/unused-8b.c: Likewise.
++
+2014-05-07 Paolo Carlini <paolo.carlini@oracle.com>
+
+ PR c++/61083
@@ -4726,7 +5059,7 @@ Index: gcc/testsuite/ChangeLog
2014-04-22 Release Manager
* GCC 4.9.0 released.
-@@ -51,7 +286,7 @@
+@@ -51,7 +305,7 @@
2014-04-12 Jerry DeLisle <jvdelisle@gcc.gnu>
PR libfortran/60810
@@ -4735,7 +5068,7 @@ Index: gcc/testsuite/ChangeLog
2014-04-11 Steve Ellcey <sellcey@mips.com>
Jakub Jelinek <jakub@redhat.com>
-@@ -135,8 +370,7 @@
+@@ -135,8 +389,7 @@
2014-04-08 Jason Merrill <jason@redhat.com>
@@ -4745,7 +5078,7 @@ Index: gcc/testsuite/ChangeLog
2014-04-08 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
-@@ -256,10 +490,10 @@
+@@ -256,10 +509,10 @@
2014-04-04 Martin Jambor <mjambor@suse.cz>
PR ipa/60640
@@ -4760,7 +5093,7 @@ Index: gcc/testsuite/ChangeLog
2014-04-04 Jeff Law <law@redhat.com>
-@@ -371,7 +605,7 @@
+@@ -371,7 +624,7 @@
2014-04-01 Fabien Chêne <fabien@gcc.gnu.org>
@@ -4769,7 +5102,7 @@ Index: gcc/testsuite/ChangeLog
* g++.dg/init/ctor4-1.C: New.
* g++.dg/cpp0x/defaulted2.C: Adjust.
-@@ -459,8 +693,8 @@
+@@ -459,8 +712,8 @@
2014-03-27 Jeff Law <law@redhat.com>
@@ -4780,7 +5113,7 @@ Index: gcc/testsuite/ChangeLog
2014-03-28 Adam Butcher <adam@jessamine.co.uk>
-@@ -493,14 +727,13 @@
+@@ -493,14 +746,13 @@
2014-03-28 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
@@ -4798,7 +5131,7 @@ Index: gcc/testsuite/ChangeLog
of second source operand.
* gcc.target/i386/avx512f-vshuff64x2-2.c: Ditto.
* gcc.target/i386/avx512f-vshufi32x4-2.c: Ditto.
-@@ -635,8 +868,8 @@
+@@ -635,8 +887,8 @@
2014-03-24 Marek Polacek <polacek@redhat.com>
@@ -4809,7 +5142,7 @@ Index: gcc/testsuite/ChangeLog
* c-c++-common/ubsan/overflow-1.c: Check for unwanted output.
* c-c++-common/ubsan/overflow-add-1.c: Likewise.
* c-c++-common/ubsan/overflow-mul-1.c: Likewise.
-@@ -721,8 +954,7 @@
+@@ -721,8 +973,7 @@
2014-03-21 Tobias Burnus <burnus@net-b.de>
PR fortran/60599
@@ -4819,7 +5152,7 @@ Index: gcc/testsuite/ChangeLog
2014-03-20 Jakub Jelinek <jakub@redhat.com>
-@@ -1540,8 +1772,7 @@
+@@ -1540,8 +1791,7 @@
2014-02-19 Paul Pluzhnikov <ppluzhnikov@google.com>
@@ -4829,7 +5162,7 @@ Index: gcc/testsuite/ChangeLog
2014-02-19 Jakub Jelinek <jakub@redhat.com>
-@@ -1850,8 +2081,7 @@
+@@ -1850,8 +2100,7 @@
2014-02-10 Jakub Jelinek <jakub@redhat.com>
@@ -4839,7 +5172,7 @@ Index: gcc/testsuite/ChangeLog
2014-02-09 Paul Thomas <pault@gcc.gnu.org>
-@@ -3098,8 +3328,8 @@
+@@ -3098,8 +3347,8 @@
* gfortran.dg/vect/fast-math-mgrid-resid.f: Change
-fdump-tree-optimized to -fdump-tree-pcom-details in dg-options and
cleanup-tree-dump from optimized to pcom. Remove scan-tree-dump-times
@@ -6119,6 +6452,26 @@ Index: gcc/opts.c
if (comma == NULL)
break;
+Index: gcc/optc-gen.awk
+===================================================================
+--- a/src/gcc/optc-gen.awk (.../tags/gcc_4_9_0_release)
++++ b/src/gcc/optc-gen.awk (.../branches/gcc-4_9-branch)
+@@ -406,11 +406,13 @@
+ if (opt_var_name != "") {
+ condition = "!opts_set->x_" opt_var_name
+ if (thisenableif[j] != "") {
+- condition = condition " && (" thisenableif[j] ")"
++ value = "(" thisenableif[j] ")"
++ } else {
++ value = "value"
+ }
+ print " if (" condition ")"
+ print " handle_generated_option (opts, opts_set,"
+- print " " opt_enum(thisenable[j]) ", NULL, value,"
++ print " " opt_enum(thisenable[j]) ", NULL, " value ","
+ print " lang_mask, kind, loc, handlers, dc);"
+ } else {
+ print "#error " thisenable[j] " does not have a Var() flag"
Index: gcc/common/config/msp430/msp430-common.c
===================================================================
--- a/src/gcc/common/config/msp430/msp430-common.c (.../tags/gcc_4_9_0_release)
@@ -7320,6 +7673,87 @@ Index: gcc/tree-ssa-reassoc.c
release_defs (stmt);
/* We might end up removing the last stmt above which
places the iterator to the end of the sequence.
+Index: gcc/config/alpha/alpha.c
+===================================================================
+--- a/src/gcc/config/alpha/alpha.c (.../tags/gcc_4_9_0_release)
++++ b/src/gcc/config/alpha/alpha.c (.../branches/gcc-4_9-branch)
+@@ -62,6 +62,7 @@
+ #include "gimple-expr.h"
+ #include "is-a.h"
+ #include "gimple.h"
++#include "gimple-iterator.h"
+ #include "gimplify.h"
+ #include "gimple-ssa.h"
+ #include "stringpool.h"
+@@ -7042,9 +7043,6 @@
+ case ALPHA_BUILTIN_MSKQH:
+ return alpha_fold_builtin_mskxx (op, opint, op_const, 0xff, true);
+
+- case ALPHA_BUILTIN_UMULH:
+- return fold_build2 (MULT_HIGHPART_EXPR, alpha_dimode_u, op[0], op[1]);
+-
+ case ALPHA_BUILTIN_ZAP:
+ opint[1] ^= 0xff;
+ /* FALLTHRU */
+@@ -7094,6 +7092,49 @@
+ return NULL;
+ }
+ }
++
++bool
++alpha_gimple_fold_builtin (gimple_stmt_iterator *gsi)
++{
++ bool changed = false;
++ gimple stmt = gsi_stmt (*gsi);
++ tree call = gimple_call_fn (stmt);
++ gimple new_stmt = NULL;
++
++ if (call)
++ {
++ tree fndecl = gimple_call_fndecl (stmt);
++
++ if (fndecl)
++ {
++ tree arg0, arg1;
++
++ switch (DECL_FUNCTION_CODE (fndecl))
++ {
++ case ALPHA_BUILTIN_UMULH:
++ arg0 = gimple_call_arg (stmt, 0);
++ arg1 = gimple_call_arg (stmt, 1);
++
++ new_stmt
++ = gimple_build_assign_with_ops (MULT_HIGHPART_EXPR,
++ gimple_call_lhs (stmt),
++ arg0,
++ arg1);
++ break;
++ default:
++ break;
++ }
++ }
++ }
++
++ if (new_stmt)
++ {
++ gsi_replace (gsi, new_stmt, true);
++ changed = true;
++ }
++
++ return changed;
++}
+
+ /* This page contains routines that are used to determine what the function
+ prologue and epilogue code will do and write them out. */
+@@ -9790,6 +9831,8 @@
+ #define TARGET_EXPAND_BUILTIN alpha_expand_builtin
+ #undef TARGET_FOLD_BUILTIN
+ #define TARGET_FOLD_BUILTIN alpha_fold_builtin
++#undef TARGET_GIMPLE_FOLD_BUILTIN
++#define TARGET_GIMPLE_FOLD_BUILTIN alpha_gimple_fold_builtin
+
+ #undef TARGET_FUNCTION_OK_FOR_SIBCALL
+ #define TARGET_FUNCTION_OK_FOR_SIBCALL alpha_function_ok_for_sibcall
Index: gcc/config/sparc/sparc.md
===================================================================
--- a/src/gcc/config/sparc/sparc.md (.../tags/gcc_4_9_0_release)
@@ -7446,6 +7880,15 @@ Index: gcc/config/i386/i386.c
===================================================================
--- a/src/gcc/config/i386/i386.c (.../tags/gcc_4_9_0_release)
+++ b/src/gcc/config/i386/i386.c (.../branches/gcc-4_9-branch)
+@@ -3128,7 +3128,7 @@
+ (PTA_SANDYBRIDGE | PTA_FSGSBASE | PTA_RDRND | PTA_F16C)
+ #define PTA_HASWELL \
+ (PTA_IVYBRIDGE | PTA_AVX2 | PTA_BMI | PTA_BMI2 | PTA_LZCNT \
+- | PTA_FMA | PTA_MOVBE | PTA_RTM | PTA_HLE)
++ | PTA_FMA | PTA_MOVBE | PTA_HLE)
+ #define PTA_BROADWELL \
+ (PTA_HASWELL | PTA_ADX | PTA_PRFCHW | PTA_RDSEED)
+ #define PTA_BONNELL \
@@ -24390,7 +24390,8 @@
if (jump_around_label == NULL_RTX)
jump_around_label = gen_label_rtx ();
@@ -7502,6 +7945,102 @@ Index: gcc/config/sh/sh.c
int code_for_indirect_jump_scratch = CODE_FOR_indirect_jump_scratch;
/* These are some macros to abstract register modes. */
+Index: gcc/config/avr/avr.md
+===================================================================
+--- a/src/gcc/config/avr/avr.md (.../tags/gcc_4_9_0_release)
++++ b/src/gcc/config/avr/avr.md (.../branches/gcc-4_9-branch)
+@@ -90,7 +90,7 @@
+ (include "constraints.md")
+
+ ;; Condition code settings.
+-(define_attr "cc" "none,set_czn,set_zn,set_n,compare,clobber,
++(define_attr "cc" "none,set_czn,set_zn,set_vzn,set_n,compare,clobber,
+ plus,ldi"
+ (const_string "none"))
+
+@@ -1098,7 +1098,7 @@
+ inc %0\;inc %0
+ dec %0\;dec %0"
+ [(set_attr "length" "1,1,1,1,2,2")
+- (set_attr "cc" "set_czn,set_czn,set_zn,set_zn,set_zn,set_zn")])
++ (set_attr "cc" "set_czn,set_czn,set_vzn,set_vzn,set_vzn,set_vzn")])
+
+ ;; "addhi3"
+ ;; "addhq3" "adduhq3"
+@@ -1369,7 +1369,7 @@
+ dec %0\;dec %0
+ inc %0\;inc %0"
+ [(set_attr "length" "1,1,1,1,2,2")
+- (set_attr "cc" "set_czn,set_czn,set_zn,set_zn,set_zn,set_zn")])
++ (set_attr "cc" "set_czn,set_czn,set_vzn,set_vzn,set_vzn,set_vzn")])
+
+ ;; "subhi3"
+ ;; "subhq3" "subuhq3"
+@@ -3992,7 +3992,7 @@
+ ""
+ "neg %0"
+ [(set_attr "length" "1")
+- (set_attr "cc" "set_zn")])
++ (set_attr "cc" "set_vzn")])
+
+ (define_insn "*negqihi2"
+ [(set (match_operand:HI 0 "register_operand" "=r")
+Index: gcc/config/avr/avr-mcus.def
+===================================================================
+--- a/src/gcc/config/avr/avr-mcus.def (.../tags/gcc_4_9_0_release)
++++ b/src/gcc/config/avr/avr-mcus.def (.../branches/gcc-4_9-branch)
+@@ -291,7 +291,7 @@
+ AVR_MCU ("atxmega192d3", ARCH_AVRXMEGA6, AVR_ISA_NONE, "__AVR_ATxmega192D3__", 0x2000, 4, "x192d3")
+ AVR_MCU ("atxmega256a3", ARCH_AVRXMEGA6, AVR_ISA_NONE, "__AVR_ATxmega256A3__", 0x2000, 5, "x256a3")
+ AVR_MCU ("atxmega256a3b", ARCH_AVRXMEGA6, AVR_ISA_NONE, "__AVR_ATxmega256A3B__", 0x2000, 5, "x256a3b")
+-AVR_MCU ("atxmega256a3bu", ARCH_AVRXMEGA6, AVR_ISA_NONE, "__AVR_ATxmega258A3BU__", 0x2000, 5, "x256a3bu")
++AVR_MCU ("atxmega256a3bu", ARCH_AVRXMEGA6, AVR_ISA_NONE, "__AVR_ATxmega256A3BU__", 0x2000, 5, "x256a3bu")
+ AVR_MCU ("atxmega256d3", ARCH_AVRXMEGA6, AVR_ISA_NONE, "__AVR_ATxmega256D3__", 0x2000, 5, "x256d3")
+ AVR_MCU ("atxmega128a3u", ARCH_AVRXMEGA6, AVR_ISA_RMW, "__AVR_ATxmega128A3U__", 0x2000, 3, "x128a3u")
+ AVR_MCU ("atxmega128b1", ARCH_AVRXMEGA6, AVR_ISA_RMW, "__AVR_ATxmega128B1__", 0x2000, 3, "x128b1")
+Index: gcc/config/avr/avr.c
+===================================================================
+--- a/src/gcc/config/avr/avr.c (.../tags/gcc_4_9_0_release)
++++ b/src/gcc/config/avr/avr.c (.../branches/gcc-4_9-branch)
+@@ -2353,6 +2353,12 @@
+ }
+ break;
+
++ case CC_SET_VZN:
++ /* Insn like INC, DEC, NEG that set Z,N,V. We currently don't make use
++ of this combination, cf. also PR61055. */
++ CC_STATUS_INIT;
++ break;
++
+ case CC_SET_CZN:
+ /* Insn sets the Z,N,C flags of CC to recog_operand[0].
+ The V flag may or may not be known but that's ok because
+@@ -6284,7 +6290,7 @@
+
+ if (REG_P (xop[2]))
+ {
+- *pcc = MINUS == code ? (int) CC_SET_CZN : (int) CC_SET_N;
++ *pcc = MINUS == code ? (int) CC_SET_CZN : (int) CC_CLOBBER;
+
+ for (i = 0; i < n_bytes; i++)
+ {
+@@ -6393,7 +6399,7 @@
+ op, plen, 1);
+
+ if (n_bytes == 2 && PLUS == code)
+- *pcc = CC_SET_ZN;
++ *pcc = CC_SET_CZN;
+ }
+
+ i++;
+@@ -6416,6 +6422,7 @@
+ {
+ avr_asm_len ((code == PLUS) ^ (val8 == 1) ? "dec %0" : "inc %0",
+ op, plen, 1);
++ *pcc = CC_CLOBBER;
+ break;
+ }
+
Index: gcc/config/aarch64/aarch64.h
===================================================================
--- a/src/gcc/config/aarch64/aarch64.h (.../tags/gcc_4_9_0_release)
@@ -9361,3 +9900,54 @@ Index: libgo/configure.ac
AC_CHECK_HEADERS([linux/filter.h linux/if_addr.h linux/if_ether.h linux/if_tun.h linux/netlink.h linux/rtnetlink.h], [], [],
[#ifdef HAVE_SYS_SOCKET_H
+Index: libgfortran/ChangeLog
+===================================================================
+--- a/src/libgfortran/ChangeLog (.../tags/gcc_4_9_0_release)
++++ b/src/libgfortran/ChangeLog (.../branches/gcc-4_9-branch)
+@@ -1,3 +1,10 @@
++2014-05-10 Jerry DeLisle <jvdelisle@gcc.gnu>
++
++ Backport from Trunk.
++ PR libfortran/61049
++ * io/list_read.c (list_formatted_read_scalar): Use eat_separator
++ and delete extraneous code.
++
+ 2014-04-22 Release Manager
+
+ * GCC 4.9.0 released.
+Index: libgfortran/io/list_read.c
+===================================================================
+--- a/src/libgfortran/io/list_read.c (.../tags/gcc_4_9_0_release)
++++ b/src/libgfortran/io/list_read.c (.../branches/gcc-4_9-branch)
+@@ -1923,21 +1923,10 @@
+ }
+ if (is_separator (c))
+ {
+- /* Found a null value. Do not use eat_separator here otherwise
+- we will do an extra read from stdin. */
++ /* Found a null value. */
+ dtp->u.p.repeat_count = 0;
++ eat_separator (dtp);
+
+- /* Set comma_flag. */
+- if ((c == ';'
+- && dtp->u.p.current_unit->decimal_status == DECIMAL_COMMA)
+- ||
+- (c == ','
+- && dtp->u.p.current_unit->decimal_status == DECIMAL_POINT))
+- {
+- dtp->u.p.comma_flag = 1;
+- goto cleanup;
+- }
+-
+ /* Set end-of-line flag. */
+ if (c == '\n' || c == '\r')
+ {
+@@ -1951,7 +1940,6 @@
+ else
+ goto cleanup;
+ }
+-
+ }
+ else
+ {
diff --git a/debian/rules.patch b/debian/rules.patch
index 517e883..1df30ae 100644
--- a/debian/rules.patch
+++ b/debian/rules.patch
@@ -294,7 +294,8 @@ debian_patches += libgomp-kfreebsd-testsuite
debian_patches += go-testsuite
debian_patches += libstdc++-link-pthread
debian_patches += fix-ffi_call_VFP-with-no-VFP-argument
-debian_patches += pr61106
+#debian_patches += pr61106
+debian_patches += pr61126
# Ada patches needed for both the stable package and snapshot builds
debian_patches += ada-ppc64