Segher Boessenkool [Mon, 11 Apr 2016 07:26:36 +0000 (09:26 +0200)]
libcc1: Clean compiler-name.h (PR70173)
Since the file is generated from a Makefile fragment, it needs to be
added to MOSTLYCLEANFILES. The directory itself is still not deleted
(just like the gnattools and gotools directories).
2016-04-11 Segher Boessenkool <segher@kernel.crashing.org>
libcc1/
PR bootstrap/70173
* Makefile.am (MOSTLYCLEANFILES): New, add compiler-name.h .
(compiler-name.h): Shorten recipe so that it fits the line.
* Makefile.in: Regenerate.
From-SVN: r234874
GCC Administrator [Mon, 11 Apr 2016 00:16:15 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r234872
Paolo Carlini [Sun, 10 Apr 2016 09:32:46 +0000 (09:32 +0000)]
re PR c++/69066 (SFINAE compilation error on lambda with trailing return type)
2016-04-10 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/69066
* g++.dg/cpp1y/pr69066.C: New.
From-SVN: r234869
Steven G. Kargl [Sun, 10 Apr 2016 05:53:06 +0000 (05:53 +0000)]
MAINTAINERS (Fortran maintainer): Remove myself.
2016-04-09 Steven G. Kargl <kargl@gcc.gnu.org>
* MAINTAINERS (Fortran maintainer): Remove myself.
From-SVN: r234868
GCC Administrator [Sun, 10 Apr 2016 00:16:19 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r234867
Jerry DeLisle [Sat, 9 Apr 2016 19:09:02 +0000 (19:09 +0000)]
re PR fortran/68566 (ICE on using unusable array in reshape (double free or corruption))
2016-04-09 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/68566
* array.c (match_array_element_spec): Add check for non-integer.
* simplify.c (gfc_simplify_reshape): If source shape is NULL return.
PR fortran/68566
* gfortran.dg/pr36192.f90: Update test.
* gfortran.dg/pr36192_1.f90: Update test.
* gfortran.dg/real_dimension_1.f: Update test.
* gfortran.dg/parameter_array_init_7.f90: New test.
From-SVN: r234864
John David Anglin [Sat, 9 Apr 2016 17:36:24 +0000 (17:36 +0000)]
re PR testsuite/64039 (FAIL: gcc.dg/tree-ssa/ssa-dom-cse-2.c scan-tree-dump optimized "return 28;")
PR testsuite/64039
* gcc.dg/tree-ssa/ssa-dom-cse-2.c: xfail scan-tree-dump on hppa*64*-*-*.
From-SVN: r234863
John David Anglin [Sat, 9 Apr 2016 17:21:50 +0000 (17:21 +0000)]
pr70317.c: Add -fno-common on hppa*-*-hpux*.
* gcc.dg/pr70317.c: Add -fno-common on hppa*-*-hpux*.
From-SVN: r234862
John David Anglin [Sat, 9 Apr 2016 17:15:15 +0000 (17:15 +0000)]
re PR rtl-optimization/66669 (FAIL: gcc.dg/loop-8.c)
PR rtl-optimization/66669
* gcc.dg/loop-8.c: Skip on hppa*-*-*.
From-SVN: r234861
John David Anglin [Sat, 9 Apr 2016 17:09:43 +0000 (17:09 +0000)]
prod-options.c: Adjust scan for hppa*64*-*-*.
* gcc.dg/debug/dwarf2/prod-options.c: Adjust scan for hppa*64*-*-*.
From-SVN: r234860
John David Anglin [Sat, 9 Apr 2016 16:45:31 +0000 (16:45 +0000)]
pic-1.c: Skip on hppa*-*-*.
* gcc.dg/pic-1.c: Skip on hppa*-*-*.
* gcc.dg/pie-1.c: Likewise.
* gcc.dg/pic-3.c: Skip on hppa*64*-*-*.
* gcc.dg/pic-4.c: Likewise.
* gcc.dg/pie-3.c: Likewise.
* gcc.dg/pie-4.c: Likewise.
From-SVN: r234859
John David Anglin [Sat, 9 Apr 2016 16:04:36 +0000 (16:04 +0000)]
uninit-19.c: Fix warning line for hppa*64*-*-*.
* gcc.dg/uninit-19.c: Fix warning line for hppa*64*-*-*.
From-SVN: r234856
John David Anglin [Sat, 9 Apr 2016 15:54:29 +0000 (15:54 +0000)]
re PR tree-optimization/68644 (FAIL: gcc.dg/tree-ssa/ivopts-lt-2.c scan-tree-dump-times ivopts "PHI <p_" 1)
PR tree-optimization/68644
* gcc.dg/tree-ssa/ivopts-lt-2.c: Skip on hppa*-*-*.
From-SVN: r234854
John David Anglin [Sat, 9 Apr 2016 15:43:05 +0000 (15:43 +0000)]
re PR testsuite/64886 (FAIL: gcc.dg/pr64434.c scan-rtl-dump-times expand "Swap operands" 1)
PR rtl-optimization/64886
* gcc.dg/pr64434.c: Skip on hppa*-*-hpux*.
From-SVN: r234852
Tom de Vries [Sat, 9 Apr 2016 15:28:24 +0000 (15:28 +0000)]
Fix pdr accesses order
2016-04-09 Tom de Vries <tom@codesourcery.com>
PR tree-optimization/68953
* graphite-sese-to-poly.c (pdr_add_memory_accesses): Order accesses from
first to last subscript.
* gcc.dg/graphite/pr68953.c: New test.
From-SVN: r234851
Dominique d'Humieres [Sat, 9 Apr 2016 13:29:32 +0000 (15:29 +0200)]
re PR fortran/70592 (Addressing error in dynamically-allocated character array)
2016-04-09 Dominique d'Humieres <dominiq@lps.ens.fr>
PR fortran/70592
* gfortran.dg/deferred_character_16.f90: New test.
From-SVN: r234850
Jakub Jelinek [Sat, 9 Apr 2016 11:23:51 +0000 (13:23 +0200)]
re PR tree-optimization/70586 (wrong code at -O2 and -O3 on x86_64-linux-gnu in 32-bit and 64-bit modes)
PR tree-optimization/70586
* tree-ssa-ifcombine.c (bb_no_side_effects_p): Return false
for any calls.
* gcc.c-torture/execute/pr70586.c: New test.
From-SVN: r234849
Dominique d'Humieres [Sat, 9 Apr 2016 09:24:45 +0000 (11:24 +0200)]
re PR sanitizer/70573 (FAIL: c-c++-common/asan/halt_on_error-1.c -O* execution test x86_64-apple-darwin15)
2016-04-09 Dominique d'Humieres <dominiq@lps.ens.fr>
PR sanitizer/70573
* c-c++-common/asan/halt_on_error-1.c: Replace memset
with __builtin_memset
* c-c++-common/asan/halt_on_error-2.c: Likewise.
From-SVN: r234848
GCC Administrator [Sat, 9 Apr 2016 00:16:15 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r234846
Cesar Philippidis [Fri, 8 Apr 2016 21:09:47 +0000 (14:09 -0700)]
re PR lto/70289 ([openacc] ICE in input_varpool_node)
gcc/
PR lto/70289
PR ipa/70348
PR tree-optimization/70373
PR middle-end/70533
PR middle-end/70534
PR middle-end/70535
* gimplify.c (gimplify_adjust_omp_clauses): Add or adjust data
clauses for acc parallel reductions as necessary. Error on those
that are private.
* omp-low.c (scan_sharing_clauses): Don't install variables which
are used in acc parallel reductions.
(lower_rec_input_clauses): Remove dead code.
(lower_oacc_reductions): Add support for reference reductions.
(lower_reduction_clauses): Remove dead code.
(lower_omp_target): Don't remap variables appearing in acc parallel
reductions.
* tree.h (OMP_CLAUSE_MAP_IN_REDUCTION): New macro.
gcc/testsuite/
* c-c++-common/goacc/reduction-5.c: New test.
* c-c++-common/goacc/reduction-promotions.c: New test.
* gfortran.dg/goacc/reduction-3.f95: New test.
* gfortran.dg/goacc/reduction-promotions.f90: New test.
libgomp/
* testsuite/libgomp.oacc-c-c++-common/loop-reduction-gang-np-1.c: New
test.
* testsuite/libgomp.oacc-c-c++-common/loop-reduction-gw-np-1.c: New
test.
* testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-1.c: New
test.
* testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-2.c: New
test.
* testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-3.c: New
test.
* testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-4.c: New
test.
* testsuite/libgomp.oacc-c-c++-common/loop-reduction-vector-p-1.c: New
test.
* testsuite/libgomp.oacc-c-c++-common/loop-reduction-vector-p-2.c: New
test.
* testsuite/libgomp.oacc-c-c++-common/loop-reduction-worker-p-1.c: New
test.
* testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-1.c: New test.
* testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-2.c: New test.
* testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-3.c: New test.
* testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-1.c: New
test.
* testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-2.c: New
test.
* testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-3.c: New
test.
* testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-4.c: New
test.
* testsuite/libgomp.oacc-c-c++-common/par-reduction-1.c: Add test
coverage.
* testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Likewise.
* testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
* testsuite/libgomp.oacc-c-c++-common/parallel-reduction.c: New test.
* testsuite/libgomp.oacc-c-c++-common/pr70289.c: New test.
* testsuite/libgomp.oacc-c-c++-common/pr70373.c: New test.
* testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Add test
coverage.
* testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Likewise.
* testsuite/libgomp.oacc-c-c++-common/reduction-3.c: Likewise.
* testsuite/libgomp.oacc-c-c++-common/reduction-4.c: Likewise.
* testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Likewise.
* testsuite/libgomp.oacc-c-c++-common/reduction-6.c: New test.
* testsuite/libgomp.oacc-c-c++-common/reduction.h: New test.
* testsuite/libgomp.oacc-fortran/parallel-reduction.f90: New test.
* testsuite/libgomp.oacc-fortran/pr70289.f90: New test.
* testsuite/libgomp.oacc-fortran/reduction-1.f90: Add test coverage.
* testsuite/libgomp.oacc-fortran/reduction-2.f90: Likewise.
* testsuite/libgomp.oacc-fortran/reduction-3.f90: Likewise.
* testsuite/libgomp.oacc-fortran/reduction-4.f90: Likewise.
* testsuite/libgomp.oacc-fortran/reduction-5.f90: Likewise.
* testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
* testsuite/libgomp.oacc-fortran/reduction-7.f90: New test.
From-SVN: r234840
Joseph Myers [Fri, 8 Apr 2016 20:57:02 +0000 (21:57 +0100)]
Regenerate .pot files.
gcc/po:
* gcc.pot: Regenerate.
libcpp/po:
* cpplib.pot: Regenerate.
From-SVN: r234839
Patrick Palka [Fri, 8 Apr 2016 20:17:10 +0000 (20:17 +0000)]
Fix PR c++/70590 (error: location references block not in block tree)
gcc/cp/ChangeLog:
PR c++/70590
PR c++/70452
* constexpr.c (cxx_eval_outermost_expression): Call unshare_expr
on the result if it's not a CONSTRUCTOR.
gcc/testsuite/ChangeLog:
PR c++/70590
PR c++/70452
* g++.dg/pr70590.C: New test.
* g++.dg/pr70590-2.C: New test.
From-SVN: r234837
Jakub Jelinek [Fri, 8 Apr 2016 17:28:20 +0000 (19:28 +0200)]
re PR middle-end/70593 (Miscompilation of xen starting with r226901)
PR middle-end/70593
* tree-ssa-coalesce.c (build_ssa_conflict_graph): For stmt
with multiple SSA_NAME defs, force the outputs other than first
to be live before calling live_track_process_def on each output.
* gcc.target/i386/pr70593.c: New test.
From-SVN: r234834
Jakub Jelinek [Fri, 8 Apr 2016 17:21:17 +0000 (19:21 +0200)]
re PR target/70574 (wrong code with -mavx2, read of partially initialised stack variable)
PR rtl-optimization/70574
* fwprop.c (forward_propagate_and_simplify): Don't add
REG_EQUAL note if DF_REF_REG (use) is a paradoxical subreg.
(try_fwprop_subst): Don't add REG_EQUAL note if there are any
paradoxical subregs within *loc.
* gcc.target/i386/avx2-pr70574.c: New test.
From-SVN: r234833
Thomas Schwinge [Fri, 8 Apr 2016 13:47:37 +0000 (15:47 +0200)]
Complete changes to "Ignore -ftree-parallelize-loops={0,1} using gt"
Apply the r225764 and r233573 changes to all relevant spec strings.
gcc/
* config/arc/arc.h (LINK_COMMAND_SPEC): Use gt to ignore
-ftree-parallelize-loops={0,1}.
* config/darwin.h (LINK_COMMAND_SPEC_A): Likewise.
* config/i386/mingw32.h (GOMP_SELF_SPECS): Likewise.
* config/ia64/hpux.h (LIB_SPEC): Likewise.
* config/pa/pa-hpux11.h (LIB_SPEC): Likewise.
* config/pa/pa64-hpux.h (LIB_SPEC): Likewise.
From-SVN: r234831
Bernd Schmidt [Fri, 8 Apr 2016 12:17:03 +0000 (12:17 +0000)]
Fix PR number in ChangeLog
From-SVN: r234830
Marcel Böhme [Fri, 8 Apr 2016 12:10:21 +0000 (12:10 +0000)]
Fix memory allocation size overflows (PR69687, patch by Marcel Böhme)
PR c++/69687
* cplus-dem.c: Include <limits.h> if available.
(INT_MAX): Define if necessary.
(remember_type, remember_Ktype, register_Btype, string_need):
Abort if we detect cases where we the size of the allocation would
overflow.
From-SVN: r234829
Marcel Böhme [Fri, 8 Apr 2016 12:06:59 +0000 (12:06 +0000)]
Handle an overflow case (PR70498, patch by Marcel Böhme).
PR c++/70498
* cplus-dem.c (gnu_special): Handle case where consume_count returns
-1.
From-SVN: r234828
Maxim Ostapenko [Fri, 8 Apr 2016 10:46:13 +0000 (10:46 +0000)]
re PR sanitizer/70541 (unnoticed invalid dereference when using address sanitizer)
2016-04-08 Maxim Ostapenko <m.ostapenko@samsung.com>
PR sanitizer/70541
* asan.c (instrument_derefs): If we get unknown location, extract it
with EXPR_LOCATION.
(maybe_instrument_call): Instrument gimple_call's arguments if needed.
* c-c++-common/asan/pr70541.c: New test.
From-SVN: r234827
Tom de Vries [Fri, 8 Apr 2016 09:41:16 +0000 (09:41 +0000)]
Remove incorrect warning for parallel implicit firstprivate clause
2016-04-08 Tom de Vries <tom@codesourcery.com>
* omp-low.c (lower_omp_target): Set TREE_NO_WARNING for oacc
implicit firstprivate clause.
* c-c++-common/goacc/uninit-firstprivate-clause.c: New test.
* gfortran.dg/goacc/uninit-firstprivate-clause.f95: New test.
From-SVN: r234826
Kyrylo Tkachov [Fri, 8 Apr 2016 09:39:44 +0000 (09:39 +0000)]
[ARM] PR target/70566 Check that condition register is dead in tst-imm -> lsls-imm Thumb2 peepholes
PR target/70566
* config/arm/thumb2.md (tst + branch-> lsls + branch
peephole below *orsi_not_shiftsi_si): Require that condition
register is dead after the peephole.
(second peephole after the above): Likewise.
* gcc.c-torture/execute/pr70566.c: New test.
From-SVN: r234825
Tom de Vries [Fri, 8 Apr 2016 08:48:12 +0000 (08:48 +0000)]
Add goacc/uninit-copy-clause.{c,f95} testcases
2016-04-08 Tom de Vries <tom@codesourcery.com>
* c-c++-common/goacc/uninit-copy-clause.c: New test.
* gfortran.dg/goacc/uninit-copy-clause.f95: New test.
From-SVN: r234824
Alan Modra [Fri, 8 Apr 2016 02:11:52 +0000 (11:41 +0930)]
PR70117, ppc long double isinf
gcc/
PR target/70117
* builtins.c (fold_builtin_classify): For IBM extended precision,
look at just the high-order double to test for NaN.
(fold_builtin_interclass_mathfn): Similarly for Inf. For isnormal
test just the high double for Inf but both doubles for subnormal
limit.
gcc/testsuite/
* gcc.target/powerpc/pr70117.c: New.
From-SVN: r234821
GCC Administrator [Fri, 8 Apr 2016 00:16:17 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r234820
Jakub Jelinek [Thu, 7 Apr 2016 21:45:26 +0000 (23:45 +0200)]
re PR testsuite/70581 (gcc.dg/lto/simd-function FAILs)
PR testsuite/70581
* gcc.dg/lto/simd-function_0.c: New test.
From-SVN: r234817
Jakub Jelinek [Thu, 7 Apr 2016 21:32:05 +0000 (23:32 +0200)]
cgraph.h (struct cgraph_simd_clone): Add mask_mode field.
* cgraph.h (struct cgraph_simd_clone): Add mask_mode field.
* omp-low.c (simd_clone_init_simd_arrays, simd_clone_adjust): Handle
node->simdclone->mask_mode != VOIDmode masks.
(simd_clone_adjust_argument_types): Likewise. Move sc var definition
earlier, use it instead of node->simdclone.
* config/i386/i386.c (ix86_simd_clone_compute_vecsize_and_simdlen):
Set clonei->mask_mode.
* c-c++-common/attr-simd.c: Add scan-assembler* directives for AVX512F
clones.
* c-c++-common/attr-simd-2.c: Likewise.
* c-c++-common/attr-simd-4.c: Likewise.
* gcc.dg/gomp/simd-clones-2.c: Likewise.
* gcc.dg/gomp/simd-clones-3.c: Likewise.
From-SVN: r234816
Thomas Preud'homme [Thu, 7 Apr 2016 16:19:20 +0000 (16:19 +0000)]
re PR testsuite/70553 (pr70496.c should exclude Thumb only targets)
2016-04-07 Thomas Preud'homme <thomas.preudhomme@arm.com>
gcc/testsuite/
PR testsuite/70553
* gcc.target/arm/pr70496.c: Also require arm_arm_ok effective target.
From-SVN: r234811
Patrick Palka [Thu, 7 Apr 2016 16:12:05 +0000 (16:12 +0000)]
Avoid needless unsharing during constexpr evaluation (PR c++/70452)
gcc/cp/ChangeLog:
PR c++/70452
* constexpr.c (find_constructor): New function.
(unshare_constructor): New function.
(cxx_eval_call_expression): Use unshare_constructor instead of
unshare_expr.
(find_array_ctor_elt): Likewise.
(cxx_eval_vec_init_1): Likewise.
(cxx_eval_store_expression): Likewise.
(cxx_eval_constant_expression): Likewise.
From-SVN: r234810
Thomas Schwinge [Thu, 7 Apr 2016 15:21:37 +0000 (17:21 +0200)]
Scan for parallelization of the oacc kernels test-cases in gfortran.dg/goacc
gcc/testsuite/
* gfortran.dg/goacc/kernels-loop-2.f95: Scan for parallelization.
* gfortran.dg/goacc/kernels-loop-data-2.f95: Likewise.
* gfortran.dg/goacc/kernels-loop-data-enter-exit-2.f95: Likewise.
* gfortran.dg/goacc/kernels-loop-data-enter-exit.f95: Likewise.
* gfortran.dg/goacc/kernels-loop-data-update.f95: Likewise.
* gfortran.dg/goacc/kernels-loop-data.f95: Likewise.
* gfortran.dg/goacc/kernels-loop.f95: Likewise.
* gfortran.dg/goacc/kernels-loop-n.f95: Likewise, XFAILed.
Co-Authored-By: Tom de Vries <tom@codesourcery.com>
From-SVN: r234809
Jonathan Wakely [Thu, 7 Apr 2016 14:26:24 +0000 (15:26 +0100)]
* testsuite/30_threads/thread/70503.cc: Adjust from xfail to pass.
From-SVN: r234808
GCC Administrator [Thu, 7 Apr 2016 00:16:13 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r234805
Patrick Palka [Wed, 6 Apr 2016 23:10:14 +0000 (23:10 +0000)]
Fix C++ side of PR c/70436 (missing -Wparentheses warnings)
gcc/cp/ChangeLog:
PR c/70436
* parser.c (cp_parser_iteration_statement): New parameter IF_P.
Pass it through to cp_parser_already_scoped_statement.
(cp_parser_already_scoped_statement): New parameter IF_P. Pass
it through to cp_parser_statement.
(cp_parser_statement): Pass IF_P through to
cp_parser_iteration_statement.
(cp_parser_pragma): Adjust call to
cp_parser_iteration_statement.
gcc/testsuite/ChangeLog:
PR c/70436
* g++.dg/warn/Wparentheses-29.C: New test.
From-SVN: r234802
Patrick Palka [Wed, 6 Apr 2016 23:07:21 +0000 (23:07 +0000)]
Fix new -Wparentheses warnings encountered during bootstrap
gcc/ChangeLog:
PR c/70436
* gimplify.c (gimplify_omp_ordered): Add explicit braces to
resolve a future -Wparentheses warning.
* omp-low.c (scan_sharing_clauses): Likewise.
* tree-parloops.c (eliminate_local_variables): Likewise.
gcc/cp/ChangeLog:
PR c/70436
* cp-tree.h (FOR_EACH_CLONE): Restructure macro to avoid
potentially generating a future -Wparentheses warning in its
callers.
gcc/fortran/ChangeLog:
PR c/70436
* openmp.c (gfc_find_omp_udr): Add explicit braces to resolve a
future -Wparentheses warning.
gcc/testsuite/ChangeLog:
PR c/70436
* g++.dg/plugin/pragma_plugin.c (handle_pragma_sayhello): Add
explicit braces to resolve a future -Wparentheses warning.
From-SVN: r234801
Richard Henderson [Wed, 6 Apr 2016 18:35:16 +0000 (11:35 -0700)]
re PR preprocessor/61817 (Inconsistent location of tokens in the expansion list of a built-in macro)
PR preprocessor/61817
PR preprocessor/69391
* internal.h (_cpp_builtin_macro_text): Update decl.
* macro.c (_cpp_builtin_macro_text): Accept location for __LINE__.
(builtin_macro): Accept a second location for __LINE__.
(enter_macro_context): Compute both virtual and real expansion
locations for the macro.
* gcc.dg/pr61817-1.c: New test.
* gcc.dg/pr61817-2.c: New test.
* gcc.dg/pr69391-1.c: New test.
* gcc.dg/pr69391-2.c: New test.
From-SVN: r234794
Vladimir Makarov [Wed, 6 Apr 2016 16:48:36 +0000 (16:48 +0000)]
re PR rtl-optimization/70398 (gcc.dg/vect/slp-multitypes-9.c FAILs with -fno-tree-loop-optimize -fno-tree-ter)
2016-04-06 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/70398
* lra-constraints.c (process_address_1): Check zero scale and code
for reloading with zero scale.
2016-04-06 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/70398
* testsuite/gcc.target/aarch64/pr70398.c: New.
From-SVN: r234792
Jason Merrill [Wed, 6 Apr 2016 16:22:45 +0000 (12:22 -0400)]
* class.c (check_abi_tags): Fix function template handling.
From-SVN: r234790
Eric Botcazou [Wed, 6 Apr 2016 15:28:18 +0000 (15:28 +0000)]
* gcc.c-torture/execute/
20101011-1.c (__VISIUM__): Set DO_TEST to 0.
From-SVN: r234787
Uros Bizjak [Wed, 6 Apr 2016 15:09:37 +0000 (17:09 +0200)]
sse.md (shuffletype): Add V32HI and V4TI modes.
* config/i386/sse.md (shuffletype): Add V32HI and V4TI modes.
(ssescalarsize): Add V8SF, V4SF, V4DF and V2DF modes.
From-SVN: r234784
Eric Botcazou [Wed, 6 Apr 2016 15:07:49 +0000 (15:07 +0000)]
Makefile.am (libstdc++-symbols.ver): Remove useless /dev/null.
* src/Makefile.am (libstdc++-symbols.ver): Remove useless /dev/null.
* src/Makefile.in: Regenerate.
From-SVN: r234782
Yvan Roux [Wed, 6 Apr 2016 15:07:10 +0000 (15:07 +0000)]
guality.h (main): Avoid GDB being blocked on signals.
2016-04-06 Yvan Roux <yvan.roux@linaro.org>
Pedro Alves <palves@redhat.com>
* gcc.dg/guality/guality.h (main): Avoid GDB being blocked on signals.
Co-Authored-By: Pedro Alves <palves@redhat.com>
From-SVN: r234781
Jakub Jelinek [Wed, 6 Apr 2016 12:47:19 +0000 (14:47 +0200)]
i386.c (ix86_simd_clone_compute_vecsize_and_simdlen): Add support for AVX512F clones...
* config/i386/i386.c (ix86_simd_clone_compute_vecsize_and_simdlen):
Add support for AVX512F clones, include them by default for
exported OpenMP declare simd functions. For AVX2 allow simdlen 32
and use it if charasteric type is 8-bit, for AVX512F allow simdlen
up to 128.
* lib/target-supports.exp (check_effective_target_vect_simd_clones):
Check for avx512f effective targets instead of avx2.
* gcc.dg/gomp/declare-simd-1.c: Add scan-assembler-times directives
for AVX512F clones.
* gcc.dg/gomp/declare-simd-3.c: Likewise.
* g++.dg/gomp/declare-simd-1.C: Likewise.
* g++.dg/gomp/declare-simd-3.C: Likewise.
* g++.dg/gomp/declare-simd-4.C: Likewise.
From-SVN: r234780
Jakub Jelinek [Wed, 6 Apr 2016 12:42:24 +0000 (14:42 +0200)]
re PR middle-end/70550 (-Wuninitialized false positives in OpenMP code)
PR middle-end/70550
* tree.h (OMP_CLAUSE_FIRSTPRIVATE_IMPLICIT): Define.
* gimplify.c (gimplify_adjust_omp_clauses_1): Set it for implicit
firstprivate clauses.
* omp-low.c (lower_send_clauses): Set TREE_NO_WARNING for
OMP_CLAUSE_FIRSTPRIVATE_IMPLICIT !by_ref vars in task contexts.
(lower_omp_target): Set TREE_NO_WARNING for
non-addressable possibly uninitialized vars which are copied into
addressable temporaries or copied for GOMP_MAP_FIRSTPRIVATE_INT.
* c-c++-common/gomp/pr70550-1.c: New test.
* c-c++-common/gomp/pr70550-2.c: New test.
From-SVN: r234779
GCC Administrator [Wed, 6 Apr 2016 00:16:14 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r234771
Nathan Sidwell [Tue, 5 Apr 2016 23:47:21 +0000 (23:47 +0000)]
re PR c++/70512 (ICE on valid code on x86_64-linux-gnu: canonical types differ for identical types)
PR c++/70512
* class.c (fixup_may_alias): New.
(fixup_attribute_variants): Call it.
* g++.dg/ext/attribute-may-alias-5.C: New.
From-SVN: r234768
John David Anglin [Tue, 5 Apr 2016 23:42:36 +0000 (23:42 +0000)]
predicates.md (integer_store_memory_operand): Accept REG+D operands with a large offset when reload_in_progress is true.
* config/pa/predicates.md (integer_store_memory_operand): Accept
REG+D operands with a large offset when reload_in_progress is true.
(floating_point_store_memory_operand): Likewise.
From-SVN: r234765
Jakub Jelinek [Tue, 5 Apr 2016 21:33:37 +0000 (23:33 +0200)]
re PR c++/70336 (Incorrect Wconversion warning)
PR c++/70336
* match.pd (nested int casts): Limit to GIMPLE.
* c-c++-common/pr70336.c: New test.
* gcc.dg/torture/builtin-isinf_sign-1.c (foo): Guard tests
no longer optimized away at -O0 with #ifndef __OPTIMIZE__.
From-SVN: r234764
Jan Hubicka [Tue, 5 Apr 2016 20:58:56 +0000 (22:58 +0200)]
re PR ipa/66223 (Diagnostic of pure virtual function call broken, including __cxa_pure_virtual)
PR ipa/66223
* ipa-devirt.c (maybe_record_node): Fix comment; use
SANITIZE_UNREACHABLE instead of SANITIZE_UNDEFINED.
* g++.dg/ipa/devirt-51.C: Use -fsanitize=unreachable.
From-SVN: r234762
Jonathan Wakely [Tue, 5 Apr 2016 19:03:46 +0000 (20:03 +0100)]
Restore atomic builtins usage in libstdc++-v3
PR libstdc++/70554
* acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Don't test
__atomic_fetch_add for bool.
* configure: Regenerate.
From-SVN: r234761
Jonathan Wakely [Tue, 5 Apr 2016 17:21:48 +0000 (18:21 +0100)]
* testsuite/30_threads/thread/70503.cc: Require -static to work.
From-SVN: r234757
Jakub Jelinek [Tue, 5 Apr 2016 17:05:23 +0000 (19:05 +0200)]
re PR rtl-optimization/70542 (Wrong code with -O3 -mavx2.)
PR rtl-optimization/70542
* ree.c (add_removable_extension): For VECTOR_MODE_P punt
if there are any uses other than insn or debug insns.
* gcc.dg/torture/pr70542.c: New test.
* gcc.target/i386/avx2-pr70542.c: New test.
From-SVN: r234756
Marc Glisse [Tue, 5 Apr 2016 17:01:52 +0000 (19:01 +0200)]
re PR tree-optimization/70509 (wrong code with extract from a v64qi)
PR tree-optimization/70509
* simplify-rtx.c (simplify_binary_operation_1) <case VEC_SELECT>:
Shift HOST_WIDE_INT_1U instead of 1.
Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r234755
Zdenek Sojka [Tue, 5 Apr 2016 16:58:50 +0000 (18:58 +0200)]
re PR tree-optimization/70509 (wrong code with extract from a v64qi)
PR tree-optimization/70509
* tree-ssa-forwprop.c (simplify_bitfield_ref): Use bitsize_int instead
of the vector base type for index.
* gcc.target/i386/avx512bw-pr70509.c: New test.
From-SVN: r234754
Patrick Palka [Tue, 5 Apr 2016 16:40:00 +0000 (16:40 +0000)]
Fix PR c++/70452 (regression in C++ parsing performance)
gcc/cp/ChangeLog:
PR c++/70452
* constexpr.c (struct fundef_copy): New struct.
(struct fundef_copies_table_t): New struct.
(fundef_copies_table): New static variable.
(maybe_initialize_fundef_copies_table): New static function.
(get_fundef_copy): New static function.
(save_fundef_copy): New static function.
(cxx_eval_call_expression): Use get_fundef_copy, and
save_fundef_copy.
(constexpr_call_table): Add "deletable" GTY marker.
gcc/testsuite/ChangeLog:
PR c++/70452
* g++.dg/ext/constexpr-vla4.C: New test.
From-SVN: r234753
Uros Bizjak [Tue, 5 Apr 2016 16:26:40 +0000 (18:26 +0200)]
re PR target/70510 (ICE: output_operand: invalid %-code with -mavx512bw -masm=intel when emitting vpbroatcast)
PR target/70510
* config/i386/sse.md (iptr): Add V64QI, V32HI, V16SI and V8DI modes.
testsuite/ChangeLog:
PR target/70510
* gcc.target/i386/pr70510.c: New test.
From-SVN: r234752
Richard Biener [Tue, 5 Apr 2016 14:26:59 +0000 (14:26 +0000)]
re PR middle-end/70526 (GCC 6 miscompiles Firefox JIT compiler)
2016-04-05 Richard Biener <rguenther@suse.de>
PR tree-optimization/70526
* tree-sra.c (build_ref_for_offset): Use prev_base to
extract the alias pointer type.
* g++.dg/torture/pr70526.C: New testcase.
From-SVN: r234749
Richard Biener [Tue, 5 Apr 2016 14:25:35 +0000 (14:25 +0000)]
dse.c (struct store_info): Remove alias_set member.
2016-04-05 Richard Biener <rguenther@suse.de>
* dse.c (struct store_info): Remove alias_set member.
(struct read_info_type): Likewise.
(clear_alias_group, clear_alias_mode_table, clear_alias_mode_holder,
spill_deleted, clear_alias_set_lookup): Remove.
(get_group_info): Remove dead base == NULL_RTX case.
(dse_step0): Remove initialization of removed variables.
(delete_dead_store_insn): Reomve alias set dumping.
(free_read_records): Remove alias_set handling.
(canon_address): Remove alias_set_out parameter.
(record_store): Remove spill_alias_set, it's always zero.
(check_mem_read_rtx): Likewise.
(dse_step2): Rename from ...
(dse_step2_nospill): ... this. Adjust.
(scan_stores): Rename from ...
(scan_stores_nospill): ... this.
(scan_reads): Rename from ...
(scan_reads_nospill): ... this.
(scan_stores_spill, scan_reads_spill): Remove.
(dse_step3_scan): Remove for_spills argument which is always false.
(dse_step3): Likewise.
(dse_step5): Rename from ...
(dse_step5_nospill): ... this. Remove alias_set handling.
(rest_of_handle_dse): Adjust.
From-SVN: r234748
Jonathan Wakely [Tue, 5 Apr 2016 13:35:32 +0000 (14:35 +0100)]
Ensure std::thread helpers have internal linkage
PR libstdc++/70503
* src/c++11/thread.cc (execute_native_thread_routine,
execute_native_thread_routine_compat): Give internal linkage.
* testsuite/30_threads/thread/70503.cc: New test.
From-SVN: r234746
Ville Voutilainen [Tue, 5 Apr 2016 11:31:30 +0000 (14:31 +0300)]
re PR libstdc++/70437 (Instantiation loop with pair and is_constructible)
PR libstdc++/70437
* include/bits/stl_pair.h (_ConstructiblePair,
_ImplicitlyConvertiblePair, _MoveConstructiblePair,
_ImplicitlyMoveConvertiblePair): Add shortcut conditions
for same-type cases.
* testsuite/20_util/pair/70437.cc: New.
From-SVN: r234743
Jakub Jelinek [Tue, 5 Apr 2016 08:15:09 +0000 (10:15 +0200)]
re PR target/70525 (generating 'vpandn' without the mode suffix, gnu as fails to assemble (-mavx512bw))
PR target/70525
* config/i386/sse.md (*andnot<mode>3): Simplify assertions.
Use vpandn<ssemodesuffix> for V16SI/V8DImode, vpandnq for
V32HI/V64QImode, don't use <mask_operand3_1>, fix up formatting.
(*andnot<mode>3_mask): Remove insn with VI12_AVX512VL iterator.
* gcc.target/i386/pr70525.c: New test.
From-SVN: r234739
Richard Biener [Tue, 5 Apr 2016 08:05:06 +0000 (08:05 +0000)]
re PR middle-end/70499 (internal compiler error: in make_ssa_name_fn, at tree-ssanames.c:266)
2016-04-05 Richard Biener <rguenther@suse.de>
PR middle-end/70499
* gimplify-me.c (gimple_regimplify_operands): Do not rewrite
non-register type temporaries into SSA.
* g++.dg/torture/pr70499.C: New testcase.
From-SVN: r234738
Richard Biener [Tue, 5 Apr 2016 07:23:49 +0000 (07:23 +0000)]
20030814-6.c: Fix testcase, disable FRE, remove XFAIL.
2016-04-05 Richard Biener <rguenther@suse.de>
* gcc.dg/tree-ssa/
20030814-6.c: Fix testcase, disable FRE,
remove XFAIL.
From-SVN: r234737
Patrick Palka [Tue, 5 Apr 2016 01:20:00 +0000 (01:20 +0000)]
Remove class cache_map and use ggc hash_maps instead (PR c++/70452)
gcc/cp/ChangeLog:
PR c++/70452
* cp-tree.h (class cache_map): Remove.
* constexpr.c (cv_cache): Change type to
GTY((deletable)) hash_map<tree, tree> *.
(maybe_constant_value): Adjust following the change to cv_cache.
(clear_cv_cache): New static function.
(clear_cv_and_fold_caches): Use it.
* cp-gimplify.c (fold_cache): Change type to
GTY((deletable)) hash_map<tree, tree> *.
(clear_fold_cache): Adjust following the change to fold_cache.
(cp_fold): Likewise.
From-SVN: r234732
GCC Administrator [Tue, 5 Apr 2016 00:16:15 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r234731
Eric Botcazou [Mon, 4 Apr 2016 22:29:02 +0000 (22:29 +0000)]
re PR target/67172 (i686-w64-mingw32 dwarf2 bootstrap fails with undefined reference to __EH_FRAME_BEGIN__)
PR target/67172
* libgcc2.c (L__main): Undefine __LIBGCC_EH_FRAME_SECTION_NAME__ if
__MINGW32__ is defined.
From-SVN: r234727
Bill Seurer [Mon, 4 Apr 2016 18:46:05 +0000 (18:46 +0000)]
MAINTAINERS (Write After Approval): Add myself.
2016-04-04 Bill Seurer <seurer@linux.vnet.ibm.com>
* MAINTAINERS (Write After Approval): Add myself.
From-SVN: r234724
Jakub Jelinek [Mon, 4 Apr 2016 17:20:53 +0000 (19:20 +0200)]
re PR middle-end/70307 (ICE: in gimplify_expr, at gimplify.c:10915 on valid code)
PR middle-end/70307
* gcc.dg/torture/pr70307.c: Add -Wno-psabi to dg-options. Prune
rs6000 ABI warnings.
From-SVN: r234723
Segher Boessenkool [Mon, 4 Apr 2016 16:37:58 +0000 (18:37 +0200)]
gnattools: Clean config.cache (PR70173)
The config.cache file should be deleted by "make distclean", just like
config.log and config.status . The directory itself is still not deleted
(just like the gotools and libcc1 directories).
gnattools/
PR bootstrap/70173
* Makefile.in (distclean): Also delete config.cache .
From-SVN: r234721
Jan Hubicka [Mon, 4 Apr 2016 15:54:39 +0000 (17:54 +0200)]
re PR ipa/66223 (Diagnostic of pure virtual function call broken, including __cxa_pure_virtual)
PR ipa/66223
* ipa-devirt.c (maybe_record_node): Do not optimize cxa_pure_virtual
calls when sanitizing.
(possible_polymorphic_call_target_p)" FIx formating.
* g++.dg/ipa/devirt-51.C: New testcase.
From-SVN: r234719
Bill Schmidt [Mon, 4 Apr 2016 15:42:19 +0000 (15:42 +0000)]
re PR middle-end/70457 (ICE (segfault) in gimple_expand_builtin_pow on powerpc64le-linux-gnu)
[gcc]
2016-04-04 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
Jakub Jelinek <jakub@redhat.com>
PR middle-end/70457
* tree-inline.c (estimate_num_insn): Use gimple_call_builtin_p
to ensure a call statement is compatible with a built-in's
prototype.
* tree-ssa-math-opts.c (pass_optimize_windening_mul::execute):
Likewise.
[gcc/testsuite]
2016-04-04 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
Jakub Jelinek <jakub@redhat.com>
PR middle-end/70457
* gcc.dg/torture/pr70457.c: New.
Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r234716
Andre Vehreschild [Mon, 4 Apr 2016 10:32:32 +0000 (12:32 +0200)]
re PR fortran/67538 (ICE with invalid source allocation)
gcc/fortran/ChangeLog:
2016-04-04 Andre Vehreschild <vehre@gcc.gnu.org>
PR fortran/67538
* resolve.c (resolve_allocate_expr): Emit error message when no
array spec and no array valued source= expression is given in an
F2008 allocate() for an array to allocate.
gcc/testsuite/ChangeLog:
2016-04-04 Andre Vehreschild <vehre@gcc.gnu.org>
PR fortran/67538
* gfortran.dg/allocate_with_source_19.f08: New test.
From-SVN: r234714
Andre Vehreschild [Mon, 4 Apr 2016 09:32:28 +0000 (11:32 +0200)]
re PR fortran/65795 (Segfault (invalid write) for ALLOCATE statement involving COARRAYS)
gcc/fortran/ChangeLog:
2016-04-04 Andre Vehreschild <vehre@gcc.gnu.org>
PR fortran/65795
* trans-array.c (gfc_array_allocate): When the array is a coarray,
do not nullyfing its allocatable components in array_allocate, because
the nullify missed the array ref and nullifies the wrong component.
Cosmetics.
gcc/testsuite/ChangeLog:
2016-04-04 Andre Vehreschild <vehre@gcc.gnu.org>
PR fortran/65795
* gfortran.dg/coarray_allocate_6.f08: New test.
From-SVN: r234710
Richard Biener [Mon, 4 Apr 2016 09:30:16 +0000 (09:30 +0000)]
re PR rtl-optimization/70484 (Wrong optimization with aliasing and access via char)
2016-04-04 Richard Biener <rguenther@suse.de>
PR rtl-optimization/70484
* rtl.h (canon_output_dependence): Declare.
* alias.c (canon_output_dependence): New function.
* dse.c (record_store): Use canon_output_dependence rather
than canon_true_dependence.
* gcc.dg/torture/pr70484.c: New testcase.
From-SVN: r234709
Jan Hubicka [Mon, 4 Apr 2016 09:26:29 +0000 (11:26 +0200)]
re PR lto/68881 (UNRESOLVED/FAIL: gcc.dg/lto/attr-weakref-1 -O2 -flto)
PR ipa/68881
* cgraph.h (symtab_node::copy_visibility_from): New function.
* symtab.c (symtab_node::copy_visibility_from): New function.
* ipa-visibility.c (optimize_weakref): New function.
(function_and_variable_visibility): Use it.
From-SVN: r234708
Martin Liska [Mon, 4 Apr 2016 08:46:51 +0000 (10:46 +0200)]
re PR hsa/70402 (HSA: SBR instruction can be undefined)
Fix PR hsa/70402
PR hsa/70402
* hsa-gen.c (gen_hsa_insns_for_switch_stmt): Guard index
value that is really in range handled by SBR instruction.
* hsa-brig.c (emit_switch_insn): Do not emit unconditional
jump.
* hsa-dump.c (dump_hsa_insn_1): Do not dump default BB.
* hsa.h (hsa_insn_sbr::m_default_bb): Remove field.
From-SVN: r234707
Marek Polacek [Mon, 4 Apr 2016 08:11:46 +0000 (08:11 +0000)]
re PR middle-end/70307 (ICE: in gimplify_expr, at gimplify.c:10915 on valid code)
PR c/70307
* c-fold.c (c_fully_fold_internal): Handle VEC_COND_EXPR.
* gcc.dg/torture/pr70307.c: New test.
From-SVN: r234706
GCC Administrator [Mon, 4 Apr 2016 00:16:16 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r234705
Oleg Endo [Sun, 3 Apr 2016 12:50:54 +0000 (12:50 +0000)]
re PR target/70416 ([SH]: error: 'asm' operand requires impossible reload when building ruby2.3)
gcc/
PR target/70416
PR target/67391
* config/sh/sh.md (*addsi3): Allow pattern when reload_in_progress is
set, but not for SP_REG operands.
gcc/testsuite/
PR target/70416
PR target/67391
* gcc.target/sh/torture/pr70416.c: New.
From-SVN: r234702
GCC Administrator [Sun, 3 Apr 2016 00:16:17 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r234701
Martin Sebor [Sat, 2 Apr 2016 17:14:48 +0000 (17:14 +0000)]
PR c++/67376 - [5/6 regression] Comparison with pointer to past-the-end
PR c++/67376 - [5/6 regression] Comparison with pointer to past-the-end
of array fails inside constant expression
PR c++/70170 - [6 regression] bogus not a constant expression error comparing
pointer to array to null
PR c++/70172 - incorrect reinterpret_cast from integer to pointer error
on invalid constexpr initialization
PR c++/70228 - insufficient detail in diagnostics for a constexpr out of bounds
array subscript
gcc/testsuite/ChangeLog:
2016-04-02 Martin Sebor <msebor@redhat.com>
PR c++/67376
PR c++/70170
PR c++/70172
PR c++/70228
* g++.dg/cpp0x/constexpr-array-ptr10.C: New test.
* g++.dg/cpp0x/constexpr-array-ptr9.C: New test.
* g++.dg/cpp0x/constexpr-nullptr-1.C: New test.
* g++.dg/cpp0x/constexpr-array5.C: Adjust text of expected diagnostic.
* g++.dg/cpp0x/constexpr-string.C: Same.
* g++.dg/cpp0x/constexpr-wstring2.C: Same.
* g++.dg/cpp0x/pr65398.C: Same.
* g++.dg/ext/constexpr-vla1.C: Same.
* g++.dg/ext/constexpr-vla2.C: Same.
* g++.dg/ext/constexpr-vla3.C: Same.
* g++.dg/ubsan/pr63956.C: Same.
gcc/cp/ChangeLog:
2016-04-02 Martin Sebor <msebor@redhat.com>
PR c++/67376
PR c++/70170
PR c++/70172
PR c++/70228
* constexpr.c (diag_array_subscript): New function.
(cxx_eval_array_reference): Detect out of bounds array indices.
gcc/ChangeLog:
2016-04-02 Martin Sebor <msebor@redhat.com>
PR c++/67376
* fold-const.c (maybe_nonzero_address): New function.
(fold_comparison): Call it. Fold equality and relational
expressions involving null pointers.
(tree_single_nonzero_warnv_p): Call maybe_nonzero_address.
From-SVN: r234698
Eric Botcazou [Sat, 2 Apr 2016 08:56:19 +0000 (08:56 +0000)]
decl.c (components_to_record): Restrict the previous change to fields with variable size.
* gcc-interface/decl.c (components_to_record): Restrict the previous
change to fields with variable size.
From-SVN: r234696
Jason Merrill [Sat, 2 Apr 2016 01:35:45 +0000 (21:35 -0400)]
re PR c++/70449 (ICE with -Wall on valid code on x86_64-linux-gnu in pp_string, at pretty-print.c:928)
PR c++/70449
PR c++/70344
* pt.c (instantiate_decl): A function isn't fully defined if
DECL_INITIAL is error_mark_node.
* constexpr.c (cxx_eval_call_expression): Likewise.
From-SVN: r234695
Ian Lance Taylor [Sat, 2 Apr 2016 00:47:53 +0000 (00:47 +0000)]
runtime: Use atomic load for in entersyscall.
Reportedly fixes PPC64 deadlock.
From a comment by Gabriel Russell.
Fixes golang/go#15051.
Reviewed-on: https://go-review.googlesource.com/21450
From-SVN: r234694
H.J. Lu [Sat, 2 Apr 2016 00:24:44 +0000 (17:24 -0700)]
Add missing ChangeLog entry for PR target/70439
From-SVN: r234693
H.J. Lu [Sat, 2 Apr 2016 00:18:41 +0000 (17:18 -0700)]
Add missing ChangeLog entry for PR testsuite/70364
From-SVN: r234692
GCC Administrator [Sat, 2 Apr 2016 00:16:13 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r234691
Evandro Menezes [Fri, 1 Apr 2016 19:55:52 +0000 (19:55 +0000)]
[AArch64] Fix SIMD predicate
Fix the predicate "aarch64_simd_reg_or_zero" to correctly validate the
"Y" constraint (scalar FP 0.0 immediate).
* gcc/config/aarch64/predicates.md (aarch64_simd_reg_or_zero):
Add the "const_double" to the list of operand constraints.
From-SVN: r234685
Jakub Jelinek [Fri, 1 Apr 2016 16:08:21 +0000 (18:08 +0200)]
re PR rtl-optimization/70467 (Useless "and [esp],-1" emitted on AND with uint64_t variable)
PR rtl-optimization/70467
* config/i386/i386.md (*add<dwi>3_doubleword, *sub<dwi>3_doubleword):
If low word of the last operand is 0, just emit addition/subtraction
for the high word.
* gcc.target/i386/pr70467-2.c: New test.
From-SVN: r234679
Andreas Krebbel [Fri, 1 Apr 2016 15:35:54 +0000 (15:35 +0000)]
PR70404 S/390: Fix insv expansion.
While the expander accepts general_operand as src operand the risbg
pattern only immediate_operand. Unfortunately the expander called
force_reg only for VOIDmode constants missing things like
e.g. symbol_refs. Fixed with the attached patch.
gcc/ChangeLog:
2016-04-01 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
PR target/70404
* config/s390/s390.c (s390_expand_insv): Check for everything
constant instead of just VOIDmode stuff.
From-SVN: r234678
Jakub Jelinek [Fri, 1 Apr 2016 15:27:11 +0000 (17:27 +0200)]
re PR c++/70488 (ICE in tree.c:7345 triggered by warning of placement new too small on VLA)
PR c++/70488
* init.c (warn_placement_new_too_small): Test whether
DECL_SIZE_UNIT or TYPE_SIZE_UNIT are integers that fit into uhwi.
* g++.dg/init/new47.C: New test.
Co-Authored-By: Marek Polacek <polacek@redhat.com>
From-SVN: r234676
Ramana Radhakrishnan [Fri, 1 Apr 2016 14:58:53 +0000 (14:58 +0000)]
re PR target/70496 (inadvertent change to ASM_APP_OFF for .arm / .thumb directives.)
Fix PR target/70496
While doing the unified asm rewrite - I inadvertently changed the
meaning of ASM_APP_OFF which causes failures when folks who know what
they are doing switch between arm and thumb states within a
function. The intent of the unified asm rewrite was not to affect any
inline assembler code in that it would remain in divided syntax by
default and switching back to unified asm in normal compiled code
after the inline assembler block. Thanks to Jim Wilson for pointing it
out on the linaro list.
Fixed thusly and a test is added. Tested arm-none-eabi cross and
applied.
Ramana
2016-04-01 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
PR target/70496
* config/arm/arm.h (ASM_APP_OFF): Handle TARGET_ARM
and TARGET_THUMB.
2016-04-01 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
PR target/70496
* gcc.target/arm/pr70496.c: New test.
From-SVN: r234675