summaryrefslogtreecommitdiff
path: root/debian/patches/gcc-linaro.diff
diff options
context:
space:
mode:
Diffstat (limited to 'debian/patches/gcc-linaro.diff')
-rw-r--r--debian/patches/gcc-linaro.diff681
1 files changed, 554 insertions, 127 deletions
diff --git a/debian/patches/gcc-linaro.diff b/debian/patches/gcc-linaro.diff
index 9ba3a34..941f005 100644
--- a/debian/patches/gcc-linaro.diff
+++ b/debian/patches/gcc-linaro.diff
@@ -1,11 +1,22 @@
-# DP: Changes for the Linaro 4.7-2013.06 release.
+# DP: Changes for the Linaro 4.7-2013.07 release.
--- a/src/ChangeLog.linaro
+++ b/src/ChangeLog.linaro
-@@ -0,0 +1,2551 @@
-+2013-06-11 Rob Savoye <rob.savoye@linaro.org>
+@@ -0,0 +1,2562 @@
++2013-07-03 Yvan Roux <yvan.roux@linaro.org>
+
-+ GCC Linaro 4.7-2013.06 released.
++ GCC Linaro 4.7-2013.07 released.
++
++ gcc/
++ * LINARO-VERSION: Update.
++
++2013-06-26 Matthew Gretton-Dann <matthew.gretton-dann@linaro.org>
++
++ Merge from FSF GCC 4.7.4 (svn branches/gcc-4_7-branch 200408).
++
++2013-06-14 Rob Savoye <rob.savoye@linaro.org>
++
++ GCC Linaro 4.7-2013.06-1 released.
+
+ gcc/
+ * LINARO-VERSION: Update.
@@ -2903,28 +2914,6 @@
;;
m68*-cisco)
os=-aout
---- a/src/contrib/gcc_build
-+++ b/src/contrib/gcc_build
-@@ -146,7 +146,7 @@
-
- # Bootstrap the compiler
- echo "Building: ${MAKE} ${MAKE_BOOTSTRAP_OPTIONS} bootstrap"
-- eval ${MAKE} ${MAKE_BOOTSTRAP_OPTIONS} bootstrap || \
-+ eval ${MAKE} -j8 ${MAKE_BOOTSTRAP_OPTIONS} bootstrap || \
- error "Could not bootstrap the compiler"
- }
-
-@@ -159,8 +159,8 @@
- changedir ${OBJDIR}
-
- echo "Running tests... This will take a while."
-- eval \${MAKE} -k ${MAKE_CHECK_OPTIONS} check
-- ${DESTINATION}/contrib/test_summary
-+ #eval \${MAKE} -k ${MAKE_CHECK_OPTIONS} check
-+ #${DESTINATION}/contrib/test_summary
- }
-
- # Export the GCC source tree.
--- a/src/gcc/ada/ChangeLog
+++ b/src/gcc/ada/ChangeLog
@@ -1,3 +1,8 @@
@@ -3178,7 +3167,49 @@
{
--- a/src/gcc/ChangeLog
+++ b/src/gcc/ChangeLog
-@@ -1,3 +1,220 @@
+@@ -1,3 +1,262 @@
++2013-06-21 David Edelsohn <dje.gcc@gmail.com>
++
++ Backport from mainline
++ 2013-06-19 David Edelsohn <dje.gcc@gmail.com>
++
++ PR driver/57652
++ * collect2.c (collect_atexit): New.
++ (collect_exit): Delete.
++ (main): Register collect_atexit with atexit.
++ (collect_wait): Change collect_exit to exit.
++ (do_wait): Same.
++ * collect2.h (collect_exit): Delete.
++ * tlink.c (do_tlink): Rename exit to ret. Change collect_exit to exit.
++
++2013-06-07 Uros Bizjak <ubizjak@gmail.com>
++
++ Backport from mainline
++ 2013-06-10 Uros Bizjak <ubizjak@gmail.com>
++
++ * config/alpha/alpha.c (alpha_emit_xfloating_compare): Also use
++ cmp_code to construct REG_EQUAL note.
++
++ Backport from mainline
++ 2013-06-05 Uros Bizjak <ubizjak@gmail.com>
++
++ * config/alpha/alpha.c (alpha_emit_conditional_move): Swap all
++ GE, GT, GEU and GTU compares, modulo DImode compares with zero.
++
++ Backport from mainline
++ 2013-05-23 Uros Bizjak <ubizjak@gmail.com>
++
++ PR target/57379
++ * config/alpha/alpha.md (unspec): Add UNSPEC_XFLT_COMPARE.
++ * config/alpha/alpha.c (alpha_emit_xfloating_compare): Construct
++ REG_EQUAL note as UNSPEC_XFLT_COMPARE unspec.
++
++2013-06-09 Jakub Jelinek <jakub@redhat.com>
++
++ PR target/57568
++ * config/i386/i386.md (TARGET_READ_MODIFY_WRITE peepholes): Ensure
++ that operands[2] doesn't overlap with operands[0].
++
+2013-05-22 Uros Bizjak <ubizjak@gmail.com>
+
+ PR target/57356
@@ -4497,6 +4528,88 @@
+ (read_rtx): Parse and read int iterators mapping and attributes.
+ Initialize int iterators group's hash-table. Memory management.
+ (read_rtx_code): Handle case for rtl field specifier 'i'.
+--- a/src/gcc/collect2.c
++++ b/src/gcc/collect2.c
+@@ -1,7 +1,7 @@
+ /* Collect static initialization info into data structures that can be
+ traversed by C++ initialization and finalization routines.
+ Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998,
+- 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009, 2010, 2011
++ 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009, 2010, 2011, 2013
+ Free Software Foundation, Inc.
+ Contributed by Chris Smith (csmith@convex.com).
+ Heavily modified by Michael Meissner (meissner@cygnus.com),
+@@ -384,8 +384,8 @@
+
+ /* Delete tempfiles and exit function. */
+
+-void
+-collect_exit (int status)
++static void
++collect_atexit (void)
+ {
+ if (c_file != 0 && c_file[0])
+ maybe_unlink (c_file);
+@@ -413,13 +413,8 @@
+ maybe_unlink (lderrout);
+ }
+
+- if (status != 0 && output_file != 0 && output_file[0])
+- maybe_unlink (output_file);
+-
+ if (response_file)
+ maybe_unlink (response_file);
+-
+- exit (status);
+ }
+
+
+@@ -1132,6 +1127,9 @@
+ signal (SIGCHLD, SIG_DFL);
+ #endif
+
++ if (atexit (collect_atexit) != 0)
++ fatal_error ("atexit failed");
++
+ /* Unlock the stdio streams. */
+ unlock_std_streams ();
+
+@@ -1973,7 +1971,7 @@
+ error ("%s terminated with signal %d [%s]%s",
+ prog, sig, strsignal(sig),
+ WCOREDUMP(status) ? ", core dumped" : "");
+- collect_exit (FATAL_EXIT_CODE);
++ exit (FATAL_EXIT_CODE);
+ }
+
+ if (WIFEXITED (status))
+@@ -1989,7 +1987,7 @@
+ if (ret != 0)
+ {
+ error ("%s returned %d exit status", prog, ret);
+- collect_exit (ret);
++ exit (ret);
+ }
+
+ if (response_file)
+--- a/src/gcc/collect2.h
++++ b/src/gcc/collect2.h
+@@ -1,5 +1,5 @@
+ /* Header file for collect/tlink routines.
+- Copyright (C) 1998, 2003, 2004, 2005, 2007, 2010, 2011
++ Copyright (C) 1998, 2003, 2004, 2005, 2007, 2010, 2011, 2013
+ Free Software Foundation, Inc.
+
+ This file is part of GCC.
+@@ -26,8 +26,6 @@
+ extern struct pex_obj *collect_execute (const char *, char **, const char *,
+ const char *, int flags);
+
+-extern void collect_exit (int) ATTRIBUTE_NORETURN;
+-
+ extern int collect_wait (const char *, struct pex_obj *);
+
+ extern void dump_file (const char *, FILE *);
--- a/src/gcc/combine.c
+++ b/src/gcc/combine.c
@@ -9291,36 +9291,22 @@
@@ -50787,6 +50900,53 @@
+
+LIB1ASMSRC = aarch64/lib1funcs.asm
+LIB1ASMFUNCS = _aarch64_sync_cache_range
+--- a/src/gcc/config/alpha/alpha.c
++++ b/src/gcc/config/alpha/alpha.c
+@@ -2658,12 +2658,12 @@
+ break;
+
+ case GE: case GT: case GEU: case GTU:
+- /* These must be swapped. */
+- if (op1 != CONST0_RTX (cmp_mode))
+- {
+- code = swap_condition (code);
+- tem = op0, op0 = op1, op1 = tem;
+- }
++ /* These normally need swapping, but for integer zero we have
++ special patterns that recognize swapped operands. */
++ if (cmp_mode == DImode && op1 == const0_rtx)
++ break;
++ code = swap_condition (code);
++ tem = op0, op0 = op1, op1 = tem;
+ break;
+
+ default:
+@@ -3025,12 +3025,9 @@
+ operands[1] = op1;
+ out = gen_reg_rtx (DImode);
+
+- /* What's actually returned is -1,0,1, not a proper boolean value,
+- so use an EXPR_LIST as with a generic libcall instead of a
+- comparison type expression. */
+- note = gen_rtx_EXPR_LIST (VOIDmode, op1, NULL_RTX);
+- note = gen_rtx_EXPR_LIST (VOIDmode, op0, note);
+- note = gen_rtx_EXPR_LIST (VOIDmode, func, note);
++ /* What's actually returned is -1,0,1, not a proper boolean value. */
++ note = gen_rtx_fmt_ee (cmp_code, VOIDmode, op0, op1);
++ note = gen_rtx_UNSPEC (DImode, gen_rtvec (1, note), UNSPEC_XFLT_COMPARE);
+ alpha_emit_xfloating_libcall (func, out, operands, 2, note);
+
+ return out;
+--- a/src/gcc/config/alpha/alpha.md
++++ b/src/gcc/config/alpha/alpha.md
+@@ -25,6 +25,7 @@
+ ;; Uses of UNSPEC in this file:
+
+ (define_c_enum "unspec" [
++ UNSPEC_XFLT_COMPARE
+ UNSPEC_ARG_HOME
+ UNSPEC_LDGP1
+ UNSPEC_INSXH
--- a/src/gcc/config/arm/arm1020e.md
+++ b/src/gcc/config/arm/arm1020e.md
@@ -66,13 +66,13 @@
@@ -58020,6 +58180,22 @@
"!(fixed_regs[AX_REG] || fixed_regs[DI_REG])"
"stosb"
[(set_attr "type" "str")
+@@ -17190,6 +17194,7 @@
+ "(TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
+ && peep2_reg_dead_p (4, operands[0])
+ && !reg_overlap_mentioned_p (operands[0], operands[1])
++ && !reg_overlap_mentioned_p (operands[0], operands[2])
+ && (<MODE>mode != QImode
+ || immediate_operand (operands[2], QImode)
+ || q_regs_operand (operands[2], QImode))
+@@ -17254,6 +17259,7 @@
+ || immediate_operand (operands[2], SImode)
+ || q_regs_operand (operands[2], SImode))
+ && !reg_overlap_mentioned_p (operands[0], operands[1])
++ && !reg_overlap_mentioned_p (operands[0], operands[2])
+ && ix86_match_ccmode (peep2_next_insn (3),
+ (GET_CODE (operands[3]) == PLUS
+ || GET_CODE (operands[3]) == MINUS)
--- a/src/gcc/config/i386/sse.md
+++ b/src/gcc/config/i386/sse.md
@@ -11167,7 +11167,8 @@
@@ -58628,7 +58804,7 @@
+++ b/src/gcc/DATESTAMP
@@ -1 +1 @@
-20130411
-+20130603
++20130626
--- a/src/gcc/dwarf2out.c
+++ b/src/gcc/dwarf2out.c
@@ -22538,7 +22538,7 @@
@@ -58659,7 +58835,16 @@
{
--- a/src/gcc/fortran/ChangeLog
+++ b/src/gcc/fortran/ChangeLog
-@@ -1,3 +1,49 @@
+@@ -1,3 +1,58 @@
++2013-06-06 Tobias Burnus <burnus@net-b.de>
++
++ Backport from mainline
++ 2012-08-27 Tobias Burnus <burnus@net-b.de>
++
++ PR fortran/54370
++ * trans-stmt.c (gfc_trans_do_while): Don't change the logical
++ kind for negation of the condition.
++
+2013-06-01 Janus Weil <janus@gcc.gnu.org>
+ Tobias Burnus <burnus@net-b.de>
+
@@ -59111,6 +59296,17 @@
size_t gfc_target_expr_size (gfc_expr *);
/* Write a constant expression in binary form to a target buffer. */
+--- a/src/gcc/fortran/trans-stmt.c
++++ b/src/gcc/fortran/trans-stmt.c
+@@ -1743,7 +1743,7 @@
+ gfc_conv_expr_val (&cond, code->expr1);
+ gfc_add_block_to_block (&block, &cond.pre);
+ cond.expr = fold_build1_loc (code->expr1->where.lb->location,
+- TRUTH_NOT_EXPR, boolean_type_node, cond.expr);
++ TRUTH_NOT_EXPR, TREE_TYPE (cond.expr), cond.expr);
+
+ /* Build "IF (! cond) GOTO exit_label". */
+ tmp = build1_v (GOTO_EXPR, exit_label);
--- a/src/gcc/fwprop.c
+++ b/src/gcc/fwprop.c
@@ -664,7 +664,12 @@
@@ -59167,7 +59363,7 @@
#define YY_RESTORE_YY_MORE_OFFSET
char *yytext;
-#line 1 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 1 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 1 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
/* -*- indented-text -*- */
/* Process source files and output type information.
Copyright (C) 2002, 2003, 2004, 2005, 2007, 2008, 2009, 2010
@@ -59176,7 +59372,7 @@
<http://www.gnu.org/licenses/>. */
#define YY_NO_INPUT 1
-#line 25 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 25 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 25 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
#ifdef GENERATOR_FILE
#include "bconfig.h"
#else
@@ -59225,7 +59421,7 @@
register int yy_act;
-#line 63 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 63 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 63 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
/* Do this on entry to yylex(): */
*yylval = 0;
@@ -59243,7 +59439,7 @@
YY_DO_BEFORE_ACTION; /* set up yytext again */
YY_RULE_SETUP
-#line 74 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 74 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 74 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
{
BEGIN(in_struct);
return TYPEDEF;
@@ -59252,7 +59448,7 @@
YY_DO_BEFORE_ACTION; /* set up yytext again */
YY_RULE_SETUP
-#line 78 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 78 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 78 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
{
BEGIN(in_struct);
return STRUCT;
@@ -59261,7 +59457,7 @@
YY_DO_BEFORE_ACTION; /* set up yytext again */
YY_RULE_SETUP
-#line 82 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 82 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 82 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
{
BEGIN(in_struct);
return UNION;
@@ -59270,7 +59466,7 @@
YY_DO_BEFORE_ACTION; /* set up yytext again */
YY_RULE_SETUP
-#line 86 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 86 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 86 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
{
BEGIN(in_struct);
return EXTERN;
@@ -59279,7 +59475,7 @@
YY_DO_BEFORE_ACTION; /* set up yytext again */
YY_RULE_SETUP
-#line 90 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 90 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 90 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
{
BEGIN(in_struct);
return STATIC;
@@ -59288,7 +59484,7 @@
YY_DO_BEFORE_ACTION; /* set up yytext again */
YY_RULE_SETUP
-#line 95 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 95 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 95 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
{
BEGIN(in_struct);
return DEFVEC_OP;
@@ -59297,7 +59493,7 @@
YY_DO_BEFORE_ACTION; /* set up yytext again */
YY_RULE_SETUP
-#line 99 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 99 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 99 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
{
BEGIN(in_struct);
return DEFVEC_I;
@@ -59306,7 +59502,7 @@
YY_DO_BEFORE_ACTION; /* set up yytext again */
YY_RULE_SETUP
-#line 103 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 103 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 103 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
{
BEGIN(in_struct);
return DEFVEC_ALLOC;
@@ -59315,21 +59511,21 @@
case 9:
YY_RULE_SETUP
-#line 111 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 111 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 111 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
{ BEGIN(in_struct_comment); }
YY_BREAK
case 10:
/* rule 10 can match eol */
YY_RULE_SETUP
-#line 113 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 113 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 113 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
{ update_lineno (yytext, yyleng); }
YY_BREAK
case 11:
/* rule 11 can match eol */
YY_RULE_SETUP
-#line 114 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 114 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 114 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
{ lexer_line.line++; }
YY_BREAK
case 12:
@@ -59338,7 +59534,7 @@
YY_DO_BEFORE_ACTION; /* set up yytext again */
YY_RULE_SETUP
-#line 116 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 116 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 116 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
/* don't care */
YY_BREAK
case 13:
@@ -59347,7 +59543,7 @@
YY_DO_BEFORE_ACTION; /* set up yytext again */
YY_RULE_SETUP
-#line 117 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 117 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 117 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
{ return GTY_TOKEN; }
YY_BREAK
case 14:
@@ -59356,7 +59552,7 @@
YY_DO_BEFORE_ACTION; /* set up yytext again */
YY_RULE_SETUP
-#line 118 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 118 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 118 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
{ return VEC_TOKEN; }
YY_BREAK
case 15:
@@ -59365,7 +59561,7 @@
YY_DO_BEFORE_ACTION; /* set up yytext again */
YY_RULE_SETUP
-#line 119 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 119 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 119 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
{ return UNION; }
YY_BREAK
case 16:
@@ -59374,7 +59570,7 @@
YY_DO_BEFORE_ACTION; /* set up yytext again */
YY_RULE_SETUP
-#line 120 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 120 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 120 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
{ return STRUCT; }
YY_BREAK
case 17:
@@ -59383,7 +59579,7 @@
YY_DO_BEFORE_ACTION; /* set up yytext again */
YY_RULE_SETUP
-#line 121 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 121 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 121 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
{ return ENUM; }
YY_BREAK
case 18:
@@ -59392,7 +59588,7 @@
YY_DO_BEFORE_ACTION; /* set up yytext again */
YY_RULE_SETUP
-#line 122 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 122 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 122 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
{ return PTR_ALIAS; }
YY_BREAK
case 19:
@@ -59401,13 +59597,13 @@
YY_DO_BEFORE_ACTION; /* set up yytext again */
YY_RULE_SETUP
-#line 123 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 123 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 123 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
{ return NESTED_PTR; }
YY_BREAK
case 20:
YY_RULE_SETUP
-#line 124 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 124 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 124 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
{ return NUM; }
YY_BREAK
case 21:
@@ -59416,7 +59612,7 @@
YY_DO_BEFORE_ACTION; /* set up yytext again */
YY_RULE_SETUP
-#line 125 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 125 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 125 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
{
*yylval = XDUPVAR (const char, yytext, yyleng, yyleng+1);
return PARAM_IS;
@@ -59425,12 +59621,12 @@
(yy_c_buf_p) = yy_cp -= 1;
YY_DO_BEFORE_ACTION; /* set up yytext again */
-#line 131 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 131 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 131 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
case 23:
/* rule 23 can match eol */
YY_RULE_SETUP
-#line 131 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 131 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 131 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
{
size_t len;
@@ -59439,7 +59635,7 @@
YY_DO_BEFORE_ACTION; /* set up yytext again */
YY_RULE_SETUP
-#line 143 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 143 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 143 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
{
*yylval = XDUPVAR (const char, yytext, yyleng, yyleng+1);
return ID;
@@ -59448,7 +59644,7 @@
/* rule 25 can match eol */
YY_RULE_SETUP
-#line 148 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 148 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 148 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
{
*yylval = XDUPVAR (const char, yytext+1, yyleng-2, yyleng-1);
return STRING;
@@ -59457,7 +59653,7 @@
/* rule 26 can match eol */
YY_RULE_SETUP
-#line 153 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 153 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 153 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
{
*yylval = XDUPVAR (const char, yytext+1, yyleng-2, yyleng-1);
return ARRAY;
@@ -59466,7 +59662,7 @@
/* rule 27 can match eol */
YY_RULE_SETUP
-#line 157 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 157 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 157 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
{
*yylval = XDUPVAR (const char, yytext+1, yyleng-2, yyleng);
return CHAR;
@@ -59475,13 +59671,13 @@
case 28:
YY_RULE_SETUP
-#line 162 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 162 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 162 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
{ return ELLIPSIS; }
YY_BREAK
case 29:
YY_RULE_SETUP
-#line 163 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 163 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 163 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
{ return yytext[0]; }
YY_BREAK
/* ignore pp-directives */
@@ -59489,13 +59685,13 @@
/* rule 30 can match eol */
YY_RULE_SETUP
-#line 166 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 166 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 166 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
{lexer_line.line++;}
YY_BREAK
case 31:
YY_RULE_SETUP
-#line 168 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 168 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 168 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
{
error_at_line (&lexer_line, "unexpected character `%s'", yytext);
}
@@ -59504,35 +59700,35 @@
case 32:
YY_RULE_SETUP
-#line 173 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 173 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 173 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
{ BEGIN(in_comment); }
YY_BREAK
case 33:
/* rule 33 can match eol */
YY_RULE_SETUP
-#line 174 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 174 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 174 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
{ lexer_line.line++; }
YY_BREAK
case 34:
-#line 176 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 176 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 176 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
case 35:
/* rule 35 can match eol */
-#line 177 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 177 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 177 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
case 36:
/* rule 36 can match eol */
YY_RULE_SETUP
-#line 177 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 177 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 177 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
/* do nothing */
YY_BREAK
case 37:
/* rule 37 can match eol */
YY_RULE_SETUP
-#line 178 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 178 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 178 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
{ update_lineno (yytext, yyleng); }
YY_BREAK
case 38:
@@ -59541,7 +59737,7 @@
YY_DO_BEFORE_ACTION; /* set up yytext again */
YY_RULE_SETUP
-#line 179 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 179 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 179 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
/* do nothing */
YY_BREAK
@@ -59549,16 +59745,16 @@
/* rule 39 can match eol */
YY_RULE_SETUP
-#line 182 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 182 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 182 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
{ lexer_line.line++; }
YY_BREAK
case 40:
-#line 184 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 184 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 184 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
case 41:
YY_RULE_SETUP
-#line 184 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 184 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 184 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
/* do nothing */
YY_BREAK
case 42:
@@ -59567,29 +59763,29 @@
YY_DO_BEFORE_ACTION; /* set up yytext again */
YY_RULE_SETUP
-#line 185 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 185 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 185 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
/* do nothing */
YY_BREAK
case 43:
YY_RULE_SETUP
-#line 187 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 187 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 187 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
{ BEGIN(INITIAL); }
YY_BREAK
case 44:
YY_RULE_SETUP
-#line 188 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 188 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 188 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
{ BEGIN(in_struct); }
YY_BREAK
case 45:
-#line 191 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 191 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 191 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
case 46:
YY_RULE_SETUP
-#line 191 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 191 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 191 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
{
error_at_line (&lexer_line,
"unterminated comment or string; unexpected EOF");
@@ -59598,13 +59794,13 @@
/* rule 47 can match eol */
YY_RULE_SETUP
-#line 196 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 196 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 196 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
/* do nothing */
YY_BREAK
case 48:
YY_RULE_SETUP
-#line 198 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 198 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 198 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
YY_FATAL_ERROR( "flex scanner jammed" );
YY_BREAK
-#line 1654 "gengtype-lex.c"
@@ -59628,7 +59824,7 @@
#define YYTABLES_NAME "yytables"
-#line 198 "/space/rguenther/gcc-4.7.3/gcc-4.7.3/gcc/gengtype-lex.l"
-+#line 198 "/home/doko/gcc-4.7-RC-20130614/gcc-4.7-RC-20130614/gcc/gengtype-lex.l"
++#line 198 "/work1/rouxy/release/4.7-2013.07/gcc-linaro-4.7-2013.07/gcc/gengtype-lex.l"
@@ -61645,7 +61841,7 @@
--- a/src/gcc/LINARO-VERSION
+++ b/src/gcc/LINARO-VERSION
@@ -0,0 +1 @@
-+4.7-2013.05-1~dev
++4.7-2013.07
--- a/src/gcc/lower-subreg.c
+++ b/src/gcc/lower-subreg.c
@@ -233,9 +233,9 @@
@@ -62777,7 +62973,20 @@
bool, false)
--- a/src/gcc/testsuite/ChangeLog
+++ b/src/gcc/testsuite/ChangeLog
-@@ -1,3 +1,120 @@
+@@ -1,3 +1,133 @@
++2013-06-09 Jakub Jelinek <jakub@redhat.com>
++
++ PR target/57568
++ * gcc.c-torture/execute/pr57568.c: New test.
++
++2013-06-06 Tobias Burnus <burnus@net-b.de>
++
++ Backport from mainline
++ 2012-08-27 Tobias Burnus <burnus@net-b.de>
++
++ PR fortran/54370
++ * gfortran.dg/do_5.f90: New.
++
+2013-06-01 Janus Weil <janus@gcc.gnu.org>
+ Tobias Burnus <burnus@net-b.de>
+
@@ -63428,6 +63637,21 @@
+#endif
+ return 0;
+}
+--- a/src/gcc/testsuite/gcc.c-torture/execute/pr57568.c
++++ b/src/gcc/testsuite/gcc.c-torture/execute/pr57568.c
+@@ -0,0 +1,12 @@
++/* PR target/57568 */
++
++extern void abort (void);
++int a[6][9] = { }, b = 1, *c = &a[3][5];
++
++int
++main ()
++{
++ if (b && (*c = *c + *c))
++ abort ();
++ return 0;
++}
--- a/src/gcc/testsuite/gcc.dg/20020312-2.c
+++ b/src/gcc/testsuite/gcc.dg/20020312-2.c
@@ -92,6 +92,8 @@
@@ -76920,6 +77144,38 @@
C { dg-skip-if "No stabs" {*-*-* } { "*" } { "-gstabs" } }
common i,j
common /label/l,m
+--- a/src/gcc/testsuite/gfortran.dg/do_5.f90
++++ b/src/gcc/testsuite/gfortran.dg/do_5.f90
+@@ -0,0 +1,29 @@
++! { dg-do compile }
++!
++! PR fortran/54370
++!
++! The following program was ICEing at tree-check time
++! "L()" was regarded as default-kind logical.
++!
++! Contributed by Kirill Chilikin
++!
++ MODULE M
++ CONTAINS
++
++ LOGICAL(C_BOOL) FUNCTION L() BIND(C)
++ USE, INTRINSIC :: ISO_C_BINDING
++ L = .FALSE.
++ END FUNCTION
++
++ LOGICAL(8) FUNCTION L2() BIND(C) ! { dg-warning "may not be a C interoperable kind but it is bind" }
++ L2 = .FALSE._8
++ END FUNCTION
++
++ SUBROUTINE S()
++ DO WHILE (L())
++ ENDDO
++ DO WHILE (L2())
++ ENDDO
++ END
++
++ END
--- a/src/gcc/testsuite/gfortran.dg/namelist_77.f90
+++ b/src/gcc/testsuite/gfortran.dg/namelist_77.f90
@@ -0,0 +1,49 @@
@@ -77820,6 +78076,61 @@
+ return 0
+ }
+}
+--- a/src/gcc/tlink.c
++++ b/src/gcc/tlink.c
+@@ -2,7 +2,7 @@
+ them.
+
+ Copyright (C) 1995, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2007, 2008,
+- 2009, 2010, 2011 Free Software Foundation, Inc.
++ 2009, 2010, 2011, 2013 Free Software Foundation, Inc.
+ Contributed by Jason Merrill (jason@cygnus.com).
+
+ This file is part of GCC.
+@@ -820,18 +820,18 @@
+ void
+ do_tlink (char **ld_argv, char **object_lst ATTRIBUTE_UNUSED)
+ {
+- int exit = tlink_execute ("ld", ld_argv, ldout, lderrout);
++ int ret = tlink_execute ("ld", ld_argv, ldout, lderrout);
+
+ tlink_init ();
+
+- if (exit)
++ if (ret)
+ {
+ int i = 0;
+
+ /* Until collect does a better job of figuring out which are object
+ files, assume that everything on the command line could be. */
+ if (read_repo_files (ld_argv))
+- while (exit && i++ < MAX_ITERATIONS)
++ while (ret && i++ < MAX_ITERATIONS)
+ {
+ if (tlink_verbose >= 3)
+ {
+@@ -846,7 +846,7 @@
+ break;
+ if (tlink_verbose)
+ fprintf (stderr, _("collect: relinking\n"));
+- exit = tlink_execute ("ld", ld_argv, ldout, lderrout);
++ ret = tlink_execute ("ld", ld_argv, ldout, lderrout);
+ }
+ }
+
+@@ -854,9 +854,9 @@
+ unlink (ldout);
+ dump_file (lderrout, stderr);
+ unlink (lderrout);
+- if (exit)
++ if (ret)
+ {
+- error ("ld returned %d exit status", exit);
+- collect_exit (exit);
++ error ("ld returned %d exit status", ret);
++ exit (ret);
+ }
+ }
--- a/src/gcc/tree.c
+++ b/src/gcc/tree.c
@@ -9358,6 +9358,7 @@
@@ -79219,9 +79530,8 @@
<!--
--- a/src/LAST_UPDATED
+++ b/src/LAST_UPDATED
-@@ -1 +1 @@
+@@ -1 +0,0 @@
-Obtained from SVN: tags/gcc_4_7_3_release revision 197739
-+Obtained from SVN: branches/gcc-4_7-branch revision
--- a/src/libcpp/ChangeLog.aarch64
+++ b/src/libcpp/ChangeLog.aarch64
@@ -0,0 +1,13 @@
@@ -79330,9 +79640,42 @@
#else
/* We only have one accellerated alternative. Use a direct call so that
+Binary files gcc-4.7.3/libcpp/po/be.gmo and gcc-linaro-4.7-2013.07/libcpp/po/be.gmo differ
+Binary files gcc-4.7.3/libcpp/po/ca.gmo and gcc-linaro-4.7-2013.07/libcpp/po/ca.gmo differ
+Binary files gcc-4.7.3/libcpp/po/da.gmo and gcc-linaro-4.7-2013.07/libcpp/po/da.gmo differ
+Binary files gcc-4.7.3/libcpp/po/de.gmo and gcc-linaro-4.7-2013.07/libcpp/po/de.gmo differ
+Binary files gcc-4.7.3/libcpp/po/el.gmo and gcc-linaro-4.7-2013.07/libcpp/po/el.gmo differ
+Binary files gcc-4.7.3/libcpp/po/eo.gmo and gcc-linaro-4.7-2013.07/libcpp/po/eo.gmo differ
+Binary files gcc-4.7.3/libcpp/po/es.gmo and gcc-linaro-4.7-2013.07/libcpp/po/es.gmo differ
+Binary files gcc-4.7.3/libcpp/po/fi.gmo and gcc-linaro-4.7-2013.07/libcpp/po/fi.gmo differ
+Binary files gcc-4.7.3/libcpp/po/fr.gmo and gcc-linaro-4.7-2013.07/libcpp/po/fr.gmo differ
+Binary files gcc-4.7.3/libcpp/po/id.gmo and gcc-linaro-4.7-2013.07/libcpp/po/id.gmo differ
+Binary files gcc-4.7.3/libcpp/po/ja.gmo and gcc-linaro-4.7-2013.07/libcpp/po/ja.gmo differ
+Binary files gcc-4.7.3/libcpp/po/nl.gmo and gcc-linaro-4.7-2013.07/libcpp/po/nl.gmo differ
+Binary files gcc-4.7.3/libcpp/po/ru.gmo and gcc-linaro-4.7-2013.07/libcpp/po/ru.gmo differ
+Binary files gcc-4.7.3/libcpp/po/sr.gmo and gcc-linaro-4.7-2013.07/libcpp/po/sr.gmo differ
+Binary files gcc-4.7.3/libcpp/po/sv.gmo and gcc-linaro-4.7-2013.07/libcpp/po/sv.gmo differ
+Binary files gcc-4.7.3/libcpp/po/tr.gmo and gcc-linaro-4.7-2013.07/libcpp/po/tr.gmo differ
+Binary files gcc-4.7.3/libcpp/po/uk.gmo and gcc-linaro-4.7-2013.07/libcpp/po/uk.gmo differ
+Binary files gcc-4.7.3/libcpp/po/vi.gmo and gcc-linaro-4.7-2013.07/libcpp/po/vi.gmo differ
+Binary files gcc-4.7.3/libcpp/po/zh_CN.gmo and gcc-linaro-4.7-2013.07/libcpp/po/zh_CN.gmo differ
+Binary files gcc-4.7.3/libcpp/po/zh_TW.gmo and gcc-linaro-4.7-2013.07/libcpp/po/zh_TW.gmo differ
--- a/src/libgcc/ChangeLog
+++ b/src/libgcc/ChangeLog
-@@ -1,3 +1,18 @@
+@@ -1,3 +1,31 @@
++2013-06-08 Walter Lee <walt@tilera.com>
++
++ Backport from mainline:
++ 2013-06-08 Walter Lee <walt@tilera.com>
++
++ * config/tilepro/atomic.h: Don't include stdint.h or features.h.
++ Replace int64_t with long long. Add __extension__ where
++ appropriate.
++
++2013-06-06 Douglas B Rupp <rupp@adacore.com>
++
++ * config.host (arm-wrs-vxworks): Configure with other soft float.
++
+2013-05-20 Chung-Ju Wu <jasonwucj@gmail.com>
+
+ Backport from mainline:
@@ -80253,6 +80596,122 @@
@@ -1 +1 @@
-LIB1ASMFUNCS += _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_tls _call_via_rX _interwork_call_via_rX _clzsi2 _clzdi2
+LIB1ASMFUNCS += _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_tls _call_via_rX _interwork_call_via_rX _clzsi2 _clzdi2 _ctzsi2
+--- a/src/libgcc/config/tilepro/atomic.h
++++ b/src/libgcc/config/tilepro/atomic.h
+@@ -1,6 +1,5 @@
+ /* Macros for atomic functionality for tile.
+- Copyright (C) 2011, 2012
+- Free Software Foundation, Inc.
++ Copyright (C) 2011-2013 Free Software Foundation, Inc.
+ Contributed by Walter Lee (walt@tilera.com)
+
+ This file is free software; you can redistribute it and/or modify it
+@@ -93,8 +92,6 @@
+ compare-and-exchange routine, so may be potentially less efficient. */
+ #endif
+
+-#include <stdint.h>
+-#include <features.h>
+ #ifdef __tilegx__
+ #include <arch/spr_def.h>
+ #else
+@@ -123,9 +120,9 @@
+
+ /* 64-bit integer compare-and-exchange. */
+ static __inline __attribute__ ((always_inline))
+- int64_t arch_atomic_val_compare_and_exchange_8 (volatile int64_t * mem,
+- int64_t oldval,
+- int64_t newval)
++ long long arch_atomic_val_compare_and_exchange_8 (volatile long long
++ *mem, long long oldval,
++ long long newval)
+ {
+ #ifdef __tilegx__
+ __insn_mtspr (SPR_CMPEXCH_VALUE, oldval);
+@@ -140,7 +137,7 @@
+ "R04" (newval_lo), "R05" (newval_hi),
+ "m" (*mem):"r20", "r21", "r22", "r23", "r24", "r25",
+ "r26", "r27", "r28", "r29", "memory");
+- return ((uint64_t) result_hi) << 32 | result_lo;
++ return ((long long) result_hi) << 32 | result_lo;
+ #endif
+ }
+
+@@ -151,11 +148,11 @@
+
+
+ #define arch_atomic_val_compare_and_exchange(mem, o, n) \
+- ({ \
++ __extension__ ({ \
+ (__typeof(*(mem)))(__typeof(*(mem)-*(mem))) \
+ ((sizeof(*(mem)) == 8) ? \
+ arch_atomic_val_compare_and_exchange_8( \
+- (volatile int64_t*)(mem), (__typeof((o)-(o)))(o), \
++ (volatile long long*)(mem), (__typeof((o)-(o)))(o), \
+ (__typeof((n)-(n)))(n)) : \
+ (sizeof(*(mem)) == 4) ? \
+ arch_atomic_val_compare_and_exchange_4( \
+@@ -165,7 +162,7 @@
+ })
+
+ #define arch_atomic_bool_compare_and_exchange(mem, o, n) \
+- ({ \
++ __extension__ ({ \
+ __typeof(o) __o = (o); \
+ __builtin_expect( \
+ __o == arch_atomic_val_compare_and_exchange((mem), __o, (n)), 1); \
+@@ -175,7 +172,7 @@
+ /* Loop with compare_and_exchange until we guess the correct value.
+ Normally "expr" will be an expression using __old and __value. */
+ #define __arch_atomic_update_cmpxchg(mem, value, expr) \
+- ({ \
++ __extension__ ({ \
+ __typeof(value) __value = (value); \
+ __typeof(*(mem)) *__mem = (mem), __old = *__mem, __guess; \
+ do { \
+@@ -190,12 +187,14 @@
+ /* Generic atomic op with 8- or 4-byte variant.
+ The _mask, _addend, and _expr arguments are ignored on tilegx. */
+ #define __arch_atomic_update(mem, value, op, _mask, _addend, _expr) \
+- ({ \
++ __extension__ ({ \
+ ((__typeof(*(mem))) \
+ ((sizeof(*(mem)) == 8) ? (__typeof(*(mem)-*(mem)))__insn_##op( \
+- (void *)(mem), (int64_t)(__typeof((value)-(value)))(value)) : \
++ (volatile void *)(mem), \
++ (long long)(__typeof((value)-(value)))(value)) : \
+ (sizeof(*(mem)) == 4) ? (int)__insn_##op##4( \
+- (void *)(mem), (int32_t)(__typeof((value)-(value)))(value)) : \
++ (volatile void *)(mem), \
++ (int)(__typeof((value)-(value)))(value)) : \
+ __arch_atomic_error_bad_argument_size())); \
+ })
+
+@@ -225,7 +224,7 @@
+ /* Generic atomic op with 8- or 4-byte variant.
+ The _op argument is ignored on tilepro. */
+ #define __arch_atomic_update(mem, value, _op, mask, addend, expr) \
+- ({ \
++ __extension__ ({ \
+ (__typeof(*(mem)))(__typeof(*(mem)-*(mem))) \
+ ((sizeof(*(mem)) == 8) ? \
+ __arch_atomic_update_cmpxchg((mem), (value), (expr)) : \
+@@ -264,13 +263,13 @@
+ __arch_atomic_update_cmpxchg(mem, mask, ~(__old & __value))
+
+ #define arch_atomic_bit_set(mem, bit) \
+- ({ \
++ __extension__ ({ \
+ __typeof(*(mem)) __mask = (__typeof(*(mem)))1 << (bit); \
+ __mask & arch_atomic_or((mem), __mask); \
+ })
+
+ #define arch_atomic_bit_clear(mem, bit) \
+- ({ \
++ __extension__ ({ \
+ __typeof(*(mem)) __mask = (__typeof(*(mem)))1 << (bit); \
+ __mask & arch_atomic_and((mem), ~__mask); \
+ })
--- a/src/libgcc/config.host
+++ b/src/libgcc/config.host
@@ -83,6 +83,9 @@
@@ -80282,6 +80741,15 @@
alpha*-*-linux*)
tmake_file="${tmake_file} alpha/t-alpha alpha/t-ieee t-crtfm alpha/t-linux"
extra_parts="$extra_parts crtfastmath.o"
+@@ -315,7 +328,7 @@
+ md_unwind_header=alpha/vms-unwind.h
+ ;;
+ arm-wrs-vxworks)
+- tmake_file="$tmake_file arm/t-arm arm/t-vxworks t-fdpbit"
++ tmake_file="$tmake_file arm/t-arm arm/t-vxworks t-softfp-sfdf t-softfp-excl arm/t-softfp t-softfp"
+ extra_parts="$extra_parts crti.o crtn.o"
+ ;;
+ arm*-*-freebsd*)
--- a/src/libgcc/longlong.h
+++ b/src/libgcc/longlong.h
@@ -203,7 +203,8 @@
@@ -80979,44 +81447,3 @@
// { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
// { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
// { dg-require-cstdint "" }
---- a/src/maintainer-scripts/gcc_release
-+++ b/src/maintainer-scripts/gcc_release
-@@ -144,7 +144,7 @@
- fi
-
- # Tag the sources.
-- if [ -n "${TAG}" ]; then
-+ if false || [ -n "${TAG}" ]; then
- inform "Tagging sources as ${TAG}"
- # We don't want to overwrite an existing tag. So, if the tag
- # already exists, issue an error message; the release manager can
-@@ -157,13 +157,14 @@
- error "Could not tag sources"
- SVNBRANCH=${TAG}
- fi
-- SVNREV=`${SVN} info "${SVNROOT}/${SVNBRANCH}"|awk '/Revision:/ {print $2}'`
-+ #SVNREV=`${SVN} info "${SVNROOT}/${SVNBRANCH}"|awk '/Revision:/ {print $2}'`
-
- # Export the current sources.
-- inform "Retrieving sources (svn export -r ${SVNREV} ${SVNROOT}/${SVNBRANCH})"
-+ inform "Copying sources (cp -a /scratch/packages/gcc/bzr/4.7 ...)"
-
-- ${SVN} -q export -r${SVNREV} "${SVNROOT}/${SVNBRANCH}" "`basename ${SOURCE_DIRECTORY}`" ||\
-- error "Could not retrieve sources"
-+ #${SVN} -q export -r${SVNREV} "${SVNROOT}/${SVNBRANCH}" "`basename ${SOURCE_DIRECTORY}`" ||\
-+ # error "Could not retrieve sources"
-+ cp -a /scratch/packages/gcc/bzr/4.7 "`basename ${SOURCE_DIRECTORY}`"
-
- # Run gcc_update on them to set up the timestamps nicely, and (re)write
- # the LAST_UPDATED file containing the SVN tag/revision used.
-@@ -184,8 +185,8 @@
- ${SOURCE_DIRECTORY}/gcc/doc/install.texi2html
-
- # Regenerate the NEWS file.
-- contrib/gennews > NEWS || \
-- error "Could not regenerate NEWS files"
-+ #contrib/gennews > NEWS || \
-+ # error "Could not regenerate NEWS files"
-
- # Now, we must build the compiler in order to create any generated
- # files that are supposed to go in the source directory. This is