Uros Bizjak [Mon, 22 Jun 2015 13:54:58 +0000 (15:54 +0200)]
re PR target/65871 (bzhi builtin/intrinsic wrongly assumes bzhi instruction doesn't set the ZF flag)
PR target/65871
* config/i386/i386.c (ix86_rtx_costs) <case COMPARE>: Ignore the
cost of embedded comparison.
From-SVN: r224729
Bill Schmidt [Mon, 22 Jun 2015 13:16:04 +0000 (13:16 +0000)]
re PR target/65914 (error: unrecognizable insn)
[gcc]
2015-06-22 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
PR target/65914
* config/rs6000/predicates.md (altivec_register_operand): Permit
virtual stack registers.
(vsx_register_operand): Likewise.
(vfloat_operand): Likewise.
(vint_operand): Likewise.
(vlogical_operand): Likewise.
[gcc/testsuite]
2015-06-22 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
PR target/65914
* g++.dg/torture/pr65914.C: New.
From-SVN: r224725
Richard Biener [Mon, 22 Jun 2015 10:45:47 +0000 (10:45 +0000)]
c-torture.exp: Set LTO_TORTURE_OPTIONS conditional on not existing TORTURE_OPTIONS only.
2015-06-22 Richard Biener <rguenther@suse.de>
* lib/c-torture.exp: Set LTO_TORTURE_OPTIONS conditional on
not existing TORTURE_OPTIONS only.
* lib/gcc-dg.exp: Likewise.
From-SVN: r224724
Richard Biener [Mon, 22 Jun 2015 10:44:02 +0000 (10:44 +0000)]
tree-vectorizer.h (_loop_vec_info): Add scalar_cost_vec and single_scalar_iteration_cost members.
2015-06-22 Richard Biener <rguenther@suse.de>
* tree-vectorizer.h (_loop_vec_info): Add scalar_cost_vec
and single_scalar_iteration_cost members.
(LOOP_VINFO_SCALAR_ITERATION_COST): New.
(LOOP_VINFO_SINGLE_SCALAR_ITERATION_COST): Likewise.
(vect_get_single_scalar_iteration_cost): Remove.
* tree-vect-data-refs.c (vect_peeling_hash_get_lowest_cost):
Use LOOP_VINFO_SCALAR_ITERATION_COST.
* tree-vect-loop.c (destroy_loop_vec_info): Free
scalar_cost_vec.
(vect_get_single_scalar_iteration_cost): Compute result into
LOOP_VINFO_SINGLE_SCALAR_ITERATION_COST and
LOOP_VINFO_SCALAR_ITERATION_COST. Make static.
(vect_analyze_loop_2): Call vect_get_single_scalar_iteration_cost.
(vect_estimate_min_profitable_iters): Use them.
From-SVN: r224723
Christian Bruel [Mon, 22 Jun 2015 07:38:23 +0000 (09:38 +0200)]
add PR reference
From-SVN: r224722
Christian Bruel [Mon, 22 Jun 2015 07:32:15 +0000 (09:32 +0200)]
Add -mflip-thumb for testing.
PR target/52144n
* config/arm/arm.c (add_attribute, arm_insert_attributes): New functions
(TARGET_INSERT_ATTRIBUTES): Define.
(thumb_flipper): New var.
* config/arm/arm.opt (-mflip-thumb): New switch.
PR target/52144
* gcc.target/arm/flip-thumb.c: New test.
From-SVN: r224721
Jan Hubicka [Mon, 22 Jun 2015 07:12:22 +0000 (09:12 +0200)]
re PR ipa/65908 (ICE: in expand_thunk, at cgraphunit.c:1700)
PR ipa/65908
* ipa-icf.c (sem_item::target_supports_symbol_aliases): Remove
construction of arg_types.
(sem_function::sem_function): Likewise.
(sem_function::~sem_function): Remove destruction of arg_types.
(sem_function::compatible_parm_types_p): New function.
(sem_function::equals_wpa): Reorg matching of return values
and parameter types.
(sem_function::equals_private): Reorg mathcing of argument types.
(sem_function::parse_tree_args): Remove.
* ipa-icf.h (init_wpa): Do not call it.
(parse_tree_args): Remove.
(compatible_parm_types_p): Declare.
(result_type): Remove.
(arg_types): Remove.
* testsuite/g++.dg/ipa/pr65908.C: New testcase.
Co-Authored-By: Martin Liska <mliska@suse.cz>
From-SVN: r224720
Jan Hubicka [Mon, 22 Jun 2015 07:02:50 +0000 (09:02 +0200)]
re PR rtl-optimization/66351 (r223883 miscompiles stage2 compiler on ia64)
PR ipa/66351
* ipa-polymorphic-call.c
(ipa_polymorphic_call_context::get_dynamic_type): Fix thinko when
initializing alias oracle; fix formating; set base_alias_set if it
is known.
From-SVN: r224719
Mikhail Maltsev [Mon, 22 Jun 2015 02:54:11 +0000 (02:54 +0000)]
Use std::swap instead of manual swaps.
gcc/
* auto-inc-dec.c (reverse_mem, reverse_inc): Remove.
(parse_add_or_inc): Use std::swap instead of reverse_{mem,inc}.
(find_inc): Likewise.
* combine.c (combine_simplify_rtx): Use std::swap instead of manually
swapping.
* df-core.c (df_worklist_dataflow_doublequeue): Likewise.
* df-scan.c (df_swap_refs): Remove.
(df_sort_and_compress_refs): Use std::swap instead of df_swap_refs.
* dominance.c (link_roots): Use std::swap instead of manually swapping.
* expr.c (expand_expr_real_2, do_store_flag): Likewise.
* fold-const.c (fold_relational_const): Likewise.
* genattrtab.c (simplify_test_exp): Likewise.
* gimple-match-head.c (gimple_resimplify2, gimple_resimplify3,
gimple_simplify): Likewise.
* ifcvt.c (noce_try_abs, find_if_header): Likewise.
* internal-fn.c (expand_addsub_overflow, expand_mul_overflow): Likewise.
* ipa-devirt.c (add_type_duplicate): Likewise.
* loop-iv.c (get_biv_step_1, iv_number_of_iterations): Likewise.
* lra-lives.c (lra_setup_reload_pseudo_preferenced_hard_reg): Likewise.
* lra.c (lra_create_copy): Likewise.
* lto-streamer-out.c (DFS::DFS): Likewise.
* modulo-sched.c (get_sched_window): Likewise.
* omega.c (omega_pretty_print_problem): Likewise.
* optabs.c (prepare_float_lib_cmp, expand_mult_highpart): Likewise.
* reload1.c (reloads_unique_chain_p): Likewise.
* sel-sched-ir.c (exchange_lv_sets, exchange_av_sets): Remove.
(exchange_data_sets): Move logic from exchange_{av,lv}_sets here and
use std::swap.
* simplify-rtx.c (simplify_unary_operation_1): Use std::swap instead of
manually swapping.
* tree-if-conv.c (is_cond_scalar_reduction, predicate_scalar_phi,
predicate_mem_writes): Likewise.
* tree-loop-distribution.c (pg_add_dependence_edges): Likewise.
* tree-predcom.c (combine_chains): Likewise.
* tree-ssa-alias.c (nonoverlapping_component_refs_p,
refs_may_alias_p_1): Likewise.
* tree-ssa-ifcombine.c (recognize_if_then_else): Likewise.
* tree-ssa-loop-ivopts.c (extract_cond_operands): Likewise.
* tree-ssa-loop-niter.c (refine_bounds_using_guard,
number_of_iterations_cond): Likewise.
* tree-ssa-phiopt.c (tree_ssa_phiopt_worker): Likewise.
* tree-ssa-sccvn.c (vn_nary_op_compute_hash): Likewise.
* tree-vect-slp.c (vect_build_slp_tree): Likewise.
* tree-vect-stmts.c (supportable_widening_operation): Likewise.
* tree-vrp.c (extract_range_from_binary_expr_1,
extract_range_from_unary_expr_1): Likewise.
gcc/cp/
* pt.c (maybe_adjust_types_for_deduction): Use std::swap instead of
manually swapping.
* semantics.c (finish_omp_atomic): Likewise.
* typeck.c (cp_build_array_ref): Likewise.
gcc/c-family/
* c-common.c (scalar_to_vector): Use std::swap instead of manually
swapping.
From-SVN: r224718
GCC Administrator [Mon, 22 Jun 2015 00:16:20 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r224717
GCC Administrator [Sun, 21 Jun 2015 00:16:16 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r224712
Marek Polacek [Sat, 20 Jun 2015 12:11:52 +0000 (12:11 +0000)]
* common.opt (fsanitize-undefined-trap-on-error): Add Driver.
From-SVN: r224708
GCC Administrator [Sat, 20 Jun 2015 00:16:15 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r224706
Mikhail Maltsev [Sat, 20 Jun 2015 00:10:00 +0000 (00:10 +0000)]
re PR c++/65882 (Internal compiler error: Error reporting routines re-entered)
PR c++/65882
gcc/cp/
* call.c (build_new_op_1): Check tf_warning flag in all cases.
gcc/testsuite/
* g++.dg/diagnostic/inhibit-warn-1.C: New test.
* g++.dg/diagnostic/inhibit-warn-2.C: New test.
From-SVN: r224702
Kaz Kojima [Fri, 19 Jun 2015 22:58:58 +0000 (22:58 +0000)]
re PR target/66591 ([SH] ICE: in get_reload_reg, at lra-constraints.c:633 with -mlra)
PR target/66591
* config/sh/sh.c (prepare_move_operands): Pre-allocate R0 for subreg
index term for base and index addressing when LRA is used.
From-SVN: r224701
Eric Botcazou [Fri, 19 Jun 2015 20:25:38 +0000 (20:25 +0000)]
gigi.h (record_builtin_type): Adjust comment.
* gcc-interface/gigi.h (record_builtin_type): Adjust comment.
(tree create_type_decl): Likewise.
(create_var_decl_1): Add artificial_p and debug_info_p parameters.
(create_var_decl): Likewise.
(create_true_var_decl): Delete.
(create_subprog_decl): Add debug_info_p parameter.
* gcc-interface/decl.c (gnat_to_gnu_entity): Add artificial_p local
variable and use it throughout. Remove DECL_ARTIFICIAL settings.
<E_Variable>: Adjust calls to create_var_decl and create_var_decl_1.
Remove DECL_IGNORED_P settings.
<E_Enumeration_Type>: Likewise.
<E_Record_Type>: Likewise.
<E_Subprogram_Type>: Likewise. Remove artificial_flag local variable.
Adjust call to create_subprog_decl.
(get_minimal_subprog_decl): Likewise.
(elaborate_expression_1): Adjust call to create_var_decl.
* gcc-interface/trans.c (gigi): Adjust calls to create_var_decl and
create_subprog_decl. Remove DECL_ARTIFICIAL & DECL_IGNORED_P settings.
* gcc-interface/utils.c (maybe_pad_type): Likewise.
(record_builtin_type): Adjust comment.
(create_type_stub_decl): Remove obsolete comment.
(create_var_decl_1): Add artificial_p and debug_info_p parameters.
Set DECL_ARTIFICIAL and DECL_IGNORED_P accordingly.
(create_subprog_decl): Add debug_info_p parameter. Set DECL_IGNORED_P
accordingly.
From-SVN: r224699
Eric Botcazou [Fri, 19 Jun 2015 20:17:36 +0000 (20:17 +0000)]
* gcc-interface/misc.c (LANG_HOOKS_WARN_UNUSED_GLOBAL_DECL): Define.
From-SVN: r224698
Eric Botcazou [Fri, 19 Jun 2015 20:10:50 +0000 (20:10 +0000)]
decl.c (gnat_to_gnu_entity): Make sure the size of a padding type built around the return type is positive.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Function>: Make sure
the size of a padding type built around the return type is positive.
* gcc-interface/trans.c (gnat_to_gnu) <N_Simple_Return_Statement>:
Use INIT_EXPR instead of MODIFY_EXPR to assign to the return object.
From-SVN: r224697
Jason Merrill [Fri, 19 Jun 2015 19:55:21 +0000 (15:55 -0400)]
fix ChangeLog date
From-SVN: r224696
Jason Merrill [Fri, 19 Jun 2015 18:37:41 +0000 (14:37 -0400)]
re PR c++/66585 (Internal compiler error when initialize field with lambda)
PR c++/66585
* pt.c (instantiate_class_template_1): Clear
cp_unevaluated_operand and c_inhibit_evaluation_warnings.
From-SVN: r224684
Jason Merrill [Fri, 19 Jun 2015 18:15:36 +0000 (14:15 -0400)]
re PR c++/65880 (Member function issue with argument "pointer to const array of member function pointers")
PR c++/65880
* decl.c (build_ptrmemfunc_type): Check TYPE_GET_PTRMEMFUNC_TYPE after
cv-qualifiers.
* typeck.c (merge_types): build_ptrmemfunc_type before applying
quals and attributes.
From-SVN: r224678
Jason Merrill [Fri, 19 Jun 2015 18:15:30 +0000 (14:15 -0400)]
re PR c++/65973 (segmentation fault when compiling C++14 code)
PR c++/65973
* constexpr.c (build_constexpr_constructor_member_initializers):
Handle an empty STATEMENT_LIST.
From-SVN: r224677
Jason Merrill [Fri, 19 Jun 2015 18:15:24 +0000 (14:15 -0400)]
re PR c++/65843 (multiple use of const variable in lamba in template function causes compile error)
PR c++/65843
* pt.c (tsubst_copy_and_build): Register a capture proxy in
local_specializations.
From-SVN: r224676
Jason Merrill [Fri, 19 Jun 2015 18:15:17 +0000 (14:15 -0400)]
re PR c++/66061 (Internal Compiler Error when specializing a variable template when the specialization is variadic)
PR c++/66061
* g++.dg/cpp1y/var-templ31.C: New.
From-SVN: r224675
Jim Wilson [Fri, 19 Jun 2015 17:22:38 +0000 (17:22 +0000)]
aarch64.md (mov<mode>:GPF): Don't call force_reg if op1 is an fp zero.
gcc/
* config/aarch64/aarch64.md (mov<mode>:GPF): Don't call force_reg if
op1 is an fp zero.
(movsf_aarch64): Change condition from register_operand to
aarch64_reg_or_fp_zero for op1. Change type for alternative 6 to
load1. Change type for alternative 7 to store1.
(movdf_aarch64): Likewise.
gcc/testsuite/
* gcc.target/aarch64/fmovd-zero-mem.c: New.
* gcc.target/aarch64/fmovd-zero-reg.c: New.
* gcc.target/aarch64/fmovf-zero-mem.c: New.
* gcc.target/aarch64/fmovf-zero-reg.c: New.
* gcc.target/aarch64/fmovld-zero-mem.c: New.
* gcc.target/aarch64/fmovld-zero-mem.c: New.
* gcc.target/aarch64/fmovd-zero.c: Delete.
* gcc.target/aarch64/fmovf-zero.c: Delete.
From-SVN: r224673
James Greenhalgh [Fri, 19 Jun 2015 16:43:04 +0000 (16:43 +0000)]
[Patch Vax] zero/sign extend patterns need to be SUBREG aware
gcc/
* config/vax/vax.md: Adjust sign/zero extend patterns to
handle SUBREGs in operands[1].
gcc/testsuite/
* gcc.target/vax/bswapdi-1.c: New.
From-SVN: r224672
Christophe Lyon [Fri, 19 Jun 2015 14:07:10 +0000 (14:07 +0000)]
vtst.c: New file.
2015-06-19 Christophe Lyon <christophe.lyon@linaro.org>
* gcc.target/aarch64/advsimd-intrinsics/vtst.c: New file.
From-SVN: r224669
Christophe Lyon [Fri, 19 Jun 2015 14:05:57 +0000 (14:05 +0000)]
vtbX.c: New file.
2015-06-19 Christophe Lyon <christophe.lyon@linaro.org>
* gcc.target/aarch64/advsimd-intrinsics/vtbX.c: New file.
From-SVN: r224668
Christophe Lyon [Fri, 19 Jun 2015 14:03:12 +0000 (14:03 +0000)]
vstX_lane.c: New file.
2015-06-19 Christophe Lyon <christophe.lyon@linaro.org>
* gcc.target/aarch64/advsimd-intrinsics/vstX_lane.c: New file.
From-SVN: r224667
Christophe Lyon [Fri, 19 Jun 2015 14:01:33 +0000 (14:01 +0000)]
vst1_lane.c: New file.
2015-06-19 Christophe Lyon <christophe.lyon@linaro.org>
* gcc.target/aarch64/advsimd-intrinsics/vst1_lane.c: New file.
From-SVN: r224666
Christophe Lyon [Fri, 19 Jun 2015 14:00:26 +0000 (14:00 +0000)]
vsra_n.c: New file.
2015-06-19 Christophe Lyon <christophe.lyon@linaro.org>
* gcc.target/aarch64/advsimd-intrinsics/vsra_n.c: New file.
From-SVN: r224665
Christophe Lyon [Fri, 19 Jun 2015 13:59:07 +0000 (13:59 +0000)]
vshrn_n.c: New file.
2015-06-19 Christophe Lyon <christophe.lyon@linaro.org>
* gcc.target/aarch64/advsimd-intrinsics/vshrn_n.c: New file.
From-SVN: r224664
Christophe Lyon [Fri, 19 Jun 2015 13:58:02 +0000 (13:58 +0000)]
vshl_n.c: New file.
2015-06-19 Christophe Lyon <christophe.lyon@linaro.org>
* gcc.target/aarch64/advsimd-intrinsics/vshl_n.c: New file.
From-SVN: r224663
Christophe Lyon [Fri, 19 Jun 2015 13:56:45 +0000 (13:56 +0000)]
vshll_n.c: New file.
2015-06-19 Christophe Lyon <christophe.lyon@linaro.org>
* gcc.target/aarch64/advsimd-intrinsics/vshll_n.c: New file.
From-SVN: r224662
Christophe Lyon [Fri, 19 Jun 2015 13:55:37 +0000 (13:55 +0000)]
vset_lane.c: New file.
2015-06-19 Christophe Lyon <christophe.lyon@linaro.org>
* gcc.target/aarch64/advsimd-intrinsics/vset_lane.c: New file.
From-SVN: r224661
Christophe Lyon [Fri, 19 Jun 2015 13:54:35 +0000 (13:54 +0000)]
vrsra_n.c: New file.
2015-06-19 Christophe Lyon <christophe.lyon@linaro.org>
* gcc.target/aarch64/advsimd-intrinsics/vrsra_n.c: New file.
From-SVN: r224660
Christophe Lyon [Fri, 19 Jun 2015 13:53:19 +0000 (13:53 +0000)]
vrsqrts.c: New file.
2015-06-19 Christophe Lyon <christophe.lyon@linaro.org>
* gcc.target/aarch64/advsimd-intrinsics/vrsqrts.c: New file.
From-SVN: r224659
Christophe Lyon [Fri, 19 Jun 2015 13:52:32 +0000 (13:52 +0000)]
vrsqrte.c: New file.
2015-06-19 Christophe Lyon <christophe.lyon@linaro.org>
* gcc.target/aarch64/advsimd-intrinsics/vrsqrte.c: New file.
From-SVN: r224658
Christophe Lyon [Fri, 19 Jun 2015 13:51:01 +0000 (13:51 +0000)]
vrshrn_n.c: New file.
2015-06-19 Christophe Lyon <christophe.lyon@linaro.org>
* gcc.target/aarch64/advsimd-intrinsics/vrshrn_n.c: New file.
From-SVN: r224657
Christophe Lyon [Fri, 19 Jun 2015 13:49:36 +0000 (13:49 +0000)]
vrshr_n.c: New file.
2015-06-19 Christophe Lyon <christophe.lyon@linaro.org>
* gcc.target/aarch64/advsimd-intrinsics/vrshr_n.c: New file.
From-SVN: r224656
Christophe Lyon [Fri, 19 Jun 2015 13:48:23 +0000 (13:48 +0000)]
vshr_n.c: New file.
2015-06-19 Christophe Lyon <christophe.lyon@linaro.org>
* gcc.target/aarch64/advsimd-intrinsics/vshr_n.c: New file.
From-SVN: r224655
Christophe Lyon [Fri, 19 Jun 2015 13:47:21 +0000 (13:47 +0000)]
vrshl.c: New file.
2015-06-19 Christophe Lyon <christophe.lyon@linaro.org>
* gcc.target/aarch64/advsimd-intrinsics/vrshl.c: New file.
From-SVN: r224654
Christophe Lyon [Fri, 19 Jun 2015 13:46:31 +0000 (13:46 +0000)]
vrev.c: New file.
2015-06-19 Christophe Lyon <christophe.lyon@linaro.org>
* gcc.target/aarch64/advsimd-intrinsics/vrev.c: New file.
From-SVN: r224653
Christophe Lyon [Fri, 19 Jun 2015 13:44:17 +0000 (13:44 +0000)]
vreinterpret.c: New file.
2015-06-19 Christophe Lyon <christophe.lyon@linaro.org>
* gcc.target/aarch64/advsimd-intrinsics/vreinterpret.c: New file.
From-SVN: r224652
Christophe Lyon [Fri, 19 Jun 2015 13:43:18 +0000 (13:43 +0000)]
vrecps.c: New file.
2015-06-19 Christophe Lyon <christophe.lyon@linaro.org>
* gcc.target/aarch64/advsimd-intrinsics/vrecps.c: New file.
From-SVN: r224651
Christophe Lyon [Fri, 19 Jun 2015 13:42:22 +0000 (13:42 +0000)]
2015-06-19 Christophe Lyon <christophe.lyon@linaro.org>
* gcc.target/aarch64/advsimd-intrinsics/arm-neon-ref.h
(_ARM_FPSCR): Add FZ field.
(clean_results): Force FZ=1 on AArch64.
* gcc.target/aarch64/advsimd-intrinsics/vrecpe.c: New file.
From-SVN: r224650
Christophe Lyon [Fri, 19 Jun 2015 13:02:55 +0000 (13:02 +0000)]
pr62308.c: New test.
2015-06-19 Christophe Lyon <christophe.lyon@linaro.org>
gcc/testsuite/
* gcc.target/aarch64/pr62308.c: New test.
From-SVN: r224649
Mikael Morin [Fri, 19 Jun 2015 12:50:00 +0000 (12:50 +0000)]
Fix openmp global state fortran regression
PR fortran/66549
gcc/fortran/
* resolve.c (resolve_global_procedure): Don't save and restore
OpenMP state around the call to gfc_resolve.
(gfc_resolve): Save OpenMP state on entry and restore it on return.
gcc/testsuite/
* gfortran.dg/gomp/omp_parallel_1.f90: New file.
From-SVN: r224648
Kyrylo Tkachov [Fri, 19 Jun 2015 11:05:02 +0000 (11:05 +0000)]
[i386][obvious] Use std::swap instead of manually swapping in a couple of places
* config/i386/i386.c (ix86_function_versions): Use std::swap instead
of manually swapping.
(expand_vec_perm_interleave2): Likewise.
From-SVN: r224647
Ilya Enkovich [Fri, 19 Jun 2015 09:22:56 +0000 (09:22 +0000)]
Add missing test for r224643.
From-SVN: r224644
Ilya Enkovich [Fri, 19 Jun 2015 09:07:25 +0000 (09:07 +0000)]
tree-chkp.c (chkp_compute_bounds_for_assignment): Don't reuse bounds created for abnormal ssa names.
gcc/
* tree-chkp.c (chkp_compute_bounds_for_assignment): Don't
reuse bounds created for abnormal ssa names.
gcc/testsuite/
* gcc.target/i386/mpx/pr66581.c: New test.
From-SVN: r224643
Jakub Jelinek [Fri, 19 Jun 2015 07:41:49 +0000 (09:41 +0200)]
[nvptx] Address genrecog warnings
build/genrecog [...]/source-gcc/gcc/common.md [...]/source-gcc/gcc/config/nvptx/nvptx.md \
insn-conditions.md > tmp-recog.c
[...]/source-gcc/gcc/config/nvptx/nvptx.md:1206: warning: operand 0 missing mode?
[...]/source-gcc/gcc/config/nvptx/nvptx.md:1206: warning: operand 1 missing mode?
gcc/
* config/nvptx/nvptx.md (allocate_stack): Rename to...
(allocate_stack_<mode>): ... this, and add :P on both
match_operand and unspec.
(allocate_stack): New expander.
From-SVN: r224641
Thomas Schwinge [Fri, 19 Jun 2015 07:41:44 +0000 (09:41 +0200)]
libgomp: libgomp.oacc-c-c++-common/lib-62.c is for acc_device_nvidia only
libgomp/
* testsuite/libgomp.oacc-c-c++-common/lib-62.c: Only consider for
acc_device_nvidia.
From-SVN: r224640
Thomas Schwinge [Fri, 19 Jun 2015 07:41:37 +0000 (09:41 +0200)]
libgomp: XFAIL two libgomp.oacc-* tests
PR libgomp/66518
libgomp/
* testsuite/libgomp.oacc-c-c++-common/lib-3.c: XFAIL.
* testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
From-SVN: r224639
Christian Bruel [Fri, 19 Jun 2015 06:58:22 +0000 (08:58 +0200)]
re PR target/66541 (r224314 causes ICE in gcc.dg/torture/pr52429.c)
PR target/66541
PR target/52144
* config/arm/arm.c (arm_set_current_function): Handle
explicit default options.
From-SVN: r224638
GCC Administrator [Fri, 19 Jun 2015 00:16:15 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r224637
Uros Bizjak [Thu, 18 Jun 2015 19:26:26 +0000 (21:26 +0200)]
i386.md (*movsicc_noc_zext): New insn.
* config/i386/i386.md (*movsicc_noc_zext): New insn.
(zero-extended cmove with mem peephole2): New pattern.
(cmove with mem peephole2): Merge patterns.
testsuite/ChangeLog:
* gcc.target/i386/cmov9.c: New test.
From-SVN: r224631
Segher Boessenkool [Thu, 18 Jun 2015 18:10:12 +0000 (20:10 +0200)]
* config/rs6000/rs6000.h (WORD_REGISTER_OPERATIONS): Delete.
From-SVN: r224629
Steve Ellcey [Thu, 18 Jun 2015 15:17:49 +0000 (15:17 +0000)]
mips.c (mips_rtx_costs): Remove HONOR_NAN check.
2015-06-18 Steve Ellcey <sellcey@imgtec.com>
* config/mips/mips.c (mips_rtx_costs): Remove HONOR_NAN check.
* config/mips/mips.md (*madd4<mode>): Ditto.
(*nmadd3<mode>) Ditto.
(*nmadd4<mode>_fastmath): Ditto.
(*nmadd3<mode>_fastmath): Ditto.
(*nmsub4<mode>): Ditto.
(*nmsub3<mode>): Ditto.
(*nmsub4<mode>_fastmath): Ditto.
(*nmsub3<mode>_fastmath): Ditto.
From-SVN: r224625
Jason Merrill [Thu, 18 Jun 2015 14:55:23 +0000 (10:55 -0400)]
re PR c++/66001 (ICE when NSDMI in a literal class uses a destructor)
PR c++/66001
* constexpr.c (cxx_eval_constant_expression): Handle TRY_BLOCK and
TRY_FINALLY_EXPR.
(potential_constant_expression_1): Likewise.
From-SVN: r224620
Richard Biener [Thu, 18 Jun 2015 14:52:57 +0000 (14:52 +0000)]
const4.C: New testcase.
2015-06-18 Richard Biener <rguenther@suse.de>
* g++.dg/other/const4.C: New testcase.
From-SVN: r224618
Jason Merrill [Thu, 18 Jun 2015 13:44:16 +0000 (09:44 -0400)]
* g++.dg/cpp0x/initlist96.C: Use <initializer_list>.
From-SVN: r224606
Michael Matz [Thu, 18 Jun 2015 13:31:17 +0000 (13:31 +0000)]
re PR middle-end/66253 (459.GemsFDTD in SPEC CPU 2006 is miscompiled)
PR middle-end/66253
* tree-vect-stmts.c (vectorizable_store): Implement non-SLP
grouped strided stores.
(vectorizable_load): Don't use the DR from first_stmt in
the non-SLP grouped strided case.
testsuite/
* gcc.dg/vect/pr66253.c: New testcase.
From-SVN: r224605
Ilya Enkovich [Thu, 18 Jun 2015 10:18:48 +0000 (10:18 +0000)]
re PR target/66569 ([CHKP] internal compiler error: in assign_by_spills)
gcc/
PR target/66569
* function.c (assign_bounds): Add arguments assign_regs,
assign_special, assign_bt.
(assign_parms): For vararg functions handle bounds in BT
and special slots after incoming vararg bounds.
gcc/testsuite/
PR target/66569
* gcc.target/i386/mpx/chkp-vararg.c: New test.
From-SVN: r224602
Ilya Enkovich [Thu, 18 Jun 2015 10:14:38 +0000 (10:14 +0000)]
re PR middle-end/66568 ([CHKP] internal compiler error: in expand_expr_addr_expr_1)
gcc/
PR middle-end/66568
* cfgexpand.c (expand_return): Handle missing bounds.
(expand_gimple_stmt_1): Likewise.
* tree-chkp.c (chkp_expand_zero_bounds): New.
* tree-chkp.h (chkp_expand_zero_bounds): New.
gcc/testsuite/
PR middle-end/66568
* gcc.target/i386/mpx/pr66568.c: New test.
From-SVN: r224601
Ilya Enkovich [Thu, 18 Jun 2015 10:09:22 +0000 (10:09 +0000)]
re PR middle-end/66567 ([CHKP] internal compiler error: in assign_parms)
gcc/
PR middle-end/66567
* ipa-chkp.c (chkp_maybe_create_clone): Require
functions to be instrumentable.
* tree-chkp.c (chkp_replace_function_pointer): Use
chkp_instrumentable_p instead of attribute check.
gcc/testsuite/
PR middle-end/66567
* gcc.target/i386/mpx/pr66567.c: New test.
From-SVN: r224600
Jakub Jelinek [Thu, 18 Jun 2015 09:54:17 +0000 (11:54 +0200)]
re PR c++/66571 (Template substitution causes some OpenMP rejects-valid)
PR c++/66571
* pt.c (tsubst_omp_clause_decl): New function.
(tsubst_omp_clauses): Use it or tsubst_copy instead of
tsubst_expr on OMP_CLAUSE_DECL.
* g++.dg/gomp/pr66571-1.C: New test.
From-SVN: r224599
Richard Biener [Thu, 18 Jun 2015 09:39:13 +0000 (09:39 +0000)]
re PR tree-optimization/66510 (gcc.target/arm/pr53636.c FAILs after r224221)
2015-06-18 Richard Biener <rguenther@suse.de>
PR tree-optimization/66510
* tree-vect-stmts.c (vectorizable_load): Properly compute the
number of vector loads for SLP permuted loads.
* tree-vect-data-refs.c (vect_compute_data_ref_alignment): Also
check the stride for loop vectorization.
(vect_enhance_data_refs_alignment): Deal with SLP adjusted
vectorization factor.
(vect_analyze_group_access): If the group size is not a power
of two require a epilogue loop.
* tree-vect-loop.c (vect_analyze_loop_2): Move alignment
compute and optimizing and alias test pruning after final
vectorization factor computation.
* tree-vect-slp.c (vect_build_slp_tree_1): Remove check on
vector alignment.
(vect_transform_slp_perm_load): Properly compute the original
number of vector load stmts.
* gcc.dg/vect/slp-perm-12.c: New testcase.
From-SVN: r224598
Uros Bizjak [Thu, 18 Jun 2015 08:31:43 +0000 (10:31 +0200)]
invoke.texi (-fsanitize-sections): Split @var to avoid "unlikely character , in @var" warning.
* doc/invoke.texi (-fsanitize-sections): Split @var to avoid
"unlikely character , in @var" warning.
From-SVN: r224596
GCC Administrator [Thu, 18 Jun 2015 00:16:19 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r224591
Jason Merrill [Wed, 17 Jun 2015 20:45:32 +0000 (16:45 -0400)]
re PR c++/66515 (g++ segfaults when creating an std::initializer_list)
PR c++/66515
* call.c (implicit_conversion): Call reshape_init here, early.
(build_aggr_conv): Not here.
From-SVN: r224581
Jonathan Wakely [Wed, 17 Jun 2015 20:36:42 +0000 (21:36 +0100)]
C++11 allocator support for std::list.
PR libstdc++/55409
* include/bits/list.tcc (_List_base::_M_clear()): Use allocator traits.
(list::list(const list&)): Use allocator propagation trait. Use
_M_assign_dispatch to copy elements.
* include/bits/stl_list.h (_List_node): Use __aligned_membuf in C++11.
(_List_node::_M_valptr()): Add accessor for stored value.
(_List_iterator, _List_const_iterator, _List_base): Use _M_valptr().
(_List_base, list): Use allocator traits.
(_List_base::_M_get_Tp_allocator, _List_base::get_allocator): Remove.
(_List_base::_M_move_nodes): New function.
(_List_base(_List_base&&)): Use _M_move_nodes.
(_List_base(_List_base&&, _Node_alloc_type&&)): New constructor.
(list::_M_create_node, list::_M_erase, list::max_size): Use allocator
traits.
(list(size_type)): Add allocator parameter.
(list(const list&)): Use allocator propagation trait.
(list(const list&, const allocator_type&)): New constructor.
(list(list&&, const allocator_type&)): Likewise.
(list::operator=(list&&), list::swap(list&)): Use allocator
propagation traits.
(list::_M_move_assign): New functions.
* include/debug/list: Add allocator-extended constructors.
* include/profile/list: Likewise.
* python/libstdcxx/v6/printers.py (get_value_from_list_node): New
function to get value from _List_node.
(StdListPrinter): Use get_value_from_list_node.
* testsuite/23_containers/list/allocator/copy.cc: New.
* testsuite/23_containers/list/allocator/copy_assign.cc: New.
* testsuite/23_containers/list/allocator/minimal.cc: New.
* testsuite/23_containers/list/allocator/move.cc: New.
* testsuite/23_containers/list/allocator/move_assign.cc: New.
* testsuite/23_containers/list/allocator/noexcept.cc: New.
* testsuite/23_containers/list/allocator/swap.cc: New.
* testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
Adjust dg-prune-output line number.
* testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
Likewise.
* testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
Likewise.
From-SVN: r224580
Uros Bizjak [Wed, 17 Jun 2015 20:34:57 +0000 (22:34 +0200)]
noplt-1.c (dg-do): Fix target selector.
* gcc.target/i386/noplt-1.c (dg-do): Fix target selector.
* gcc.target/i386/noplt-2.c (dg-do): Ditto.
* gcc.target/i386/noplt-3.c (dg-do): Ditto.
* gcc.target/i386/noplt-4.c (dg-do): ditto.
From-SVN: r224578
Uros Bizjak [Wed, 17 Jun 2015 19:54:10 +0000 (21:54 +0200)]
i386.c (ix86_function_arg): Nest TARGET_64BIT code.
* config/i386/i386.c (ix86_function_arg): Nest TARGET_64BIT code.
(ix86_function_arg_advance): Ditto.
(ix86_pass_by_reference): Ditto. Rewrite MS_ABI part.
From-SVN: r224576
Andrew MacLeod [Wed, 17 Jun 2015 18:53:03 +0000 (18:53 +0000)]
function.h (struct rtl_data): Remove struct and accessor macros.
2015-06-17 Andrew MacLeod <amacleod@redhat.com>
* function.h (struct rtl_data): Remove struct and accessor macros.
* emit-rtl.h (struct rtl_data): Relocate to here.
* Makefile.in (GTFILES): Add emit-rtl.h.
* df-core.c: Include emit-rtl.h.
* genattrtab.c: Likewise.
* genconditions.c: Likewise.
* genpreds.c: Likewise.
* genrecog.c: Likewise.
* regcprop.c: Likewise.
* resource.c: Likewise.
* sched-rgn.c: Likewise.
* config/aarch64/cortex-a57-fma-steering.c: Likewise.
* config/i386/winnt.c: Likewise.
From-SVN: r224573
Jakub Jelinek [Wed, 17 Jun 2015 18:11:42 +0000 (20:11 +0200)]
re PR middle-end/66429 (ICE in expand_GOMP_SIMD_LAST_LANE)
PR middle-end/66429
* omp-low.c (expand_omp_taskreg, expand_omp_target): Use child_cfun
instead of DECL_STRUCT_FUNCTION (child_fn). Or in has_simduid_loops
and has_force_vectorize_loops flags from cfun into
child_cfun.
(expand_omp_simd): For broken loop, set cfun->has_simduid_loops
if simduid is non-NULL.
* tree-pass.h (make_pass_simduid_cleanup): New prototype.
* passes.def (pass_simduid_cleanup): Add new pass after loop
passes.
* tree-vectorizer.c (adjust_simduid_builtins): Remove one unnecessary
indirection from htab argument's type.
(shrink_simd_arrays): New function.
(vectorize_loops): Use it. Adjust adjust_simduid_builtins caller.
Don't call adjust_simduid_builtins if there are no loops.
(pass_data_simduid_cleanup, pass_simduid_cleanup): New variables.
(pass_simduid_cleanup::execute): New method.
(make_pass_simduid_cleanup): New function.
From-SVN: r224571
Jakub Jelinek [Wed, 17 Jun 2015 18:01:05 +0000 (20:01 +0200)]
re PR c++/66571 (Template substitution causes some OpenMP rejects-valid)
PR c++/66571
* pt.c (tsubst_omp_clause_decl): New function.
(tsubst_omp_clauses): Use it or tsubst_copy instead of
tsubst_expr on OMP_CLAUSE_DECL.
* g++.dg/gomp/pr66571-1.C: New test.
From-SVN: r224569
Jakub Jelinek [Wed, 17 Jun 2015 17:59:25 +0000 (19:59 +0200)]
re PR middle-end/66429 (ICE in expand_GOMP_SIMD_LAST_LANE)
PR middle-end/66429
* omp-low.c (expand_omp_taskreg): Use child_cfun instead of
DECL_STRUCT_FUNCTION (child_fn). Or in has_simduid_loops
and has_force_vectorize_loops flags from cfun into
child_cfun.
(expand_omp_simd): For broken loop, set cfun->has_simduid_loops
if simduid is non-NULL.
* tree-pass.h (make_pass_simduid_cleanup): New prototype.
* passes.def (pass_simduid_cleanup): Add new pass after loop
passes.
* tree-vectorizer.c (adjust_simduid_builtins): Remove one unnecessary
indirection from htab argument's type.
(shrink_simd_arrays): New function.
(vectorize_loops): Use it. Adjust adjust_simduid_builtins caller.
Don't call adjust_simduid_builtins if there are no loops.
(pass_data_simduid_cleanup, pass_simduid_cleanup): New variables.
(pass_simduid_cleanup::execute): New method.
(make_pass_simduid_cleanup): New function.
* c-c++-common/gomp/pr66429.c: New test.
From-SVN: r224568
Andrew MacLeod [Wed, 17 Jun 2015 17:55:26 +0000 (17:55 +0000)]
tree-core.h (tree_target_option): Make opts field a pointer to a cl_target_option instead of an instance of the...
2017-06-17 Andrew MacLeod <amacleod@redhat.com>
* tree-core.h (tree_target_option): Make opts field a pointer to a
cl_target_option instead of an instance of the struct.
* tree.h (TREE_TARGET_OPTION): Return the pointer, not an address of
the structure.
* tree.c (make_node_stat ): Allocate a cl_target_option struct for
TARGET_OPTION_NODE.
(copy_node_stat): Allocate and copy struct cl_target_option.
From-SVN: r224567
Jonathan Wakely [Wed, 17 Jun 2015 17:45:45 +0000 (18:45 +0100)]
forward_list.h (_Fwd_list_base(const _Node_alloc_type&)): Change parameter to rvalue-reference.
* include/bits/forward_list.h
(_Fwd_list_base(const _Node_alloc_type&)): Change parameter to
rvalue-reference.
(_Fwd_list_base(_Fwd_list_base&&, const _Node_alloc_type&)): Likewise.
(forward_list(const _Alloc&)): Split default constructor out to
separate function.
(forward_list(forward_list&&, const _Alloc&)): Move elements if base
class didn't do so.
(forward_list::_M_move_assign(forward_list&&, true_type)): Replace
swap call with two assignments.
* include/bits/forward_list.tcc
(_Fwd_list_base(_Fwd_list_base&&, const _Node_alloc_type&)): Don't
move elements when allocators are not equal.
* include/debug/forward_list (forward_list(const allocator_type&)):
Split default constructor out to separate function.
* include/profile/forward_list (forward_list(const _Alloc&)):
Likewise.
From-SVN: r224566
David Malcolm [Wed, 17 Jun 2015 16:04:18 +0000 (16:04 +0000)]
jit: Add missing type-checking to gcc_jit_{l|r}value_access_field
gcc/jit/ChangeLog:
* libgccjit.c (gcc_jit_lvalue_access_field): Verify that the field
is for the correct struct.
(gcc_jit_rvalue_access_field): Likewise.
gcc/testsuite/ChangeLog:
* jit.dg/test-error-accessing-field-in-other-struct.c: Rename to...
* jit.dg/test-error-gcc_jit_rvalue_dereference_field-wrong-struct.c:
...this.
* jit.dg/test-error-gcc_jit_lvalue_access_field-wrong-struct.c:
New testcase.
* jit.dg/test-error-gcc_jit_rvalue_access_field-wrong-struct.c:
New testcase.
From-SVN: r224565
Andrew MacLeod [Wed, 17 Jun 2015 15:36:02 +0000 (15:36 +0000)]
tree.h (merge_dllimport_decl_attributes, [...]): Remove conditional exposure of prototypes.
* tree.h (merge_dllimport_decl_attributes, handle_dll_attribute):
Remove conditional exposure of prototypes.
(ANON_AGGRNAME_FORMAT, ANON_AGGRNAME_P): Delete.
* tree.c (anon_aggrname_format, anon_aggrname_p): New. Replace macro
definitions in tree.h with functions.
* lto-streamer-out.c (DFS_write_tree_body, hash_tree): Use
anon_aggrname_p.
* tree-streamer-out.c (write_ts_decl_minimal_tree_pointers): Likewise.
* cp/cp-lang.c (cxx_dwarf_name): Use anon_aggrname_p.
* cp/cp-tree.h (TYPE_ANONYMOUS_P): Likewise.
* cp/decl.c (grokdeclarator, xref_tag_1): Likewise.
* cp/error.c (dump_aggr_type): likewise.
* cp/pt.c (push_template_decl_real): Likewise.
* cp/name-lookup.c (make_anon_name): Use anon_aggrname_format.
From-SVN: r224564
Segher Boessenkool [Wed, 17 Jun 2015 15:18:03 +0000 (17:18 +0200)]
rs6000.md (*cmp<mode>_internal1): Rename to...
* config/rs6000/rs6000.md (*cmp<mode>_internal1): Rename to...
(*cmp<mode>_signed): ... this.
(*cmpsi_internal2, *cmpdi_internal2): Merge, rename to...
(*cmp<mode>_unsigned): ... this. Remove %b.
From-SVN: r224563
Andrew MacLeod [Wed, 17 Jun 2015 14:58:44 +0000 (14:58 +0000)]
coretypes.h: Include input.h and as-a.h.
2015-06-17 Andrew MacLeod <amacleod@redhat.com>
* coretypes.h: Include input.h and as-a.h.
* rtl.h: Include input.h and as-a.h for generator files.
* hwint.c: Include input.h.
* vec.c: Include input.h.
* alias.c: Do not include input.h, line-map.h or is-a.h.
* asan.c: Likewise.
* attribs.c: Likewise.
* auto-inc-dec.c: Likewise.
* auto-profile.c: Likewise.
* bb-reorder.c: Likewise.
* bt-load.c: Likewise.
* builtins.c: Likewise.
* caller-save.c: Likewise.
* calls.c: Likewise.
* ccmp.c: Likewise.
* cfg.c: Likewise.
* cfganal.c: Likewise.
* cfgbuild.c: Likewise.
* cfgcleanup.c: Likewise.
* cfgexpand.c: Likewise.
* cfghooks.c: Likewise.
* cfgloop.c: Likewise.
* cfgloop.h: Likewise.
* cfgloopanal.c: Likewise.
* cfgloopmanip.c: Likewise.
* cfgrtl.c: Likewise.
* cgraph.c: Likewise.
* cgraphbuild.c: Likewise.
* cgraphclones.c: Likewise.
* cgraphunit.c: Likewise.
* cilk-common.c: Likewise.
* combine-stack-adj.c: Likewise.
* combine.c: Likewise.
* compare-elim.c: Likewise.
* convert.c: Likewise.
* coverage.c: Likewise.
* cppbuiltin.c: Likewise.
* cprop.c: Likewise.
* cse.c: Likewise.
* cselib.c: Likewise.
* data-streamer-in.c: Likewise.
* data-streamer-out.c: Likewise.
* data-streamer.c: Likewise.
* dbxout.c: Likewise.
* dce.c: Likewise.
* ddg.c: Likewise.
* debug.c: Likewise.
* df-core.c: Likewise.
* df-problems.c: Likewise.
* df-scan.c: Likewise.
* df.h: Likewise.
* dfp.c: Likewise.
* diagnostic-core.h: Likewise.
* diagnostic.c: Likewise.
* dojump.c: Likewise.
* dominance.c: Likewise.
* domwalk.c: Likewise.
* double-int.c: Likewise.
* dse.c: Likewise.
* dumpfile.c: Likewise.
* dumpfile.h: Likewise.
* dwarf2asm.c: Likewise.
* dwarf2cfi.c: Likewise.
* dwarf2out.c: Likewise.
* emit-rtl.c: Likewise.
* et-forest.c: Likewise.
* except.c: Likewise.
* explow.c: Likewise.
* expmed.c: Likewise.
* expr.c: Likewise.
* final.c: Likewise.
* fixed-value.c: Likewise.
* fold-const.c: Likewise.
* function.c: Likewise.
* fwprop.c: Likewise.
* gcc-plugin.h: Likewise.
* gcse.c: Likewise.
* generic-match-head.c: Likewise.
* ggc-page.c: Likewise.
* gimple-builder.c: Likewise.
* gimple-expr.c: Likewise.
* gimple-fold.c: Likewise.
* gimple-iterator.c: Likewise.
* gimple-low.c: Likewise.
* gimple-match-head.c: Likewise.
* gimple-pretty-print.c: Likewise.
* gimple-ssa-isolate-paths.c: Likewise.
* gimple-ssa-strength-reduction.c: Likewise.
* gimple-streamer-in.c: Likewise.
* gimple-streamer-out.c: Likewise.
* gimple-streamer.h: Likewise.
* gimple-walk.c: Likewise.
* gimple.c: Likewise.
* gimplify-me.c: Likewise.
* gimplify.c: Likewise.
* godump.c: Likewise.
* graph.c: Likewise.
* graphite-blocking.c: Likewise.
* graphite-dependences.c: Likewise.
* graphite-interchange.c: Likewise.
* graphite-isl-ast-to-gimple.c: Likewise.
* graphite-optimize-isl.c: Likewise.
* graphite-poly.c: Likewise.
* graphite-scop-detection.c: Likewise.
* graphite-sese-to-poly.c: Likewise.
* graphite.c: Likewise.
* haifa-sched.c: Likewise.
* hw-doloop.c: Likewise.
* ifcvt.c: Likewise.
* init-regs.c: Likewise.
* input.c: Likewise.
* internal-fn.c: Likewise.
* ipa-chkp.c: Likewise.
* ipa-comdats.c: Likewise.
* ipa-cp.c: Likewise.
* ipa-devirt.c: Likewise.
* ipa-icf-gimple.c: Likewise.
* ipa-icf.c: Likewise.
* ipa-inline-analysis.c: Likewise.
* ipa-inline-transform.c: Likewise.
* ipa-inline.c: Likewise.
* ipa-polymorphic-call.c: Likewise.
* ipa-profile.c: Likewise.
* ipa-prop.c: Likewise.
* ipa-pure-const.c: Likewise.
* ipa-ref.c: Likewise.
* ipa-reference.c: Likewise.
* ipa-split.c: Likewise.
* ipa-utils.c: Likewise.
* ipa-visibility.c: Likewise.
* ipa.c: Likewise.
* ira-build.c: Likewise.
* ira-color.c: Likewise.
* ira-conflicts.c: Likewise.
* ira-costs.c: Likewise.
* ira-emit.c: Likewise.
* ira-lives.c: Likewise.
* ira.c: Likewise.
* jump.c: Likewise.
* langhooks.c: Likewise.
* lcm.c: Likewise.
* loop-doloop.c: Likewise.
* loop-init.c: Likewise.
* loop-invariant.c: Likewise.
* loop-iv.c: Likewise.
* loop-unroll.c: Likewise.
* lower-subreg.c: Likewise.
* lra-assigns.c: Likewise.
* lra-coalesce.c: Likewise.
* lra-constraints.c: Likewise.
* lra-eliminations.c: Likewise.
* lra-lives.c: Likewise.
* lra-remat.c: Likewise.
* lra-spills.c: Likewise.
* lra.c: Likewise.
* lto-cgraph.c: Likewise.
* lto-compress.c: Likewise.
* lto-opts.c: Likewise.
* lto-section-in.c: Likewise.
* lto-section-out.c: Likewise.
* lto-streamer-in.c: Likewise.
* lto-streamer-out.c: Likewise.
* lto-streamer.c: Likewise.
* mcf.c: Likewise.
* mode-switching.c: Likewise.
* modulo-sched.c: Likewise.
* omega.c: Likewise.
* omp-low.c: Likewise.
* optabs.c: Likewise.
* opts-global.c: Likewise.
* opts.h: Likewise.
* passes.c: Likewise.
* plugin.c: Likewise.
* postreload-gcse.c: Likewise.
* postreload.c: Likewise.
* predict.c: Likewise.
* pretty-print.h: Likewise.
* print-rtl.c: Likewise.
* print-tree.c: Likewise.
* profile.c: Likewise.
* real.c: Likewise.
* realmpfr.c: Likewise.
* recog.c: Likewise.
* ree.c: Likewise.
* reg-stack.c: Likewise.
* regcprop.c: Likewise.
* reginfo.c: Likewise.
* regrename.c: Likewise.
* regstat.c: Likewise.
* reload.c: Likewise.
* reload1.c: Likewise.
* reorg.c: Likewise.
* resource.c: Likewise.
* rtl-chkp.c: Likewise.
* rtl-error.c: Likewise.
* rtlanal.c: Likewise.
* rtlhooks.c: Likewise.
* sanopt.c: Likewise.
* sched-deps.c: Likewise.
* sched-ebb.c: Likewise.
* sched-rgn.c: Likewise.
* sched-vis.c: Likewise.
* sdbout.c: Likewise.
* sel-sched-dump.c: Likewise.
* sel-sched-ir.c: Likewise.
* sel-sched.c: Likewise.
* sese.c: Likewise.
* shrink-wrap.c: Likewise.
* simplify-rtx.c: Likewise.
* stack-ptr-mod.c: Likewise.
* statistics.c: Likewise.
* stmt.c: Likewise.
* stor-layout.c: Likewise.
* store-motion.c: Likewise.
* streamer-hooks.c: Likewise.
* stringpool.c: Likewise.
* symtab.c: Likewise.
* target-globals.c: Likewise.
* targhooks.c: Likewise.
* toplev.c: Likewise.
* tracer.c: Likewise.
* trans-mem.c: Likewise.
* tree-affine.c: Likewise.
* tree-browser.c: Likewise.
* tree-call-cdce.c: Likewise.
* tree-cfg.c: Likewise.
* tree-cfgcleanup.c: Likewise.
* tree-chkp-opt.c: Likewise.
* tree-chkp.c: Likewise.
* tree-chrec.c: Likewise.
* tree-complex.c: Likewise.
* tree-data-ref.c: Likewise.
* tree-dfa.c: Likewise.
* tree-diagnostic.c: Likewise.
* tree-dump.c: Likewise.
* tree-eh.c: Likewise.
* tree-emutls.c: Likewise.
* tree-if-conv.c: Likewise.
* tree-inline.c: Likewise.
* tree-into-ssa.c: Likewise.
* tree-iterator.c: Likewise.
* tree-loop-distribution.c: Likewise.
* tree-nested.c: Likewise.
* tree-nrv.c: Likewise.
* tree-object-size.c: Likewise.
* tree-outof-ssa.c: Likewise.
* tree-parloops.c: Likewise.
* tree-phinodes.c: Likewise.
* tree-predcom.c: Likewise.
* tree-pretty-print.c: Likewise.
* tree-profile.c: Likewise.
* tree-scalar-evolution.c: Likewise.
* tree-sra.c: Likewise.
* tree-ssa-address.c: Likewise.
* tree-ssa-alias.c: Likewise.
* tree-ssa-ccp.c: Likewise.
* tree-ssa-coalesce.c: Likewise.
* tree-ssa-copy.c: Likewise.
* tree-ssa-copyrename.c: Likewise.
* tree-ssa-dce.c: Likewise.
* tree-ssa-dom.c: Likewise.
* tree-ssa-dse.c: Likewise.
* tree-ssa-forwprop.c: Likewise.
* tree-ssa-ifcombine.c: Likewise.
* tree-ssa-live.c: Likewise.
* tree-ssa-loop-ch.c: Likewise.
* tree-ssa-loop-im.c: Likewise.
* tree-ssa-loop-ivcanon.c: Likewise.
* tree-ssa-loop-ivopts.c: Likewise.
* tree-ssa-loop-manip.c: Likewise.
* tree-ssa-loop-niter.c: Likewise.
* tree-ssa-loop-prefetch.c: Likewise.
* tree-ssa-loop-unswitch.c: Likewise.
* tree-ssa-loop.c: Likewise.
* tree-ssa-math-opts.c: Likewise.
* tree-ssa-operands.c: Likewise.
* tree-ssa-phiopt.c: Likewise.
* tree-ssa-phiprop.c: Likewise.
* tree-ssa-pre.c: Likewise.
* tree-ssa-propagate.c: Likewise.
* tree-ssa-reassoc.c: Likewise.
* tree-ssa-sccvn.c: Likewise.
* tree-ssa-scopedtables.c: Likewise.
* tree-ssa-sink.c: Likewise.
* tree-ssa-strlen.c: Likewise.
* tree-ssa-structalias.c: Likewise.
* tree-ssa-tail-merge.c: Likewise.
* tree-ssa-ter.c: Likewise.
* tree-ssa-threadedge.c: Likewise.
* tree-ssa-threadupdate.c: Likewise.
* tree-ssa-uncprop.c: Likewise.
* tree-ssa-uninit.c: Likewise.
* tree-ssa.c: Likewise.
* tree-ssanames.c: Likewise.
* tree-stdarg.c: Likewise.
* tree-streamer-in.c: Likewise.
* tree-streamer-out.c: Likewise.
* tree-streamer.c: Likewise.
* tree-switch-conversion.c: Likewise.
* tree-tailcall.c: Likewise.
* tree-vect-data-refs.c: Likewise.
* tree-vect-generic.c: Likewise.
* tree-vect-loop-manip.c: Likewise.
* tree-vect-loop.c: Likewise.
* tree-vect-patterns.c: Likewise.
* tree-vect-slp.c: Likewise.
* tree-vect-stmts.c: Likewise.
* tree-vectorizer.c: Likewise.
* tree-vrp.c: Likewise.
* tree.c: Likewise.
* tsan.c: Likewise.
* ubsan.c: Likewise.
* valtrack.c: Likewise.
* value-prof.c: Likewise.
* var-tracking.c: Likewise.
* varasm.c: Likewise.
* varpool.c: Likewise.
* vmsdbgout.c: Likewise.
* vtable-verify.c: Likewise.
* web.c: Likewise.
* wide-int.cc: Likewise.
* xcoffout.c: Likewise.
* config/aarch64/aarch64-builtins.c: Likewise.
* config/aarch64/aarch64.c: Likewise.
* config/alpha/alpha.c: Likewise.
* config/arc/arc.c: Likewise.
* config/arm/aarch-common.c: Likewise.
* config/arm/arm-builtins.c: Likewise.
* config/arm/arm-c.c: Likewise.
* config/arm/arm.c: Likewise.
* config/avr/avr-c.c: Likewise.
* config/avr/avr-log.c: Likewise.
* config/avr/avr.c: Likewise.
* config/bfin/bfin.c: Likewise.
* config/c6x/c6x.c: Likewise.
* config/cr16/cr16.c: Likewise.
* config/cris/cris.c: Likewise.
* config/darwin-c.c: Likewise.
* config/darwin.c: Likewise.
* config/default-c.c: Likewise.
* config/epiphany/epiphany.c: Likewise.
* config/epiphany/mode-switch-use.c: Likewise.
* config/epiphany/resolve-sw-modes.c: Likewise.
* config/fr30/fr30.c: Likewise.
* config/frv/frv.c: Likewise.
* config/ft32/ft32.c: Likewise.
* config/glibc-c.c: Likewise.
* config/h8300/h8300.c: Likewise.
* config/i386/i386-c.c: Likewise.
* config/i386/i386.c: Likewise.
* config/i386/msformat-c.c: Likewise.
* config/i386/winnt-cxx.c: Likewise.
* config/i386/winnt-stubs.c: Likewise.
* config/i386/winnt.c: Likewise.
* config/ia64/ia64-c.c: Likewise.
* config/ia64/ia64.c: Likewise.
* config/iq2000/iq2000.c: Likewise.
* config/lm32/lm32.c: Likewise.
* config/m32c/m32c-pragma.c: Likewise.
* config/m32c/m32c.c: Likewise.
* config/m32r/m32r.c: Likewise.
* config/m68k/m68k.c: Likewise.
* config/mcore/mcore.c: Likewise.
* config/mep/mep-pragma.c: Likewise.
* config/mep/mep.c: Likewise.
* config/microblaze/microblaze-c.c: Likewise.
* config/microblaze/microblaze.c: Likewise.
* config/mips/mips.c: Likewise.
* config/mmix/mmix.c: Likewise.
* config/mn10300/mn10300.c: Likewise.
* config/moxie/moxie.c: Likewise.
* config/msp430/msp430-c.c: Likewise.
* config/msp430/msp430.c: Likewise.
* config/nds32/nds32-cost.c: Likewise.
* config/nds32/nds32-fp-as-gp.c: Likewise.
* config/nds32/nds32-intrinsic.c: Likewise.
* config/nds32/nds32-isr.c: Likewise.
* config/nds32/nds32-md-auxiliary.c: Likewise.
* config/nds32/nds32-memory-manipulation.c: Likewise.
* config/nds32/nds32-pipelines-auxiliary.c: Likewise.
* config/nds32/nds32-predicates.c: Likewise.
* config/nds32/nds32.c: Likewise.
* config/nios2/nios2.c: Likewise.
* config/nvptx/nvptx.c: Likewise.
* config/pa/pa.c: Likewise.
* config/pdp11/pdp11.c: Likewise.
* config/rl78/rl78-c.c: Likewise.
* config/rl78/rl78.c: Likewise.
* config/rs6000/rs6000-c.c: Likewise.
* config/rs6000/rs6000.c: Likewise.
* config/rx/rx.c: Likewise.
* config/s390/s390-c.c: Likewise.
* config/s390/s390.c: Likewise.
* config/sh/sh-c.c: Likewise.
* config/sh/sh-mem.cc: Likewise.
* config/sh/sh.c: Likewise.
* config/sh/sh_optimize_sett_clrt.cc: Likewise.
* config/sh/sh_treg_combine.cc: Likewise.
* config/sol2-c.c: Likewise.
* config/sol2-cxx.c: Likewise.
* config/sol2-stubs.c: Likewise.
* config/sol2.c: Likewise.
* config/sparc/sparc-c.c: Likewise.
* config/sparc/sparc.c: Likewise.
* config/spu/spu-c.c: Likewise.
* config/spu/spu.c: Likewise.
* config/stormy16/stormy16.c: Likewise.
* config/tilegx/mul-tables.c: Likewise.
* config/tilegx/tilegx-c.c: Likewise.
* config/tilegx/tilegx.c: Likewise.
* config/tilepro/mul-tables.c: Likewise.
* config/tilepro/tilepro-c.c: Likewise.
* config/tilepro/tilepro.c: Likewise.
* config/v850/v850-c.c: Likewise.
* config/v850/v850.c: Likewise.
* config/vax/vax.c: Likewise.
* config/visium/visium.c: Likewise.
* config/vms/vms-c.c: Likewise.
* config/vms/vms.c: Likewise.
* config/vxworks.c: Likewise.
* config/winnt-c.c: Likewise.
* config/xtensa/xtensa.c: Likewise.
ada
* ada/gcc-interface/cuintp.c: Do not include input.h, line-map.h or
is-a.h.
* ada/gcc-interface/decl.c: Likewise.
* ada/gcc-interface/misc.c: Likewise.
* ada/gcc-interface/targtyps.c: Likewise.
* ada/gcc-interface/trans.c: Likewise.
* ada/gcc-interface/utils.c: Likewise.
* ada/gcc-interface/utils2.c: Likewise.
c
* c/c-array-notation.c: Do not include input.h, line-map.h or is-a.h.
* c/c-aux-info.c: Likewise.
* c/c-convert.c: Likewise.
* c/c-decl.c: Likewise.
* c/c-errors.c: Likewise.
* c/c-lang.c: Likewise.
* c/c-objc-common.c: Likewise.
* c/c-parser.c: Likewise.
* c/c-typeck.c: Likewise.
c-family
* c-family/array-notation-common.c: Do not include input.h, line-map.h
or is-a.h.
* c-family/c-ada-spec.c: Likewise.
* c-family/c-cilkplus.c: Likewise.
* c-family/c-common.c: Likewise.
* c-family/c-common.h: Likewise.
* c-family/c-cppbuiltin.c: Likewise.
* c-family/c-dump.c: Likewise.
* c-family/c-format.c: Likewise.
* c-family/c-gimplify.c: Likewise.
* c-family/c-indentation.c: Likewise.
* c-family/c-lex.c: Likewise.
* c-family/c-omp.c: Likewise.
* c-family/c-opts.c: Likewise.
* c-family/c-pch.c: Likewise.
* c-family/c-ppoutput.c: Likewise.
* c-family/c-pragma.c: Likewise.
* c-family/c-pretty-print.c: Likewise.
* c-family/c-semantics.c: Likewise.
* c-family/c-ubsan.c: Likewise.
* c-family/cilk.c: Likewise.
* c-family/stub-objc.c: Likewise.
common
* common/common-target.h: Do not include input.h, line-map.h or is-a.h.
* common/common-targhooks.c: Likewise.
cp
* cp/call.c: Do not include input.h, line-map.h or is-a.h.
* cp/class.c: Likewise.
* cp/constexpr.c: Likewise.
* cp/cp-array-notation.c: Likewise.
* cp/cp-gimplify.c: Likewise.
* cp/cp-lang.c: Likewise.
* cp/cp-objcp-common.c: Likewise.
* cp/cp-tree.h: Likewise.
* cp/cp-ubsan.c: Likewise.
* cp/cvt.c: Likewise.
* cp/decl.c: Likewise.
* cp/decl2.c: Likewise.
* cp/dump.c: Likewise.
* cp/error.c: Likewise.
* cp/except.c: Likewise.
* cp/expr.c: Likewise.
* cp/friend.c: Likewise.
* cp/init.c: Likewise.
* cp/lambda.c: Likewise.
* cp/lex.c: Likewise.
* cp/mangle.c: Likewise.
* cp/method.c: Likewise.
* cp/name-lookup.c: Likewise.
* cp/optimize.c: Likewise.
* cp/parser.c: Likewise.
* cp/pt.c: Likewise.
* cp/ptree.c: Likewise.
* cp/repo.c: Likewise.
* cp/rtti.c: Likewise.
* cp/search.c: Likewise.
* cp/semantics.c: Likewise.
* cp/tree.c: Likewise.
* cp/typeck.c: Likewise.
* cp/typeck2.c: Likewise.
* cp/vtable-class-hierarchy.c: Likewise.
fortran
* fortran/convert.c: Do not include input.h, line-map.h or is-a.h.
* fortran/cpp.c: Likewise.
* fortran/decl.c: Likewise.
* fortran/f95-lang.c: Likewise.
* fortran/gfortran.h: Likewise.
* fortran/iresolve.c: Likewise.
* fortran/match.c: Likewise.
* fortran/module.c: Likewise.
* fortran/options.c: Likewise.
* fortran/target-memory.c: Likewise.
* fortran/trans-array.c: Likewise.
* fortran/trans-common.c: Likewise.
* fortran/trans-const.c: Likewise.
* fortran/trans-decl.c: Likewise.
* fortran/trans-expr.c: Likewise.
* fortran/trans-intrinsic.c: Likewise.
* fortran/trans-io.c: Likewise.
* fortran/trans-openmp.c: Likewise.
* fortran/trans-stmt.c: Likewise.
* fortran/trans-types.c: Likewise.
* fortran/trans.c: Likewise.
go
* go/go-backend.c: Do not include input.h, line-map.h or is-a.h.
* go/go-gcc.cc: Likewise.
* go/go-lang.c: Likewise.
* go/go-system.h: Likewise.
java
* java/boehm.c: Do not include input.h, line-map.h or is-a.h.
* java/builtins.c: Likewise.
* java/class.c: Likewise.
* java/constants.c: Likewise.
* java/decl.c: Likewise.
* java/except.c: Likewise.
* java/expr.c: Likewise.
* java/java-gimplify.c: Likewise.
* java/jcf-dump.c: Likewise.
* java/jcf-io.c: Likewise.
* java/jcf-parse.c: Likewise.
* java/jvgenmain.c: Likewise.
* java/lang.c: Likewise.
* java/mangle.c: Likewise.
* java/mangle_name.c: Likewise.
* java/resource.c: Likewise.
* java/typeck.c: Likewise.
* java/verify-glue.c: Likewise.
* java/verify-impl.c: Likewise.
jit
* jit/dummy-frontend.c: Do not include input.h, line-map.h or is-a.h.
* jit/jit-common.h: Likewise.
* jit/jit-playback.c: Likewise.
lto
* lto/lto-lang.c: Do not include input.h, line-map.h or is-a.h.
* lto/lto-object.c: Likewise.
* lto/lto-partition.c: Likewise.
* lto/lto-symtab.c: Likewise.
* lto/lto.c: Likewise.
objc
* objc/objc-act.c: Do not include input.h, line-map.h or is-a.h.
* objc/objc-encoding.c: Likewise.
* objc/objc-gnu-runtime-abi-01.c: Likewise.
* objc/objc-lang.c: Likewise.
* objc/objc-map.c: Likewise.
* objc/objc-next-runtime-abi-01.c: Likewise.
* objc/objc-next-runtime-abi-02.c: Likewise.
* objc/objc-runtime-shared-support.c: Likewise.
objcp
* objcp/objcp-decl.c: Do not include input.h, line-map.h or is-a.h.
* objcp/objcp-lang.c: Likewise.
From-SVN: r224562
Jonathan Wakely [Wed, 17 Jun 2015 11:33:31 +0000 (12:33 +0100)]
forward_list.h (forward_list::_M_get_Node_allocator): Remove unnecessary uses of operator& and static_cast.
* include/bits/forward_list.h (forward_list::_M_get_Node_allocator):
Remove unnecessary uses of operator& and static_cast.
* include/bits/forward_list.tcc
(forward_list::operator=(const forward_list&)): Use __addressof
instead of operator&.
(forward_list::remove(const _Tp&), forward_list::remove(_Pred)):
Remove invalid static_casts.
* include/debug/forward_list: Use __addressof instead of operator&.
* testsuite/23_containers/forward_list/modifiers/addressof.cc: New.
From-SVN: r224553
Jonathan Wakely [Wed, 17 Jun 2015 10:51:46 +0000 (11:51 +0100)]
alloc_traits.h (__alloc_traits::_S_nothrow_swap()): Use __is_nothrow_swappable.
* include/ext/alloc_traits.h (__alloc_traits::_S_nothrow_swap()): Use
__is_nothrow_swappable.
From-SVN: r224552
Uros Bizjak [Wed, 17 Jun 2015 10:03:49 +0000 (12:03 +0200)]
re PR testsuite/65944 (FAIL: g++.dg/lto/pr65276: undefined reference to std2::exception::~exception())
PR testsuite/65944
* g++.dg/lto/pr65276_0.C: Add std2::exception::~exception() function.
From-SVN: r224550
Robert Suchanek [Wed, 17 Jun 2015 09:55:59 +0000 (09:55 +0000)]
Implement TARGET_IRA_CHANGE_PSEUDO_ALLOCNO_CLASS hook.
gcc/ChangeLog:
* config/mips/mips.c (mips_ira_change_pseudo_allocno_class): New
function.
(TARGET_IRA_CHANGE_PSEUDO_ALLOCNO_CLASS): Define macro.
gcc/testsuite/ChangeLog:
* gcc.target/mips/pr65862-1.c: New test.
* gcc.target/mips/pr65862-2.c: Likewise.
From-SVN: r224549
Uros Bizjak [Wed, 17 Jun 2015 09:34:46 +0000 (11:34 +0200)]
pr54592.c: Remove dg-require-effective-target.
* gcc.target/i386/pr54592.c: Remove dg-require-effective-target.
* gcc.target/i386/pr52252-atom.c: Ditto.
* gcc.target/i386/vect-div-1.c: Ditto.
* gcc.target/i386/rotate-5.c: Ditto.
* gcc.target/i386/pr50202.c: Ditto.
* gcc.target/i386/pr37843-3.c: Ditto.
* gcc.target/i386/avx2-vect-aggressive-1.c: Ditto.
* gcc.target/i386/pr53397-1.c: Ditto.
* gcc.target/i386/pr55934.c: Ditto.
* gcc.target/i386/pr37843-4.c: Ditto.
* gcc.target/i386/pr60451.c: Ditto.
* gcc.target/i386/pr53397-2.c: Ditto.
* gcc.target/i386/vectorize1.c: Ditto.
* gcc.target/i386/extract-insert-combining.c: Ditto.
* gcc.target/i386/pr53759.c: Ditto.
* gcc.target/i386/pr52252-core.c: Ditto.
* gcc.target/i386/rotate-3.c: Ditto.
* gcc.target/i386/sse-20.c: Ditto.
* gcc.target/i386/rotate-4.c: Ditto.
* gcc.target/i386/pr61403.c: Ditto.
* gcc.target/i386/pr60205-2.c: Add dg-do compile directive.
* gcc.target/i386/pr60901.c: Ditto.
* gcc.target/i386/pr59794-7.c: Ditto.
* gcc.target/i386/pr62208.c: Ditto.
* gcc.target/i386/pr53416.c: Ditto.
* gcc.target/i386/asm-dialect-1.c: Ditto.
* gcc.target/i386/pr50038.c: Ditto.
* gcc.target/i386/47698.c: Ditto.
* gcc.target/i386/avx512vl-vpmuludq-1.c: Ditto.
* gcc.target/i386/pr59794-2.c: Ditto.
* gcc.target/i386/pr59794-3.c: Ditto.
* gcc.target/i386/pr39058.c: Ditto.
* gcc.target/i386/pr60205-1.c: Ditto.
* gcc.target/i386/fma4-256-nmsubXX.c: Add dg-do run directive.
* gcc.target/i386/sse2-movq-2.c: Ditto.
From-SVN: r224548
Richard Biener [Wed, 17 Jun 2015 07:37:40 +0000 (07:37 +0000)]
revert: [multiple changes]
2015-06-17 Richard Biener <rguenther@suse.de>
PR tree-optimization/66251
* tree-vect-stmts.c (vectorizable_store): Fix gathering of vectorized
stmts for SLP strided stores.
* gfortran.fortran-torture/compile/pr66251-2.f90: New testcase.
Revert
2015-05-22 Richard Biener <rguenther@suse.de>
PR tree-optimization/66251
* tree-vect-stmts.c (vectorizable_conversion): Properly
set STMT_VINFO_VEC_STMT even for the SLP case.
2015-05-26 Michael Matz <matz@suse.de>
PR middle-end/66251
* tree-vect-stmts.c (vect_create_vectorized_demotion_stmts): Always set
STMT_VINFO_VEC_STMT, also with SLP.
From-SVN: r224545
GCC Administrator [Wed, 17 Jun 2015 00:16:16 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r224544
Jonathan Wakely [Tue, 16 Jun 2015 22:33:06 +0000 (23:33 +0100)]
* include/bits/allocated_ptr.h (__allocated_ptr): Use __addressof.
From-SVN: r224540
Jonathan Wakely [Tue, 16 Jun 2015 21:04:53 +0000 (22:04 +0100)]
list.tcc (list::operator=(const list&), [...]): Use __addressof instead of operator&.
* include/bits/list.tcc (list::operator=(const list&), list::merge):
Use __addressof instead of operator&.
(list::sort): Use array-to-pointer decay instead of operator&.
* include/bits/stl_list.h (list::splice): Use __addressof instead of
operator&.
* include/debug/formatter.h (_Error_formatter::_Parameter::_Parameter):
Likewise.
* include/debug/functions.h (__check_singular): Likewise.
* include/debug/list (list::splice, list::merge): Likewise.
* testsuite/23_containers/list/modifiers/addressof.cc: New.
From-SVN: r224539
Paolo Carlini [Tue, 16 Jun 2015 20:07:57 +0000 (20:07 +0000)]
re PR c++/59682 (Invalid syntax accepted: new-placement without expression-list)
/cp
2015-06-16 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/59682
* parser.c (cp_parser_new_placement): Reject an empty expression-list.
/testsuite
2015-06-16 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/59682
* g++.dg/parse/new-placement1.C: New.
From-SVN: r224537
David Malcolm [Tue, 16 Jun 2015 19:52:37 +0000 (19:52 +0000)]
jit: Add a test for compound assignment
gcc/testsuite/ChangeLog:
* jit.dg/all-non-failing-tests.h: Add test-compound-assignment.c.
* jit.dg/test-compound-assignment.c: New testcase.
From-SVN: r224536
David Malcolm [Tue, 16 Jun 2015 19:44:05 +0000 (19:44 +0000)]
PR jit/66539: Properly add testcase
gcc/testsuite/ChangeLog:
PR jit/66539
* jit.dg/all-non-failing-tests.h: Add test-debug-strings.c
to "testcases" array.
From-SVN: r224535
Jason Merrill [Tue, 16 Jun 2015 19:29:19 +0000 (15:29 -0400)]
re PR c++/66536 (ICE in build_ctor_subob_ref, at cp/tree.c:2534)
PR c++/66536
* tree.c (replace_placeholders_r) [CONSTRUCTOR]: Handle type
mismatch.
From-SVN: r224534
Jason Merrill [Tue, 16 Jun 2015 19:29:09 +0000 (15:29 -0400)]
re PR c++/58063 (default arguments evaluated twice per call)
PR c++/58063
* tree.c (bot_manip): Remap SAVE_EXPR.
From-SVN: r224533
David Malcolm [Tue, 16 Jun 2015 18:13:44 +0000 (18:13 +0000)]
PR jit/66539: Add parentheses as needed to gcc_jit_object_get_debug_string
gcc/jit/ChangeLog:
PR jit/66539
* jit-recording.c: Within namespace gcc::jit::recording::
(rvalue::get_debug_string_parens): New function.
(binary_op::make_debug_string): Update to mimic C precedence
rules.
(binary_op_precedence): New array.
(binary_op::get_precedence): New function.
(comparison::make_debug_string): Update to mimic C precedence
rules.
(comparison_precedence): New array.
(comparison::get_precedence): New function.
(cast::make_debug_string): Update to mimic C precedence rules.
(call::make_debug_string): Likewise.
(call_through_ptr::make_debug_string): Likewise.
(array_access::make_debug_string): Likewise.
(access_field_of_lvalue::make_debug_string): Likewise.
(access_field_rvalue::make_debug_string): Likewise.
(dereference_field_rvalue::make_debug_string): Likewise.
(dereference_rvalue::make_debug_string): Likewise.
(get_address_of_lvalue::make_debug_string): Likewise.
* jit-recording.h: Within namespace gcc::jit::recording::
(precedence): New enum.
(rvalue::rvalue): Initialize field "m_parenthesized_string".
(rvalue::get_debug_string_parens): New method.
(rvalue::get_precedence): New pure virtual function.
(rvalue::m_parenthesized_string): New field.
(param::get_precedence): New function.
(global::get_precedence): New function.
(memento_of_new_rvalue_from_const::get_precedence): New function.
(memento_of_new_string_literal::get_precedence): New function.
(unary_op::get_precedence): New function.
(binary_op::get_precedence): New function.
(comparison::get_precedence): New function.
(cast::get_precedence): New function.
(call::get_precedence): New function.
(call_through_ptr::get_precedence): New function.
(array_access::get_precedence): New function.
(access_field_of_lvalue::get_precedence): New function.
(access_field_rvalue::get_precedence): New function.
(dereference_field_rvalue::get_precedence): New function.
(dereference_rvalue::get_precedence): New function.
(get_address_of_lvalue::get_precedence): New function.
(local::get_precedence): New function.
gcc/testsuite/ChangeLog:
PR jit/66539
* jit.dg/all-non-failing-tests.h: Add test-debug-strings.c.
* jit.dg/test-debug-strings.c: New test case.
* jit.dg/test-quadratic.c (make_calc_discriminant): Verify that
the discriminant has a sane debug string.
From-SVN: r224531
Jonathan Wakely [Tue, 16 Jun 2015 17:53:52 +0000 (18:53 +0100)]
re PR libstdc++/65393 (std::thread shared_ptr inefficiency)
PR libstdc++/65393
* src/c++11/thread.cc (thread::_M_make_thread): Replace shared_ptr
copies with moves.
From-SVN: r224530