gcc.git
10 months agoMerge branch 'master' into gsoc-2012-regex bkoz/gsoc-regex
Benjamin Kosnik [Wed, 29 May 2013 22:22:59 +0000]
Merge branch 'master' into gsoc-2012-regex

10 months ago * cgraph.h (symtab_node_base): Add definition, alias and analyzed
hubicka [Wed, 29 May 2013 20:42:50 +0000]
* cgraph.h (symtab_node_base): Add definition, alias and analyzed
flags; reorder rest of fields in more consistent way.
(varpool_node): Remove analyzed, finalized and alias.
(cgraph_ndoe): Likewise.
(symtab_alias_ultimate_target): New function.
(cgraph_function_node): Move offline.
(cgraph_reset_node): Declare.
(cgraph_comdat_can_be_unshared_p): Remove.
(varpool_remove_initializer): Declare.
(varpool_first_defined_variable, varpool_next_defined_variable
cgraph_first_defined_function, cgraph_next_defined_function): Update.
(cgraph_function_with_gimple_body_p): Update.
(varpool_all_refs_explicit_p): Update.
(symtab_alias_target): New function.
(cgraph_alias_aliased_node, varpool_alias_aliased_node): Rename to ...
(cgraph_alias_target, varpool_alias_target): .. this one; simplify.
(cgraph_function_or_thunk_node): Simplify using symtab_alias_ultimate_target.
(varpool_variable_node): Likewise.
* cgraph.c (cgraph_create_function_alias): Update.
(cgraph_add_thunk): Update.
(cgraph_remove_node): Update.
(dump_cgraph_node): Do not dump removed flags.
(cgraph_function_body_availability): Update.
(cgraph_propagate_frequency): Update.
(verify_cgraph_node): Check sanity of local flag.
(cgraph_function_node): Move here from cgraph.h; revamp for
cgraph_function_or_thunk_node.
* lto-symtab.c (lto_varpool_replace_node): Update.
(lto_symtab_resolve_can_prevail_p): Update.
(lto_symtab_merge_cgraph_nodes): Update.
* ipa-cp.c (determine_versionability, initialize_node_lattices,
propagate_constants_accross_call, devirtualization_time_bonus,
ipcp_propagate_stage): Update.
* tree-emutls.c (create_emultls_var, ipa_lower_emutls): Update.
* ipa-inline-transform.c (clone_inlined_nodes, preserve_function_body_p): Update.
* ipa-reference.c (propagate): Update.
(write_node_summary_p): Update.
* toplev.c (wrapup_global_declaration_2): Update.
* cgraphunit.c (cgraph_analyze_function): Rename to ...
(analyze_function) ... this one.
(cgraph_process_new_functions): Update.
(cgraph_reset_node): Export.
(cgraph_finalize_function): Update.
(cgraph_add_new_function): Update.
(process_function_and_variable_attributes): Update.
(varpool_finalize_decl): Update.
(symbol_finalized): Remove.
(symbol_finalized_and_needed): Rename to ...
(symbol_defined_and_needed): ... update.
(cgraph_analyze_functions): Update.
(handle_alias_pairs): Update.
(mark_functions_to_output): Update.
(assemble_thunk): Update.
(output_in_order): Update.
(output_weakrefs): Update.
(finalize_compilation_unit): Update.
* lto-cgraph.c (reachable_from_other_partition_p, lto_output_node,
lto_output_varpool_node, compute_ltrans_boundary, input_overwrite_node,
input_node, input_varpool_node): Update.
* dbxout.c (dbxout_expand_expr): Update.
* cgraphclones.c (cgraph_clone_node): Update.
(cgraph_copy_node_for_versioning): Update.
(cgraph_materialize_clone): Update.
(cgraph_materialize_all_clones): Update.
* ipa-pure-const.c (analyze_function, pure_const_write_summary,
propagate_pure_const, propagate_nothrow): Update.
* lto-streamer-out.c (lto_output, write_symbol): Update.
* ipa-utils.c (ipa_reverse_postorder): Update.
* ipa-inline.c (can_inline_edge_p): Update.
(update_caller_keys, ipa_inline): Update.
* dwarf2out.c (reference_to_unused,
premark_types_used_by_global_vars_helper): Update.
* tree-eh.c (tree_could_trap_p): Update.
* ipa-split.c (consider_split, execute_split_functions): Update.
* ipa.c (cgraph_non_local_node_p_1, cgraph_local_node_p,
 has_addr_references_p): Update;
move ahead in file for better readability.
(process_references): Simplify.
(symtab_remove_unreachable_nodes): Update; cleanup way function/var
bodies are removed.
(cgraph_comdat_can_be_unshared_p): Make static.
(cgraph_externally_visible_p): Update.
(varpool_externally_visible_p): Update.
(function_and_variable_visibility): Update.
* trans-mem.c (get_cg_data, ipa_tm_mayenterirr_function,
ipa_tm_mark_force_output_node): Update.
* ipa-inline-analysis.c (dump_inline_summary, initialize_inline_failed,
estimate_edge_devirt_benefit, inline_generate_summary,
inline_write_summary): Update.
* gimple-fold.c (can_refer_decl_in_current_unit_p): Update.
* ipa-prop.c (ipa_compute_jump_functions): Update.
(ipa_print_node_params, ipa_prop_read_section, ipa_update_after_lto_read,
read_replacements_section): Update.
* varasm.c (mark_decl_referenced): Update.
(assemble_alias, dump_tm_clone_pairs): Update.
* tree-inline.c (copy_bb): Update.
(estimate_num_insns, optimize_inline_calls, tree_function_versioning):
Update.
* symtab.c (dump_symtab_base): Print new flags.
(verify_symtab_base): Verify new flags.
(symtab_alias_ultimate_target): New function.
* tree-ssa-structalias.c (get_constraint_for_ssa_var,
create_variable_info_for, associate_varinfo_to_alias, ipa_pta_execute):
Update.
* passes.c (ipa_write_summaries, ipa_write_optimization_summaries): Update.
* i386.c (ix86_get_function_versions_dispatcher,
ix86_generate_version_dispatcher_body): Update.
(fold_builtin_cpu): Use varpool_add_new_variable.
* varpool.c (varpool_remove_initializer): Break out from ...
(varpool_remove_node): ... this one.
(dump_varpool_node, varpool_node_for_asm,
cgraph_variable_initializer_availability, varpool_analyze_node,
varpool_assemble_decl, varpool_remove_unreferenced_decls,
varpool_finalize_named_section_flags, varpool_create_variable_alias): Update

* decl.c (java_mark_decl_local): Update for new symtab flags.

* tree.c (cp_fix_function_decl_p): Update for new symtab flags.
* decl2.c )var_finalized_p, cp_write_global_declarations): Likewise.

* lto.c (has_analyzed_clone_p, lto_materialize_function): Update for new symtab
flags.
* lto-partition.c (get_symbol_class, lto_balanced_map): Likewise.

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

10 months ago * passes.c (init_optimization_passes): Move OMP expansion into lowering.
hubicka [Wed, 29 May 2013 17:59:19 +0000]
* passes.c (init_optimization_passes): Move OMP expansion into lowering.

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

10 months ago2013-05-29 Easwaran Raman <eraman@google.com>
eraman [Wed, 29 May 2013 17:30:43 +0000]
2013-05-29  Easwaran Raman  <eraman@google.com>

