platform/upstream/linaro-gcc.git
9 years agogcc/
rsandifo [Tue, 19 May 2015 07:09:06 +0000 (07:09 +0000)]
gcc/
* rtl.h (REG_NREGS): New macro
* alias.c (record_set): Use it.
* cfgcleanup.c (mark_effect): Likewise.
* combine.c (likely_spilled_retval_1): Likewise.
(likely_spilled_retval_p, can_change_dest_mode): Likewise.
(move_deaths, distribute_notes): Likewise.
* cselib.c (cselib_record_set): Likewise.
* df-problems.c (df_simulate_one_insn_forwards): Likewise.
* df-scan.c (df_mark_reg): Likewise.
* dse.c (look_for_hardregs): Likewise.
* dwarf2out.c (reg_loc_descriptor): Likewise.
(multiple_reg_loc_descriptor): Likewise.
* expr.c (write_complex_part, read_complex_part): Likewise.
(emit_move_complex): Likewise.
* haifa-sched.c (setup_ref_regs): Likewise.
* ira-lives.c (mark_hard_reg_live): Likewise.
* lra.c (lra_set_insn_recog_data): Likewise.
* mode-switching.c (create_pre_exit): Likewise.
* postreload.c (reload_combine_recognize_const_pattern): Likewise.
(reload_combine_recognize_pattern): Likewise.
(reload_combine_note_use, move2add_record_mode): Likewise.
(reload_cse_move2add): Likewise.
* reg-stack.c (subst_stack_regs_pat): Likewise.
* regcprop.c (kill_value, copy_value): Likewise.
(copyprop_hardreg_forward_1): Likewise.
* regrename.c (verify_reg_in_set, scan_rtx_reg): Likewise.
(build_def_use): Likewise.
* sched-deps.c (mark_insn_reg_birth, mark_reg_death): Likewise.
(deps_analyze_insn): Likewise.
* sched-rgn.c (check_live_1, update_live_1): Likewise.
* sel-sched.c (count_occurrences_equiv): Likewise.
* valtrack.c (dead_debug_insert_temp): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223337 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/
rsandifo [Tue, 19 May 2015 07:08:49 +0000 (07:08 +0000)]
gcc/
* cfgcleanup.c (mentions_nonequal_regs): Use END_REGNO.
* dse.c (note_add_store): Likewise.
* ira-lives.c (mark_hard_reg_dead): Likewise.
* loop-invariant.c (mark_reg_store): Likewise.
(mark_reg_death): Likewise.
* postreload.c (reload_combine): Likewise.
(reload_combine_note_store): Likewise.
(reload_combine_note_use): Likewise.
* recog.c (peep2_reg_dead_p): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223336 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * config/rs6000/predicates.md (gpc_reg_operand): Don't allow all
amodra [Tue, 19 May 2015 06:10:58 +0000 (06:10 +0000)]
* config/rs6000/predicates.md (gpc_reg_operand): Don't allow all
hard registers numbered greater or equal to ARG_POINTER_REGNUM.
(reg_or_neg_short_operand, fix_trunc_dest_operand): Delete
unused predicates.
* config/rs6000/altivec.md (save_vregs_*, restore_vregs_*):
Use altivec_register_operand.  Make insn predicate TARGET_ALTIVEC.
* config/rs6000/rs6000.md (extzvdi_internal2): Use cc_reg_operand.
* config/rs6000/vsx.md (vsx_float<VSi><mode>2): Expand comment.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223335 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/
prachigodbole [Tue, 19 May 2015 05:06:03 +0000 (05:06 +0000)]
gcc/
* config/mips/mips.md (JOIN_MODE): New mode iterator.
(join2_load_Store<JOIN_MODE:mode>): New pattern.
(join2_loadhi): Likewise.
(define_peehole2): Add peephole2 patterns to join 2 HI/SI/SF/DF-mode
load-load and store-stores.
* config/mips/mips.opt (mload-store-pairs): New option.
(TARGET_LOAD_STORE_PAIRS): New macro.
* config/mips/mips.h (ENABLE_LD_ST_PAIRS): Likewise.
* config/mips/mips-protos.h (mips_load_store_bonding_p): New prototype.
* config/mips/mips.c (mips_load_store_bonding_p): New function.

gcc/testsuite/
* gcc.target/mips/p5600-bonding.c : New file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223334 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoUse std::swap instead of explicit swaps
miyuki [Tue, 19 May 2015 04:24:31 +0000 (04:24 +0000)]
Use std::swap instead of explicit swaps

gcc/
* bb-reorder.c (fix_up_fall_thru_edges): Use std::swap instead of
explicit swaps.
* dojump.c (do_compare_rtx_and_jump): Likewise.
* expmed.c (emit_store_flag_1): Likewise.
* fibonacci_heap.h (fibonacci_heap::union_with): Likewise.
* final.c (sprint_ul): Use std::reverse for reversing a string.
* fold-const.c (extract_muldiv_1): Use std::swap.
* genmodes.c (emit_mode_int_n): Likewise.
* ifcvt.c (dead_or_predicable): Likewise.
* ira-build.c (ira_merge_live_ranges): Likewise.
(swap_allocno_copy_ends_if_necessary): Likewise.
* ira.c (ira_setup_alts): Likewise.
* loop-iv.c (iv_analyze_expr): Likewise.
(implies_p): Likewise.
(canon_condition): Likewise.
* lra-constraints.c (swap_operands): Likewise.
* lra-lives.c (lra_merge_live_ranges): Likewise.
* omega.c (swap): Remove.
(bswap): Remove.
(omega_unprotect_1): Use std::swap.
(omega_solve_geq): Likewise.
* optabs.c (expand_binop_directly): Likewise.
(expand_binop): Likewise.
(emit_conditional_move): Likewise.
(emit_conditional_add): Likewise.
* postreload.c (reload_cse_simplify_operands): Likewise.
* reg-stack.c (emit_swap_insn): Likewise.
(swap_to_top): Likewise.
(compare_for_stack_reg): Likewise.
(subst_asm_stack_regs): Likewise.
* reload.c (find_reloads): Likewise.
* reload1.c (gen_reload_chain_without_interm_reg_p): Likewise.
* sel-sched.c (invoke_reorder_hooks): Likewise.
(create_block_for_bookkeeping): Likewise.
* tree-data-ref.c (lambda_matrix_row_exchange): Remove.
(lambda_matrix_right_hermite): Use std::swap.
* tree-ssa-coalesce.c (sort_coalesce_list): Likewise.
* tree-ssa-ifcombine.c (ifcombine_ifandif): Likewise.
* tree-ssa-loop-ivopts.c (iv_ca_delta_reverse): Likewise.
* tree-ssa-math-opts.c (is_widening_mult_p): Likewise.
* tree-ssa-phiopt.c (hoist_adjacent_loads): Likewise.
* tree-ssa-reassoc.c (linearize_expr_tree): Likewise.
* tree-ssa-threadedge.c (simplify_control_stmt_condition): Likewise.
* tree-vrp.c (compare_ranges): Likewise.
* var-tracking.c (add_with_sets): Likewise.
(vt_find_locations): Likewise.

gcc/c/
* c-typeck.c (build_array_ref): Use std::swap instead of explicit
swaps

gcc/cp/
* typeck.c (composite_pointer_type): Use std::swap instead of explicit
swaps.

gcc/c-family/
* c-common.c (shorten_compare): Use std::swap instead of explicit swaps.

