dmalcolm [Thu, 16 Jul 2015 19:35:10 +0000 (19:35 +0000)]
jit: Add guide for submitting patches to jit docs
gcc/jit/ChangeLog:
* docs/internals/index.rst (Overview of code structure): Add note
that the implementation is in C++, despite the .c extension.
(Submitting patches): New subsection.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225905
138bc75d-0d04-0410-961f-
82ee72b054a4
fdumont [Thu, 16 Jul 2015 19:17:26 +0000 (19:17 +0000)]
2015-07-16 François Dumont <fdumont@gcc.gnu.org>
* include/bits/stl_algobase.h (__miter_base): Move...
* include/bits/cpp_type_traits.h: ...here.
* include/debug/functions.h (__foreign_iterator_aux): Use latter.
* testsuite/23_containers/vector/debug/insert7_neg.cc: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225902
138bc75d-0d04-0410-961f-
82ee72b054a4
nathan [Thu, 16 Jul 2015 17:17:31 +0000 (17:17 +0000)]
libgomp/
* plugin/plugin-nvptx.c (link_ptx): Constify string argument.
Workaround driver library const error.
(struct nvptx_tdata, nvptx_tdata_t): New.
(GOMP_OFFLOAD_load_image): Use struct for target_data's real
type.
gcc/
* config/nvptx/mkoffload.c (process): Constify mapping variables.
Define target data struct and initialize it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225897
138bc75d-0d04-0410-961f-
82ee72b054a4
ktkachov [Thu, 16 Jul 2015 15:30:45 +0000 (15:30 +0000)]
[ARM][testsuite] Do not override -mcpu in no-volatile-in-it.c
* gcc.target/arm/no-volatile-in-it.c: Skip if -mcpu is overriden.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225892
138bc75d-0d04-0410-961f-
82ee72b054a4
vmakarov [Thu, 16 Jul 2015 15:26:35 +0000 (15:26 +0000)]
2015-07-16 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/66626
* ira.h (emit-rtl.h): Include.
(non_spilled_static_chain_regno_p): New.
* ira-color.c (setup_profitable_hard_regs): Clear profitable regs
unless it is non spilled static chain pseudo.
(assign_hard_rego): Spill memory profitable allocno unless it is
non spilled static chain pseudo.
(allocno_spill_priority_compare): Put non spilled static chain
pseudo at the end of sorted array.
(improve_allocation): Do nothing if we have static chain and
non-local goto.
(allocno__priority_compare_func): Put non spilled static chain
pseudo at the beginning of sorted array.
(move_spill_restore): Ignore non spilled static chain pseudo.
* ira-costs.c (find_costs_and_classes): Don't assign class NO_REGS
to non spilled static chain pseudo.
* lra-assigns.c (pseudo_compare_func): Put non spilled static chain
pseudo at the beginning of sorted array.
(spill_for): Spill non spilled static chain pseudo last.
* lra-constraints.c (lra_constraints): Remove static chain pseudo
check for equivalence.
2015-07-16 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/66626
* gcc.target/i386/pr66626-2.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225891
138bc75d-0d04-0410-961f-
82ee72b054a4
marxin [Thu, 16 Jul 2015 14:48:18 +0000 (14:48 +0000)]
Fix PR ipa/66896.
* g++.dg/ipa/pr66896.c: New test.
PR ipa/66896.
* ipa-prop.c (update_jump_functions_after_inlining): Create properly
dst_ctx if it does not exist.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225887
138bc75d-0d04-0410-961f-
82ee72b054a4
marxin [Thu, 16 Jul 2015 14:11:52 +0000 (14:11 +0000)]
hash_set: add iterator and remove method.
* hash-set.h (remove): New function.
(iterator): New iteration class for hash_set.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225885
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Thu, 16 Jul 2015 13:55:50 +0000 (13:55 +0000)]
gcc/
* genattrtab.c (make_canonical): Add a file_location parameter.
Use fatal_at rather than fatal.
(get_attr_value): Likewise. Update call to make_canonical.
(fill_attr, make_length_attrs, optimize_attrs, gen_attr)
(make_internal_attr): Update calls accordingly.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225884
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Thu, 16 Jul 2015 13:52:22 +0000 (13:52 +0000)]
gcc/
* read-md.h (message_with_line, error_with_line): Delete.
* read-md.c (message_with_line, error_with_line): Delete.
* gensupport.h: Include read-md.h.
(md_rtx_info): New structure.
(read_md_rtx): Use it. Return a bool success value.
* gensupport.c (read_md_rtx): Likewise.
* genattr-common.c (gen_attr): Take an md_rtx_info rather than an rtx.
(main): Update after interface changes.
* genattr.c (gen_attr): Take an md_rtx_info rather than an rtx.
(main): Update after interface changes.
* genattrtab.c (insn_code_number): Delete.
(optimize_attrs): Add a max_insn_code parameter and use it instead
of insn_code_number.
(gen_attr): Take an md_rtx_info rather than an rtx and lineno.
Use *_at rather than *_with_line functions.
(gen_insn): Likewise.
(gen_delay): Likewise.
(gen_insn_reserv): Likewise.
(gen_bypass): Take an md_rtx_info rather than an rtx.
(main): Update after interface changes. Use a local max_insn_code
variable instead of insn_code_number.
* genautomata.c (gen_cpu_unit): Take an md_rtx_info rather than
an rtx. Use fatal_at rather than fatal.
(gen_query_cpu_unit, gen_bypass, gen_excl_set)
(gen_presence_absence_set, gen_presence_set, gen_final_presence_set)
(gen_absence_set, gen_final_absence_set, gen_automaton)
(gen_automata_option, gen_reserv, gen_insn_reserv): Likewise.
(main): Update after interface changes.
* gencodes.c (gen_insn): Take an md_rtx_info rather than an rtx
and code number.
(main): Update after interface changes.
* genconditions.c (main): Use new read_md_rtx interface.
* genconfig.c (gen_insn): Take an md_rtx_info rather than an rtx.
(gen_expand, gen_split, gen_peephole, gen_peephole2): Likewise.
(main): Update after interface changes.
* genemit.c (insn_code_number, insn_index_number): Delete.
(gen_insn): Take an md_rtx_info rather than an rtx and lineno.
Use fatal_at rather than fatal.
(gen_expand): Take an md_rtx_info rather than an rtx. Use fatal_at
rather than fatal.
(gen_split): Likewise.
(main): Update after interface changes.
* genextract.c (line_no): Delete.
(gen_insn): Take an md_rtx_info rather than an rtx and lineno.
Update call to walk_rtx.
(VEC_safe_set_locstr): Add an md_rtx_info argument. Use message_at
rather than message_with_line.
(walk_rtx): Add an md_rtx_info argument. Update call to
VEC_safe_set_locstr.
(main): Update after interface changes.
* genflags.c (gen_insn): Take an md_rtx_info rather than an rtx
and lineno. Use error_at rather than separate message_with_line
calls and have_error assignments.
(main): Update after interface changes.
* genmddump.c (main): Use new read_md_rtx interface.
* genopinit.c (insn): Take an md_rtx_info rather than an rtx.
(main): Update after interface changes.
* genoutput.c (next_code_number): Delete.
(gen_insn): Take an md_rtx_info rather than an rtx and lineno.
(gen_peephole, gen_expand, gen_split): Likewise.
(note_constraint): Likewise. Use *_at rather than *_with_line
functions.
(main): Update after interface changes.
* genpeep.c (gen_peephole): Take an md_rtx_info rather than an
rtx and lineno.
(main): Update after interface changes.
* genpreds.c (process_define_predicate): Take an md_rtx_info rather
than an rtx and lineno.
(process_define_constraint): Likewise.
(process_define_register_constraint): Likewise.
(main): Update after interface changes.
* genrecog.c (next_insn_code, pattern_lineno): Delete.
(validate_pattern): Replace top-level rtx with an md_rtx_info.
Use *_at rather than *_with_line functions.
(match_pattern_2): Likewise.
(match_pattern_1, match_pattern): Add an md_rtx_info parameter.
(get_peephole2_pattern): Take an md_rtx_info rather than an rtvec.
Use *_at rather than *_with_line functions.
* gentarget-def.c (add_insn): New function.
(main): Use it. Use new read_md_rtx interface.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225883
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Thu, 16 Jul 2015 13:50:08 +0000 (13:50 +0000)]
gcc/
* gensupport.h (compute_test_codes): Take a file_location rather
than a line number.
* gensupport.c (compute_test_codes): Likewise. Use *_at functions
rather than *_with_line functions.
(process_define_predicate): Update call to compute_test_codes.
* genpreds.c (validate_exp): Take a file_location rather than a
line number. Use *_at functions rather than *_with_line functions.
(process_define_predicate): Update call to validate_exp.
(constraint_data): Replace lineno field with a file_location.
(add_constraint): Take a file_location rather than a line number.
Use *_at functions rather than *_with_line functions. Fix error
message for address constraints. Update after changes to
validate_exp, constraint_data and compute_test_codes.
(process_define_constraint): Update accordingly.
(process_define_register_constraint): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225882
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Thu, 16 Jul 2015 13:47:48 +0000 (13:47 +0000)]
gcc/
* genoutput.c (data): Use a file_location to record the source
position.
(nothing): Delete.
(idata, idata_end): Remove initialization.
(constraint_data): Replace lineno with a file_location.
(output_insn_data): Update after changes to data.
(gen_insn, gen_peephole, gen_expand, gen_split): Likewise.
(scan_operands): Likewise, using *_at rather than *_with_line
functions.
(process_template): Likewise.
(validate_insn_alternatives): Likewise.
(validate_insn_operands): Likewise.
(validate_optab_operands): Likewise.
(init_insn_for_nothing): Initialize idata and idata_end.
(note_constraint): Update after changes to constraint_data,
using at rather than with_line functions.
(mdep_constraint_len): Take a file_location rather than a
line number. Use at rather than with_line functions.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225881
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Thu, 16 Jul 2015 13:45:20 +0000 (13:45 +0000)]
gcc/
* read-md.h (fatal_at): Declare.
* read-md.c (fatal_at): New function.
* genattrtab.c (insn_def, attr_desc, delay_desc): Use a file_location
to record the source position.
(check_attr_test): Take a file_location instead of a line number.
Use fatal_at instead of fatal.
(check_attr_value): Update after above changes, using "at"
rather than "with_line" reporting functions.
(convert_set_attr_alternative): Likewise.
(gen_attr): Likewise.
(check_defs): Likewise. Don't assign to read_md_filename.
(gen_insn): Update initialization after above changes.
(gen_delay): Likewise.
(write_insn_cases): Print the filename for a define_peephole.
(gen_insn_reserv): Take a line number as argument and update
the call to check_attr_test.
(main): Pass a line number to gen_insn_reserv.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225880
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Thu, 16 Jul 2015 13:41:41 +0000 (13:41 +0000)]
gcc/
* read-md.h (file_location): New structure.
(directive_handler_t): Take a file_location rather than a line number.
(message_at, error_at): Declare.
(read_skip_construct): Delete.
* read-md.c (message_with_line_1): Replace with...
(message_at_1): ...this new function.
(message_at, error_at): New functions.
(message_with_line, error_with_line): Update to use message_at_1.
(handle_enum): Take a file_location rather than a line number
and use error_at for error reporting.
(handle_include): Likewise.
(read_skip_construct): Likewise. Make static.
(handle_file): Update after above changes. Pass a file_location
rather than a line number to handle_directive.
* gensupport.c (queue_elem): Replace separate filename and lineno
with a file_location.
(queue_pattern): Replace filename and lineno arguments with a
file_location. Update after change to queue_elem.
(process_define_predicate): Replace lineno argument with a
file_location and use error_at for error reporting. Update
after above changes.
(process_rtx): Likewise.
(subst_pattern_match): Likewise.
(get_alternatives_number): Likewise.
(alter_predicate_for_insn): Likewise.
(rtx_handle_directive): Likewise.
(is_predicable): Update after above changes, using error_at rather
than error_with_line.
(has_subst_attribute): Likewise.
(identify_predicable_attribute): Likewise.
(alter_attrs_for_subst_insn): Likewise.
(process_one_cond_exec): Likewise.
(process_substs_on_one_elem): Likewise.
(process_define_subst): Likewise.
(check_define_attr_duplicates): Likewise.
(read_md_rtx): Update after change to queue_elem.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225879
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Thu, 16 Jul 2015 13:20:48 +0000 (13:20 +0000)]
gcc/
* genoutput.c (next_index_number): Delete.
(data): Remove index_number.
(gen_insn, gen_peephole, gen_expand, gen_split): Update accordingly.
(main): Remove manipulation of next_index_number.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225876
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Thu, 16 Jul 2015 13:16:39 +0000 (13:16 +0000)]
gcc/
* genattrtab.c (check_attr_value): Remove handling of null attrs.
(make_canonical): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225875
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Thu, 16 Jul 2015 13:00:55 +0000 (13:00 +0000)]
* config/sparc/sparc.md (save_stack_nonlocal): Use adjust_address
instead of adjust_address_nv.
(restore_stack_nonlocal): Likewise.
(nonlocal_goto): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225874
138bc75d-0d04-0410-961f-
82ee72b054a4
vries [Thu, 16 Jul 2015 11:51:38 +0000 (11:51 +0000)]
Handle exit phi without header phi in create_parallel_loop
2015-07-16 Tom de Vries <tom@codesourcery.com>
* tree-parloops.c (create_parallel_loop): Handle case that exit phi does
not have a corresponding loop header phi.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225873
138bc75d-0d04-0410-961f-
82ee72b054a4
vries [Thu, 16 Jul 2015 11:51:28 +0000 (11:51 +0000)]
Handle unused reduction in create_loads_for_reductions
2015-07-16 Tom de Vries <tom@codesourcery.com>
* tree-parloops.c (create_loads_for_reductions): Handle case that
reduction is unused.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225872
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 16 Jul 2015 11:27:34 +0000 (11:27 +0000)]
2015-07-16 Richard Biener <rguenther@suse.de>
PR tree-optimization/66894
* tree-vrp.c (register_edge_assert_for_2): Fix bad assumption
about deriving NE_EXPR from truncated values.
* gcc.dg/torture/pr66894.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225870
138bc75d-0d04-0410-961f-
82ee72b054a4
marxin [Thu, 16 Jul 2015 11:26:05 +0000 (11:26 +0000)]
Add new object_allocator and clean-up allocator usage.
* c-format.c (static void check_format_info_main): Use
object_allocator instead of pool_allocator.
(check_format_arg): Likewise.
(check_format_info_main): Likewise.
* alloc-pool.h
(object_allocator): Add new class.
(pool_allocator::initialize): Use the underlying class.
(pool_allocator::allocate): Likewise.
(pool_allocator::remove): Likewise.
(operator new): A new generic allocator.
* asan.c (struct asan_mem_ref): Remove unused members.
(asan_mem_ref_new): Replace new operator with
object_allocator::allocate.
(free_mem_ref_resources): Change deallocation.
* cfg.c (initialize_original_copy_tables): Replace pool_allocator
with object_allocator.
* config/sh/sh.c (add_constant): Replace new operator with
object_allocator::allocate.
(sh_reorg): Change call to a release method.
* cselib.c (struct elt_list): Remove unused members.
(new_elt_list): Replace new operator with
object_allocator::allocate.
(new_elt_loc_list): Likewise.
(new_cselib_val): Likewise.
(unchain_one_elt_list): Change delete operator with remove method.
(unchain_one_elt_loc_list): Likewise.
(unchain_one_value): Likewise.
(cselib_finish): Release newly added static allocators.
* cselib.h (struct cselib_val): Remove unused members.
(struct elt_loc_list): Likewise.
* df-problems.c (df_chain_alloc): Replace pool_allocator with
object_allocator.
* df-scan.c (struct df_scan_problem_data): Likewise.
(df_scan_alloc): Likewise.
* df.h (struct dataflow): Likewise.
* dse.c (struct read_info_type): Likewise.
(struct insn_info_type): Likewise.
(struct dse_bb_info_type): Likewise.
(struct group_info): Likewise.
(struct deferred_change): Likewise.
(get_group_info): Likewise.
(delete_dead_store_insn): Likewise.
(free_read_records): Likewise.
(replace_read): Likewise.
(check_mem_read_rtx): Likewise.
(scan_insn): Likewise.
(dse_step1): Likewise.
(dse_step7): Likewise.
* et-forest.c (struct et_occ): Remove unused members.
(et_new_occ): Use allocate instead of new operator.
(et_new_tree): Likewise.
(et_free_tree): Call release method explicitly.
(et_free_tree_force): Likewise.
(et_free_pools): Likewise.
(et_split): Use remove instead of delete operator.
* et-forest.h (struct et_node): Remove unused members.
* ipa-cp.c: Change pool_allocator to object_allocator.
* ipa-inline-analysis.c: Likewise.
* ipa-profile.c: Likewise.
* ipa-prop.c: Likewise.
* ipa-prop.h: Likewise.
* ira-build.c (initiate_cost_vectors): Cast return value.
(ira_allocate_cost_vector): Likewise.
* ira-color.c (struct update_cost_record): Remove unused members.
* lra-int.h (struct lra_live_range): Likewise.
(struct lra_copy): Likewise.
(struct lra_insn_reg): Likewise.
* lra-lives.c (lra_live_ranges_finish): Release new static allocator.
* lra.c (new_insn_reg): Replace new operator with allocate method.
(free_insn_regs): Same for operator delete.
(finish_insn_regs): Release new static allocator.
(finish_insn_recog_data): Likewise.
(lra_free_copies): Replace delete operator with remove method.
(lra_create_copy): Replace operator new with allocate method.
(invalidate_insn_data_regno_info): Same for remove method.
* regcprop.c (struct queued_debug_insn_change): Remove unused members.
(free_debug_insn_changes): Replace delete operator with remove method.
(replace_oldest_value_reg): Replace operator new with allocate method.
(pass_cprop_hardreg::execute): Release new static variable.
* sched-deps.c (sched_deps_init): Change pool_allocator to
object_allocator.
* sel-sched-ir.c: Likewise.
* sel-sched-ir.h: Likewise.
* stmt.c (expand_case): Likewise.
(expand_sjlj_dispatch_table): Likewise.
* tree-sra.c (struct access): Remove unused members.
(struct assign_link): Likewise.
(sra_deinitialize): Release newly added static pools.
(create_access_1):Replace operator new with allocate method.
(build_accesses_from_assign): Likewise.
(create_artificial_child_access): Likewise.
* tree-ssa-math-opts.c (pass_cse_reciprocals::execute): Change
pool_allocator to object_allocator.
* tree-ssa-pre.c: Likewise.
* tree-ssa-reassoc.c: Likewise.
* tree-ssa-sccvn.c (allocate_vn_table): Likewise.
* tree-ssa-strlen.c: Likewise.
* tree-ssa-structalias.c: Likewise.
* var-tracking.c (onepart_pool_allocate): New function.
(unshare_variable): Use the newly added function.
(variable_merge_over_cur): Likewise.
(variable_from_dropped): Likewise.
(variable_was_changed): Likewise.
(set_slot_part): Likewise.
(emit_notes_for_differences_1): Likewise.
(vt_finalize): Release newly added static pools.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225869
138bc75d-0d04-0410-961f-
82ee72b054a4
jamborm [Thu, 16 Jul 2015 09:48:20 +0000 (09:48 +0000)]
Give struct param_aa_atatus and struct func_body_info an ipa_ prefix.
2015-07-16 Martin Jambor <mjambor@suse.cz>
* ipa-prop.h (param_aa_status): Rename to ipa_param_aa_status. Adjust
all uses. Fix two typos in its general comment.
(func_body_info): Rename to ipa_func_body_info. Adjust all uses.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225867
138bc75d-0d04-0410-961f-
82ee72b054a4
ienkovich [Thu, 16 Jul 2015 08:36:02 +0000 (08:36 +0000)]
gcc/
* config/i386/linux-common.h (LINK_MPX): New.
(MPX_SPEC): Use LINK_MPX instead of %(link_mpx).
* configure.ac: Add HAVE_LD_BNDPLT_SUPPORT macro
indicating '-z bndplt' support by linker.
* configure: Regenerate.
* config.in: Regenerate.
libmpx/
* configure.ac: Remove link_mpx.
* libmpx.spec.in: Likewise.
* configure: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225862
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 16 Jul 2015 08:28:51 +0000 (08:28 +0000)]
2015-07-16 Richard Biener <rguenther@suse.de>
* fold-const.c (fold_widened_comparison): Remove.
(fold_sign_changed_comparison): Likewise.
(fold_comparison): Move widened and sign-changed comparison
simplification ...
* match.pd: ... to patterns here.
* generic-match-head.c: Include target.h.
* gimple-match-head.c: Likewise.
* gcc.dg/tree-ssa/pr21031.c: Adjust.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225861
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 16 Jul 2015 07:19:24 +0000 (07:19 +0000)]
2015-07-16 Richard Biener <rguenther@suse.de>
* tree-ssa-dom.c (dom_valueize): New function.
(record_temporary_equivalences): Also record equivalences
for dominating stmts that have uses of equivalences we are
about to record.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225860
138bc75d-0d04-0410-961f-
82ee72b054a4
amker [Thu, 16 Jul 2015 05:49:47 +0000 (05:49 +0000)]
* tree-ssa-loop-ivopts.c (add_candidate): Remove call to
add_autoinc_candidates.
(add_iv_candidate_for_biv): Rename to add_iv_candidate_for_biv.
(add_iv_candidate_for_biv): Rename from add_iv_candidate_for_biv.
(add_old_ivs_candidates): Rename to add_iv_candidate_for_bivs.
(add_iv_candidate_for_bivs): Rename from add_old_ivs_candidates.
Call new function.
(add_iv_value_candidates): Rename to add_iv_candidate_for_use.
(add_iv_candidate_for_use): Rename from add_iv_value_candidates.
Remove parameter struct iv*. Call add_autoinc_candidates here.
(add_derived_ivs_candidates): Rename to add_iv_candidate_for_uses.
(add_iv_candidate_for_uses): Rename from add_derived_ivs_candidates.
Call new function.
(find_iv_candidates): Call new functions.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225859
138bc75d-0d04-0410-961f-
82ee72b054a4
sandra [Thu, 16 Jul 2015 03:30:31 +0000 (03:30 +0000)]
2015-07-16 Sandra Loosemore <sandra@codesourcery.com>
gcc/
* config/nios2/nios2.c (nios2_emit_stack_limit_check): Fix
uninitialized-variable warning.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225857
138bc75d-0d04-0410-961f-
82ee72b054a4
kkojima [Thu, 16 Jul 2015 00:48:33 +0000 (00:48 +0000)]
PR target/65249
* config/sh/sh.md (movdi): Split simple reg move to two movsi when
the destination is R0 so as to lower R0-register pressure.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225856
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Thu, 16 Jul 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225855
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Wed, 15 Jul 2015 22:20:17 +0000 (22:20 +0000)]
PR target/66866
* config/i386/i386-protos.h (ix86_expand_pextr): New prototype.
* config/i386/i386.c (ix86_expand_pextr): New function.
(ix86_expand_pinsr): Handle V1TI and TI modes. Call ix86_expand_pextr
for non-lowpart subregs.
* config/i386/i386.md (extzv<mode>): Expand with ix86_expand_pextr.
(insv<mode>): Use SWI248 mode iterator.
(insv<mode>_1): Ditto.
testsuite/ChangeLog:
PR target/66866
* g++.dg/pr66866.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225852
138bc75d-0d04-0410-961f-
82ee72b054a4
spop [Wed, 15 Jul 2015 21:37:07 +0000 (21:37 +0000)]
One of the code refactorings introducing phi node iterators modified
the semantics of this code. Revert that change to what was before.
* graphite-sese-to-poly.c (rewrite_cross_bb_scalar_deps): Point
iterator to use_stmt.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225851
138bc75d-0d04-0410-961f-
82ee72b054a4
spop [Wed, 15 Jul 2015 21:37:01 +0000 (21:37 +0000)]
[graphite] discard scops for which entry==exit
In this patch we discard the scops where entry and exit are the same BB.
This is an effort to remove graphite-scop-detection.c:limit_scops.
Removing the limit_scops function introduces correctness regressions.
We are making relevant changes in incremental steps to fix those bugs,
and finally we intend to remove limit_scops.
2015-06-29 Aditya Kumar <aditya.k7@samsung.com>
Sebastian Pop <s.pop@samsung.com>
* graphite-scop-detection.c (build_scops_1): Discard scops for which entry==exit
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225850
138bc75d-0d04-0410-961f-
82ee72b054a4
spop [Wed, 15 Jul 2015 21:36:55 +0000 (21:36 +0000)]
* graphite-scop-detection.c (stmt_simple_for_scop_p): Bail out in
case of a return statement in scop.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225849
138bc75d-0d04-0410-961f-
82ee72b054a4
spop [Wed, 15 Jul 2015 21:36:49 +0000 (21:36 +0000)]
* graphite-sese-to-poly.c (parameter_index_in_region): Only handle
INTEGER_TYPE parameters.
(scan_tree_for_params): Handle REAL_CST, COMPLEX_CST, and
VECTOR_CST in scan_tree_for_params.
(add_conditions_to_domain): Only constrain on INTEGER_TYPE.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225848
138bc75d-0d04-0410-961f-
82ee72b054a4
amacleod [Wed, 15 Jul 2015 19:57:03 +0000 (19:57 +0000)]
* gimple-pretty-print.h: Don't include pretty-print.h.
* tree-streamer.h: Don't include lto-streamer.h.
* gimple-streamer.h: Include tree-streamer.h rather than lto-streamer.h.
* gimple-streamer-in.c: Remove redundant includes.
* gimple-streamer-out.c: Likewise.
* ipa-devirt.c: Likewise.
* ipa-icf.c: Likewise.
* ipa-inline-analysis.c: Likewise.
* ipa-polymorphic-call.c: Likewise.
* ipa-profile.c: Likewise.
* ipa-prop.c: Likewise.
* ipa-pure-const.c: Likewise.
* lto-cgraph.c: Likewise.
* lto-streamer-in.c: Likewise.
* lto-streamer-out.c: Likewise.
* lto-streamer.c: Likewise.
* tree-streamer-in.c: Likewise.
* tree-streamer-out.c: Likewise.
* tree-streamer.c: Likewise.
* lto/lto.c: Remove redundant includes.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225847
138bc75d-0d04-0410-961f-
82ee72b054a4
amacleod [Wed, 15 Jul 2015 19:50:23 +0000 (19:50 +0000)]
2015-07-15 Andrew MacLeod <amacleod@redhat.com>
* opth-gen.awk: Check for UNKNOWN_LOCATION rather than GCC_TM_H, don't
include input.h.
* opts.c: Remove multiline #include comment.
2015-07-15 Andrew MacLeod <amacleod@redhat.com>
* java/expr.c: Remove multiline #include comment.
2015-07-15 Andrew MacLeod <amacleod@redhat.com>
* fortran/trans-types.c: Remove multiline #include comment.
2015-07-15 Andrew MacLeod <amacleod@redhat.com>
* c-family/c-opts.c: Remove multiline #include comment.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225846
138bc75d-0d04-0410-961f-
82ee72b054a4
nathan [Wed, 15 Jul 2015 18:54:18 +0000 (18:54 +0000)]
* config/nvptx/mkoffload.c (process): Add C++ protection to
emitted code.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225844
138bc75d-0d04-0410-961f-
82ee72b054a4
meissner [Wed, 15 Jul 2015 17:15:37 +0000 (17:15 +0000)]
2015-07-14 Michael Meissner <meissner@linux.vnet.ibm.com>
PR target/66854
* config/rs6000/rs6000.c (rs6000_pass_by_reference): Move test for
null before IEEE 128-bit floating point support patch.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225843
138bc75d-0d04-0410-961f-
82ee72b054a4
wschmidt [Wed, 15 Jul 2015 16:31:46 +0000 (16:31 +0000)]
[gcc]
2015-07-15 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
* simplify-rtx.c (simplify_ternary_operation): Add simplification
for (!c) != {0,...,0} ? a : b for vector modes.
[gcc/testsuite]
2015-07-15 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
* gcc.target/powerpc/vec-cmp-sel.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225840
138bc75d-0d04-0410-961f-
82ee72b054a4
jamborm [Wed, 15 Jul 2015 15:58:43 +0000 (15:58 +0000)]
Limit AA walking when inlining analysis examines parameters
2015-07-15 Paolo Bonzini <bonzini@gnu.org>
Martin Jambor <mjambor@suse.cz>
* ipa-inline-analysis.c (unmodified_parm_or_parm_agg_item): Accept
struct func_body_info* instead of struct ipa_node_params*, expecting
fbi->info to be filled in. Replace throughout. Adjust call to
ipa_load_from_parm_agg.
(set_cond_stmt_execution_predicate): Accept struct func_body_info*
instead of struct ipa_node_params*. Adjust calls to other functions
so that they pass either fbi or fbi->info.
(set_switch_stmt_execution_predicate): Likewise.
(will_be_nonconstant_predicate): Likewise.
(compute_bb_predicates): Likewise.
(estimate_function_body_sizes): Move asserts earlier. Fill in
struct func_body_info, replace parms_info with fbi.info. Adjust
calls to functions that now accept struct func_body_info.
* ipa-prop.c (param_aa_status, struct ipa_bb_info): Move to ipa-prop.h.
(struct func_body_info): Likewise.
(ipa_load_from_parm_agg_1): Rename to ipa_load_from_parm_agg,
remove static. Adjust callers.
(ipa_load_from_parm_agg): Remove.
* ipa-prop.h (param_aa_status, ipa_bb_info): Move from ipa-prop.c.
(func_body_info): Likewise.
(ipa_load_from_parm_agg): Adjust prototype.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225838
138bc75d-0d04-0410-961f-
82ee72b054a4
vries [Wed, 15 Jul 2015 15:41:21 +0000 (15:41 +0000)]
check_GNU_style.sh: Fix quoting in cat_with_prefix
2015-07-15 Tom de Vries <tom@codesourcery.com>
* check_GNU_style.sh (cat_with_prefix): Fix quoting.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225837
138bc75d-0d04-0410-961f-
82ee72b054a4
tbsaunde [Wed, 15 Jul 2015 14:38:13 +0000 (14:38 +0000)]
remove some usage of expr_list from read_rtx
gcc/ChangeLog:
2015-07-12 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* gensupport.c (rtx_handle_directive): Adjust.
* read-rtl.c (apply_iterators): Take vector to add rtxs to
instead of expr list rtx.
(add_define_attr_for_define_subst): Likewise.
(add_define_subst_attr): Likewise.
(read_subst_mapping): Likewise.
(read_rtx): Likewise.
* rtl.h (read_rtx): Adjust.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225833
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 15 Jul 2015 14:13:22 +0000 (14:13 +0000)]
PR c++/65091
* parser.c (cp_parser_unqualified_id): Don't accept ~x in a
template if there is no type x in scope.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225831
138bc75d-0d04-0410-961f-
82ee72b054a4
ktkachov [Wed, 15 Jul 2015 14:11:18 +0000 (14:11 +0000)]
[AArch64] Use cinc mnemonic for *csinc2<mode>_insn
* config/aarch64/aarch64.md (*csinc2<mode>_insn): Use cinc mnemonic.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225830
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Wed, 15 Jul 2015 13:42:07 +0000 (13:42 +0000)]
PR target/58066
* config/i386/i386.md (*tls_global_dynamic_64_<mode>): Depend on SP_REG.
(*tls_local_dynamic_base_64_<mode>): Ditto.
(*tls_local_dynamic_base_64_largepic): Ditto.
(tls_global_dynamic_64_<mode>): Update expander pattern.
(tls_local_dynamic_base_64_<mode>): Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225829
138bc75d-0d04-0410-961f-
82ee72b054a4
iverbin [Wed, 15 Jul 2015 13:13:10 +0000 (13:13 +0000)]
Fix libgomp tests.
2015-07-15 Maxim Blumenthal <maxim.blumenthal@intel.com>
libgomp/
* testsuite/libgomp.fortran/examples-4/simd-8.f90: (main): Change type
of EPS parameter from integer to real.
* testsuite/libgomp.fortran/examples-4/task_dep-5.f90: (check): Change
type of EPS parameter from integer to real.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225827
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Wed, 15 Jul 2015 12:25:57 +0000 (12:25 +0000)]
2015-07-15 Richard Biener <rguenther@suse.de>
* fold-const.c (fold_binary_loc): Move bool_var != 0 -> bool_var
and bool_var == 1 -> bool_var simplifications ...
* match.pd: ... to patterns here. Factor out negate_expr_p
cases from the A - B -> A + (-B) patterns as negate_expr_p
predicate and add a -(A + B) -> (-B) - A pattern.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225825
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Wed, 15 Jul 2015 11:47:54 +0000 (11:47 +0000)]
2015-07-15 Richard Biener <rguenther@suse.de>
* lib/objc-torture.exp (OBJC_TORTURE_OPTIONS): Remove
{ -O3 -fomit-frame-pointer },
{ -O3 -fomit-frame-pointer -funroll-loops } and
{ -O3 -fomit-frame-pointer -funroll-all-loops -finline-functions }
in favor of
{ -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer
-finline-functions }
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225821
138bc75d-0d04-0410-961f-
82ee72b054a4
rts [Wed, 15 Jul 2015 11:43:05 +0000 (11:43 +0000)]
Fix restoration of hi/lo in MIPS64R2 interrupt handlers.
gcc/
* config/mips/mips.c (mips_emit_save_slot_move): Fix typo.
gcc/testsuite/
* gcc.target/mips/interrupt_handler-5.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225820
138bc75d-0d04-0410-961f-
82ee72b054a4
rts [Wed, 15 Jul 2015 11:42:50 +0000 (11:42 +0000)]
Support new interrupt handler options.
gcc/
* config/mips/mips.c (mips_int_mask): New enum.
(mips_shadow_set): Likewise.
(int_mask): New variable.
(use_shadow_register_set_p): Change type to enum mips_shadow_set.
(machine_function): Add int_mask and use_shadow_register_set.
(mips_attribute_table): Add attribute handlers for interrupt and
use_shadow_register_set.
(mips_interrupt_mask): New static function.
(mips_handle_interrupt_attr): Likewise.
(mips_handle_use_shadow_register_set_attr): Likewise.
(mips_use_shadow_register_set): Change return type to enum
mips_shadow_set. Add argument handling for use_shadow_register_set
attribute.
(mips_interrupt_extra_called_saved_reg_p): Update the conditional to
compare with mips_shadow_set enum.
(mips_compute_frame_info): Add interrupt mask and
use_shadow_register_set to per-function information structure.
Add a stack slot for EPC unconditionally.
(mips_expand_prologue): Compare use_shadow_register_set value
with mips_shadow_set enum. Save EPC always in K1, clobber only K1 for
masked interrupt register but in EIC mode use K0 and save Cause in K0.
EPC saved and restored unconditionally. Use PMODE_INSN macro when
copying the stack pointer from the shadow register set.
* config/mips/mips.h (SR_IM0): New define.
* config/mips/mips.md (mips_rdpgpr): Rename to...
(mips_rdpgpr_<mode>): ...this. Use the Pmode iterator.
* doc/extend.texi (Declaring Attributes of Functions): Document
optional arguments for interrupt and use_shadow_register_set
attributes.
gcc/testsuite/
* gcc.target/mips/interrupt_handler-4.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225819
138bc75d-0d04-0410-961f-
82ee72b054a4
rts [Wed, 15 Jul 2015 11:42:34 +0000 (11:42 +0000)]
Support interrupt handlers with hard-float.
gcc/
* config/mips/mips.c (mips_compute_frame_info): Allow -mhard-float in
interrupt attribute.
(mips_expand_prologue): Disable the floating point unit in an ISR.
* config/mips/mips.h (SR_COP1): New define.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225818
138bc75d-0d04-0410-961f-
82ee72b054a4
ienkovich [Wed, 15 Jul 2015 09:56:00 +0000 (09:56 +0000)]
PR testsuite/66734
* gcc.dg/lto/lto.exp: Initialize MPX.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225815
138bc75d-0d04-0410-961f-
82ee72b054a4
ktkachov [Wed, 15 Jul 2015 09:45:10 +0000 (09:45 +0000)]
[ARM][testsuite] Add -mfloat-abi=softfp to some xscale tests
* gcc.target/arm/scd42-1.c: Add -mfloat-abi=softfp and appropriate
dg-skip-if.
* gcc.target/arm/scd42-3.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225814
138bc75d-0d04-0410-961f-
82ee72b054a4
abennett [Wed, 15 Jul 2015 09:22:25 +0000 (09:22 +0000)]
MIPS: In mips.exp allow the post-arch code to be run when the pre-arch code increases the isa_rev to mips32r6 or greater.
testsuite/
* gcc.target/mips/mips.exp (mips-dg-options): Allow the post-arch
code to be run when the pre-arch code increases the isa_rev to
mips32r6 or greater.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225813
138bc75d-0d04-0410-961f-
82ee72b054a4
sh [Wed, 15 Jul 2015 09:11:11 +0000 (09:11 +0000)]
[gomp] Recycle last non-nested team if possible
libgomp/ChangeLog
2015-07-15 Sebastian Huber <sebastian.huber@embedded-brains.de>
* team.c (get_last_team): New.
(gomp_new_team): Recycle last non-nested team if possible.
(gomp_team_end): Move team work share list free lock destruction
to ...
(free_team): ... here.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225811
138bc75d-0d04-0410-961f-
82ee72b054a4
nsz [Wed, 15 Jul 2015 09:03:15 +0000 (09:03 +0000)]
Add missing PR target/66731 to gcc/testsuite/Changelog
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225810
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Wed, 15 Jul 2015 08:35:15 +0000 (08:35 +0000)]
2015-07-15 Richard Biener <rguenther@suse.de>
* genmatch.c (parser::peek, parser::peek_ident): Add argument
to tell how many tokens to peek ahead (default 1).
(parser::eat_token, parser::eat_ident): Return token consumed.
(parser::parse_result): Parse new switch statement.
* match.pd: Use case statements where appropriate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225809
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Wed, 15 Jul 2015 08:02:43 +0000 (08:02 +0000)]
2015-07-15 Richard Biener <rguenther@suse.de>
* lib/c-torture.exp (C_TORTURE_OPTIONS): Remove
{ -O3 -fomit-frame-pointer },
{ -O3 -fomit-frame-pointer -funroll-loops } and
{ -O3 -fomit-frame-pointer -funroll-all-loops -finline-functions }
in favor of
{ -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer
-finline-functions }
* lib/gcc-dg.exp (DG_TORTURE_OPTIONS): Likewise.
* gcc.c-torture/execute/builtins/builtins.exp: Add -fno-tracer
to additional_flags.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225808
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Wed, 15 Jul 2015 07:39:30 +0000 (07:39 +0000)]
PR rtl-optimization/58066
* calls.c (expand_call): Precompute register parameters before stack
alignment is performed.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225807
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Wed, 15 Jul 2015 07:28:33 +0000 (07:28 +0000)]
PR rtl-optimization/66838
* postreload.c (reload_cse_move2add): Also process
CALL_INSN_FUNCTION_USAGE when resetting information of
call-clobbered registers.
testsuite/ChangeLog:
PR rtl-optimization/66838
* gcc.target/i386/pr66838.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225806
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Wed, 15 Jul 2015 00:16:13 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225804
138bc75d-0d04-0410-961f-
82ee72b054a4
ppalka [Wed, 15 Jul 2015 00:01:21 +0000 (00:01 +0000)]
Fix PR c++/66850
gcc/cp/ChangeLog:
PR c++/66850
* pt.c (redeclare_class_template): Set the DECL_CONTEXTs of each
template template parm in the redeclaration.
(lookup_template_class_1): Peel off irrelevant template levels
from current_template_parms before augmenting the argument
list.
gcc/testsuite/ChangeLog:
PR c++/66850
* g++.dg/template/pr66850.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225801
138bc75d-0d04-0410-961f-
82ee72b054a4
sandra [Tue, 14 Jul 2015 23:43:48 +0000 (23:43 +0000)]
2015-07-14 Sandra Loosemore <sandra@codesourcery.com>
Cesar Philippidis <cesar@codesourcery.com>
Chung-Lin Tang <cltang@codesourcery.com>
gcc/
* config/nios2/constraints.md (U, v): New constraints.
* config/nios2/predicates.md (rdprs_dcache_operand): New.
(ldstex_memory_operand): New.
* config/nios2/sync.md: New file.
* config/nios2/nios2.md (unspecv): Add new builtin function
UNSPECV codes.
(rdprs, flushd, flushda, wrpie, eni): New patterns.
(top-level): Include sync.md.
* config/nios2/nios2.c (N2_FTYPES): Add function types for
new builtins.
(N2_BUILTINS): Add arch field setting, add new builtins.
(enum nios2_builtin_code,nios2_builtins): Update N2_BUILTIN_DEF
for arch field.
(nios2_expand_ldst_builtin): Rename from nios2_expand_ldstio_builtin.
Also handle ldex/stex/ldsex/stsex builtins.
(nios2_expand_rdprs_builtin): New function.
(nios2_expand_cache_builtin): New function.
(nios2_expand_wrpie_builtin): New function.
(nios2_expand_eni_builtin): New function.
(nios2_expand_builtin): Add arch field handling and new builtin
cases.
* doc/extend.texi (Altera Nios II Built-in Functions): Document
new builtins.
* doc/md.texi (Machine Constraints): Document U and v constraints.
gcc/testsuite/
* gcc.target/nios2/nios2-flushd.c: New.
* gcc.target/nios2/nios2-rdprs.c: New.
* gcc.target/nios2/r2-atomic.c: New.
* gcc.target/nios2/r2-eni.c: New.
* gcc.target/nios2/r2-wrpie.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225800
138bc75d-0d04-0410-961f-
82ee72b054a4
sandra [Tue, 14 Jul 2015 23:32:06 +0000 (23:32 +0000)]
2015-07-14 Sandra Loosemore <sandra@codesourcery.com>
Cesar Philippidis <cesar@codesourcery.com>
Chung-Lin Tang <cltang@codesourcery.com>
gcc/
* config/nios2/nios2-protos.h (nios2_expand_return): Declare.
* config/nios2/nios2.c (struct GTY (()) machine_function): Add
callee_save_reg_size and uses_anonymous_args fields.
(nios2_compute_frame_layout): Update for CDX push.n/pop.n usage.
(nios2_create_cfa_notes): New function.
(nios2_adjust_stack): New function for adjusting stack.
(nios2_expand_prologue): Update for CDX push.n/pop.n usage.
Use nios2_adjust_stack.
(nios2_expand_epilogue): Likewise.
(nios2_expand_return): New function.
(nios2_can_use_return_insn): Update for CDX pop.n usage.
(nios2_setup_incoming_varargs): Set uses_anonymous_args flag.
If TARGET_HAS_CDX, defer pushing regs to nios2_expand_prologue.
* config/nios2/nios2.md (return): Use nios2_expand_return.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225799
138bc75d-0d04-0410-961f-
82ee72b054a4
sandra [Tue, 14 Jul 2015 23:16:43 +0000 (23:16 +0000)]
2015-07-14 Sandra Loosemore <sandra@codesourcery.com>
Cesar Philippidis <cesar@codesourcery.com>
Chung-Lin Tang <cltang@codesourcery.com>
gcc/
* config/nios2/predicates.md (pop_operation): New.
(ldwm_operation, stwm_operation): New.
(nios2_hard_register_operand): New.
* config/nios2/nios2-protos.h (pop_operation_p): Declare.
(ldstwm_operation_p): Declare.
(gen_ldstwm_peep): Declare.
* config/nios2/nios2.c: (nios2_ldst_parallel): Declare.
(base_reg_adjustment_p): New.
(pop_operation_p): New.
(CDX_LDSTWM_VALID_REGS_0, CDX_LDSTWM_VALID_REGS_1): Define.
(nios2_ldstwm_regset_p): New.
(ldstwm_operation_p): New.
(gen_ldst): New.
(nios2_ldst_parallel): New.
(struct ldswm_operand): Declare.
(compare_ldstwm_operands): New.
(can_use_cdx_ldstw): New.
(gen_ldstwm_peep): New.
* config/nios2/nios2-ldstwm.sml: New.
* config/nios2/nios2.md: Include ldstwm.md.
* config/nios2/ldstwm.md: Generated.
gcc/testsuite/
* gcc.target/nios2/cdx-ldstwm-1.c: New.
* gcc.target/nios2/cdx-ldstwm-2.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225798
138bc75d-0d04-0410-961f-
82ee72b054a4
sandra [Tue, 14 Jul 2015 22:56:45 +0000 (22:56 +0000)]
2015-07-14 Sandra Loosemore <sandra@codesourcery.com>
Cesar Philippidis <cesar@codesourcery.com>
Chung-Lin Tang <cltang@codesourcery.com>
gcc/
* config/nios2/nios2.h (LABEL_ALIGN): Define.
(REG_ALLOC_ORDER): Define.
(ADJUST_REG_ALLOC_ORDER): Define.
(HONOR_REG_ALLOC_ORDER): Define.
(CDX_REG_P): Define.
(ANDCLEAR_INT): Define.
* config/nios2/nios2-protos.h (nios2_add_insn_asm): Declare.
(nios2_label_align): Declare.
(nios2_cdx_narrow_form_p): Declare.
(nios2_adjust_reg_alloc_order): Declare.
* config/nios2/nios2.c (nios2_rtx_costs): Adjust for BMX zero-extract
operation.
(nios2_large_unspec_reloc_p): New function, split from...
(nios2_legitimate_pic_operand_p): ...here.
(nios2_emit_move_sequence): Add *high/*lo_sum constant expand code.
(nios2_print_operand_punct_valid_p): New.
(nios2_print_operand): Add %., %!, %x, %y, %A. Remove %U.
(split_mem_address): New.
(split_alu_insn): New.
(cdxreg): New.
(cdx_add_immed, cdx_and_immed, cdx_mov_immed, cdx_shift_immed): New.
(enum nios2_add_insn_kind): New.
(nios2_add_insn_names, nios2_add_insn_narrow): New.
(nios2_add_insn_classify): New.
(nios2_add_insn_asm): New.
(nios2_cdx_narrow_form_p): New.
(label_align, min_labelno, max_labelno): New.
(nios2_reorg): New.
(nios2_label_align): New.
(nios2_adjust_reg_alloc_order): New.
(TARGET_PRINT_OPERAND_PUNCT_VALID_P): Define.
(TARGET_MACHINE_DEPENDENT_REORG): Define.
* config/nios2/constraints.md (P): New constraint.
* config/nios2/predicates.md (const_and_operand): New.
(and_operand): New.
(stack_memory_operand): New.
* config/nios2/nios2.md (SP_REGNO): Define stack pointer regno.
(length): Update to use nios2_cdx_narrow_form_p().
(type): Add new insn type values.
(control, alu, st, ld, shift): Update insn reservations with
new insn type values.
(*high, *lo_sum): Define new insn patterns for constant generation.
(movqi_internal, movhi_internal, movsi_internal): Reduce
alternatives, update asm template to handle CDX variants, update
type attributes.
(zero_extendhisi2, zero_extendqi<mode>2): Add CDX variants to asm
template, update type attributes.
(extendhisi2, extendqi<mode>2): Likewise.
(addsi3): Change to use function for asm string.
(subsi3): Add CDX notation to asm template, update type attributes.
(negsi3, one_cmplsi3): Likewise.
(andsi3): New pattern, specialized from logical patterns.
(<code>si3): Remove and case, combine alternatives, update asm
template.
(<shift_op>si3): Add CDX notation, update type attributes.
(rotrsi3): Update type attribute.
(*merge, extzv, insv): New insn patterns.
(return): Change to define_expand.
(simple_return): Add CDX notation, update type attributes.
(indirect_jump): Add CDX notation.
(jump): Update asm cases, update length attribute expression.
(*call, *call_value, *sibcall, *sibcall_value): Add CDX variant.
(nios2_cbranch): Update asm cases and length attribute expression
to handle CDX variants.
(nios2_cmp<code>): Update asm template.
(nop): Add CDX notation, update type attributes.
(trap): Add CDX notation.
(ctrapsi4): Update asm cases and length attribute expression to
handle CDX variant.
* doc/md.texi (Machine Constraints): Document P constraint.
gcc/testsuite/
* gcc.target/nios2/andci.c: New.
* gcc.target/nios2/bmx.c: New.
* gcc.target/nios2/cdx-add.c: New.
* gcc.target/nios2/cdx-branch.c: New.
* gcc.target/nios2/cdx-callret.c: New.
* gcc.target/nios2/cdx-loadstore.c: New.
* gcc.target/nios2/cdx-logical.c: New.
* gcc.target/nios2/cdx-mov.c: New.
* gcc.target/nios2/cdx-shift.c: New.
* gcc.target/nios2/cdx-sub.c: New.
* gcc.target/nios2/nios2-trap-insn.c: Adjust pattern.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225796
138bc75d-0d04-0410-961f-
82ee72b054a4
sandra [Tue, 14 Jul 2015 22:43:46 +0000 (22:43 +0000)]
2015-07-14 Sandra Loosemore <sandra@codesourcery.com>
Cesar Philippidis <cesar@codesourcery.com>
Chung-Lin Tang <cltang@codesourcery.com>
libgcc/
* config/nios2/tramp.c (MOVHI, ORI, JMP): Conditionalize
for __nios2_arch__ level.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225794
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Tue, 14 Jul 2015 22:36:50 +0000 (22:36 +0000)]
/cp
2015-07-14 Andrea Azzarone <azzaronea@gmail.com>
PR c++/65071
* parser.c (cp_parser_sizeof_pack): Also consider template template
parameters.
/testsuite
2015-07-14 Andrea Azzarone <azzaronea@gmail.com>
PR c++/65071
* g++.dg/cpp0x/vt-65071.C: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225793
138bc75d-0d04-0410-961f-
82ee72b054a4
sandra [Tue, 14 Jul 2015 22:34:23 +0000 (22:34 +0000)]
2015-07-14 Sandra Loosemore <sandra@codesourcery.com>
Cesar Philippidis <cesar@codesourcery.com>
Chung-Lin Tang <cltang@codesourcery.com>
gcc/
* config/nios2/nios2.h (SMALL_INT12): New macro.
* config/nios2/nios2.c (nios2_valid_addr_offset_p): New function.
(nios2_valid_addr_expr_p): Use it.
(nios2_symbol_ref_in_small_data_p): Disallow GP-relative addressing
with implicit "io" instructions on R2.
* config/nios2/constraints.md (w): New constraint.
* config/nios2/predicates.md (ldstio_memory_operand): New.
* config/nios2/nios2.md (ld<bhw_uns>io, ld<bh>io): Update memory
operand predicate and constraint.
(ld<bh>io_signed, st<bhw>io>): Likewise.
* doc/md.texi (Machine Constraints): Document w constraint.
gcc/testsuite/
* gcc.target/nios2/r2-io-range.c: New.
* gcc.target/nios2/r2-stio-1.c: New.
* gcc.target/nios2/r2-stio-2.c: New.
* gcc.target/nios2/nios2-ldxio.c: New.
* gcc.target/nios2/nios2-stxio.c: Change to assemble test instead
of just compile. Add more tests.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225792
138bc75d-0d04-0410-961f-
82ee72b054a4
sandra [Tue, 14 Jul 2015 22:22:45 +0000 (22:22 +0000)]
2015-07-14 Sandra Loosemore <sandra@codesourcery.com>
Cesar Philippidis <cesar@codesourcery.com>
Chung-Lin Tang <cltang@codesourcery.com>
gcc/
* config/nios2/nios2.opt (march, mbmx, mcdx): New options.
* config/nios2/nios2-opts.h (enum nios2_arch_type): New enum for
Nios II architecture level.
* config/nios2/nios2.h (TARGET_ARCH_R2): New define.
(TARGET_CPU_CPP_BUILTINS): Add definition of __nios2_arch__ symbol.
(OPTION_DEFAULT_SPECS): Define.
(ASM_SPEC): Add -march= spec strings.
* config/nios2/nios2.c (nios2_option_override): Check for
conflicts involving new options.
* config.gcc (nios2*-*-*): Support --with-arch=.
* doc/invoke.texi (Option Summary, Nios II Options): Document
-march=, -mbmx, and -mcdx.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225791
138bc75d-0d04-0410-961f-
82ee72b054a4
kargl [Tue, 14 Jul 2015 21:44:46 +0000 (21:44 +0000)]
2015-07-14 Steven G. Kargl <kargl@gcc.gnu.org>
* simplify.c (gfc_simplify_floor): Set precision of temporary to
that of arg.
2015-07-14 Steven G. Kargl <kargl@gcc.gnu.org>
gfortran.dg/pr66864.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225790
138bc75d-0d04-0410-961f-
82ee72b054a4
vmakarov [Tue, 14 Jul 2015 20:54:00 +0000 (20:54 +0000)]
2015-07-14 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/66626
* lra-constraints.c (lra_constraints): Prevent equivalence
substitution for static chain pseudo in functions with nonlocal
goto.
2015-07-14 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/66626
* gcc.target/i386/pr66626.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225789
138bc75d-0d04-0410-961f-
82ee72b054a4
jb [Tue, 14 Jul 2015 20:26:06 +0000 (20:26 +0000)]
PR 66861 Fix null pointer crash on mingw.
2015-07-14 Janne Blomqvist <jb@gcc.gnu.org>
PR libfortran/66861
* io/unix.c (compare_file_filename): Verify that u->filename is
non-NULL before strcmp.
(find_file0): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225788
138bc75d-0d04-0410-961f-
82ee72b054a4
sandra [Tue, 14 Jul 2015 19:19:35 +0000 (19:19 +0000)]
2015-07-14 Sandra Loosemore <sandra@codesourcery.com>
gcc/
* config/nios2/nios2.c (TEMP_REG_NUM): Move define up in file.
(nios2_emit_stack_limit_check): Add size parameter. Handle
-fstack-limit-symbol as well as -fstack-limit-register.
(nios2_expand_prologue): Emit only a single stack limit check,
even if multiple stack adjustments are required.
(nios2_option_override): Diagnose unsupported combination of -fpic
and -stack-limit-symbol.
gcc/testsuite/
* gcc.target/nios2/nios2-stack-check-1.c: Adjust patterns.
* gcc.target/nios2/nios2-stack-check-2.c: Likewise.
* gcc.target/nios2/nios2-stack-check-3.c: New test case.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225787
138bc75d-0d04-0410-961f-
82ee72b054a4
iverbin [Tue, 14 Jul 2015 18:54:35 +0000 (18:54 +0000)]
2015-07-14 Maxim Blumenthal <maxim.blumenthal@intel.com>
libgomp/
* testsuite/libgomp.c/examples-4/simd-3.c: (main): Change type of res
and ref from int to double. Replaced their comparison with
an inequality of their difference and EPS.
* testsuite/libgomp.c/examples-4/simd-8.c: (main): Replace the
comparison of pri and a reference number with an inequality of their
difference and EPS.
* testsuite/libgomp.fortran/examples-4/simd-3.f90: (main): Replaced
the comparison of sum and sum_ref with an inequality of their
difference and EPS.
* testsuite/libgomp.fortran/examples-4/simd-8.f90: (main): Replace
the comparison of pri and a reference number with an inequality of
their difference and EPS.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225786
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Tue, 14 Jul 2015 17:35:38 +0000 (17:35 +0000)]
* call.c (build_new_method_call_1): Call reshape_init.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225784
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Tue, 14 Jul 2015 16:20:47 +0000 (16:20 +0000)]
/cp
2015-07-14 Paolo Carlini <paolo.carlini@oracle.com>
* pt.c (check_template_shadow): Emit error + inform instead of
two errors.
/testsuite
2015-07-14 Paolo Carlini <paolo.carlini@oracle.com>
* g++.dg/template/crash81.C: Adjust for error + inform change.
* g++.dg/template/pr58878.C: Likewise.
* g++.dg/template/shadow1.C: Likewise.
* g++.dg/template/shadow2.C: Likewise.
* g++.old-deja/g++.benjamin/tem03.C: Likewise.
* g++.old-deja/g++.benjamin/tem04.C: Likewise.
* g++.old-deja/g++.brendan/crash7.C: Likewise.
* g++.old-deja/g++.pt/shadow2.C: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225783
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Tue, 14 Jul 2015 16:14:40 +0000 (16:14 +0000)]
Remove trailing spaces in demangle.h
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225782
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Tue, 14 Jul 2015 16:08:59 +0000 (16:08 +0000)]
Update copyright year in include
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225781
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Tue, 14 Jul 2015 15:36:51 +0000 (15:36 +0000)]
2015-07-14 John Marino <gnugcc@marino.st>
* configure.tgt: Add *-*-dragonfly to supported targets.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225779
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Tue, 14 Jul 2015 15:32:05 +0000 (15:32 +0000)]
Sync toplevel configure with binutils-gdb
Sync with binutils-gdb:
2015-03-17 H.J. Lu <hongjiu.lu@intel.com>
* configure.ac (target_configdirs): Exclude target-zlib if
target-libjava isn't built.
* configure: Regenerated.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225778
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Tue, 14 Jul 2015 15:22:24 +0000 (15:22 +0000)]
Sync toplevel configure with binutils-gdb
Sync with binutils-gdb:
2015-05-13 John David Anglin <dave.anglin@bell.net>
* configure.ac: Disable configuration of GDB for HPUX targets.
* configure: Regenerate.
2015-04-01 H.J. Lu <hongjiu.lu@intel.com>
* configure.ac: Add --with-system-zlib.
* configure: Regenerated.
2015-01-28 James Bowman <james.bowman@ftdichip.com>
* configure.ac: Add FT32 support.
* configure: Regenerate.
2015-01-12 Anthony Green <green@moxielogic.com>
* configure.ac: Don't disable gprof for moxie.
* configure: Rebuild.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225777
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Tue, 14 Jul 2015 15:03:11 +0000 (15:03 +0000)]
Sync toplevel files binutils-gdb
Sync with binutils-gdb:
2015-05-01 H.J. Lu <hongjiu.lu@intel.com>
PR ld/18355
* Makefile.def: Add extra_configure_flags to host zlib.
* configure.ac (extra_host_zlib_configure_flags): New. Set
to --enable-host-shared When bfd is to be built as shared
library. AC_SUBST.
* Makefile.in: Regenerated.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225776
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Tue, 14 Jul 2015 14:25:35 +0000 (14:25 +0000)]
This patch syncs zlib.m4 with binutils-gdb and uses AM_ZLIB from zlib.m4
in gcc/configure.ac.
config/
* zlib.m4: Sync with binutils-gdb.
gcc/
* Makefile.in (top_srcdir): New.
* configure.ac: Use AM_ZLIB.
* configure: Regeneated.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225774
138bc75d-0d04-0410-961f-
82ee72b054a4
doko [Tue, 14 Jul 2015 13:50:01 +0000 (13:50 +0000)]
2015-07-14 Matthias Klose <doko@ubuntu.com>
PR target/66840
* config/rs6000/t-rs6000 (TM_H): Add rs6000-cpus.def.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225772
138bc75d-0d04-0410-961f-
82ee72b054a4
hp [Tue, 14 Jul 2015 12:12:43 +0000 (12:12 +0000)]
Sync with src:
2015-03-30 H.J. Lu <hongjiu.lu@intel.com>
* Makefile.def (dependencies): Add all-zlib to all-bfd.
* Makefile.in: Regenerated.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225769
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Tue, 14 Jul 2015 11:39:14 +0000 (11:39 +0000)]
2015-07-14 Richard Biener <rguenther@suse.de>
PR tree-optimization/66863
* tree-vrp.c (register_edge_assert_for_2): Properly restrict
what we record for conversion use stmt lhs inequalities.
* gcc.dg/torture/pr66863.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225768
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Tue, 14 Jul 2015 08:40:51 +0000 (08:40 +0000)]
2015-07-14 Richard Biener <rguenther@suse.de>
* genmatch.c (dt_node::gen_kids_1): Fix case label indenting.
(decision_tree::gen_gimple): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225765
138bc75d-0d04-0410-961f-
82ee72b054a4
vries [Tue, 14 Jul 2015 08:25:57 +0000 (08:25 +0000)]
Ignore -ftree-parallelize-loops={0,1} using gt
2015-07-14 Tom de Vries <tom@codesourcery.com>
* gcc.c (greater_than_spec_func): Declare forward.
(LINK_COMMAND_SPEC, GOMP_SELF_SPECS): Use gt to ignore
-ftree-parallelize-loops={0,1}.
(static_spec_functions): Add greater_than_spec_func function with name
"gt".
(greater_than_spec_func): New function.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225764
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Tue, 14 Jul 2015 07:27:04 +0000 (07:27 +0000)]
2015-07-14 Richard Biener <rguenther@suse.de>
* tree-ssa-dom.c (record_temporary_equivalences): Merge
wideing type conversion case from record_equivalences_from_incoming_edge
and use record_equality to record equivalences.
(record_equivalences_from_incoming_edge): Call
record_temporary_equivalences.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225761
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Tue, 14 Jul 2015 07:25:55 +0000 (07:25 +0000)]
2015-07-14 Richard Biener <rguenther@suse.de>
* genmatch.c (struct operand): Add OP_IF and OP_WITH op_types.
(struct if_expr): New.
(struct with_expr): Likewise.
(is_a_helper): Add helpers for if_expr and with_expr.
(struct simplify): Add simplify_kind enum and member. Remove
ifexpr_vec member.
(simplify::simplify): Adjust.
(lower_commutative): Adjust.
(lower_opt_convert): Likewise.
(lower_cond): Likewise.
(replace_id): Handle with_expr and if_expr.
(lower_for): Adjust.
(dt_simplify::gen_1): New recursive worker, split out from ...
(dt_simplify::gen): ... here. Deal with if and with expansion
recursively.
(capture_info::capture_info): Take context argument
(capture_info::walk_result): Only analyze specific result.
(parser::parse_result): New function.
(parser::parse_simplify): Adjust to parse ifs with then end
else case.
(parser::parse_if): Simplify.
(parser::parse_pattern): Pass down simplify kind.
* match.pd: Convert if structure to new syntax.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225760
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Tue, 14 Jul 2015 01:22:25 +0000 (01:22 +0000)]
compiler,runtime: Determine if allocations need new pointers in runtime.
As the removed comment states, if the package being compiled played
certain tricks with pointers that looked like integers, the compiler
might allocate space for new pointers unnecessarily. Since the type
information on the heap is now precise, this logic can be moved to the
runtime.
Reviewed-on: https://go-review.googlesource.com/11581
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225757
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Tue, 14 Jul 2015 00:52:25 +0000 (00:52 +0000)]
compiler: Improve location info for function parameters.
Previously, errors reported for function parameters would point to the
beginning of the function declaration instead of to the column for the
given parameter.
Reviewed-on: https://go-review.googlesource.com/11580
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225756
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Tue, 14 Jul 2015 00:16:11 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225755
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Tue, 14 Jul 2015 00:09:23 +0000 (00:09 +0000)]
Update to patch that Aldy committed directly here.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225752
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Tue, 14 Jul 2015 00:02:19 +0000 (00:02 +0000)]
escape: Analyze multiple result type assertions.
For multi-result type assertions, the object being converted is hidden
behind unsafe conversions and calls to runtime methods. This change
allows the analysis to make edges between the result of the assertion
and the object being asserted.
Reviewed-on: https://go-review.googlesource.com/10661
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225751
138bc75d-0d04-0410-961f-
82ee72b054a4
ppalka [Mon, 13 Jul 2015 20:35:53 +0000 (20:35 +0000)]
Fix PR c++/65186
gcc/cp/ChangeLog:
PR c++/65186
* pt.c (invalid_nontype_parm_type_p): Accept a bound template
template parm type under C++11 and later.
gcc/testsuite/ChangeLog:
PR c++/65186
* g++.dg/template/pr65186.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225749
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Mon, 13 Jul 2015 20:07:48 +0000 (20:07 +0000)]
PR libstdc++/66855
* src/c++11/codecvt.cc (__codecvt_utf8_utf16_base::do_in): Override
endianness bit in mode.
* testsuite/22_locale/codecvt/codecvt_utf8_utf16/66855.cc: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225748
138bc75d-0d04-0410-961f-
82ee72b054a4
mpolacek [Mon, 13 Jul 2015 19:41:01 +0000 (19:41 +0000)]
* rtl.c (rtx_equal_p_cb): Fix typo.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225747
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Mon, 13 Jul 2015 18:55:15 +0000 (18:55 +0000)]
syscall: remove calls to Entersyscall & Exitsyscall in Getdents
The syscall for Getdents in syscall/libcall_linux.go
called Entersyscall and Exitsyscall, causing the
runtime_sched counts for goroutines to be incorrect.
Inconsistent counts caused checkdead in runtime/proc.c
to panic.
Fixes golang/go#11406
Reviewed-on: https://go-review.googlesource.com/11761
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225745
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Mon, 13 Jul 2015 17:15:48 +0000 (17:15 +0000)]
* include/bits/c++config (_GLIBCXX_NOEXCEPT_IF): Define.
* include/bits/forward_list.h (forward_list::swap): Make noexcept
unconditional.
* include/bits/hashtable.h (_Hashtable::swap): Do not use
_S_nothrow_swap().
* include/bits/stl_bvector.h (vector<bool>::swap): Make noexcept
unconditional.
* include/bits/stl_deque.h (deque::swap): Likewise.
(swap(deque&, deque&)): Use _GLIBCXX_NOEXCEPT_IF.
* include/bits/stl_list.h (list::swap): Make noexcept unconditional.
(swap(list&, list&)): Use _GLIBCXX_NOEXCEPT_IF.
* include/bits/stl_map.h (map::swap, swap(map&, map&)): Use
_GLIBCXX_NOEXCEPT_IF, do not depend on _S_nothrow_swap.
* include/bits/stl_multimap.h (multimap::swap,
swap(multimap&, multimap&)): Likewise.
* include/bits/stl_multiset.h (multiset::swap,
swap(multiset&, multiset&)): Likewise.
* include/bits/stl_set.h (set::swap, swap(set&, set&)): Likewise.
* include/bits/stl_tree.h (_Rb_tree::swap,
swap(_Rb_tree&, _Rb_tree&)): Likewise.
* include/bits/stl_vector.h (vector::swap): Make noexcept
unconditional.
(swap(vector&, vector&)): Use _GLIBCXX_NOEXCEPT_IF.
* include/debug/deque (deque::swap, swap): Likewise.
* include/debug/forward_list (swap): Add noexcept.
* include/debug/list (list::swap, swap): Use _GLIBCXX_NOEXCEPT_IF.
* include/debug/map.h (map::swap, swap): Likewise.
* include/debug/multimap.h (multimap::swap, swap): Likewise.
* include/debug/multiset.h (multiset::Swap, swap): Likewise.
* include/debug/set.h (set::swap, swap): Likewise.
* include/debug/unordered_map (unordered_map::swap,
unordered_multimap::swap, swap): Likewise.
* include/debug/unordered_set (unordered_set::swap,
unordered_multiset::swap, swap): Likewise.
* include/debug/vector (vector::swap, swap): Likewise.
* include/ext/alloc_traits.h (__alloc_traits::_S_nothrow_swap()):
Remove.
* include/profile/deque (deque::swap, swap): Use _GLIBCXX_NOEXCEPT_IF.
* include/profile/forward_list (swap): Add noexcept.
* include/profile/list (list::swap, swap) : Use _GLIBCXX_NOEXCEPT_IF.
* include/profile/map.h (map::swap, swap): Likewise.
* include/profile/multimap.h (multimap::swap, swap): Likewise.
* include/profile/multiset.h (multiset::swap, swap): Likewise.
* include/profile/set.h (set::swap, swap): Likewise.
* include/profile/unordered_map (swap): Likewise.
* include/profile/unordered_set (swap): Likewise.
* include/profile/vector (vector::swap, swap): Likewise. Remove
overloads for swapping rvalues.
* testsuite/23_containers/deque/allocator/noexcept.cc: Update tests
for noexcept on swap.
* testsuite/23_containers/forward_list/allocator/noexcept.cc:
Likewise.
* testsuite/23_containers/list/allocator/noexcept.cc: Likewise.
* testsuite/23_containers/map/allocator/noexcept.cc: Likewise.
* testsuite/23_containers/multimap/allocator/noexcept.cc: Likewise.
* testsuite/23_containers/multiset/allocator/noexcept.cc: Likewise.
* testsuite/23_containers/set/allocator/noexcept.cc: Likewise.
* testsuite/23_containers/unordered_map/allocator/noexcept.cc:
Likewise.
* testsuite/23_containers/unordered_multimap/allocator/noexcept.cc:
Likewise.
* testsuite/23_containers/unordered_multiset/allocator/noexcept.cc:
Likewise.
* testsuite/23_containers/unordered_set/allocator/noexcept.cc:
Likewise.
* testsuite/23_containers/vector/allocator/noexcept.cc: Likewise.
* testsuite/23_containers/vector/bool/allocator/noexcept.cc: Likewise.
* testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error line
number.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225744
138bc75d-0d04-0410-961f-
82ee72b054a4