PR tree-optimization/57442
* tree-ssa-reassoc.c (appears_later_in_bb): Return correct value
when control exits the main loop.

2013-05-29  Easwaran Raman  <eraman@google.com>

PR tree-optimization/57442
* gcc.dg/tree-ssa/reassoc-30.c: New testcase.

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

10 months ago * rx/rx.h (TARGET_CPU_CPP_BUILTINS): Add macros for RX100, RX200,
nickc [Wed, 29 May 2013 16:29:15 +0000]
* rx/rx.h (TARGET_CPU_CPP_BUILTINS): Add macros for RX100, RX200,
and RX600.
* rx/rx.opt: Add macro for rx100 with string rx100 and value
RX100.
* rx/rx-opts.h (rx_cpu_types): Add new cpu type rx100.
* rx/t-rx: Add rx100 under multi library matches option for nofpu
option.

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

10 months ago2013-05-29 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
wschmidt [Wed, 29 May 2013 16:00:54 +0000]
2013-05-29  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

PR tree-optimization/57441
* gimple-ssa-strength-reduction.c (analyze_candidates_and_replace):
Don't limit size of incr_vec to number of candidates.

2013-05-29  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

PR tree-optimization/57441
* gcc.c-torture/compile/pr57441.c: New.

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

10 months ago2013-05-29 Dehao Chen <dehao@google.com>
dehao [Wed, 29 May 2013 15:47:28 +0000]
2013-05-29  Dehao Chen  <dehao@google.com>

PR testsuite/57413
* gcc.dg/debug/dwarf2/discriminator.c: Restrict the test to linux-gnu.

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

10 months ago2013-05-29 Steve Ellcey <sellcey@imgtec.com>
sje [Wed, 29 May 2013 15:16:30 +0000]
2013-05-29  Steve Ellcey  <sellcey@imgtec.com>

* config/mips/mti-linux.h (SYSROOT_SUFFIX_SPEC): Add micromips
and mips16 directories.
* config/mips/t-mti-linux (MULTILIB_OPTIONS): Add micromips and
mips16.
(MULTILIB_DIRNAMES): Ditto.
(MULTILIB_EXCEPTIONS): Add new exceptions.
* config/mips/t-mti-elf (MULTILIB_OPTIONS): Add micromips.
(MULTILIB_DIRNAMES): Ditto.
(MULTILIB_EXCEPTIONS): Add new exceptions.

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

10 months agoFix c/c-array-notation.c compilation failure (PR bootstrap/57450)
ro [Wed, 29 May 2013 15:00:29 +0000]
Fix c/c-array-notation.c compilation failure (PR bootstrap/57450)

PR bootstrap/57450
* c-array-notation.c (length_mismatch_in_expr_p): Use absu_hwi.
(build_array_notation_expr): Likewise.

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

10 months ago2013-05-28 Tobias Burnus <burnus@net-b.de>
burnus [Wed, 29 May 2013 13:15:16 +0000]
2013-05-28  Tobias Burnus  <burnus@net-b.de>

        PR fortran/37336
        * class.c (finalize_component): Fix coarray array refs.
        (generate_finalization_wrapper): Only gfc_convert_type_warn
        when the kind value is different.
        (gfc_find_intrinsic_vtab): _copy's dst is now intent(inout).
        (gfc_find_derived_vtab): Ditto. Enable finalization-wrapper
        generation.
        * module.c (MOD_VERSION): Bump.
        (gfc_dump_module, gfc_use_module): Remove empty line in .mod.
        * trans-array.c (gfc_conv_descriptor_token): Accept
        * nonrestricted
        void pointer.
        (gfc_array_allocate, structure_alloc_comps): Don't nullify for
        BT_CLASS allocations.
        * trans-stmt.c (gfc_trans_allocate): Ditto.

2013-05-28  Tobias Burnus  <burnus@net-b.de>

        PR fortran/37336
        * gfortran.dg/auto_dealloc_2.f90: Update _free count in the
        * dump.
        * gfortran.dg/class_19.f03: Ditto.

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

10 months ago[AArch64] Implement support for --mcmodel=tiny
mshawcroft [Wed, 29 May 2013 13:08:16 +0000]
[AArch64] Implement support for --mcmodel=tiny

This patch adds support for the tiny absolute memory model.

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

10 months ago[AArch64] Re-organize aarch64_classify_symbol.
mshawcroft [Wed, 29 May 2013 12:57:33 +0000]
[AArch64] Re-organize aarch64_classify_symbol.

This patch re-orgnaizes the implementation of aarch64_classify_symbol
in preparation for tiny absolute memory model support.

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

10 months agoEnable FP Reassociation for AMD bdver1 and bdver2 architecture
gganesh [Wed, 29 May 2013 11:09:55 +0000]
Enable FP Reassociation for AMD bdver1 and bdver2 architecture

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

10 months ago2013-05-29 Martin Jambor <mjambor@suse.cz>
jamborm [Wed, 29 May 2013 10:32:22 +0000]
2013-05-29  Martin Jambor  <mjambor@suse.cz>

* tree-cfg.c (verify_expr): Verify that BIT_FIELD_REF, REALPART_EXPR
and IMAGPART_EXPR do not occur within other handled_components.

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

10 months ago2013-05-29 Richard Biener <rguenther@suse.de>
rguenth [Wed, 29 May 2013 08:44:23 +0000]
2013-05-29  Richard Biener  <rguenther@suse.de>

* tree-vect-slp.c (vect_bb_slp_scalar_cost): Guard vinfo
access on whether the use is in the BB we currently try to
vectorize.
(vect_bb_vectorization_profitable_p): Pass the BB we currently
vectorize to vect_bb_slp_scalar_cost.

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

10 months ago2013-05-29 Richard Biener <rguenther@suse.de>
rguenth [Wed, 29 May 2013 08:21:17 +0000]
2013-05-29  Richard Biener  <rguenther@suse.de>

* tree-vect-slp.c (vect_bb_slp_scalar_cost): New function
computing scalar cost offsetted by stmts that are kept live
by scalar uses.
(vect_bb_vectorization_profitable_p): Use vect_bb_slp_scalar_cost
for computation of scalar cost.

* gcc.dg/vect/bb-slp-32.c: New testcase.

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

10 months agoDaily bump.
gccadmin [Wed, 29 May 2013 00:16:30 +0000]
Daily bump.

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

10 months agoUpdate the ChangeLog to fix the typo.
dehao [Tue, 28 May 2013 22:46:56 +0000]
Update the ChangeLog to fix the typo.

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

10 months ago2013-05-28 Steve Ellcey <sellcey@mips.com>
sje [Tue, 28 May 2013 22:41:38 +0000]
2013-05-28  Steve Ellcey  <sellcey@mips.com>

* config/mips/mips-cpus.def (mips32r2): Change processor type.

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

10 months ago * src/c++11/compatibility-chrono.cc (steady_clock::now()): If
redi [Tue, 28 May 2013 21:14:21 +0000]
* src/c++11/compatibility-chrono.cc (steady_clock::now()): If
!_GLIBCXX_USE_GETTIMEOFDAY perform conversion inline instead of
calling non-existent from_time_t.

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