gcc/fortran/
* interface.c (compare_actual_formal): Use std::swap instead of
explicit swaps.
* trans-array.c (gfc_trans_scalarized_loop_end): Likewise.
* trans-intrinsic.c (walk_inline_intrinsic_transpose): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223332 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoDaily bump.
gccadmin [Tue, 19 May 2015 00:16:14 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223330 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-05-18 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Mon, 18 May 2015 23:26:38 +0000 (23:26 +0000)]
2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/66057
* interface.c(gfc_match_end_interface): Enforce F2008 C1202 (R1201).
* match.c(gfc_op2string): Return 'none' for INTRINSIC_NONE.

2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/66057
* gfortran.dg/interface_operator_1.f90: New tests.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223326 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-05-18 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Mon, 18 May 2015 23:09:49 +0000 (23:09 +0000)]
2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/66057
* decl.c(gfc_match_generic):  Detected a malformed GENERIC statement.

2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/66057
* gfortran.dg/generic_29.f90: New tests.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223325 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-05-18 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Mon, 18 May 2015 22:52:52 +0000 (22:52 +0000)]
2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/66052
* decl.c(gfc_match_protected): Prevent dereference of NULL pointer.

2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/66052
* gfortran.dg/protected_9.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223324 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-05-18 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Mon, 18 May 2015 22:21:08 +0000 (22:21 +0000)]
2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/66045
* expr.c (gfc_check_assign):  Check for assignment of NULL() instead
of the (intended) pointer assignment.

2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/66045
* gfortran.dg/null1.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223322 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-05-18 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Mon, 18 May 2015 22:06:48 +0000 (22:06 +0000)]
2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/66044
* decl.c(gfc_match_entry):  Change a gfc_internal_error() into
a gfc_error()

2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/66044
* gfortran.dg/entry_21.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223321 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-05-18 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Mon, 18 May 2015 21:52:03 +0000 (21:52 +0000)]
2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/66043
* check.c (gfc_check_storage_size): Prevent the direct use of NULL()
in STORAGE_SIZE() reference.

2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/66043
* gfortran.dg/storage_size_6.f90: New tests.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223320 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-05-18 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Mon, 18 May 2015 21:16:05 +0000 (21:16 +0000)]
2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/66040
* parse.c(verify_st_order): Replace a gfc_internal_error with your
generic gfc_error.

2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/66040
* gfortran.dg/misplaced_statement.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223318 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * sv.po: Update.
jsm28 [Mon, 18 May 2015 21:06:01 +0000 (21:06 +0000)]
* sv.po: Update.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223316 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-05-18 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Mon, 18 May 2015 21:04:33 +0000 (21:04 +0000)]
2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/66039
* io.c (match_filepos): Check for incomplete/mangled REWIND, FLUSH,
BACKSPACE, and ENDFILE statements

2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/66039
* gfortran.dg/filepos1.f90: New test

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223315 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoRevert:
jason [Mon, 18 May 2015 20:22:14 +0000 (20:22 +0000)]
Revert:
* Makefile.in (GCC_WARN_CXXFLAGS): Add -std=c++98.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223314 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-05-18 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Mon, 18 May 2015 19:25:49 +0000 (19:25 +0000)]
2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/64925
* symbol.c(check_conflict):  Check for a conflict between a dummy
argument and an internal procedure name.

2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/64925
* gfortran.dg/pr64925.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223313 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * Makefile.in (GCC_WARN_CXXFLAGS): Add -std=c++98.
jason [Mon, 18 May 2015 19:21:54 +0000 (19:21 +0000)]
* Makefile.in (GCC_WARN_CXXFLAGS): Add -std=c++98.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223312 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-05-18 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Mon, 18 May 2015 18:59:48 +0000 (18:59 +0000)]
2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

* gfortran.dg/lto/pr41521_0.f90: Move INTERFACE statement in program
unit.
* gfortran.dg/lto/pr41576_1.f90: Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223309 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-05-18 Andreas Tobler <andreast@gcc.gnu.org>
andreast [Mon, 18 May 2015 18:37:18 +0000 (18:37 +0000)]
2015-05-18  Andreas Tobler  <andreast@gcc.gnu.org>

gcc:
        * config/freebsd-spec.h (FBSD_STARTFILE_SPEC): Add the bits to build
pie executables.
(FBSD_ENDFILE_SPEC): Likewise.
* config/i386/freebsd.h (STARTFILE_SPEC): Remove and use the one from
config/freebsd-spec.h.
(ENDFILE_SPEC): Likewise.

gcc/testsuite:
* lib/target-supports.exp (check_effective_target_pie): Add *-*-freebsd*
to the family of pie capable targets.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223308 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * pt.c (retrieve_specialization): Make sure our arguments have
jason [Mon, 18 May 2015 18:08:53 +0000 (18:08 +0000)]
* pt.c (retrieve_specialization): Make sure our arguments have
gone through strip_typedefs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223305 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * pt.c (tsubst_decl) [VAR_DECL]: Call coerce_innermost_template_parms.
jason [Mon, 18 May 2015 18:08:48 +0000 (18:08 +0000)]
* pt.c (tsubst_decl) [VAR_DECL]: Call coerce_innermost_template_parms.
(determine_specialization): Call coerce_template_parms.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223304 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago DR 1391
jason [Mon, 18 May 2015 17:14:11 +0000 (17:14 +0000)]
DR 1391
* pt.c (type_unification_real): Check convertibility here.
(unify_one_argument): Not here.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223301 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * tree.c (strip_typedefs_expr) [TRAIT_EXPR]: Fix typo.
jason [Mon, 18 May 2015 17:14:04 +0000 (17:14 +0000)]
* tree.c (strip_typedefs_expr) [TRAIT_EXPR]: Fix typo.
(strip_typedefs) [DECLTYPE_TYPE]: Fix typedef of decltype.
[TREE_LIST]: Fix no-change case.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223300 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * ptree.c (cxx_print_xnode): Handle TRAIT_EXPR.
jason [Mon, 18 May 2015 17:13:59 +0000 (17:13 +0000)]
* ptree.c (cxx_print_xnode): Handle TRAIT_EXPR.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223299 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR target/57032
uros [Mon, 18 May 2015 16:34:23 +0000 (16:34 +0000)]
PR target/57032
* config/alpha/constraints.md (Q): Rewrite as define_memory_constraint.
Check for a memory location that is not a reference (using an AND)
to an unaligned location here.
* config/alpha/predicates.md (normal_memory_operand): Remove.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223298 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agocheck_GNU_style.sh: Don't do 80 char check line by line
vries [Mon, 18 May 2015 15:44:55 +0000 (15:44 +0000)]
check_GNU_style.sh: Don't do 80 char check line by line

2015-05-18  Tom de Vries  <tom@codesourcery.com>

* check_GNU_style.sh: Add temp files tmp2 and tmp3.
(cat_with_prefix): New function, using global variable prefix.
(col): Make prefix a global variable. Rewrite to process file at a time
rather than line at a time.  Print part longer than 80 chars in red.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223297 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/config
avelenko [Mon, 18 May 2015 14:38:41 +0000 (14:38 +0000)]
gcc/config

2015-05-18  Alex Velenko  <Alex.Velenko@arm.com>

   * arm/arm.md (andsi_not_shiftsi_si_scc): New pattern.
   (andsi_not_shiftsi_si_scc_no_reuse): New pattern.

gcc/testsuite

