This is the mail archive of the
gcc-cvs@gcc.gnu.org
mailing list for the GCC project.
r208418 - in /branches/google/gcc-4_8: ./ gcc/ ...
- From: davidxl at gcc dot gnu dot org
- To: gcc-cvs at gcc dot gnu dot org
- Date: Fri, 07 Mar 2014 20:06:30 -0000
- Subject: r208418 - in /branches/google/gcc-4_8: ./ gcc/ ...
Author: davidxl
Date: Fri Mar 7 20:06:28 2014
New Revision: 208418
URL: http://gcc.gnu.org/viewcvs?rev=208418&root=gcc&view=rev
Log:
Merged revisions 208211,208230,208239,208244-208246,208253,208258,208264,208295,208298,208310,208337,208356,208362-208373,208384,208388,208391 via svnmerge from
svn+ssh://davidxl@gcc.gnu.org/svn/gcc/branches/gcc-4_8-branch
........
r208211 | gccadmin | 2014-02-27 16:16:29 -0800 (Thu, 27 Feb 2014) | 1 line
Daily bump.
........
r208230 | jye2 | 2014-02-28 14:00:52 -0800 (Fri, 28 Feb 2014) | 10 lines
2014-02-28 Joey Ye <joey.ye@arm.com>
Backport from mainline r208229
2014-02-28 Joey Ye <joey.ye@arm.com>
PR libgcc/60166
* config/arm/sfp-machine.h (_FP_NANFRAC_H,
_FP_NANFRAC_S, _FP_NANFRAC_D, _FP_NANFRAC_Q):
Set to zero.
........
r208239 | gccadmin | 2014-02-28 16:16:51 -0800 (Fri, 28 Feb 2014) | 1 line
Daily bump.
........
r208244 | jason | 2014-03-01 10:43:24 -0800 (Sat, 01 Mar 2014) | 7 lines
PR c++/60146
* pt.c (tsubst_omp_for_iterator): Don't let substitution of the
DECL_EXPR initialize a non-class iterator.
Conflicts:
gcc/cp/pt.c
........
r208245 | jason | 2014-03-01 10:43:30 -0800 (Sat, 01 Mar 2014) | 3 lines
PR c++/60182
* pt.c (unify): Ignore alias templates when deducing a template
template parameter.
........
r208246 | jason | 2014-03-01 10:44:25 -0800 (Sat, 01 Mar 2014) | 2 lines
PR c++/58845
* typeck.c (cp_build_binary_op): Sorry on vector&&vector.
........
r208253 | gccadmin | 2014-03-01 16:16:38 -0800 (Sat, 01 Mar 2014) | 1 line
Daily bump.
........
r208258 | mikael | 2014-03-02 10:36:42 -0800 (Sun, 02 Mar 2014) | 10 lines
fortran/
PR fortran/60341
* frontend-passes.c (optimize_comparison): Guard two union
accesses with the corresponding tag checks.
testsuite/
PR fortran/60341
* gfortran.dg/str_comp_optimize_1.f90: New test.
........
r208264 | gccadmin | 2014-03-02 16:16:32 -0800 (Sun, 02 Mar 2014) | 1 line
Daily bump.
........
r208295 | bergner | 2014-03-03 14:13:28 -0800 (Mon, 03 Mar 2014) | 13 lines
Backport from mainline
2013-06-20 Torvald Riegel <triegel@redhat.com>
* query.cc (_ITM_inTransaction): Abort when using the HTM fastpath.
(_ITM_getTransactionId): Same.
* config/x86/target.h (htm_transaction_active): New.
2013-06-20 Torvald Riegel <triegel@redhat.com>
PR libitm/57643
* beginend.cc (gtm_thread::begin_transaction): Handle reentrancy in
the HTM fastpath.
........
r208298 | gccadmin | 2014-03-03 16:16:32 -0800 (Mon, 03 Mar 2014) | 1 line
Daily bump.
........
r208310 | rguenth | 2014-03-04 03:02:47 -0800 (Tue, 04 Mar 2014) | 8 lines
2014-03-04 Richard Biener <rguenther@suse.de>
PR tree-optimization/60382
* tree-vect-loop.c (vect_is_simple_reduction_1): Do not consider
dead PHIs a reduction.
* gcc.dg/vect/pr60382.c: New testcase.
........
r208337 | gccadmin | 2014-03-04 16:16:55 -0800 (Tue, 04 Mar 2014) | 1 line
Daily bump.
........
r208356 | gccadmin | 2014-03-05 16:16:32 -0800 (Wed, 05 Mar 2014) | 1 line
Daily bump.
........
r208362 | jakub | 2014-03-05 23:53:17 -0800 (Wed, 05 Mar 2014) | 14 lines
PR preprocessor/60400
Backport from mainline
2013-06-24 Dehao Chen <dehao@google.com>
* files.c (_cpp_stack_include): Fix the highest_location when header
file is guarded by #ifndef and is included twice.
2014-03-03 Jakub Jelinek <jakub@redhat.com>
PR preprocessor/60400
* c-c++-common/cpp/pr60400.c: New test.
* c-c++-common/cpp/pr60400-1.h: New file.
* c-c++-common/cpp/pr60400-2.h: New file.
........
r208363 | jakub | 2014-03-05 23:54:28 -0800 (Wed, 05 Mar 2014) | 9 lines
Backport from mainline
2014-02-05 Jakub Jelinek <jakub@redhat.com>
PR middle-end/57499
* tree-eh.c (cleanup_empty_eh): Bail out on totally empty
bb with no successors.
* g++.dg/torture/pr57499.C: New test.
........
r208364 | jakub | 2014-03-05 23:57:12 -0800 (Wed, 05 Mar 2014) | 24 lines
Backport from mainline
2014-02-08 Jakub Jelinek <jakub@redhat.com>
PR ipa/60026
* ipa-cp.c (determine_versionability): Fail at -O0
or __attribute__((optimize (0))) or -fno-ipa-cp functions.
* tree-sra.c (ipa_sra_preliminary_function_checks): Similarly.
2014-02-06 Jakub Jelinek <jakub@redhat.com>
PR target/60062
* tree.h (opts_for_fn): New inline function.
(opt_for_fn): Define.
* config/i386/i386.c (ix86_function_regparm): Use
opt_for_fn (decl, optimize) instead of optimize.
* gcc.c-torture/execute/pr60062.c: New test.
* gcc.c-torture/execute/pr60072.c: New test.
2014-02-04 Jakub Jelinek <jakub@redhat.com>
PR ipa/60026
* c-c++-common/torture/pr60026.c: New test.
........
r208365 | jakub | 2014-03-05 23:58:16 -0800 (Wed, 05 Mar 2014) | 9 lines
Backport from mainline
2014-02-07 Jakub Jelinek <jakub@redhat.com>
PR preprocessor/56824
* line-map.c (linemap_compare_locations): Look through adhoc locations
for both l0 and l1.
* gcc.dg/pr56824.c: New test.
........
r208366 | jakub | 2014-03-05 23:59:29 -0800 (Wed, 05 Mar 2014) | 10 lines
Backport from mainline
2014-02-11 Richard Henderson <rth@redhat.com>
Jakub Jelinek <jakub@redhat.com>
PR debug/59776
* tree-sra.c (load_assign_lhs_subreplacements): Add VIEW_CONVERT_EXPR
around drhs if type conversion to lacc->type is not useless.
* gcc.dg/guality/pr59776.c: New test.
........
r208367 | jakub | 2014-03-06 00:00:49 -0800 (Thu, 06 Mar 2014) | 9 lines
Backport from mainline
2014-02-11 Jakub Jelinek <jakub@redhat.com>
PR fortran/52370
* trans-decl.c (gfc_build_dummy_array_decl): Set TREE_NO_WARNING
on decl if sym->attr.optional.
* gfortran.dg/pr52370.f90: New test.
........
r208368 | jakub | 2014-03-06 00:01:57 -0800 (Thu, 06 Mar 2014) | 11 lines
Backport from mainline
2014-02-12 Jakub Jelinek <jakub@redhat.com>
PR c/60101
* c-common.c (merge_tlist): If copy is true, call new_tlist,
if false, add ADD itself, rather than vice versa.
(verify_tree): For COND_EXPR, don't call merge_tlist with non-zero
copy. For SAVE_EXPR, only call merge_tlist once.
* c-c++-common/pr60101.c: New test.
........
r208369 | jakub | 2014-03-06 00:02:46 -0800 (Thu, 06 Mar 2014) | 9 lines
Backport from mainline
2014-02-13 Jakub Jelinek <jakub@redhat.com>
PR target/43546
* expr.c (compress_float_constant): If x is a hard register,
extend into a pseudo and then move to x.
* gcc.target/i386/pr43546.c: New test.
........
r208370 | jakub | 2014-03-06 00:10:08 -0800 (Thu, 06 Mar 2014) | 12 lines
Backport from mainline
2014-02-19 Jakub Jelinek <jakub@redhat.com>
PR preprocessor/58844
* macro.c (enter_macro_context): Only push
macro_real_token_count (macro) tokens rather than
macro->count tokens, regardless of
CPP_OPTION (pfile, track-macro-expansion).
* c-c++-common/cpp/pr58844-1.c: New test.
* c-c++-common/cpp/pr58844-2.c: New test.
........
r208371 | jakub | 2014-03-06 00:11:20 -0800 (Thu, 06 Mar 2014) | 11 lines
Backport from mainline
2014-02-19 Jakub Jelinek <jakub@redhat.com>
PR c/37743
* c-common.c (c_common_nodes_and_builtins): When initializing
c_uint{16,32,64}_type_node, also set corresponding
uint{16,32,64}_type_node to the same value.
* g++.dg/ext/builtin-bswap1.C: New test.
* c-c++-common/pr37743.c: New test.
........
r208372 | jakub | 2014-03-06 00:12:02 -0800 (Thu, 06 Mar 2014) | 15 lines
* Makefile.in (tree-ssa-uninit.o): Depend on $(PARAMS_H).
Backport from mainline
2014-02-21 Jakub Jelinek <jakub@redhat.com>
PR tree-optimization/56490
* params.def (PARAM_UNINIT_CONTROL_DEP_ATTEMPTS): New param.
* tree-ssa-uninit.c: Include params.h.
(compute_control_dep_chain): Add num_calls argument, return false
if it exceed PARAM_UNINIT_CONTROL_DEP_ATTEMPTS param, pass
num_calls to recursive call.
(find_predicates): Change dep_chain into normal array, add num_calls
variable and adjust compute_control_dep_chain caller.
(find_def_preds): Likewise.
........
r208373 | jakub | 2014-03-06 00:23:36 -0800 (Thu, 06 Mar 2014) | 4 lines
PR tree-optimization/60276
* tree-vect-data-refs.c (vect_analyze_data_ref_dependence): Avoid
a -Wsign-compare warning.
........
r208384 | doko | 2014-03-06 06:18:55 -0800 (Thu, 06 Mar 2014) | 5 lines
2014-03-06 Matthias Klose <doko@ubuntu.com>
* Makefile.in (s-mlib): Only pass MULTIARCH_DIRNAME if
MULTILIB_OSDIRNAMES is not defined.
........
r208388 | gccadmin | 2014-03-06 16:16:42 -0800 (Thu, 06 Mar 2014) | 1 line
Daily bump.
........
r208391 | ian | 2014-03-06 21:04:59 -0800 (Thu, 06 Mar 2014) | 42 lines
runtime: Fix GC bug caused by Entersyscall modifying reg.
This patch fixes a rare but serious bug. The Go garbage
collector only examines Go stacks. When Go code calls a
function that is not written in Go, it first calls
syscall.Entersyscall. Entersyscall records the position of
the Go stack pointer and saves a copy of all the registers.
If the garbage collector runs while the thread is executing
the non-Go code, the garbage collector fetches the stack
pointer and registers from the saved location.
Entersyscall saves the registers using the getcontext
function. Unfortunately I didn't consider the possibility
that Entersyscall might itself change a register before
calling getcontext. This only matters for callee-saved
registers, as caller-saved registers would be visible on the
saved stack. And it only matters if Entersyscall is compiled
to save and modify a callee-saved register before it calls
getcontext. And it only matters if a garbage collection
occurs while the non-Go code is executing. And it only
matters if the only copy of a valid Go pointer happens to be
in the callee-saved register when Entersyscall is called.
When all those conditions are true, the Go pointer might get
collected incorrectly, leading to memory corruption.
This patch tries to avoid the problem by splitting
Entersyscall into two functions. The first is a simple
function that just calls getcontext and then calls the rest of
Entersyscall. This should fix the problem, provided the
simple Entersyscall function does not itself modify any
callee-saved registers before calling getcontext. That seems
to be true on the systems I checked. But since the argument
to getcontext is an offset from a TLS variable, it won't be
true on a system which needs to save callee-saved registers in
order to get the address of a TLS variable. I don't know why
any system would work that way, but I don't know how to rule
it out. I think that on any such system this will have to be
implemented in assembler. I can't put the ucontext_t
structure on the stack, because this function can not split
stacks, and the ucontext_t structure is large enough that it
could cause a stack overflow.
........
Added:
branches/google/gcc-4_8/gcc/testsuite/c-c++-common/cpp/pr58844-1.c
- copied unchanged from r208391, branches/gcc-4_8-branch/gcc/testsuite/c-c++-common/cpp/pr58844-1.c
branches/google/gcc-4_8/gcc/testsuite/c-c++-common/cpp/pr58844-2.c
- copied unchanged from r208391, branches/gcc-4_8-branch/gcc/testsuite/c-c++-common/cpp/pr58844-2.c
branches/google/gcc-4_8/gcc/testsuite/c-c++-common/cpp/pr60400-1.h
- copied unchanged from r208391, branches/gcc-4_8-branch/gcc/testsuite/c-c++-common/cpp/pr60400-1.h
branches/google/gcc-4_8/gcc/testsuite/c-c++-common/cpp/pr60400-2.h
- copied unchanged from r208391, branches/gcc-4_8-branch/gcc/testsuite/c-c++-common/cpp/pr60400-2.h
branches/google/gcc-4_8/gcc/testsuite/c-c++-common/cpp/pr60400.c
- copied unchanged from r208391, branches/gcc-4_8-branch/gcc/testsuite/c-c++-common/cpp/pr60400.c
branches/google/gcc-4_8/gcc/testsuite/c-c++-common/pr37743.c
- copied unchanged from r208391, branches/gcc-4_8-branch/gcc/testsuite/c-c++-common/pr37743.c
branches/google/gcc-4_8/gcc/testsuite/c-c++-common/pr60101.c
- copied unchanged from r208391, branches/gcc-4_8-branch/gcc/testsuite/c-c++-common/pr60101.c
branches/google/gcc-4_8/gcc/testsuite/c-c++-common/torture/pr60026.c
- copied unchanged from r208391, branches/gcc-4_8-branch/gcc/testsuite/c-c++-common/torture/pr60026.c
branches/google/gcc-4_8/gcc/testsuite/g++.dg/cpp0x/alias-decl-41.C
- copied unchanged from r208391, branches/gcc-4_8-branch/gcc/testsuite/g++.dg/cpp0x/alias-decl-41.C
branches/google/gcc-4_8/gcc/testsuite/g++.dg/ext/builtin-bswap1.C
- copied unchanged from r208391, branches/gcc-4_8-branch/gcc/testsuite/g++.dg/ext/builtin-bswap1.C
branches/google/gcc-4_8/gcc/testsuite/g++.dg/ext/vector27.C
- copied unchanged from r208391, branches/gcc-4_8-branch/gcc/testsuite/g++.dg/ext/vector27.C
branches/google/gcc-4_8/gcc/testsuite/g++.dg/gomp/for-20.C
- copied unchanged from r208391, branches/gcc-4_8-branch/gcc/testsuite/g++.dg/gomp/for-20.C
branches/google/gcc-4_8/gcc/testsuite/g++.dg/torture/pr57499.C
- copied unchanged from r208391, branches/gcc-4_8-branch/gcc/testsuite/g++.dg/torture/pr57499.C
branches/google/gcc-4_8/gcc/testsuite/gcc.c-torture/execute/pr60062.c
- copied unchanged from r208391, branches/gcc-4_8-branch/gcc/testsuite/gcc.c-torture/execute/pr60062.c
branches/google/gcc-4_8/gcc/testsuite/gcc.c-torture/execute/pr60072.c
- copied unchanged from r208391, branches/gcc-4_8-branch/gcc/testsuite/gcc.c-torture/execute/pr60072.c
branches/google/gcc-4_8/gcc/testsuite/gcc.dg/guality/pr59776.c
- copied unchanged from r208391, branches/gcc-4_8-branch/gcc/testsuite/gcc.dg/guality/pr59776.c
branches/google/gcc-4_8/gcc/testsuite/gcc.dg/pr56824.c
- copied unchanged from r208391, branches/gcc-4_8-branch/gcc/testsuite/gcc.dg/pr56824.c
branches/google/gcc-4_8/gcc/testsuite/gcc.dg/vect/pr60382.c
- copied unchanged from r208391, branches/gcc-4_8-branch/gcc/testsuite/gcc.dg/vect/pr60382.c
branches/google/gcc-4_8/gcc/testsuite/gcc.target/i386/pr43546.c
- copied unchanged from r208391, branches/gcc-4_8-branch/gcc/testsuite/gcc.target/i386/pr43546.c
branches/google/gcc-4_8/gcc/testsuite/gfortran.dg/pr52370.f90
- copied unchanged from r208391, branches/gcc-4_8-branch/gcc/testsuite/gfortran.dg/pr52370.f90
branches/google/gcc-4_8/gcc/testsuite/gfortran.dg/str_comp_optimize_1.f90
- copied unchanged from r208391, branches/gcc-4_8-branch/gcc/testsuite/gfortran.dg/str_comp_optimize_1.f90
Modified:
branches/google/gcc-4_8/ (props changed)
branches/google/gcc-4_8/gcc/ (props changed)
branches/google/gcc-4_8/gcc/ChangeLog
branches/google/gcc-4_8/gcc/DATESTAMP
branches/google/gcc-4_8/gcc/Makefile.in
branches/google/gcc-4_8/gcc/c-family/ChangeLog
branches/google/gcc-4_8/gcc/c-family/c-common.c
branches/google/gcc-4_8/gcc/config/i386/i386.c
branches/google/gcc-4_8/gcc/cp/ChangeLog
branches/google/gcc-4_8/gcc/cp/pt.c
branches/google/gcc-4_8/gcc/cp/typeck.c
branches/google/gcc-4_8/gcc/expr.c
branches/google/gcc-4_8/gcc/fortran/ChangeLog
branches/google/gcc-4_8/gcc/fortran/frontend-passes.c
branches/google/gcc-4_8/gcc/fortran/trans-decl.c
branches/google/gcc-4_8/gcc/ipa-cp.c
branches/google/gcc-4_8/gcc/params.def
branches/google/gcc-4_8/gcc/testsuite/ChangeLog
branches/google/gcc-4_8/gcc/tree-eh.c
branches/google/gcc-4_8/gcc/tree-sra.c
branches/google/gcc-4_8/gcc/tree-ssa-uninit.c
branches/google/gcc-4_8/gcc/tree-vect-data-refs.c
branches/google/gcc-4_8/gcc/tree-vect-loop.c
branches/google/gcc-4_8/gcc/tree.h
branches/google/gcc-4_8/libcpp/ChangeLog
branches/google/gcc-4_8/libcpp/line-map.c
branches/google/gcc-4_8/libcpp/macro.c
branches/google/gcc-4_8/libgcc/ChangeLog
branches/google/gcc-4_8/libgcc/config/arm/sfp-machine.h
branches/google/gcc-4_8/libgo/runtime/proc.c
branches/google/gcc-4_8/libitm/ChangeLog
branches/google/gcc-4_8/libitm/beginend.cc
branches/google/gcc-4_8/libitm/config/x86/target.h
branches/google/gcc-4_8/libitm/query.cc
branches/google/gcc-4_8/libjava/classpath/ (props changed)
Propchange: branches/google/gcc-4_8/
('svn:mergeinfo' modified)
Propchange: branches/google/gcc-4_8/
('svnmerge-integrated' modified)
Propchange: branches/google/gcc-4_8/gcc/
('svn:mergeinfo' modified)
Propchange: branches/google/gcc-4_8/libjava/classpath/
('svn:mergeinfo' modified)