10 months agoImplemented Cilk Plus Array Notation for C Compiler.
bviyer [Tue, 28 May 2013 19:55:10 +0000]
Implemented Cilk Plus Array Notation for C Compiler.
gcc/ChangeLog
2013-05-28  Balaji V. Iyer  <balaji.v.iyer@intel.com>

* doc/extend.texi (C Extensions): Added documentation about Cilk
Plus
array notation built-in reduction functions.
* doc/passes.texi (Passes): Added documentation about changes done
for Cilk Plus.
* doc/invoke.texi (C Dialect Options): Added documentation about
the -fcilkplus flag.
* Makefile.in (C_COMMON_OBJS): Added
c-family/array-notation-common.o.
(BUILTINS_DEF): Depend on cilkplus.def.
* builtins.def: Include cilkplus.def.  Define
DEF_CILKPLUS_BUILTIN.
* builtin-types.def: Define BT_FN_INT_PTR_PTR_PTR.
* cilkplus.def: New file.

gcc/c-family/ChangeLog
2013-05-28  Balaji V. Iyer  <balaji.v.iyer@intel.com>

* c-common.c (c_define_builtins): When cilkplus is enabled, the
function array_notation_init_builtins is called.
(c_common_init_ts): Added ARRAY_NOTATION_REF as typed.
* c-common.def (ARRAY_NOTATION_REF): New tree.
* c-common.h (build_array_notation_expr): New function declaration.
(build_array_notation_ref): Likewise.
(extract_sec_implicit_index_arg): New extern declaration.
(is_sec_implicit_index_fn): Likewise.
(ARRAY_NOTATION_CHECK): New define.
(ARRAY_NOTATION_ARRAY): Likewise.
(ARRAY_NOTATION_START): Likewise.
(ARRAY_NOTATION_LENGTH): Likewise.
(ARRAY_NOTATION_STRIDE): Likewise.
* c-pretty-print.c (pp_c_postifix_expression): Added a new case for
ARRAY_NOTATION_REF.
(pp_c_expression): Likewise.
* c.opt (flag_enable_cilkplus): New flag.
* array-notation-common.c: New file.

gcc/c/ChangeLog
2013-05-28  Balaji V. Iyer  <balaji.v.iyer@intel.com>

* c-typeck.c (build_array_ref): Added a check to see if array's
index is greater than one.  If true, then emit an error.
(build_function_call_vec): Exclude error reporting and checking
for builtin array-notation functions.
(convert_arguments): Likewise.
(c_finish_return): Added a check for array notations as a return
expression.  If true, then emit an error.
(c_finish_loop): Added a check for array notations in a loop
condition.  If true then emit an error.
(lvalue_p): Added a ARRAY_NOTATION_REF case.
(build_binary_op): Added a check for array notation expr inside
op1 and op0.  If present, we call another function to find correct
type.
* Make-lang.in (C_AND_OBJC_OBJS): Added c-array-notation.o.
* c-parser.c (c_parser_compound_statement): Check if array
notation code is used in tree, if so, then transform them into
appropriate C code.
(c_parser_expr_no_commas): Check if array notation is used in LHS
or RHS, if so, then build array notation expression instead of
regular modify.
(c_parser_postfix_expression_after_primary): Added a check for
colon(s) after square braces, if so then handle it like an array
notation.  Also, break up array notations in unary op if found.
(c_parser_direct_declarator_inner): Added a check for array
notation.
(c_parser_compound_statement): Added a check for array notation in
a stmt.  If one is present, then expand array notation expr.
(c_parser_if_statement): Likewise.
(c_parser_switch_statement): Added a check for array notations in
a switch statement's condition.  If true, then output an error.
(c_parser_while_statement): Similarly, but for a while.
(c_parser_do_statement): Similarly, but for a do-while.
(c_parser_for_statement): Similarly, but for a for-loop.
(c_parser_unary_expression): Check if array notation is used in a
pre-increment or pre-decrement expression.  If true, then expand
them.
(c_parser_array_notation): New function.
* c-array-notation.c: New file.
* c-tree.h (is_cilkplus_reduce_builtin): Protoize.

gcc/testsuite/ChangeLog
2013-05-28  Balaji V. Iyer  <balaji.v.iyer@intel.com>

* c-c++-common/cilk-plus/AN/array_test1.c: New test.
* c-c++-common/cilk-plus/AN/array_test2.c: Likewise.
* c-c++-common/cilk-plus/AN/array_test_ND.c: Likewise.
* c-c++-common/cilk-plus/AN/builtin_func_double.c: Likewise.
* c-c++-common/cilk-plus/AN/builtin_func_double2.c: Likewise.
* c-c++-common/cilk-plus/AN/gather-scatter-errors.c: Likewise.
* c-c++-common/cilk-plus/AN/if_test.c: Likewise.
* c-c++-common/cilk-plus/AN/sec_implicit_ex.c: Likewise.
* c-c++-common/cilk-plus/AN/decl-ptr-colon.c: Likewise.
* c-c++-common/cilk-plus/AN/dimensionless-arrays.c: Likewise.
* c-c++-common/cilk-plus/AN/fn_ptr.c: Likewise.
* c-c++-common/cilk-plus/AN/fp_triplet_values.c: Likewise.
* c-c++-common/cilk-plus/AN/gather-scatter.c: Likewise.
* c-c++-common/cilk-plus/AN/misc.c: Likewise.
* c-c++-common/cilk-plus/AN/parser_errors.c: Likewise.
* c-c++-common/cilk-plus/AN/parser_errors2.c: Likewise.
* c-c++-common/cilk-plus/AN/parser_errors3.c: Likewise.
* c-c++-common/cilk-plus/AN/parser_errors4.c: Likewise.
* c-c++-common/cilk-plus/AN/rank_mismatch.c: Likewise.
* c-c++-common/cilk-plus/AN/rank_mismatch2.c: Likewise.
* c-c++-common/cilk-plus/AN/rank_mismatch3.c: Likewise.
* c-c++-common/cilk-plus/AN/sec_implicit.c: Likewise.
* c-c++-common/cilk-plus/AN/sec_implicit2.c: Likewise.
* c-c++-common/cilk-plus/AN/sec_reduce_max_min_ind.c: Likewise.
* c-c++-common/cilk-plus/AN/tst_lngth.c: Likewise.
* c-c++-common/cilk-plus/AN/vla.c: Likewise.
* c-c++-common/cilk-plus/AN/an-if.c: Likewise.
* c-c++-common/cilk-plus/AN/builtin_fn_custom.c: Likewise.
* c-c++-common/cilk-plus/AN/builtin_fn_mutating.c: Likewise.
* c-c++-common/cilk-plus/AN/comma_exp.c: Likewise.
* c-c++-common/cilk-plus/AN/conditional.c: Likewise.
* c-c++-common/cilk-plus/AN/exec-once.c: Likewise.
* c-c++-common/cilk-plus/AN/exec-once2.c: Likewise.
* c-c++-common/cilk-plus/AN/gather_scatter.c: Likewise.
* c-c++-common/cilk-plus/AN/n-ptr-test.c: Likewise.
* c-c++-common/cilk-plus/AN/side-effects-1.c: Likewise.
* c-c++-common/cilk-plus/AN/test_builtin_return.c: Likewise.
* c-c++-common/cilk-plus/AN/test_sec_limits.c: Likewise.
* gcc.dg/cilk-plus/cilk-plus.exp: New script.

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