2015-05-18  Alex Velenko <Alex.Velenko@arm.com>

   * gcc.target/arm/bics_1.c : New testcase.
   * gcc.target/arm/bics_2.c : New testcase.
   * gcc.target/arm/bics_3.c : New testcase.
   * gcc.target/arm/bics_4.c : New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223295 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoFix ICE when both micromips and nomicromips attributes are used.
rts [Mon, 18 May 2015 14:32:19 +0000 (14:32 +0000)]
Fix ICE when both micromips and nomicromips attributes are used.

gcc/ChangeLog:

2015-05-18  Robert Suchanek  <robert.suchanek@imgtec.com>

* config/mips/mips.c (micromips_globals): New variable.
(mips_set_compression_mode): Save and reinitialize target-dependent
state for microMIPS.

gcc/testsuite/ChangeLog:

2015-05-18  Robert Suchanek  <robert.suchanek@imgtec.com>

* gcc.target/mips/umips-attr.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223294 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoIPA ICF: add support for debug counter.
marxin [Mon, 18 May 2015 09:05:15 +0000 (09:05 +0000)]
IPA ICF: add support for debug counter.

* dbgcnt.def: Add new counter.
* ipa-icf.c (sem_item_optimizer::merge_classes): Use the
counter.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223288 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agodbgcnt: enhance behavior.
marxin [Mon, 18 May 2015 09:03:28 +0000 (09:03 +0000)]
dbgcnt: enhance behavior.

* dbgcnt.def: Sort counters.
* opts.c (common_handle_option): Do not compile if
-fdbg-cnt-list is enabled.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223287 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoMove array-type va_list handling to build_va_arg
vries [Mon, 18 May 2015 08:19:29 +0000 (08:19 +0000)]
Move array-type va_list handling to build_va_arg

2015-05-18  Tom de Vries  <tom@codesourcery.com>

* gimplify.c (gimplify_modify_expr): Remove do_deref handling.
(gimplify_va_arg_expr): Remove do_deref handling.  Remove adding of
address operator to va_list operand.
* tree-stdarg.c (expand_ifn_va_arg_1): Do deref of va_list operand
unconditionally.
* config/i386/i386.c (ix86_gimplify_va_arg): Remove deref on va_list
operand.
* config/rs6000/rs6000.c (rs6000_gimplify_va_arg): Same.
* config/s390/s390.c (s390_gimplify_va_arg): Same.
* config/spu/spu.c (spu_gimplify_va_arg_expr): Same.

* c-common.c (build_va_arg_1): New function.
(build_va_arg): Add address operator to va_list operand if necessary.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223286 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoFix whitespace in tree-ssa-tail-merge.c
vries [Mon, 18 May 2015 08:14:09 +0000 (08:14 +0000)]
Fix whitespace in tree-ssa-tail-merge.c

2015-05-18  Tom de Vries  <tom@codesourcery.com>

* tree-ssa-tail-merge.c: Fix whitespace.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223285 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agocheck_GNU_style.sh: Don't cat empty file
vries [Mon, 18 May 2015 07:07:44 +0000 (07:07 +0000)]
check_GNU_style.sh: Don't cat empty file

2015-05-18  Tom de Vries  <tom@codesourcery.com>

* check_GNU_style.sh (g, ag, vg): Don't cat empty file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223284 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agocheck_GNU_style.sh: Declare local vars with local
vries [Mon, 18 May 2015 07:07:36 +0000 (07:07 +0000)]
check_GNU_style.sh: Declare local vars with local

2015-05-18  Tom de Vries  <tom@codesourcery.com>

* check_GNU_style.sh (g, ag, vg, col): Declare local vars with local.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223283 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agocheck_GNU_style.sh: Improve readability function calls
vries [Mon, 18 May 2015 07:07:27 +0000 (07:07 +0000)]
check_GNU_style.sh: Improve readability function calls

2015-05-18  Tom de Vries  <tom@codesourcery.com>