10 months ago2013-05-28 Tobias Burnus <burnus@net-b.de>
burnus [Tue, 28 May 2013 18:30:03 +0000]
2013-05-28  Tobias Burnus  <burnus@net-b.de>

        PR fortran/37336
        * resolve.c (gfc_resolve_finalizers): Remove not implemented
        * error.

2013-05-28  Tobias Burnus  <burnus@net-b.de>

        PR fortran/37336
        * gfortran.dg/finalize_11.f90: New.
        * gfortran.dg/finalize_4.f03: Remove dg-error.
        * gfortran.dg/finalize_5.f03: Ditto.
        * gfortran.dg/finalize_6.f03: Ditto.
        * gfortran.dg/finalize_7.f03: Ditto.

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

10 months ago PR rtl-optimization/57439
amylaar [Tue, 28 May 2013 18:04:41 +0000]
    PR rtl-optimization/57439
        * postreload.c (move2add_use_add2_insn): Use gen_lowpart_common.

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

10 months ago2013-05-28 Easwaran Raman <eraman@google.com>
eraman [Tue, 28 May 2013 17:27:54 +0000]
2013-05-28  Easwaran Raman  <eraman@google.com>

PR tree-optimization/57337
* tree-ssa-reassoc.c (appears_later_in_bb): New function.
(find_insert_point): Correctly identify the insertion point
when two statements with the same UID is compared.

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

10 months ago2013-05-28 Tobias Burnus <burnus@net-b.de>
burnus [Tue, 28 May 2013 15:24:35 +0000]
2013-05-28  Tobias Burnus  <burnus@net-b.de>

        * trans-expr.c (gfc_conv_procedure_call): Deallocate
        polymorphic arrays for allocatable intent(out) dummies.
        (gfc_reset_vptr): New function, moved from trans-stmt.c
        and extended.
        * trans-stmt.c (reset_vptr): Remove.
        (gfc_trans_deallocate): Update calls.
        * trans.h (gfc_reset_vptr): New prototype.

2013-05-28  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/class_array_16.f90: New.

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

10 months ago2013-05-28 Dominique d'Humieres <dominiq@lps.ens.fr>
burnus [Tue, 28 May 2013 15:18:14 +0000]
2013-05-28  Dominique d'Humieres  <dominiq@lps.ens.fr>

        PR fortran/57435
        * module.c (check_for_ambiguous): Avoid null pointer deref.

2013-05-28  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57435

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

10 months ago * config/sparc/sol2-unwind.h (MD_FALLBACK_FRAME_STATE_FOR): Do not set
ebotcazou [Tue, 28 May 2013 13:52:50 +0000]
* config/sparc/sol2-unwind.h (MD_FALLBACK_FRAME_STATE_FOR): Do not set
fs->signal_frame for SIGFPE raised for IEEE-754 exceptions.
* config/i386/sol2-unwind.h (x86_fallback_frame_state): Likewise.

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

10 months ago2013-05-28 Richard Biener <rguenther@suse.de>
rguenth [Tue, 28 May 2013 13:36:25 +0000]
2013-05-28  Richard Biener  <rguenther@suse.de>

PR tree-optimization/56787
* tree-vect-data-refs.c (vect_analyze_data_refs): Drop clobbers
from the list of data references.
* tree-vect-loop.c (vect_determine_vectorization_factor): Skip
clobbers.
(vect_analyze_loop_operations): Likewise.
(vect_transform_loop): Remove clobbers.

* gcc.dg/vect/pr56787.c: New testcase.

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

10 months ago2013-05-28 Martin Jambor <mjambor@suse.cz>
jamborm [Tue, 28 May 2013 13:18:55 +0000]
2013-05-28  Martin Jambor  <mjambor@suse.cz>

* tree-cfg.c (verify_expr): Verify that BIT_FIELD_REFs, IMAGPART_EXPRs
and REALPART_EXPRs have scalar type.

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

10 months ago2013-05-28 Janus Weil <janus@gcc.gnu.org>
janus [Tue, 28 May 2013 11:21:44 +0000]
2013-05-28  Janus Weil  <janus@gcc.gnu.org>
    Tobias Burnus  <burnus@net-b.de>

PR fortran/57217
* interface.c (check_dummy_characteristics): Symmetrize type check.

2013-05-28  Janus Weil  <janus@gcc.gnu.org>
    Tobias Burnus  <burnus@net-b.de>

PR fortran/57217
* gfortran.dg/typebound_override_4.f90: New.

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

10 months ago2013-05-28 Richard Biener <rguenther@suse.de>
rguenth [Tue, 28 May 2013 10:54:33 +0000]
2013-05-28  Richard Biener  <rguenther@suse.de>

PR tree-optimization/57411
* tree-ssa-copy.c (may_propagate_copy): Cannot propagate
virtual operands.
* tree-ssa-dom.c (eliminate_const_or_copy): Special-case
virtual operand propagation.

* g++.dg/opt/pr57411.C: New testcase.

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

10 months ago * gcc.dg/builtin-bswap-8.c: Compile at -O2.
ebotcazou [Tue, 28 May 2013 10:30:18 +0000]
* gcc.dg/builtin-bswap-8.c: Compile at -O2.
* gcc.dg/builtin-bswap-9.c: Likewise.

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

10 months ago * config/sparc/sparc.c (sparc_expand_vec_perm_bmask): Use %g0 as
ebotcazou [Tue, 28 May 2013 09:56:33 +0000]
* config/sparc/sparc.c (sparc_expand_vec_perm_bmask): Use %g0 as
destination register for bmasksi_vis.
(vector_init_bshuffle): Likewise.
* config/sparc/sparc.md (vec_perm_constv8qi): Likewise.

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

10 months agoRegenerate Solaris/SPARCV9 baseline
ro [Tue, 28 May 2013 09:49:22 +0000]
Regenerate Solaris/SPARCV9 baseline

* config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt:
Regenerate.

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

10 months ago * doc/invoke.texi (SPARC Options): Document -mfix-ut699.
ebotcazou [Tue, 28 May 2013 07:26:35 +0000]
* doc/invoke.texi (SPARC Options): Document -mfix-ut699.
* builtins.c (expand_builtin_mathfn) <BUILT_IN_SQRT>: Try to widen the
mode if the instruction isn't available in the original mode.
* config/sparc/sparc.opt (mfix-ut699): New option.
* config/sparc/sparc.md (muldf3_extend): Disable if -mfix-ut699.
(divdf3): Turn into expander.
(divdf3_nofix): New insn.
(divdf3_fix): Likewise.
(divsf3): Disable if -mfix-ut699.
(sqrtdf2): Turn into expander.
(sqrtdf2_nofix): New insn.
(sqrtdf2_fix): Likewise.
(sqrtsf2): Disable if -mfix-ut699.

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

10 months agoDaily bump.
gccadmin [Tue, 28 May 2013 00:16:48 +0000]
Daily bump.

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

10 months ago2013-05-27 Richard Biener <rguenther@suse.de>
rguenth [Mon, 27 May 2013 15:02:53 +0000]
2013-05-27  Richard Biener  <rguenther@suse.de>