* check_GNU_style.sh: Improve readability function calls.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223282 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/
wilson [Mon, 18 May 2015 03:14:54 +0000 (03:14 +0000)]
gcc/
* doc/invoke.texi (ARM Options, mtune): Add generic-armv7-a,
cortex-a17, and cortex-a17.cortex-a7.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223281 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoDaily bump.
gccadmin [Mon, 18 May 2015 00:16:20 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223280 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * gcc.dg/20150120-1.c (dg-final): Cleanup original tree dump.
uros [Sun, 17 May 2015 21:49:19 +0000 (21:49 +0000)]
* gcc.dg/20150120-1.c (dg-final): Cleanup original tree dump.
* gcc.dg/20150120-2.c (dg-final): Ditto.
* gcc.dg/20150120-2.c (dg-final): Ditto.
* gfortran.dg/inline_matmul_1.f90 (dg-final): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223276 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * gcc.target/i386/pr66174.c: New test.
uros [Sun, 17 May 2015 21:45:40 +0000 (21:45 +0000)]
* gcc.target/i386/pr66174.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223275 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/
olegendo [Sun, 17 May 2015 21:01:29 +0000 (21:01 +0000)]
gcc/
PR target/54236
* config/sh/sh.md (*addc_2r_t): Use ashift instead of mult.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223274 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-05-17 François Dumont <fdumont@gcc.gnu.org>
fdumont [Sun, 17 May 2015 20:14:53 +0000 (20:14 +0000)]
2015-05-17  François Dumont  <fdumont@gcc.gnu.org>

* include/bits/unordered_map.h (unordered_map, unordered_multimap): Add
missing constructors.
* include/bits/unordered_set.h (unordered_set, unordered_multiset):
Likewise.
* include/debug/unordered_map (unordered_map, unordered_multimap): Add
missing constructors.
* include/debug/unordered_set (unordered_set, unordered_multiset):
Likewise.
* include/profile/unordered_map (unordered_map, unordered_multimap): Add
missing constructors.
* include/profile/unordered_set (unordered_set, unordered_multiset):
Likewise.
* testsuite/23_containers/unordered_map/cons/66055.cc: Add constructor
invocations.
* testsuite/23_containers/unordered_multimap/cons/66055.cc: Likewise.
* testsuite/23_containers/unordered_multiset/cons/66055.cc: Likewise.
* testsuite/23_containers/unordered_set/cons/66055.cc: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223273 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR target/66174
uros [Sun, 17 May 2015 15:08:16 +0000 (15:08 +0000)]
PR target/66174
* config/i386/i386.c (expand_vec_perm_blend): Enable HImode and
QImode inner modes for TARGET_AVX512BW.  Force mask operand
to a register for AVX512F modes.

testsuite/ChangeLog:

PR target/66174
* gcc.target/i386/pr66174.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223269 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-05-17 Thomas Koenig <tkoenig@gcc.gnu.org>
tkoenig [Sun, 17 May 2015 13:45:07 +0000 (13:45 +0000)]
2015-05-17  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/37131
* gfortran.dg/matmul_bounds_6.f90:  New test.
* gfortran.dg/matmul_bounds_7.f90:  New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223268 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoDaily bump.
gccadmin [Sun, 17 May 2015 00:16:20 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223265 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoFT32 target added. Approved by Jeff Law [law@redhat.com]
jamesbowman [Sat, 16 May 2015 23:49:08 +0000 (23:49 +0000)]
FT32 target added. Approved by Jeff Law [law@redhat.com]

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223261 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * toplev.c (emit_debug_global_declarations): Do not output debug info
hubicka [Sat, 16 May 2015 23:20:49 +0000 (23:20 +0000)]
* toplev.c (emit_debug_global_declarations): Do not output debug info
when doing slim LTO objects.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223260 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * ipa-utils.h (warn_types_mismatch, odr_or_derived_type_p,
hubicka [Sat, 16 May 2015 23:19:23 +0000 (23:19 +0000)]
* ipa-utils.h (warn_types_mismatch, odr_or_derived_type_p,
odr_types_equivalent_p): Declare.
(odr_type_p): Use gcc_checking_assert.
(type_in_anonymous_namespace_p) Declare.
(type_with_linkage_p): Declare.
* common.opt (Wlto-type-mismatch): New warning.
* ipa-devirt.c (compound_type_base): New function.
(odr_or_derived_type_p): New function.
(odr_types_equivalent_p): New function.
(add_type_duplicate): Simplify.
(type_with_linkage_p): Add hack to prevent false positives on C types
(type_in_anonymous_namespace_p): Likewise.
* tree.c (need_assembler_name_p): Use type_with_linkage.
* tree.h (type_in_anonymous_namespace_p): Remove.
* doc/invoke.texi (-Wlto-type-mismatch): Document

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223259 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * ipa-utils.h (warn_types_mismatch, odr_or_derived_type_p,
hubicka [Sat, 16 May 2015 23:18:29 +0000 (23:18 +0000)]
* ipa-utils.h (warn_types_mismatch, odr_or_derived_type_p,
odr_types_equivalent_p): Declare.
(odr_type_p): Use gcc_checking_assert.
(type_in_anonymous_namespace_p) Declare.
(type_with_linkage_p): Declare.
* common.opt (Wlto-type-mismatch): New warning.
* ipa-devirt.c (compound_type_base): New function.
(odr_or_derived_type_p): New function.
(odr_types_equivalent_p): New function.
(add_type_duplicate): Simplify.
(type_with_linkage_p): Add hack to prevent false positives on C types
(type_in_anonymous_namespace_p): Likewise.
* tree.c (need_assembler_name_p): Use type_with_linkage.
* tree.h (type_in_anonymous_namespace_p): Remove.
* doc/invoke.texi (-Wlto-type-mismatch): Document

* lto-symtab.c (warn_type_compatibility_p): Break out from ...;
compare ODR types (if available) and function types.
(lto_symtab_merge): ... here; output ODR violation warnings
and call warn_types_mismatch.

* gfortran.dg/lto/20091028-2_1.c: Fix return value.
* gfortran.dg/lto/pr41576_1.f90: Add interface.
* gfortran.dg/lto/pr41521_0.f90: Disable lto-type-mismatch
* gfortran.dg/lto/pr60635_0.f90: Disable lto-type-mismatch.
* gfortran.dg/lto/20091028-1_1.c: Fix return type.
* gcc.dg/lto/20120723_0.c: Disbale lto-type-mismatch.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223258 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * tree.c (verify_type_variant): Verify tree_base and type_common flags.
hubicka [Sat, 16 May 2015 20:51:50 +0000 (20:51 +0000)]
* tree.c (verify_type_variant): Verify tree_base and type_common flags.
(verify_type): Verify STRING_FLAG.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223252 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-05-16 Jerry DeLisle <jvdelisle@gcc.gnu.org>
jvdelisle [Sat, 16 May 2015 17:51:41 +0000 (17:51 +0000)]
2015-05-16  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR fortran/65903
* gfortran.dg/continuation_13.f90: Update test.
* gfortran.dg/pr65903.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223249 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-05-16 Jerry DeLisle <jvdelisle@gcc.gnu.org>
jvdelisle [Sat, 16 May 2015 17:44:15 +0000 (17:44 +0000)]
2015-05-16  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR fortran/65903
* io.c (format_lex): Change to NONSTRING when checking for
possible doubled quote.
* scanner.c (gfc_next_char_literal): Revert change from 64506
and add a check for quotes and return.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223248 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agolibiberty/ChangeLog:
ibuclaw [Sat, 16 May 2015 16:50:30 +0000 (16:50 +0000)]
libiberty/ChangeLog:

2015-05-16  Iain Buclaw  <ibuclaw@gdcproject.org>

* d-demangle.c (dlang_symbol_kinds): New enum.
(dlang_parse_symbol): Update signature.  Handle an ambiguity between
pascal functions and template value arguments.  Only check for a type
if parsing a function, or at the top level.  Return failure if the
entire symbol was not successfully demangled.
(dlang_identifier): Update signature.  Handle an ambiguity between two
adjacent digits in a mangled symbol string.
(dlang_type): Update call to dlang_parse_symbol.
(dlang_template_args): Likewise.
(dlang_parse_template): Likewise.
(dlang_demangle): Likewise.
* testsuite/d-demangle-expected: Fix bad tests found, and add problematic
examples to the unittests.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223247 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agolibiberty/ChangeLog:
ibuclaw [Sat, 16 May 2015 16:50:19 +0000 (16:50 +0000)]
libiberty/ChangeLog:

2015-05-16  Iain Buclaw  <ibuclaw@gdcproject.org>

* d-demangle.c (dlang_template_args): Skip over specialized template
parameters in mangled symbol.
* testsuite/d-demangle-expected: Add coverage and unittest for specialized
template parameters.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223246 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agolibiberty/ChangeLog:
ibuclaw [Sat, 16 May 2015 16:50:08 +0000 (16:50 +0000)]
libiberty/ChangeLog:

2015-05-16  Iain Buclaw  <ibuclaw@gdcproject.org>

* d-demangle.c (dlang_type): Handle cent and ucent types.
* testsuite/d-demangle-expected: Add coverage tests for cent and ucent.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223245 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agolibiberty/ChangeLog:
ibuclaw [Sat, 16 May 2015 16:49:57 +0000 (16:49 +0000)]
libiberty/ChangeLog:

2015-05-16  Iain Buclaw  <ibuclaw@gdcproject.org>

* d-demangle.c (dlang_attributes): Handle return attributes, ignoring
return parameters in the mangled string.  Return NULL if have encountered
an unknown attribute.
(dlang_function_args): Handle return parameters in the mangled string.
* testsuite/d-demangle-expected: Add coverage tests for functions with
return parameters and return attributes.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223244 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agolibiberty/ChangeLog:
ibuclaw [Sat, 16 May 2015 16:49:46 +0000 (16:49 +0000)]
libiberty/ChangeLog:

2015-05-16  Iain Buclaw  <ibuclaw@gdcproject.org>

* d-demangle.c (dlang_identifier): Check encoded length of identifier
to verify strncmp matches entire string.
* testsuite/d-demangle-expected: Fix wrong test for postblit symbol.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223243 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agolibiberty/ChangeLog:
ibuclaw [Sat, 16 May 2015 16:49:35 +0000 (16:49 +0000)]
libiberty/ChangeLog:

2015-05-16  Iain Buclaw  <ibuclaw@gdcproject.org>

* d-demangle.c (dlang_type_modifiers): New function.
(dlang_type_modifier_p): New function.
(dlang_call_convention_p): Ignore any kind of type modifier.
(dlang_type): Handle and emit the type modifier after delegate types.
(dlang_parse_symbol): Handle and emit the type modifier after the symbol.
* testsuite/d-demangle-expected: Add coverage tests for all valid
usages of function symbols with type modifiers.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223242 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agolibiberty/ChangeLog:
ibuclaw [Sat, 16 May 2015 16:49:25 +0000 (16:49 +0000)]
libiberty/ChangeLog:

2015-05-16  Iain Buclaw  <ibuclaw@gdcproject.org>

* d-demangle.c (dlang_call_convention): Return NULL if have reached the
end of the symbol, but expected something to read.
(dlang_attributes): Likewise.
(dlang_function_type): Likewise.
(dlang_type): Likewise.
(dlang_identifier): Likewise.
(dlang_value): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223241 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agolibiberty/ChangeLog:
ibuclaw [Sat, 16 May 2015 16:49:13 +0000 (16:49 +0000)]
libiberty/ChangeLog:

2015-05-16  Iain Buclaw  <ibuclaw@gdcproject.org>

* d-demangle.c (dlang_parse_string): Represent embedded whitespace or
non-printable characters as hex or escape sequences.
* testsuite/d-demangle-expected: Add test for templates with tabs and
newlines embedded into the signature.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223240 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-05-16 Iain Buclaw <ibuclaw@gdcproject.org>
ibuclaw [Sat, 16 May 2015 13:46:58 +0000 (13:46 +0000)]
2015-05-16  Iain Buclaw  <ibuclaw@gdcproject.org>

* MAINTAINERS (Write After Approval): Add myself.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223239 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-05-16 Thomas Koenig <tkoenig@gcc.gnu.org>
tkoenig [Sat, 16 May 2015 12:33:01 +0000 (12:33 +0000)]
2015-05-16  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/66113
* expr.c (is_parent_of_current_ns):  New function.
(check_restricted):  Use it.

2015-05-16  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/66113
* gfortran.dg/block_14.f90:  New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223238 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/fortran/ChangeLog:
manu [Sat, 16 May 2015 12:31:00 +0000 (12:31 +0000)]
gcc/fortran/ChangeLog:

2015-05-16  Manuel López-Ibáñez  <manu@gcc.gnu.org>

PR fortran/44054

Replace all calls to gfc_notify_std_1 with gfc_notify_std and
gfc_warning_1 with gfc_warning.
* decl.c (gfc_verify_c_interop_param): Here.
* resolve.c (resolve_branch): Here.
(resolve_fl_derived): Here.
* dependency.c (gfc_check_argument_var_dependency):
* scanner.c (preprocessor_line): Use gfc_warning_now_at. Fix line
counter and locations before and after warning.
* gfortran.h (gfc_warning_1, gfc_warning_now_1, gfc_notify_std_1):
Delete.
(gfc_warning_now_at): Declare.
* error.c (gfc_warning_1): Delete.
(gfc_notify_std_1): Delete.
(gfc_warning_now_1): Delete.
(gfc_format_decoder): Handle two locations.
(gfc_diagnostic_build_prefix): Rename as
gfc_diagnostic_build_kind_prefix.
(gfc_diagnostic_build_locus_prefix): Take an expanded_location
instead of diagnostic_info.
(gfc_diagnostic_build_locus_prefix): Add overload that takes two
expanded_location.
(gfc_diagnostic_starter): Handle two locations.
(gfc_warning_now_at): New.
(gfc_diagnostics_init): Initialize caret_chars array.
(gfc_diagnostics_finish): Reset caret_chars array to default.

gcc/cp/ChangeLog:

2015-05-16  Manuel López-Ibáñez  <manu@gcc.gnu.org>

PR fortran/44054
* error.c (cp_diagnostic_starter): Use diagnostic_location
function.
(cp_print_error_function): Likewise.
(cp_printer): Replace locus pointer with accessor function.

gcc/c/ChangeLog:

2015-05-16  Manuel López-Ibáñez  <manu@gcc.gnu.org>

PR fortran/44054
* c-objc-common.c (c_tree_printer): Replace locus pointer with
accessor function.

gcc/ChangeLog:

2015-05-16  Manuel López-Ibáñez  <manu@gcc.gnu.org>

PR fortran/44054
* tree-pretty-print.c (percent_K_format): Replace locus pointer
with accessor function.
* tree-diagnostic.c (diagnostic_report_current_function): Use
diagnostic_location function.
(maybe_unwind_expanded_macro_loc): Likewise.
(virt_loc_aware_diagnostic_finalizer): Likewise.
(default_tree_printer): Replace locus pointer with accessor function.
* diagnostic.c (diagnostic_initialize): Initialize caret_chars array.
(diagnostic_set_info_translated): Initialize second location.
(diagnostic_build_prefix): Use CARET_LINE_MARGIN.
(diagnostic_show_locus): Handle two locations. Call
diagnostic_print_caret_line.
(diagnostic_print_caret_line): New.
(default_diagnostic_starter): Use diagnostic_location function.
(diagnostic_report_diagnostic): Use diagnostic_location function.
(verbatim): Do not set text.locus.
* diagnostic.h (struct diagnostic_info): Remove location field.
(struct diagnostic_context): Make caret_chars an array of two.
(diagnostic_location): New inline.
(diagnostic_expand_location): Handle two locations.
(diagnostic_same_line): New inline.
(diagnostic_print_caret_line): Declare.
(CARET_LINE_MARGIN): New constant.
* pretty-print.c (pp_printf): Do not set text.locus.
(pp_verbatim): Do not set text.locus.
* pretty-print.h (MAX_LOCATIONS_PER_MESSAGE): New constant.
(struct text_info): Replace locus pointer with locations
array. Add accessor functions.

gcc/testsuite/ChangeLog:

2015-05-16  Manuel López-Ibáñez  <manu@gcc.gnu.org>

PR fortran/44054
* lib/gfortran-dg.exp: Update regex to handle two locations for
the same diagnostic without caret.
* gfortran.dg/badline.f: Test also that line numbers are correct
before and after "left but not entered" warning.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223237 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/fortran/ChangeLog:
manu [Sat, 16 May 2015 12:30:04 +0000 (12:30 +0000)]
gcc/fortran/ChangeLog:

2015-05-16  Manuel López-Ibáñez  <manu@gcc.gnu.org>

PR fortran/44054

Replace all calls to gfc_notify_std_1 with gfc_notify_std and
gfc_warning_1 with gfc_warning.
* decl.c (gfc_verify_c_interop_param): Here.
* resolve.c (resolve_branch): Here.
(resolve_fl_derived): Here.
* dependency.c (gfc_check_argument_var_dependency):
* scanner.c (preprocessor_line): Use gfc_warning_now_at. Fix line
counter and locations before and after warning.
* gfortran.h (gfc_warning_1, gfc_warning_now_1, gfc_notify_std_1):
Delete.
(gfc_warning_now_at): Declare.
* error.c (gfc_warning_1): Delete.
(gfc_notify_std_1): Delete.
(gfc_warning_now_1): Delete.
(gfc_format_decoder): Handle two locations.
(gfc_diagnostic_build_prefix): Rename as
gfc_diagnostic_build_kind_prefix.
(gfc_diagnostic_build_locus_prefix): Take an expanded_location
instead of diagnostic_info.
(gfc_diagnostic_build_locus_prefix): Add overload that takes two
expanded_location.
(gfc_diagnostic_starter): Handle two locations.
(gfc_warning_now_at): New.
(gfc_diagnostics_init): Initialize caret_chars array.
(gfc_diagnostics_finish): Reset caret_chars array to default.

gcc/cp/ChangeLog:

2015-05-16  Manuel López-Ibáñez  <manu@gcc.gnu.org>

PR fortran/44054
* error.c (cp_diagnostic_starter): Use diagnostic_location
function.
(cp_print_error_function): Likewise.
(cp_printer): Replace locus pointer with accessor function.

gcc/c/ChangeLog:

2015-05-16  Manuel López-Ibáñez  <manu@gcc.gnu.org>

PR fortran/44054
* c-objc-common.c (c_tree_printer): Replace locus pointer with
accessor function.

gcc/ChangeLog:

2015-05-16  Manuel López-Ibáñez  <manu@gcc.gnu.org>

PR fortran/44054
* tree-pretty-print.c (percent_K_format): Replace locus pointer
with accessor function.
* tree-diagnostic.c (diagnostic_report_current_function): Use
diagnostic_location function.
(maybe_unwind_expanded_macro_loc): Likewise.
(virt_loc_aware_diagnostic_finalizer): Likewise.
(default_tree_printer): Replace locus pointer with accessor function.
* diagnostic.c (diagnostic_initialize): Initialize caret_chars array.
(diagnostic_set_info_translated): Initialize second location.
(diagnostic_build_prefix): Use CARET_LINE_MARGIN.
(diagnostic_show_locus): Handle two locations. Call
diagnostic_print_caret_line.
(diagnostic_print_caret_line): New.
(default_diagnostic_starter): Use diagnostic_location function.
(diagnostic_report_diagnostic): Use diagnostic_location function.
(verbatim): Do not set text.locus.
* diagnostic.h (struct diagnostic_info): Remove location field.
(struct diagnostic_context): Make caret_chars an array of two.
(diagnostic_location): New inline.
(diagnostic_expand_location): Handle two locations.
(diagnostic_same_line): New inline.
(diagnostic_print_caret_line): Declare.
(CARET_LINE_MARGIN): New constant.
* pretty-print.c (pp_printf): Do not set text.locus.
(pp_verbatim): Do not set text.locus.
* pretty-print.h (MAX_LOCATIONS_PER_MESSAGE): New constant.
(struct text_info): Replace locus pointer with locations
array. Add accessor functions.

gcc/testsuite/ChangeLog:

2015-05-16  Manuel López-Ibáñez  <manu@gcc.gnu.org>

PR fortran/44054
* lib/gfortran-dg.exp: Update regex to handle two locations for
the same diagnostic without caret.
* gfortran.dg/badline.f: Test also that line numbers are correct
before and after "left but not entered" warning.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223236 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/ChangeLog:
kugan [Sat, 16 May 2015 09:35:52 +0000 (09:35 +0000)]
gcc/ChangeLog:

2015-05-16  Kugan Vivekanandarajah  <kuganv@linaro.org>
    Zhenqiang Chen  <zhenqiang.chen@linaro.org>

PR target/65768
* config/arm/arm.h (DONT_EARLY_SPLIT_CONSTANT): New macro.
* config/arm/arm.md (subsi3, andsi3, iorsi3, xorsi3, movsi): Keep some
 large constants in register instead of splitting them.

gcc/testsuite/ChangeLog:

2015-05-16  Kugan Vivekanandarajah  <kuganv@linaro.org>
    Zhenqiang Chen  <zhenqiang.chen@linaro.org>

PR target/65768
* gcc.target/arm/maskdata.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223235 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-05-16 Mikael Morin <mikael@gcc.gnu.org
pault [Sat, 16 May 2015 08:09:52 +0000 (08:09 +0000)]
2015-05-16  Mikael Morin  <mikael@gcc.gnu.org
    Paul Thomas  <pault@gcc.gnu.org>

PR fortran/65792
* trans-expr.c (gfc_trans_subcomponent_assign): Always assign
the expression component to the destination. In addition, if
the component has allocatable components, copy them and
deallocate those of the expression, if it is not a variable.
The expression is fixed if not a variable to prevent multiple
evaluations.

2015-05-16  Mikael Morin  <mikael@gcc.gnu.org>

PR fortran/65792
* gfortran.dg/derived_constructor_components_5: New test

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223234 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR target/66140
uros [Sat, 16 May 2015 07:28:16 +0000 (07:28 +0000)]
PR target/66140
* config/alpha/alpha.c (get_aligned_mem): Also look for reload
replacements in memory addresses.
(get_unaligned_address): Ditto.

testsuite/ChangeLog:

PR target/66140
* gcc.target/alpha/pr66140.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223232 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agolibgo: Use __USING_SJLJ_EXCEPTIONS__ rather than configure test.
ian [Sat, 16 May 2015 00:17:46 +0000 (00:17 +0000)]
libgo: Use __USING_SJLJ_EXCEPTIONS__ rather than configure test.

From Eric Botcazou.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223231 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoDaily bump.
gccadmin [Sat, 16 May 2015 00:16:16 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223230 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * src/filesystem/ops.cc (stat_type): Define alias for struct stat and
redi [Fri, 15 May 2015 18:37:25 +0000 (18:37 +0000)]
* src/filesystem/ops.cc (stat_type): Define alias for struct stat and
use throughout the file.
(make_file_type): New function.
(file_size(const path&, error_code&)): Report an error for anything
that isn't a regular file.
(status(const path&), symlink_status(const path&)): Do not throw for
file_type::not_found.
(temp_directory_path()): Check additional environment variables.
* testsuite/experimental/filesystem/operations/exists.cc: New.
* testsuite/experimental/filesystem/operations/file_size.cc: New.
* testsuite/experimental/filesystem/operations/status.cc: New.
* testsuite/experimental/filesystem/operations/temp_directory_path.cc:
New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223224 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoPR c/48956
miyuki [Fri, 15 May 2015 18:02:50 +0000 (18:02 +0000)]
PR c/48956

gcc/c-family/
* c-common.c (int_safely_convertible_to_real_p): Define.
(unsafe_conversion_p): Check conversions involving complex types.
(conversion_warning): Add new warning message for conversions which
discard imaginary component.
* c-common.h: (enum conversion_safety): Add new enumerator for such
conversions.

gcc/testsuite/
* gcc.dg/Wconversion-complex-c99.c: New test.
* gcc.dg/Wconversion-complex-gnu.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223223 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-05-15 Marc Glisse <marc.glisse@inria.fr>
glisse [Fri, 15 May 2015 17:34:15 +0000 (17:34 +0000)]
2015-05-15  Marc Glisse  <marc.glisse@inria.fr>

PR tree-optimization/64454
gcc/
* match.pd ((X % Y) % Y, (X % Y) < Y): New patterns.
(-1 - A -> ~A): Remove unnecessary condition.
gcc/testsuite/
* gcc.dg/modmod.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223221 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoAdd support for CFI directives in fp emulation routines for ARM.
ramana [Fri, 15 May 2015 16:57:10 +0000 (16:57 +0000)]
Add support for CFI directives in fp emulation routines for ARM.

2015-05-15  Martin Galvan  <martin.galvan@tallertechnologies.com>

        * config/arm/lib1funcs.S (CFI_START_FUNCTION, CFI_END_FUNCTION):
        New macros.
        * config/arm/ieee754-df.S: Add CFI directives.
        * config/arm/ieee754-sf.S: Add CFI directives.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223220 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[PATCH 9/13] x86 musl support
ktkachov [Fri, 15 May 2015 13:20:01 +0000 (13:20 +0000)]
[PATCH 9/13] x86 musl support

On behalf of Szabolcs Nagy.

2015-05-15  Gregor Richards  <gregor.richards@uwaterloo.ca>

* config/i386/linux.h (MUSL_DYNAMIC_LINKER): Define.
* config/i386/linux64.h (MUSL_DYNAMIC_LINKER32): Define.
(MUSL_DYNAMIC_LINKER64, MUSL_DYNAMIC_LINKERX32): Define.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223218 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoAdd missed testcase for 223215.
ienkovich [Fri, 15 May 2015 09:49:25 +0000 (09:49 +0000)]
Add missed testcase for 223215.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223217 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/
ienkovich [Fri, 15 May 2015 09:48:13 +0000 (09:48 +0000)]
gcc/

* ipa-chkp.h (chkp_wrap_function): New.
* ipa-chkp.c (chkp_wrap_function): Remove 'static'.
(chkp_wrap_function_name): New.
(chkp_build_instrumented_fndecl): Use chkp_wrap_function_name
to get wrapper name.
* lto-cgraph.c: Include ipa-chkp.h.
(input_cgraph_1): Avoid alias chain for wrappers.

gcc/testsuite/

* gcc.dg/lto/chkp-wrap-asm-name_0.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223216 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/
ienkovich [Fri, 15 May 2015 09:38:44 +0000 (09:38 +0000)]
gcc/

PR middle-end/66134
* tree-chkp.c (chkp_get_orginal_bounds_for_abnormal_copy): New.
(chkp_maybe_copy_and_register_bounds): Don't copy abnormal copy.

gcc/testsuite/

PR middle-end/66134
* gcc.target/i386/mpx/pr66134.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223215 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[AArch64] Removed unused SLOWMUL target flags
ktkachov [Fri, 15 May 2015 08:47:18 +0000 (08:47 +0000)]
[AArch64] Removed unused SLOWMUL target flags

* config/aarch64/aarch64.h (AARCH64_TUNE_SLOWMUL): Delete.
(AARCH64_FL_SLOWMUL): Delete.
(AARCH64_FL_CRC): Redefine to 1<<3.
(AARCH64_FL_USE_FMA_STEERING_PASS): Redefine to 1<<4.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223214 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoApply arm.h change for previous commit.
ramana [Fri, 15 May 2015 08:47:06 +0000 (08:47 +0000)]
Apply arm.h change for previous commit.

2015-05-15  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

* config/arm/arm.h (LOGICAL_OP_NON_SHORT_CIRCUIT): Add appropriate
casting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223213 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoFix up bootstrap and fix typo in related changelog entry.
ramana [Fri, 15 May 2015 08:43:13 +0000 (08:43 +0000)]
Fix up bootstrap and fix typo in related changelog entry.

2015-05-15  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

* config/arm/arm.h (LOGICAL_OP_NON_SHORT_CIRCUIT): Add appropriate
casting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223212 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * config/alpha/alpha.md (extendqidi2): Use general_operand
uros [Fri, 15 May 2015 05:04:32 +0000 (05:04 +0000)]
* config/alpha/alpha.md (extendqidi2): Use general_operand
instead of some_operand for operand[1] predicate.
(extendhidi2): Ditto.
(cbranchdi4): Use general_operand instead of some_operand
for operand[1] and operands[2] predicates.
(cstoredi4): Ditto.
* config/alpha/predicates.md (some_operand): Remove unused predicate.
(some_ni_operand): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223211 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * config/alpha/alpha.c (alpha_extract_integer): Do not handle
uros [Fri, 15 May 2015 05:02:17 +0000 (05:02 +0000)]
* config/alpha/alpha.c (alpha_extract_integer): Do not handle
CONST_WIDE_INT and CONST_DOUBLE.  Assert CONST_INT_P (x).
(alpha_legitimate_constant_p) <case CONST_WIDE_INT>: Check high and
low part of the constant using alpha_emit_set_const_1.
(alpha_expand_mov): Do not handle CONST_WIDE_INT and CONST_DOUBLE.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223210 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-05-14 Rohit Arul Raj <rohitrulraj@freescale.com>
law [Fri, 15 May 2015 04:58:27 +0000 (04:58 +0000)]
2015-05-14  Rohit Arul Raj  <rohitrulraj@freescale.com>

* varasm.c (output_constant_pool_1): Pass down alignment from
constant pool entry's descriptor to output_constant_pool_2.
(output_object_block): Add comment prior to call to
output_constant_pool_1.

* gcc.target/powerpc/pr60158.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223209 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoDaily bump.
gccadmin [Fri, 15 May 2015 00:16:15 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223208 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-05-14 Vladimir Makarov <vmakarov@redhat.com>
vmakarov [Thu, 14 May 2015 20:40:44 +0000 (20:40 +0000)]
2015-05-14  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/65862
* target.def (ira_change_pseudo_allocno_class): New hook.
* targhooks.c (default_ira_change_pseudo_allocno_class): Default
value of the hook.
* targhooks.h (default_ira_change_pseudo_allocno_class): New
extern
* doc/tm.texi.in (TARGET_IRA_CHANGE_PSEUDO_ALLOCNO_CLASS): Add the
hook.
* ira-costs.c (find_costs_and_classes): Call the hook and change
classes when it is necessary.
* doc/tm.texi: Update.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223202 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * config/i386/i386.md (sibcall_memory): Check that register with
amonakov [Thu, 14 May 2015 17:43:28 +0000 (17:43 +0000)]
* config/i386/i386.md (sibcall_memory): Check that register with
callee address is not also used as one of the arguments, instead
of checking that it is not live after the sibcall.
(sibcall_pop_memory): Ditto.
(sibcall_value_memory): Ditto.
(sibcall_value_pop_memory): Ditto.
testsuite:
* gcc.target/i386/sibcall-7.c: New test.
* gcc.target/i386/sibcall-8.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223201 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-05-14 Marc Glisse <marc.glisse@inria.fr>
glisse [Thu, 14 May 2015 14:45:33 +0000 (14:45 +0000)]
2015-05-14  Marc Glisse  <marc.glisse@inria.fr>

gcc/
* generic-match-head.c (types_match): Handle non-types.
* gimple-match-head.c (types_match): Likewise.
* match.pd: Remove unnecessary TREE_TYPE for types_match.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223199 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-05-14 Nathan Myers <ncm@cantrip.org>
redi [Thu, 14 May 2015 13:47:19 +0000 (13:47 +0000)]
2015-05-14  Nathan Myers  <ncm@cantrip.org>
    Jonathan Wakely  <jwakely@redhat.com>

PR libstdc++/66055
* include/std/unordered_map (unordered_map, unordered_multimap): Add
missing constructors.
* include/std/unordered_set (unordered_set, unordered_multiset):
Likewise.
* testsuite/23_containers/unordered_map/cons/66055.cc: New.
* testsuite/23_containers/unordered_multimap/cons/66055.cc: New.
* testsuite/23_containers/unordered_multiset/cons/66055.cc: New.
* testsuite/23_containers/unordered_set/cons/66055.cc: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223198 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[AArch64] Use conditional negate for abs
jiwang [Thu, 14 May 2015 13:35:30 +0000 (13:35 +0000)]
[AArch64] Use conditional negate for abs

2015-05-14  Wilco Dijkstra  <wdijkstr@arm.com>

      gcc/
* config/aarch64/aarch64.md (absdi2): Optimize abs expansion.
(csneg3<mode>_insn): Enable expansion of pattern.

      gcc/testsuite/
* gcc.target/aarch64/abs_1.c (abs64): Update test for new abs expansion.
(abs64_in_dreg): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223197 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR libstdc++/66011
redi [Thu, 14 May 2015 13:23:14 +0000 (13:23 +0000)]
PR libstdc++/66011
* acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Check for fchmod and
sendfile.
* config.h.in: Regenerate.
* configure: Regenerate.
* src/filesystem/ops.cc (do_copy_file): Fix arguments to open(). Do
not return after copying contents. Use fchmod, fchmodat, and sendfile
when available.
(current_path, permissions, space): Use errno not return value.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223196 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR libstdc++/66018
redi [Thu, 14 May 2015 11:47:19 +0000 (11:47 +0000)]
PR libstdc++/66018
* acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Check for struct
dirent.d_type.
* config.h.in: Regenerate.
* configure: Regenerate.
* configure.ac (AC_STRUCT_DIRENT_D_TYPE): Remove.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223194 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR c/66066
mpolacek [Thu, 14 May 2015 11:42:53 +0000 (11:42 +0000)]
PR c/66066
PR c/66127
* c-common.c (c_fully_fold): Pass false down to c_fully_fold_internal.
(c_fully_fold_internal): Fold C_MAYBE_CONST_EXPRs with
C_MAYBE_CONST_EXPR_INT_OPERANDS set.  Add FOR_INT_CONST argument and
use it.  If FOR_INT_CONST, require that all evaluated operands be
INTEGER_CSTs.

* c-typeck.c (digest_init): Call pedwarn_init with OPT_Wpedantic
rather than with 0.

* gcc.dg/pr14649-1.c: Add -Wpedantic.
* gcc.dg/pr19984.c: Likewise.
* gcc.dg/pr66066-1.c: New test.
* gcc.dg/pr66066-2.c: New test.
* gcc.dg/pr66066-3.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223193 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * config/rl78/rl78.c (rl78_select_section): Select the correct
nickc [Thu, 14 May 2015 08:37:09 +0000 (08:37 +0000)]
* config/rl78/rl78.c (rl78_select_section): Select the correct
default section based upon the category of the decl.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223192 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoDaily bump.
gccadmin [Thu, 14 May 2015 00:16:15 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223189 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoconfig/
ebotcazou [Wed, 13 May 2015 21:15:31 +0000 (21:15 +0000)]
config/
* sjlj.m4: New file.
libgcc/
* configure.ac: Include config/sjlj.m4.
Remove manual SJLJ check, add GCC_CHECK_SJLJ_EXCEPTIONS and adjust.
* config.in: Regenerate.
* configure: Likewise.
* config.host: Replace enable_sjlj_exceptions by ac_cv_sjlj_exceptions.
libjava/
* configure.ac: Include config/sjlj.m4.
Remove manual SJLJ check, add GCC_CHECK_SJLJ_EXCEPTIONS and adjust.
* include/config.h.in: Regenerate.
* configure: Likewise.
* exception.cc: Replace SJLJ_EXCEPTIONS by __USING_SJLJ_EXCEPTIONS__.
* stacktrace.cc: Likewise.
* include/default-signal.h: Likewise.
* sysdep/i386/backtrace.h: Likewise.
libobjc/
* configure.ac: Remove manual SJLJ check.
* config.h.in: Regenerate.
* configure: Likewise.
* exception.c: Replace SJLJ_EXCEPTIONS by __USING_SJLJ_EXCEPTIONS__.
libstdc++-v3/
* acinclude.m4 (GLIBCXX_ENABLE_SJLJ_EXCEPTIONS): Delete.
* configure.ac: Remove GLIBCXX_ENABLE_SJLJ_EXCEPTIONS.
* config.h.in: Regenerate.
* configure: Likewise.
* libsupc++/eh_personality.cc: Replace _GLIBCXX_SJLJ_EXCEPTIONS by
__USING_SJLJ_EXCEPTIONS__.
* libsupc++/eh_throw.cc: Likewise.
* libsupc++/eh_ptr.cc: Likewise.
* doc/html/manual/appendix_porting.html: Remove
GLIBCXX_ENABLE_SJLJ_EXCEPTIONS
* doc/xml/manual/build_hacking.xml: Likewise.
* doc/html/manual/configure.html: Remove --enable-sjlj-exceptions.
* doc/xml/manual/configure.xml: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223181 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR rtl-optimization/30967
segher [Wed, 13 May 2015 19:14:07 +0000 (19:14 +0000)]
PR rtl-optimization/30967
* config/rs6000/rs6000.c (rs6000_rtx_costs): Don't consider
destination mode for the cost of scc patterns.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223174 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * config/i386/i386.md (*mul<mode>3_1): Merge with *mulhi3_1
uros [Wed, 13 May 2015 18:01:27 +0000 (18:01 +0000)]
* config/i386/i386.md (*mul<mode>3_1): Merge with *mulhi3_1
using SWIM248 mode iterator.
(*mulv<mode>4): Use x86_64_sext_operand for operand[2] constraint.
(*mulvhi4): mark operand[1] as commutative.  Use nonimmediate_operand
for operand[2] constraint.
(*mulv<mode>4_1): Merge with *mulvhi4_1 using SWI248 mode iterator.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223173 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR middle-end/66133
jakub [Wed, 13 May 2015 16:59:20 +0000 (16:59 +0000)]
PR middle-end/66133
* omp-low.c (expand_omp_taskreg): For GIMPLE_OMP_TASK expansion,
make sure it is never noreturn, even when the task body does not
return.
(lower_omp_taskreg): For GIMPLE_OMP_TASK, emit GIMPLE_OMP_CONTINUE
right before GIMPLE_OMP_RETURN.
(make_gimple_omp_edges): Accept GIMPLE_OMP_CONTINUE as ->cont
for GIMPLE_OMP_TASK.  For GIMPLE_OMP_RETURN corresponding to
GIMPLE_OMP_TASK add an EDGE_ABNORMAL edge from entry to exit.

* testsuite/libgomp.c/pr66133.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223171 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * include/bits/shared_ptr_base.h (__shared_count(unique_ptr&&)): Check
redi [Wed, 13 May 2015 16:42:18 +0000 (16:42 +0000)]
* include/bits/shared_ptr_base.h (__shared_count(unique_ptr&&)): Check
for nullptr (LWG 2415).
* testsuite/20_util/shared_ptr/cons/unique_ptr_deleter.cc: Test
construction from empty unique_ptr.
* testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error.
* testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223170 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[tree-ssa-math-opts] Expand pow (x, CONST) using square roots when possible
ktkachov [Wed, 13 May 2015 15:26:14 +0000 (15:26 +0000)]
[tree-ssa-math-opts] Expand pow (x, CONST) using square roots when possible

* params.def (PARAM_MAX_POW_SQRT_DEPTH): New param.
* tree-ssa-math-opts.c: Include params.h
(pow_synth_sqrt_info): New struct.
(representable_as_half_series_p): New function.
(get_fn_chain): Likewise.
(print_nested_fn): Likewise.
(dump_fractional_sqrt_sequence): Likewise.
(dump_integer_part): Likewise.
(expand_pow_as_sqrts): Likewise.
(gimple_expand_builtin_pow): Use above to attempt to expand
pow as series of square roots.  Removed now unused variables.

* gcc.target/aarch64/pow-sqrt-synth-1.c: New test.
* gcc.dg/pow-sqrt.x: New file.
* gcc.dg/pow-sqrt-1.c: New test.
* gcc.dg/pow-sqrt-2.c: Likewise.
* gcc.dg/pow-sqrt-3.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223167 138bc75d-0d04-0410-961f-82ee72b054a4