PR middle-end/57412
* omp-low.c (expand_omp_atomic_pipeline): Use the correct latch
block for the new loop.

* gcc.dg/gomp/pr57412.c: New testcase.

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

10 months ago2013-05-27 Bud Davis <jmdavis@link.com>
burnus [Mon, 27 May 2013 14:16:36 +0000]
2013-05-27  Bud Davis  <jmdavis@link.com>

        PR fortran/50405
        * resolve.c (resolve_formal_arglist): Detect error when an
        * argument
        has the same name as the function.

2013-05-27  Bud Davis  <jmdavis@link.com>

        PR fortran/50405
        * gfortran.dg/stfunc_8.f90: New.

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

10 months ago2013-05-27 Richard Biener <rguenther@suse.de>
rguenth [Mon, 27 May 2013 13:02:24 +0000]
2013-05-27  Richard Biener  <rguenther@suse.de>

PR tree-optimization/57343
* tree-ssa-loop-niter.c (number_of_iterations_ne_max): Do not
use multiple_of_p if not TYPE_OVERFLOW_UNDEFINED.
(number_of_iterations_cond): Do not build the folded tree.

* gcc.dg/torture/pr57343.c: New testcase.

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

10 months ago2013-05-27 Richard Biener <rguenther@suse.de>
rguenth [Mon, 27 May 2013 12:44:29 +0000]
2013-05-27  Richard Biener  <rguenther@suse.de>

Revert
PR middle-end/57381
* fold-const.c (operand_equal_p): Compare FIELD_DECLs with
OEP_CONSTANT_ADDRESS_OF retained.

PR tree-optimization/57417
* tree-ssa-sccvn.c (vn_reference_fold_indirect): Fix test
for unchanged base.
(set_ssa_val_to): Compare addresses using
get_addr_base_and_unit_offset.

* gcc.dg/torture/pr57417.c: New testcase.

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

10 months ago2013-05-27 Tobias Burnus <burnus@net-b.de>
burnus [Mon, 27 May 2013 12:32:40 +0000]
2013-05-27  Tobias Burnus  <burnus@net-b.de>

        * expr.c (gfc_build_intrinsic_call): Make symbol as
        * attr.artificial.
        * intrinsic.c (gfc_is_intrinsic): Disable std check for those.

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

10 months ago PR rtl-optimization/56833
amylaar [Mon, 27 May 2013 10:39:01 +0000]
    PR rtl-optimization/56833
        * postreload.c (move2add_record_mode): New function.
        (move2add_record_sym_value, move2add_valid_value_p): Likewise.
        (move2add_use_add2_insn): Use move2add_record_sym_value.
        (move2add_use_add3_insn): Likewise.
        (reload_cse_move2add): Use move2add_valid_value_p and
        move2add_record_mode.  Invalidate call-clobbered and REG_INC
        affected regs by setting reg_mode to VOIDmode.
        (move2add_note_store): Don't pretend the inside of a SUBREG is
        the actual destination.  Invalidate single/leading registers by
        setting reg_mode to VOIDmode.
        Use move2add_record_sym_value, move2add_valid_value_p and
        move2add_record_mode.

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

10 months ago2013-05-27 Tobias Burnus <burnus@net-b.de>
burnus [Mon, 27 May 2013 09:28:48 +0000]
2013-05-27  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57423
        * libgomp.texi (omp_set_dynamic, omp_set_nested, omp_set_nested,
        omp_set_num_threads, omp_init_lock, omp_set_lock, omp_test_lock,
        omp_unset_lock, omp_destroy_lock, omp_init_nest_lock,
        omp_set_nest_lock, omp_test_nest_lock, omp_unset_nest_lock,
        omp_destroy_nest_lock): Correct arguments to match the one in
        the OpenMP spec.
        * omp_lib.f90.in (omp_init_lock, omp_init_nest_lock,  omp_destroy_lock
        omp_destroy_nest_lock, omp_set_lock, omp_set_nest_lock, omp_unset_lock,
        omp_unset_nest_lock, omp_set_dynamic, omp_set_nested,
        omp_set_num_threads, omp_test_lock, omp_test_nest_lock): Ditto.

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

10 months ago2013-05-27 Richard Biener <rguenther@suse.de>
rguenth [Mon, 27 May 2013 07:48:37 +0000]
2013-05-27  Richard Biener  <rguenther@suse.de>

PR tree-optimization/57396
* tree-affine.c (double_int_constant_multiple_p): Properly
return false for val == 0 and div != 0.

* gfortran.fortran-torture/execute/pr57396.f90: New testcase.

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

10 months agoDaily bump.
gccadmin [Mon, 27 May 2013 00:16:45 +0000]
Daily bump.

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

10 months ago * gcc-interface/decl.c: (gnat_to_gnu_entity): In ASIS mode, do not
ebotcazou [Sun, 26 May 2013 10:23:23 +0000]
* gcc-interface/decl.c: (gnat_to_gnu_entity): In ASIS mode, do not
check that access types have a set size.

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

10 months ago * gcc-interface/decl.c (vinfo_t): New type and associated vector.
ebotcazou [Sun, 26 May 2013 10:19:00 +0000]
* gcc-interface/decl.c (vinfo_t): New type and associated vector.
(components_to_record): Change return type to bool.
Lay out the variants in two passes.  Do not force a specific layout for
the variant part if the variants do not have a representation clause.
Take the alignment of the variant part into account when laying out
variants without rep clause in a record type with a partial rep clause.
(create_rep_part): Do not set the position of the field.

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

10 months ago * gcc-interface/trans.c (Attribute_to_gnu) <Attr_Last_Bit>: Add kludge
ebotcazou [Sun, 26 May 2013 10:02:33 +0000]
* gcc-interface/trans.c (Attribute_to_gnu) <Attr_Last_Bit>: Add kludge
to avoid generating an overflow for -1.

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

10 months ago * gcc-interface/gigi.h (create_type_decl): Adjust prototype.
ebotcazou [Sun, 26 May 2013 09:52:10 +0000]
* gcc-interface/gigi.h (create_type_decl): Adjust prototype.
(create_label_decl): Complete prototype.
(process_attributes): Declare.
* gcc-interface/decl.c (gnat_to_gnu_entity): Adjust multiple calls to
create_type_decl throughout.
<E_Enumeration_Type>: Do the layout of the type manually and call
process_attributes on it.  Reindent.
<E_Enumeration_Subtype>: Minor tweak.
<E_Floating_Point_Subtype>: Reindent.
<E_Array_Subtype>: Call process_attributes on the array type built
for a packed array type.
<E_Record_Type>: Call process_attributes on the type.
<E_Record_Subtype>: Likewise.
<E_Access_Type>: Likewise.
<E_Subprogram_Type>: Likewise.
Likewise for all types at the end of the processing.
* gcc-interface/utils.c (make_aligning_type): Adjust call to
create_type_decl.
(maybe_pad_type): Likewise.
(create_index_type): Likewise.
(create_type_decl): Remove attr_list parameter and associated code.
(create_var_decl_1): Call process_attributes on the variable.
(process_attributes): Take a pointer to the object and add in_place
and gnat_node parameters and adjust throughout.
<ATTR_MACHINE_ATTRIBUTE>: Pass ATTR_FLAG_TYPE_IN_PLACE only on demand
and set the input location.
Zap the attribute list at the end.
(create_subprog_decl): Call process_attributes on the subprogram.
(build_unc_object_type): Adjust call to create_type_decl.
(handle_vector_type_attribute): Remove dead code.

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

10 months ago * gcc-interface/gigi.h (make_aligning_type): Adjust prototype.
ebotcazou [Sun, 26 May 2013 08:55:43 +0000]
* gcc-interface/gigi.h (make_aligning_type): Adjust prototype.
* gcc-interface/utils.c (make_aligning_type): Take GNAT_NODE parameter
for the position of the associated TYPE_DECL.
* gcc-interface/decl.c (gnat_to_gnu_entity): Adjust call to above.
* gcc-interface/utils2.c (maybe_wrap_malloc): Likewise.

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

10 months ago * gcc-interface/decl.c (gnat_to_gnu_entity): Do not prematurely
ebotcazou [Sun, 26 May 2013 08:48:22 +0000]
* gcc-interface/decl.c (gnat_to_gnu_entity): Do not prematurely
elaborate the full view of a type with a freeze node.
* gcc-interface/trans.c (process_type): Add explicit predicate.

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

10 months ago * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Always build the
ebotcazou [Sun, 26 May 2013 08:32:34 +0000]
* gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Always build the
UNC variable for aliased objects with unconstrained nominal subtype.

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

10 months agoDaily bump.
gccadmin [Sun, 26 May 2013 00:16:44 +0000]
Daily bump.

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

10 months ago2013-05-24 Benjamin Kosnik <bkoz@redhat.com>
bkoz [Sat, 25 May 2013 23:02:54 +0000]
2013-05-24  Benjamin Kosnik  <bkoz@redhat.com>

* include/std/chrono: Wrap clocks in inline namespace _V2.
* src/c++11/chrono.cc: Same.
* src/c++11/compatibility-chrono.cc: Revert to previous chrono.cc
file, with default configure macros selected.

* config/abi/pre/gnu.ver (GLIBCXX_3.4.19): Use symbols from inline
namespace.
* config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Fix up.

* config/abi/post/i386-linux-gnu/baseline_symbols.txt: Regenerated.
* config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Regenerated.
* config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt:
Regenerated.
* config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
Regenerated.
* config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Regenerated.
* config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt:
Regenerated.
* config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Regenerated.
* config/abi/post/s390-linux-gnu/baseline_symbols.txt: Regenerated.
* config/abi/post/i486-linux-gnu/baseline_symbols.txt: Regenerated.
* config/abi/post/solaris2.10/baseline_symbols.txt: Regenerated.
* config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Regenerated.
* config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt:
Regenerated.
* config/abi/post/solaris2.9/baseline_symbols.txt: Regenerated.
* config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Regenerated.

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

10 months agogcc/
rsandifo [Sat, 25 May 2013 16:04:11 +0000]
gcc/
* config/mips/mips.h: Use #elif in preprocessor conditions.

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

10 months agogcc/
rsandifo [Sat, 25 May 2013 16:00:12 +0000]
gcc/
PR target/53916
* config/mips/constraints.md (kl): New constraint.
* config/mips/mips.md (divmod<mode>4, udivmod<mode>4): Delete.
(divmod<mode>4_internal): Rename to divmod<mode>4.  Use "kl" as the
constraint for operand 0.  Split after CSE for MIPS16.  Emit a move
from LO for MIPS16.
(udivmod<mode>4_internal): Likewise udivmod<mode>4.

gcc/testsuite/
PR target/53916
* gcc.target/mips/div-13.c: New test.

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

10 months agogcc/
rsandifo [Sat, 25 May 2013 15:52:38 +0000]
gcc/
PR target/55777
* config/mips/mips.c (mips_can_inline_p): New function.
(TARGET_CAN_INLINE_P): Define.

gcc/testsuite/
PR target/55777
* gcc.target/mips/mips16-attributes-5.c,
* gcc.target/mips/mips16-attributes-6.c: New tests.

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

10 months ago * gcc.dg/builtin-bswap-6.c: Use same options as optimize-bswapsi-1.c.
ebotcazou [Sat, 25 May 2013 13:49:27 +0000]
* gcc.dg/builtin-bswap-6.c: Use same options as optimize-bswapsi-1.c.
* gcc.dg/builtin-bswap-8.c: Likewise.

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

10 months ago2013-05-25 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Sat, 25 May 2013 12:02:01 +0000]
2013-05-25  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/52216
* g++.dg/cpp0x/new1.C: New.

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

10 months ago * sched-int.h (ds_t, dw_t): Make unsigned int.
steven [Sat, 25 May 2013 10:31:43 +0000]
* sched-int.h (ds_t, dw_t): Make unsigned int.
Fix documentation that describes how all the ds_t bits are used.
Reserve the last bit for delayed-branch scheduling.
(BITS_PER_DEP_STATUS): Move to ds_t typedef.
(BITS_PER_DEP_WEAK): Fix definition and documentation.
(gen_dep_weak_1): Remove prototype.
* sched-deps.c (get_dep_weak_1): Make static.
* target.def (speculate_insn, needs_block_p, gen_spec_check,
get_insn_spec_ds, get_insn_checked_ds): Adjust hook prototypes.
* doc/tm.texi: Regenerate.
* config/ia64/ia64.c (ia64_needs_block_p): Update prototype.

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

10 months ago/cp
paolo [Sat, 25 May 2013 08:39:44 +0000]
/cp
2013-05-25  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/25666
* decl2.c (check_classfn): Check for destructors declared as member
templates.

/testsuite
2013-05-25  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/25666
* g++.dg/parse/dtor16.C: New.
* g++.dg/parse/dtor6.C: Adjust.

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

10 months agoDaily bump.
gccadmin [Sat, 25 May 2013 00:16:40 +0000]
Daily bump.

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

10 months agoUse CLOCK_HIGHRES on Solaris 9
ro [Fri, 24 May 2013 21:09:01 +0000]
Use CLOCK_HIGHRES on Solaris 9

* config/os/solaris/solaris2.9/os_defines.h [!CLOCK_MONOTONIC]
(CLOCK_MONOTONIC): Define.

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

10 months ago PR debug/56950
steven [Fri, 24 May 2013 20:59:59 +0000]
PR debug/56950
* haifa-sched.c (sched_extend_bb): Ignore DEBUG_INSNs.

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

10 months ago PR c++/56971
jason [Fri, 24 May 2013 20:02:07 +0000]
PR c++/56971
* pt.c (any_template_arguments_need_structural_equality_p): A
TEMPLATE_TEMPLATE_PARM can require structural type comparison.

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

10 months ago2013-05-24 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Fri, 24 May 2013 18:27:59 +0000]
2013-05-24  Paolo Carlini  <paolo.carlini@oracle.com>

* include/ext/type_traits.h (__is_null_pointer): Add std::nullptr_t
overload.

* include/bits/cpp_type_traits.h (__is_fundamental): Remove, unused.

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

10 months ago2013-05-24 Nathan Sidwell <nathan@codesourcery.com>
sandra [Fri, 24 May 2013 18:09:55 +0000]
2013-05-24  Nathan Sidwell  <nathan@codesourcery.com>
    Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* config.gcc (powerpc-*): Allow native for with-cpu.

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

10 months ago * src/c++11/chrono.cc: If _GLIBCXX_USE_CLOCK_GETTIME_SYSCALL,
jakub [Fri, 24 May 2013 18:08:42 +0000]
* src/c++11/chrono.cc: If _GLIBCXX_USE_CLOCK_GETTIME_SYSCALL,
include unistd.h and sys/syscall.h.  If _GLIBCXX_COMPATIBILITY_CXX0X,
don't define system_clock::is_steady, system_clock::now() and
steady_clock::is_steady.
(std::chrono::system_clock::now()): If
_GLIBCXX_USE_CLOCK_GETTIME_SYSCALL, call
syscall (SYS_clock_gettime, ...) instead of clock_gettime (...).
(std::chrono::system_clock::now()): Likewise.  Add weak attribute
if _GLIBCXX_COMPATIBILITY_CXX0X and compatibility-chrono.cc will
be non-empty.
* src/Makefile.am (cxx11_sources): Add compatibility-chrono.cc.
(compatibility-chrono.lo, compatibility-chrono.o): New goals.
* src/c++11/compatibility-chrono.cc: New file.
* acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): On linux*, check for
syscall (SYS_clock_gettime, CLOCK_MONOTONIC, &tp).
* testsuite/util/testsuite_abi.cc (check_version): Add
GLIBCXX_3.4.20 version and make it the latest.
* config/abi/pre/gnu.ver (_ZNSt6chrono12steady_clock3nowEv): Export
also @@GLIBCXX_3.4.19.  Move all symbols so far added for GCC 4.9 to
@@GLIBCXX_3.4.20 instead.
* config/abi/post/i386-linux-gnu/baseline_symbols.txt: Regenerated.
* config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Regenerated.
* config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt:
Regenerated.
* config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
Regenerated.
* config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Regenerated.
* config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt:
Regenerated.
* config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Regenerated.
* config/abi/post/s390-linux-gnu/baseline_symbols.txt: Regenerated.
* config/abi/post/i486-linux-gnu/baseline_symbols.txt: Regenerated.
* config/abi/post/solaris2.10/baseline_symbols.txt: Regenerated.
* config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Regenerated.
* config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt:
Regenerated.
* config/abi/post/solaris2.9/baseline_symbols.txt: Regenerated.
* config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Regenerated.
* config.h.in: Regenerated.
* src/Makefile.in: Regenerated.
* configure: Regenerated.

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

10 months ago/cp
paolo [Fri, 24 May 2013 17:37:41 +0000]
/cp
2013-05-24  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/19618
* class.c (check_bitfield_decl): Warn for bool and enum bitfields
with width exceeding the type.

/testsuite
2013-05-24  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/19618
* g++.dg/expr/bitfield12.C: New.

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

10 months ago PR tree-optimization/57124
law [Fri, 24 May 2013 17:13:38 +0000]
PR tree-optimization/57124
* tree-vrp.c (simplify_cond_using_ranges): Only simplify a
conversion feeding a condition if the range has an overflow
if -fstrict-overflow.  Add warnings for when we do make the
transformation.

PR tree-optimization/57124
* gcc.c-torture/execute/pr57124.c: New test.
* gcc.c-torture/execute/pr57124.x: Set -fno-strict-overflow.

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

10 months agoFix formatting of ChangeLog entries
dmalcolm [Fri, 24 May 2013 16:15:23 +0000]
Fix formatting of ChangeLog entries

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

10 months agoFix the typo of discriminator.
dehao [Fri, 24 May 2013 15:52:31 +0000]
Fix the typo of discriminator.

2013-05-24  Dehao Chen  <dehao@google.com>

* gcc/tree-cfg.c (locus_discrim_map): Fix the typo.
(locus_discrim_hasher): Likewise.
(locus_discrim_hasher::hash): Likewise.
(locus_discrim_hasher::equal): Likewise.

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

10 months ago2013-05-24 Martin Jambor <mjambor@suse.cz>
jamborm [Fri, 24 May 2013 15:35:21 +0000]
2013-05-24  Martin Jambor  <mjambor@suse.cz>

PR tree-optimization/57294
* cgraph.h (ipa_record_stmt_references): Declare.
* cgraphbuild.c (ipa_record_stmt_references): New function.
(build_cgraph_edges): Use ipa_record_stmt_references.
(rebuild_cgraph_edges): Likewise.
(cgraph_rebuild_references): Likewise.
* ipa-prop.c (ipa_modify_call_arguments): Discard references
associated with the old statement and build references from the
newly built statements.
* ipa-ref.c (ipa_remove_stmt_references): New function.
* ipa-ref.h (ipa_remove_stmt_references): Declare.

testsuite/
* gcc.dg/ipa/pr57294.c: New test.

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

10 months ago2013-05-24 Vladimir Makarov <vmakarov@redhat.com>
vmakarov [Fri, 24 May 2013 15:30:47 +0000]
2013-05-24  Vladimir Makarov  <vmakarov@redhat.com>

        * lra-constraints.c (emit_spill_move): Use smaller mode for
mem-mem moves.
        (check_and_process_move): Consider mem-reg moves for secondary
too.
        (curr_insn_transform): Don't lose insns emitted before for
secondary memory moves.
(inherit_in_ebb): Mark defined reg.  Add usage only if it is not a
reg set up in the current insn.

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

10 months ago2013-05-24 Chung-Ju Wu <jasonwucj@gmail.com>
jasonwucj [Fri, 24 May 2013 15:23:44 +0000]
2013-05-24  Chung-Ju Wu  <jasonwucj@gmail.com>

        * download_prerequisites: Download isl and cloog conditionally.

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

10 months agoChange the discriminator assignment algorithm to make it more robust.
dehao [Fri, 24 May 2013 15:04:09 +0000]
Change the discriminator assignment algorithm to make it more robust.

2013-05-24  Dehao Chen  <dehao@google.com>

* gcc/testsuite/gcc.dg/debug/dwarf2/discriminator.c: New Testcase.
* gcc/tree-cfg.c (locus_descrim_hasher::hash): Change discrminator
hash function.
(locus_descrim_hasher::equal): Likewise.
(build_gimple_cfg): New discrminator assignmnet algorithm
(make_edges): Likewise.
(next_discriminator_for_locus): Likewise.
(same_line_p): Likewise.
(assign_discriminators): Likewise.
(make_cond_expr_edges): Likewise.
(make_gimple_switch_edges): Likewise.
(make_goto_expr_edges): Likewise.
(make_gimple_asm_edges): Likewise.

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

10 months agoAArch64 - fix invalid assembler in testcase
ibolton [Fri, 24 May 2013 14:59:20 +0000]
AArch64 - fix invalid assembler in testcase

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

10 months agoAArch64 - allow insv_imm to handle bigger immediates via masking to 16 bits
ibolton [Fri, 24 May 2013 14:54:15 +0000]
AArch64 - allow insv_imm to handle bigger immediates via masking to 16 bits

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

10 months ago PR c++/57391
jason [Fri, 24 May 2013 14:16:45 +0000]
PR c++/57391
* semantics.c (cxx_eval_constant_expression): Handle FMA_EXPR.
(cxx_eval_trinary_expression): Rename from cxx_eval_vec_perm_expr.

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

10 months ago2013-05-24 Richard Biener <rguenther@suse.de>
rguenth [Fri, 24 May 2013 12:44:58 +0000]
2013-05-24  Richard Biener  <rguenther@suse.de>

PR tree-optimization/57287
* tree-ssa-uninit.c (compute_uninit_opnds_pos): Disregard
all SSA names that occur in abnormal PHIs.

* gcc.dg/pr57287.c: New testcase.

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

10 months ago2013-05-24 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Fri, 24 May 2013 10:05:22 +0000]
2013-05-24  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/26572
* g++.dg/template/error51.C: New.

2013-05-24  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/25503
* g++.dg/template/bitfield2.C: New.

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

10 months ago * gcc-interface/gigi.h (gnat_init_gcc_fp): Declare.
ebotcazou [Fri, 24 May 2013 09:40:28 +0000]
* gcc-interface/gigi.h (gnat_init_gcc_fp): Declare.
* gcc-interface/trans.c (gigi): Call it.
* gcc-interface/misc.c (gnat_init_gcc_fp): New function.

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

10 months ago * gcc-interface/gigi.h (enum inline_status_t): New type.
ebotcazou [Fri, 24 May 2013 09:31:33 +0000]
* gcc-interface/gigi.h (enum inline_status_t): New type.
(create_subprog_decl): Adjust prototype.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Procedure>: Adjust
calls to create_subprog_decl.
(get_minimal_subprog_decl): Likewise.
* gcc-interface/trans.c (gigi): Likewise.
(build_raise_check): Likewise.
(establish_gnat_vms_condition_handler): Likewise.
(Compilation_Unit_to_gnu): Likewise.
(gnat_to_gnu): Likewise.
* gcc-interface/utils.c (create_subprog_decl): Change inline_flag
parameter to inline_status and implement for suppressed inlining.

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

10 months agoUse -z ignore instead of --as-needed on Solaris
ro [Fri, 24 May 2013 09:23:33 +0000]
Use -z ignore instead of --as-needed on Solaris

* acinclude.m4 (libgfor_cv_have_as_needed): Check for -z ignore, too.
* configure: Regenerate.

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

10 months ago PR tree-ssa/57385
kyukhin [Fri, 24 May 2013 09:11:56 +0000]
PR tree-ssa/57385
* gcc.dg/tree-ssa/pr57385.c: New test.

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

10 months agogcc/ChangeLog
kyukhin [Fri, 24 May 2013 09:08:45 +0000]
gcc/ChangeLog
        PR tree-ssa/57385
        * tree-ssa-sccvn.c (fully_constant_vn_reference_p): Check
        that index is not negative.

gcc/testsuite/ChangeLog
        PR tree-ssa/57385
        * gcc.dg/tree-ssa/pr57385.c: New test.

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

10 months ago * gcc-interface/ada-tree.h (LOOP_STMT_NO_UNROLL): New define.
ebotcazou [Fri, 24 May 2013 08:52:35 +0000]
* gcc-interface/ada-tree.h (LOOP_STMT_NO_UNROLL): New define.
(LOOP_STMT_UNROLL): Likewise.
(LOOP_STMT_NO_VECTOR): Likewise.
(LOOP_STMT_VECTOR): Likewise.
* gcc-interface/trans.c (struct loop_info_d): Replace label field
with stmt field.
(Pragma_to_gnu) <Pragma_Loop_Optimize>: New case.
(Loop_Statement_to_gnu): Save the loop statement onto the stack
instead of the label.
(gnat_to_gnu) <N_Exit_Statement>: Retrieve the loop label.

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

10 months ago * gcc-interface/trans.c: Include diagnostic.h and opts.h.
ebotcazou [Fri, 24 May 2013 08:44:14 +0000]
* gcc-interface/trans.c: Include diagnostic.h and opts.h.
(Pragma_to_gnu) <Pragma_Warnings>: New case.

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

10 months ago * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Constify
ebotcazou [Fri, 24 May 2013 08:27:55 +0000]
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Constify
a handful of local variables.
For a derived untagged type that renames discriminants, change the type
of the stored discriminants to a subtype with the bounds of the type
of the visible discriminants.
(build_subst_list): Rename local variable.

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

10 months ago PR rtl-optimization/55177
ebotcazou [Fri, 24 May 2013 06:46:11 +0000]
PR rtl-optimization/55177
* simplify-rtx.c (simplify_unary_operation_1) <NOT>: Deal with BSWAP.
(simplify_byte_swapping_operation): New.
(simplify_binary_operation_1): Call it for AND, IOR and XOR.
(simplify_relational_operation_1): Deal with BSWAP.

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

10 months agoDaily bump.
gccadmin [Fri, 24 May 2013 00:16:41 +0000]
Daily bump.

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

10 months ago * c-typeck.c (convert_for_assignment): Handle references to memory
mrs [Thu, 23 May 2013 21:57:39 +0000]
* c-typeck.c (convert_for_assignment): Handle references to memory
spaces better.

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

10 months ago PR c++/57388
jason [Thu, 23 May 2013 20:51:22 +0000]
PR c++/57388
* tree.c (build_ref_qualified_type): Clear
FUNCTION_RVALUE_QUALIFIED for lvalue ref-qualifier.

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

10 months agoPR target/56742
rth [Thu, 23 May 2013 19:10:56 +0000]
PR target/56742

        * config/i386/i386.c (ix86_seh_fixup_eh_fallthru): New.
        (ix86_reorg): Call it.

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

10 months ago PR target/57379
uros [Thu, 23 May 2013 18:32:12 +0000]
PR target/57379
* config/alpha/alpha.md (unspec): Add UNSPEC_XFLT_COMPARE.
* config/alpha/alpha.c (alpha_emit_xfloating_compare): Construct
REG_EQUAL note as UNSPEC_XFLT_COMPARE unspec.

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

10 months ago2013-05-23 Christian Bruel <christian.bruel@st.com>
chrbr [Thu, 23 May 2013 14:20:07 +0000]
2013-05-23  Christian Bruel  <christian.bruel@st.com>

        PR debug/57351
        * config/arm/arm.c (arm_dwarf_register_span): Do not use dbx number.

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

10 months ago[AArch64] Remove Usa constraint.
mshawcroft [Thu, 23 May 2013 14:16:50 +0000]
[AArch64] Remove Usa constraint.

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

10 months ago[AArch64] Refactor aarch64_mov_operand predicate.
mshawcroft [Thu, 23 May 2013 14:09:39 +0000]
[AArch64] Refactor aarch64_mov_operand predicate.

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

10 months ago2013-05-23 Matthias Klose <doko@ubuntu.com>
doko [Thu, 23 May 2013 14:02:14 +0000]
2013-05-23  Matthias Klose  <doko@ubuntu.com>

        * include/Makefile.am (bits_headers): Remove ${bits_host_headers}.
        (ext_headers): Remove ${ext_host_headers}.
        (stamp-${host_alias}): Create ${host_builddir}/../ext.
        (stamp-host): Link ${bits_host_headers} and ${ext_host_headers}.
        (install-headers): Install ${bits_host_headers} and ${ext_host_headers}.
        * include/Makefile.in: Regenerate.
        * include/ext/random: Include ext/opt_random.h.

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

10 months agoFixed ChangeLog dates.
jamborm [Thu, 23 May 2013 13:45:17 +0000]
Fixed ChangeLog dates.

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