gcc.git
13 years agoChange ix86_isa_flags to HOST_WIDE_INT.
H.J. Lu [Thu, 18 Aug 2011 15:56:01 +0000 (15:56 +0000)]
Change ix86_isa_flags to HOST_WIDE_INT.

2011-08-18  H.J. Lu  <hongjiu.lu@intel.com>
    Igor Zamyatin <igor.zamyatin@intel.com>

* config/i386/i386-c.c (ix86_target_macros_internal): Replace int
with HOST_WIDE_INT for isa_flag.
(ix86_pragma_target_parse): Replace int with HOST_WIDE_INT for
isa variables.

* config/i386/i386.c (ix86_target_string): Replace int with
HOST_WIDE_INT for isa.  Use HOST_WIDE_INT_PRINT to print isa.
(ix86_target_opts): Replace int with HOST_WIDE_INT on mask.
(pta_flags): Removed.
(PTA_XXX): Redefined as (HOST_WIDE_INT_1 << X).
(pta): Use HOST_WIDE_INT on flags.
(builtin_isa): Use HOST_WIDE_INT on isa.
(ix86_add_new_builtins): Likewise.
(def_builtin): Use HOST_WIDE_INT on mask.
(def_builtin_const): Likewise.
(builtin_description): Likewise.

* config/i386/i386.opt (ix86_isa_flags): Replace int with
HOST_WIDE_INT.
(ix86_isa_flags_explicit): Likewise.
(x_ix86_isa_flags_explicit): Likewise.

Co-Authored-By: Igor Zamyatin <igor.zamyatin@intel.com>
From-SVN: r177870

13 years ago* include/cpplib.h (struct cpp_options): Fix typo.
Joseph Myers [Thu, 18 Aug 2011 15:24:45 +0000 (16:24 +0100)]
* include/cpplib.h (struct cpp_options): Fix typo.

From-SVN: r177869

13 years agoc1x-uni-string-1.c, [...]: New tests.
Joseph Myers [Thu, 18 Aug 2011 15:13:49 +0000 (16:13 +0100)]
c1x-uni-string-1.c, [...]: New tests.

gcc/testsuite:
* gcc.dg/c1x-uni-string-1.c, gcc.dg/c1x-uni-string-2.c: New tests.

libcpp:
* include/cpplib.h (struct cpp_options): Add rliterals.
* init.c  (struct lang_flags, lang_defaults): Add rliterals.
(cpp_set_lang): Set rliterals option.
(cpp_init_builtins): Define __STDC_UTF_16__ and __STDC_UTF_32__.
* lex.c (_cpp_lex_direct): Only accept raw strings if rliterals.

From-SVN: r177868

13 years agore PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
Tobias Burnus [Thu, 18 Aug 2011 15:10:25 +0000 (17:10 +0200)]
re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])

2011-08-18  Tobias Burnus  <burnus@net-b.de>

        PR fortran/18918
        * parse.c (parse_derived): Add lock_type
        checks, improve coarray_comp handling.
        * resolve.c (resolve_allocate_expr,
        resolve_lock_unlock, resolve_symbol): Fix lock_type
        constraint checks.

2011-08-18  Tobias Burnus  <burnus@net-b.de>

        PR fortran/18918
        * gfortran.dg/coarray_lock_1.f90: Update dg-error.
        * gfortran.dg/coarray_lock_3.f90: Fix test.
        * gfortran.dg/coarray_lock_4.f90: New.
        * gfortran.dg/coarray_lock_5.f90: New.

From-SVN: r177867

13 years agoUse Solaris prototypes if possible (PR libstdc++-v3/1773)
Marc Glisse [Thu, 18 Aug 2011 14:59:47 +0000 (14:59 +0000)]
Use Solaris prototypes if possible (PR libstdc++-v3/1773)

Co-Authored-By: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
From-SVN: r177866

13 years agore PR rtl-optimization/50107 ([IRA, i386] allocates registers in very non-optimal...
Vladimir Makarov [Thu, 18 Aug 2011 14:56:36 +0000 (14:56 +0000)]
re PR rtl-optimization/50107 ([IRA, i386] allocates registers in very non-optimal way)

2011-08-17  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/50107
* ira-int.h (ira_hard_reg_not_in_set_p): Remove.
(ira_hard_reg_in_set_p): New.

* ira-color.c (calculate_saved_nregs): New.
(assign_hard_reg): Use it.  Set up allocated_hard_reg_p for all
hard regs.
(allocno_reload_assign, fast_allocation): Use
ira_hard_reg_set_intersection_p instead of
ira_hard_reg_not_in_set_p.

* ira.c (setup_reg_renumber): Use
ira_hard_reg_set_intersection_p instead of
ira_hard_reg_not_in_set_p.
(setup_allocno_assignment_flags, calculate_allocation_cost): Use
ira_hard_reg_in_set_p instead of ira_hard_reg_not_in_set_p.

* ira-costs.c (ira_tune_allocno_costs): Use
ira_hard_reg_set_intersection_p instead of
ira_hard_reg_not_in_set_p.

From-SVN: r177865

13 years agoAllow HOST_WIDE_INT for option variable.
H.J. Lu [Thu, 18 Aug 2011 14:52:06 +0000 (14:52 +0000)]
Allow HOST_WIDE_INT for option variable.

2011-08-18  H.J. Lu  <hongjiu.lu@intel.com>
    Igor Zamyatin <igor.zamyatin@intel.com>

* hwint.h (HOST_WIDE_INT_1): New.

* opt-functions.awk (switch_bit_fields): Initialize the
host_wide_int field.
(host_wide_int_var_name): New.
(var_type_struct): Check and return HOST_WIDE_INT.

* opt-read.awk: Handle HOST_WIDE_INT for "Variable".

* optc-save-gen.awk: Support HOST_WIDE_INT on var_target_other.

* opth-gen.awk: Use HOST_WIDE_INT_1 on HOST_WIDE_INT.  Properly
check masks for HOST_WIDE_INT.

* opts-common.c (set_option): Support HOST_WIDE_INT flag_var.
(option_enabled): Likewise.
(get_option_state): Likewise.

* opts.h (cl_option): Add cl_host_wide_int.  Change var_value
to HOST_WIDE_INT.

Co-Authored-By: Igor Zamyatin <igor.zamyatin@intel.com>
From-SVN: r177864

13 years agoKeep tm, div_t, ldiv_t, lconv mangling on Solaris (PR libstdc++-v3/1773)
Rainer Orth [Thu, 18 Aug 2011 14:47:46 +0000 (14:47 +0000)]
Keep tm, div_t, ldiv_t, lconv mangling on Solaris (PR libstdc++-v3/1773)

Co-Authored-By: Marc Glisse <marc.glisse@normalesup.org>
From-SVN: r177863

13 years ago2011-08-18 Peter Collingbourne <peter@pcc.me.uk>
Peter Collingbourne [Thu, 18 Aug 2011 14:47:32 +0000 (14:47 +0000)]
2011-08-18  Peter Collingbourne  <peter@pcc.me.uk>

* expr.c (expand_invoke) Use the type of the method rewrite
target.

From-SVN: r177862

13 years agore PR target/50009 (Segmentation fault in tree_nop_conversion)
Jakub Jelinek [Thu, 18 Aug 2011 14:29:10 +0000 (16:29 +0200)]
re PR target/50009 (Segmentation fault in tree_nop_conversion)

PR target/50009
* stor-layout.c (update_alignment_for_field): Don't ICE on
packed flexible array members if ms_bitfield_layout_p.

* gcc.c-torture/compile/pr50009.c: New test.

From-SVN: r177860

13 years agore PR target/50092 (internal compiler error: in elimination_costs_in_insn, at reload1...
Jakub Jelinek [Thu, 18 Aug 2011 14:27:38 +0000 (16:27 +0200)]
re PR target/50092 (internal compiler error: in elimination_costs_in_insn, at reload1.c:3633)

PR target/50092
* config/i386/i386.c (assign_386_stack_local): Call validize_mem
on the result before returning it.

* gcc.dg/torture/pr50092.c: New test.

From-SVN: r177859

13 years agore PR fortran/50109 (Formatted namelist read with multiple "!" fails with: Cannot...
Tobias Burnus [Thu, 18 Aug 2011 14:23:41 +0000 (16:23 +0200)]
re PR fortran/50109 (Formatted namelist read with multiple "!" fails with: Cannot match namelist object name !)

2011-08-18  Tobias Burnus  <burnus@net-b.de>

        PR fortran/50109
        * io/list_read.c (eat_separator): Fix skipping over "!" lines.

2011-08-18  Tobias Burnus  <burnus@net-b.de>

        PR fortran/50109
        * gfortran.dg/namelist_73.f90: New.

From-SVN: r177858

13 years agore PR debug/50017 (-fcompare-debug failure)
Jakub Jelinek [Thu, 18 Aug 2011 14:13:48 +0000 (16:13 +0200)]
re PR debug/50017 (-fcompare-debug failure)

PR debug/50017
* tree-vect-stmts.c (vect_finish_stmt_generation): If gsi_stmt (*gsi)
is a debug stmt, use location of the first non-debug stmt after it.

* gcc.dg/pr50017.c: New test.

From-SVN: r177857

13 years ago* g++.dg/plugin/decl_plugin.c: Include diagnostic.h.
Jakub Jelinek [Thu, 18 Aug 2011 14:09:44 +0000 (16:09 +0200)]
* g++.dg/plugin/decl_plugin.c: Include diagnostic.h.

From-SVN: r177856

13 years agoarm.c (arm_rtx_costs_1): Don't modify the costs of SET.
Richard Sandiford [Thu, 18 Aug 2011 13:47:21 +0000 (13:47 +0000)]
arm.c (arm_rtx_costs_1): Don't modify the costs of SET.

gcc/
* config/arm/arm.c (arm_rtx_costs_1): Don't modify the costs of SET.
(arm_size_rtx_costs): Likewise.

From-SVN: r177855

13 years agobpabi-lib.h (RENAME_LIBRARY_SET): Delete.
Richard Sandiford [Thu, 18 Aug 2011 13:45:07 +0000 (13:45 +0000)]
bpabi-lib.h (RENAME_LIBRARY_SET): Delete.

libgcc/
* config/arm/bpabi-lib.h (RENAME_LIBRARY_SET): Delete.

From-SVN: r177854

13 years agotree.h (tree_int_cst_msb): Remove.
Richard Guenther [Thu, 18 Aug 2011 12:42:22 +0000 (12:42 +0000)]
tree.h (tree_int_cst_msb): Remove.

2011-08-18  Richard Guenther  <rguenther@suse.de>

* tree.h (tree_int_cst_msb): Remove.
* tree.c (tree_int_cst_msb): Likewise.
(tree_int_cst_sign_bit): Move from ...
* tree-ssa-loop-ivopts.c (tree_int_cst_sign_bit): ... here.

From-SVN: r177853

13 years agotm.texi.in (TARGET_RTX_COSTS): Add an opno paramter.
Richard Sandiford [Thu, 18 Aug 2011 12:37:53 +0000 (12:37 +0000)]
tm.texi.in (TARGET_RTX_COSTS): Add an opno paramter.

gcc/
* doc/tm.texi.in (TARGET_RTX_COSTS): Add an opno paramter.
* doc/tm.texi: Regenerate.
* target.def (rtx_costs): Add an opno parameter.
* hooks.h (hook_bool_rtx_int_int_intp_bool_false): Replace with...
(hook_bool_rtx_int_int_int_intp_bool_false): ...this.
* hooks.c (hook_bool_rtx_int_int_intp_bool_false): Replace with...
(hook_bool_rtx_int_int_int_intp_bool_false): ...this.
* cse.c (COST_IN): Add an opno parameter.
(notreg_cost): Likewise.  Update call to rtx_cost.
(COST, fold_rtx): Update accordingly.
* dojump.c (prefer_and_bit_test): Update call to rtx_cost.
* expmed.c (emit_store_flag): Likewise.
* optabs.c (avoid_expensive_constant): Add an opno parameter.
Update call to rtx_cost.
(expand_binop_directly, expand_binop): Likewise.
(expand_twoval_binop, prepare_cmp_insn): Likewise.
* rtl.h (rtx_cost, get_full_rtx_cost): Add opno parameters.
(set_src_cost, get_full_set_src_cost): Update accordingly.
* rtlanal.c (rtx_cost): Add an opno parameter.  Update call
to target hook.
(get_full_rtx_cost): Add an opno paramter.  Update calls to rtx_cost.
(default_adress_cost): Update calls to rtx_cost.

* config/arm/arm.c (arm_rtx_costs_1, arm_size_rtx_costs)
(arm_slowmul_rtx_costs): Adjust calls to rtx_cost.
(arm_rtx_costs): Add an opno parameter.
* config/alpha/alpha.c (alpha_rtx_costs): Add an opno parameter and
adjust any recursive rtx-cost calls.
* config/avr/avr.c (avr_operand_rtx_cost, avr_rtx_costs): Likewise.
* config/bfin/bfin.c (bfin_rtx_costs): Likewise.
* config/c6x/c6x.c (c6x_rtx_costs): Likewise.
* config/cris/cris.c (cris_rtx_costs): Likewise.
* config/frv/frv.c (frv_rtx_costs): Likewise.
* config/h8300/h8300.c (h8300_rtx_costs): Likewise.
* config/i386/i386.c (ix86_rtx_costs): Likewise.
* config/ia64/ia64.c (ia64_rtx_costs): Likewise.
* config/iq2000/iq2000.c (iq2000_rtx_costs): Likewise.
* config/lm32/lm32.c (lm32_rtx_costs): Likewise.
* config/m32c/m32c.c (m32c_rtx_costs): Likewise.
* config/m32r/m32r.c (m32r_rtx_costs): Likewise.
* config/m68k/m68k.c (m68k_rtx_costs): Likewise.
* config/mcore/mcore.c (mcore_rtx_costs): Likewise.
* config/mep/mep.c (mep_rtx_cost): Likewise.
* config/microblaze/microblaze.c (microblaze_rtx_costs): Likewise.
* config/mips/mips.c (mips_binary_cost): Update call to rtx_cost.
(mips_zero_extend_cost): Add an opno parameter.
* config/mmix/mmix.c (mmix_rtx_costs): Likewise.
* config/mn10300/mn10300.c (mn10300_address_cost): Update call
to rtx_cost.
(mn10300_rtx_costs): Add an opno parameter and adjust any recursive
rtx-cost calls.
* config/pa/pa.c (hppa_rtx_costs): Likewise.
* config/pdp11/pdp11.c (pdp11_rtx_costs): Likewise.
* config/picochip/picochip.c (picochip_rtx_costs): Likewise.
* config/rs6000/rs6000.c (rs6000_rtx_costs): Likewise.
(rs6000_debug_rtx_costs): Likewise.
* config/s390/s390.c (s390_rtx_costs): Likewise.
* config/score/score-protos.h (score_rtx_costs): Likewise.
* config/score/score.c (score_rtx_costs): Likewise.
* config/sh/sh.c (andcosts): Update call to rtx_cost.
(sh_rtx_costs): Add an opno parameter.
* config/sparc/sparc.c (sparc_rtx_costs): Likewise.
* config/spu/spu.c (spu_rtx_costs): Likewise.
* config/stormy16/stormy16.c (xstormy16_rtx_costs): Likewise.
* config/v850/v850.c (v850_rtx_costs): Likewise.
* config/vax/vax.c (vax_rtx_costs): Likewise.
* config/xtensa/xtensa.c (xtensa_rtx_costs): Likewise.

From-SVN: r177852

13 years agortl.h (set_src_cost, [...]): New functions.
Richard Sandiford [Thu, 18 Aug 2011 12:37:27 +0000 (12:37 +0000)]
rtl.h (set_src_cost, [...]): New functions.

gcc/
* rtl.h (set_src_cost, get_full_set_src_cost): New functions.
* auto-inc-dec.c (attempt_change): Use set_src_cost instead of
rtx_cost.
* calls.c (precompute_register_parameters): Likewise.
* combine.c (expand_compound_operation, make_extraction): Likewise.
(force_to_mode, distribute_and_simplify_rtx): Likewise.
* dse.c (find_shift_sequence): Likewise.
* expmed.c (init_expmed, expand_mult, expand_smod_pow2): Likewise.
* expr.c (compress_float_constant): Likewise.
* fwprop.c (should_replace_address, try_fwprop_subst): Likewise.
* gcse.c (want_to_gcse_p): Likewise.
* ifcvt.c (noce_try_sign_mask): Likewise.
* loop-doloop.c (doloop_optimize): Likewise.
* loop-invariant.c (create_new_invariant): Likewise.
* optabs.c (avoid_expensive_constant): Likewise.
* postreload.c (reload_cse_simplify_set, reload_cse_simplify_operands)
(try_replace_in_use, reload_cse_move2add): Likewise.
* reload1.c (calculate_elim_costs_all_insns): Likewise.
(note_reg_elim_costly): Likewise.
* rtlanal.c (insn_rtx_cost): Likewise.
* simplify-rtx.c (simplify_binary_operation_1): Likewise.
* stmt.c (lshift_cheap_p): Likewise.
* tree-ssa-loop-ivopts.c (seq_cost, computation_cost): Likewise.
* config/avr/avr.c (final_prescan_insn): Likewise.
* config/bfin/bfin.c (bfin_rtx_costs): Likewise.
* config/mips/mips.c (mips_binary_cost, mips_rtx_costs): Likewise.

From-SVN: r177851

13 years agortl.h (set_rtx_cost, [...]): New functions.
Richard Sandiford [Thu, 18 Aug 2011 12:36:51 +0000 (12:36 +0000)]
rtl.h (set_rtx_cost, [...]): New functions.

gcc/
* rtl.h (set_rtx_cost, get_full_set_rtx_cost): New functions.
* auto-inc-dec.c (attempt_change): Use set_rtx_cost.
* cfgloopanal.c (seq_cost): Likewise.
* loop-invariant.c (create_new_invariant): Likewise.
* postreload.c (move2add_use_add2_insn, move2add_use_add3_insn)
(reload_cse_move2add): Use get_full_set_rtx_cost.

From-SVN: r177850

13 years agoexpr.c (get_inner_reference): Fix typo in last change.
Richard Guenther [Thu, 18 Aug 2011 11:40:45 +0000 (11:40 +0000)]
expr.c (get_inner_reference): Fix typo in last change.

2011-08-18  Richard Guenther  <rguenther@suse.de>

* expr.c (get_inner_reference): Fix typo in last change.

From-SVN: r177849

13 years agore PR tree-optimization/49963 (ICE: in abs_hwi, at hwint.c:108)
Paolo Carlini [Thu, 18 Aug 2011 11:30:42 +0000 (11:30 +0000)]
re PR tree-optimization/49963 (ICE: in abs_hwi, at hwint.c:108)

2011-08-18  Paolo Carlini  <paolo.carlini@oracle.com>
    Joseph Myers  <joseph@codesourcery.com>

PR tree-optimization/49963
* hwint.c (absu_hwi): Define.
* hwint.h (absu_hwi): Declare.
* fold-const.c (fold_plusminus_mult_expr): Use absu_hwi instead
of abs_hwi.
* tree-ssa-math-opts.c (gimple_expand_builtin_pow): Likewise.
* tree-ssa-loop-prefetch.c (prune_ref_by_group_reuse): Likewise.

Co-Authored-By: Joseph Myers <joseph@codesourcery.com>
From-SVN: r177848

13 years agoexpr.c (get_inner_reference): Sign-extend the constant twos-complement offset before...
Richard Guenther [Thu, 18 Aug 2011 08:33:21 +0000 (08:33 +0000)]
expr.c (get_inner_reference): Sign-extend the constant twos-complement offset before doing arbitrary...

2011-08-18  Richard Guenther  <rguenther@suse.de>

* expr.c (get_inner_reference): Sign-extend the constant
twos-complement offset before doing arbitrary precision
arithmetic on it.
* tree-ssa-structalias.c (get_constraint_for_ptr_offset): Likewise.
(get_constraint_for_1): Pass the offset of a MEM_REF unchanged
to get_constraint_for_ptr_offset.

From-SVN: r177847

13 years agoPR c++/45625 - Template parm name doesn't hide outer class scope's member name
Dodji Seketeli [Thu, 18 Aug 2011 06:44:22 +0000 (06:44 +0000)]
PR c++/45625 - Template parm name doesn't hide outer class scope's member name

gcc/cp/

* pt.c (parameter_of_template_p): Handle comparison with DECLs of
template parameters as created by process_template_parm.

gcc/testsuite/

* g++.dg/lookup/hidden-var1.C: New test case.

From-SVN: r177846

13 years agoDaily bump.
GCC Administrator [Thu, 18 Aug 2011 00:18:23 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r177843

13 years agore PR target/50068 (Invalid memory access in incr_ticks_for_insn)
Kaz Kojima [Wed, 17 Aug 2011 22:49:18 +0000 (22:49 +0000)]
re PR target/50068 (Invalid memory access in incr_ticks_for_insn)

PR target/50068
* config/sh/sh.c (sh_output_mi_thunk): Don't call dbr_schedule.

From-SVN: r177839

13 years agore PR fortran/31461 (warn about entities in USE, ONLY statement not later used)
Tobias Burnus [Wed, 17 Aug 2011 16:31:10 +0000 (18:31 +0200)]
re PR fortran/31461 (warn about entities in USE, ONLY statement not later used)

2011-08-17  Tobias Burnus  <burnus@net-b.de>

        PR fortran/31461
        * trans-decl.c (generate_local_decl): Warn about
        unused explicitly imported module variables/parameters.

2011-08-17  Tobias Burnus  <burnus@net-b.de>

        PR fortran/31461
        * gfortran.dg/warn_unused_var_2.f90: New.
        * gfortran.dg/warn_unused_var_3.f90: New.

From-SVN: r177833

13 years agotree.h (convert_to_ptrofftype_loc): New function.
Richard Guenther [Wed, 17 Aug 2011 12:00:35 +0000 (12:00 +0000)]
tree.h (convert_to_ptrofftype_loc): New function.

2011-08-17  Richard Guenther  <rguenther@suse.de>

* tree.h (convert_to_ptrofftype_loc): New function.
(convert_to_ptrofftype): Define.
* builtins.c (expand_builtin_bzero): Use size_type_node.
(fold_builtin_bzero): Likewise.
(std_gimplify_va_arg_expr): Build the BIT_AND_EXPR on the pointer.
* c-typeck.c (build_unary_op): Use convert_to_ptrofftype_loc.
* cgraphunit.c (thunk_adjust): Use fold_build_pointer_plus_loc.
(cgraph_redirect_edge_call_stmt_to_callee): Use size_int.
* expr.c (expand_expr_addr_expr_1): Use fold_build_pointer_plus.
* fold-const.c (build_range_check): Negate using the original
type.
(fold_unary_loc): Use fold_build_pointer_plus_loc.
* gimple-fold.c (gimple_adjust_this_by_delta): Use
convert_to_ptrofftype.
* gimplify.c (gimplify_self_mod_expr): Likewise.
* graphite-clast-to-gimple.c (clast_to_gcc_expression): Likewise.
(graphite_create_new_loop_guard): Likewise.
* graphite-sese-to-poly.c (my_long_long): Remove.
(scop_ivs_can_be_represented): Adjust.
* tree-cfg.c (verify_gimple_assign_unary): Use ptrofftype_p.
* tree-chrec.c (chrec_fold_plus_1): Use fold_build_pointer_plus.
* tree-loop-distribution.c (build_size_arg_loc): Use
size_type_node.
(generate_memset_zero): Simplify.
* tree-mudflap.c: Use fold_convert, not convert.
* tree-predcom.c (suitable_reference_p): Expand DR_OFFSET in
its own type.
(determine_offset): Likewise for DR_STEP.
(valid_initializer_p): Likewise.
* tree-profile.c (prepare_instrumented_value): Convert the pointer
to an integer type of same size.
* tree-scalar-evolution.c (interpret_rhs_expr): Do not refer
to sizetype without need.
* tree-ssa-address.c (tree_mem_ref_addr): Likewise.
* tree-ssa-loop-ivopts.c (find_bivs): Use convert_to_ptrofftype.
* tree-ssa-loop-manip.c (create_iv): Likewise.
(determine_exit_conditions): Adjust comment.
* tree-ssa-pre.c (create_expression_by_pieces): Use
convert_to_ptrofftype.
* tree-ssa-structalias.c (get_constraint_for_1): Likewise.
* varasm.c (array_size_for_constructor): Compute using double_ints.

From-SVN: r177828

13 years agore PR target/43597 (Move and compare with 0 can be combined)
Tom de Vries [Wed, 17 Aug 2011 11:39:06 +0000 (11:39 +0000)]
re PR target/43597 (Move and compare with 0 can be combined)

2011-08-17  Tom de Vries  <tom@codesourcery.com>

PR target/43597
* gcc.target/arm/pr43597.c: New test.

From-SVN: r177827

13 years agore PR target/50090 (ARM EABI symbols in libgcc.a have default visibility)
Richard Sandiford [Wed, 17 Aug 2011 11:13:20 +0000 (11:13 +0000)]
re PR target/50090 (ARM EABI symbols in libgcc.a have default visibility)

libgcc/
PR target/50090
* config/arm/bpabi-lib.h (RENAME_LIBRARY): Use a C-level alias
instead of an assembly one.

From-SVN: r177826

13 years agore PR fortran/50070 (Segmentation fault at size_binop_loc in fold-const.c)
Janus Weil [Wed, 17 Aug 2011 09:14:18 +0000 (11:14 +0200)]
re PR fortran/50070 (Segmentation fault at size_binop_loc in fold-const.c)

2011-08-17  Janus Weil  <janus@gcc.gnu.org>

PR fortran/50070
* resolve.c (resolve_fl_variable): Reject non-constant character lengths
in COMMON variables.

2011-08-17  Janus Weil  <janus@gcc.gnu.org>

PR fortran/50070
* gfortran.dg/common_13.f90: New.

From-SVN: r177825

13 years agoDaily bump.
GCC Administrator [Wed, 17 Aug 2011 00:18:42 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r177820

13 years agore PR c++/50086 ([C++0x] Error on lookup of template function address with variadic...
Jason Merrill [Tue, 16 Aug 2011 23:26:08 +0000 (19:26 -0400)]
re PR c++/50086 ([C++0x] Error on lookup of template function address with variadic template arguments)

PR c++/50086
* pt.c (unify_pack_expansion): Correct overloaded unification
logic.

From-SVN: r177813

13 years ago* g++.old-deja/g++.brendan/README: Add R.I.P.
Jason Merrill [Tue, 16 Aug 2011 23:26:00 +0000 (19:26 -0400)]
* g++.old-deja/g++.brendan/README: Add R.I.P.

From-SVN: r177812

13 years agopt.c (instantiate_class_template_1): If DECL_PRESERVE_P is set on a member function...
Jason Merrill [Tue, 16 Aug 2011 23:25:52 +0000 (19:25 -0400)]
pt.c (instantiate_class_template_1): If DECL_PRESERVE_P is set on a member function or static data member...

* pt.c (instantiate_class_template_1): If DECL_PRESERVE_P is set
on a member function or static data member, call mark_used.

From-SVN: r177811

13 years agore PR c++/50054 (Fails to recover from type error in function signature)
Jason Merrill [Tue, 16 Aug 2011 23:25:43 +0000 (19:25 -0400)]
re PR c++/50054 (Fails to recover from type error in function signature)

PR c++/50054
* typeck2.c (cxx_incomplete_type_diagnostic): Handle
init_list_type_node.

From-SVN: r177810

13 years agore PR fortran/50094 (FAIL: gfortran.dg/coarray_6.f90)
Tobias Burnus [Tue, 16 Aug 2011 21:26:23 +0000 (23:26 +0200)]
re PR fortran/50094 (FAIL: gfortran.dg/coarray_6.f90)

2011-08-16  Tobias Burnus  <burnus@net-b.de>
            Dominique Dhumieres  <dominiq@lps.ens.fr>

        PR fortran/50094
        * resolve.c (resolve_symbol): Fix stupid typo.

Co-Authored-By: Dominique d'Humieres <dominiq@lps.ens.fr>
From-SVN: r177801

13 years agospu.c (spu_emit_branch_or_set): Avoid reverse tests when generating an integer result...
Ulrich Weigand [Tue, 16 Aug 2011 18:39:55 +0000 (18:39 +0000)]
spu.c (spu_emit_branch_or_set): Avoid reverse tests when generating an integer result where possible.

* config/spu/spu.c (spu_emit_branch_or_set): Avoid reverse tests
when generating an integer result where possible.  Short-cut
comparison against 0 also for QImode.

From-SVN: r177795

13 years agospu.h (LEGITIMIZE_RELOAD_ADDRESS): New macro.
Ulrich Weigand [Tue, 16 Aug 2011 18:33:15 +0000 (18:33 +0000)]
spu.h (LEGITIMIZE_RELOAD_ADDRESS): New macro.

* config/spu/spu.h (LEGITIMIZE_RELOAD_ADDRESS): New macro.
* config/spu/spu-protos.h (spu_legitimize_reload_address): Add
prototype.
* config/spu/spu.c (spu_legitimize_reload_address): New function.
(spu_legitimate_address_p): Do not check displacement if the base
is an eliminable stack register.

From-SVN: r177794

13 years agom32c.h (PREFERRED_RELOAD_CLASS, [...]): Remove macro.
Anatoly Sokolov [Tue, 16 Aug 2011 17:04:13 +0000 (21:04 +0400)]
m32c.h (PREFERRED_RELOAD_CLASS, [...]): Remove macro.

* config/m32c/m32c.h (PREFERRED_RELOAD_CLASS,
PREFERRED_OUTPUT_RELOAD_CLASS): Remove macro.
* config/m32c/m32c-protos.h (m32c_preferred_reload_class,
m32c_preferred_output_reload_class): Remove.
* config/m32c/m32c.c (m32c_preferred_reload_class): Make static.
Change rclass argument and return types to reg_class_t. Use
reg_class_subset_p instead of class_sizes.
(m32c_preferred_output_reload_class): Make static. Change rclass
argument and return types to reg_class_t.
(TARGET_PREFERRED_RELOAD_CLASS,
TARGET_PREFERRED_OUTPUT_RELOAD_CLASS): Define.

From-SVN: r177790

13 years ago* config/i386/mingw32.h (GOMP_SELF_SPEC): Add -pthread option.
Kai Tietz [Tue, 16 Aug 2011 16:29:20 +0000 (18:29 +0200)]
* config/i386/mingw32.h (GOMP_SELF_SPEC): Add -pthread option.

From-SVN: r177789

13 years agore PR tree-optimization/50082 (-Wstrict-overflow mishandles typedef)
Richard Guenther [Tue, 16 Aug 2011 15:32:17 +0000 (15:32 +0000)]
re PR tree-optimization/50082 (-Wstrict-overflow mishandles typedef)

2011-08-16  Richard GUenther  <rguenther@suse.de>

PR tree-optimization/50082
* tree-ssa-forwprop.c (combine_cond_expr_cond): Handle overflow
warnings here, instead of ...
(ssa_forward_propagate_and_combine): ... here.
(forward_propagate_into_comparison_1): Adjust.
(forward_propagate_into_comparison): Likewise.
(forward_propagate_into_gimple_cond): Likewise.
(forward_propagate_into_cond): Likewise.

From-SVN: r177788

13 years agoggc.h (ggc_alloc_rtvec_sized): Use ggc_alloc_zone_rtvec_def instead of ggc_alloc_zone...
Andreas Schwab [Tue, 16 Aug 2011 14:14:26 +0000 (14:14 +0000)]
ggc.h (ggc_alloc_rtvec_sized): Use ggc_alloc_zone_rtvec_def instead of ggc_alloc_zone_vec_rtvec_def.

* ggc.h (ggc_alloc_rtvec_sized): Use ggc_alloc_zone_rtvec_def
instead of ggc_alloc_zone_vec_rtvec_def.

From-SVN: r177785

13 years agotree.h (ptrofftype_p): New helper function.
Richard Guenther [Tue, 16 Aug 2011 13:55:30 +0000 (13:55 +0000)]
tree.h (ptrofftype_p): New helper function.

2011-08-16  Richard Guenther  <rguenther@suse.de>

* tree.h (ptrofftype_p): New helper function.
* tree-cfg.c (verify_expr): Use ptrofftype_p for POINTER_PLUS_EXPR
offset verification.
(verify_gimple_assign_binary): Likewise.
* tree.c (build2_stat): Likewise.
* tree-chrec.c (chrec_fold_plus_poly_poly): Likewise.
(reset_evolution_in_loop): Likewise.
* tree-chrec.h (build_polynomial_chrec): Likewise.

From-SVN: r177784

13 years agoggc.h (ggc_alloc_rtvec_sized): Change arguments of ggc_alloc_zone_vec_rtvec_def.
Liang Wang [Tue, 16 Aug 2011 09:49:28 +0000 (09:49 +0000)]
ggc.h (ggc_alloc_rtvec_sized): Change arguments of ggc_alloc_zone_vec_rtvec_def.

2011-08-16  Liang Wang  <lwang1@marvell.com>

* ggc.h (ggc_alloc_rtvec_sized): Change arguments of
ggc_alloc_zone_vec_rtvec_def.

From-SVN: r177782

13 years agotree-vrp.c (extract_range_from_multiplicative_op_1): New helper factored out from ...
Richard Guenther [Tue, 16 Aug 2011 09:01:59 +0000 (09:01 +0000)]
tree-vrp.c (extract_range_from_multiplicative_op_1): New helper factored out from ...

2011-08-16  Richard Guenther  <rguenther@suse.de>

* tree-vrp.c (extract_range_from_multiplicative_op_1): New
helper factored out from ...
(extract_range_from_binary_expr_1): ... here.  Re-structure
to not glob handling too different tree codes.

From-SVN: r177781

13 years agoRemove entry for gofrontend directory which should not be here.
Ian Lance Taylor [Tue, 16 Aug 2011 04:40:41 +0000 (04:40 +0000)]
Remove entry for gofrontend directory which should not be here.

From-SVN: r177779

13 years agoDaily bump.
GCC Administrator [Tue, 16 Aug 2011 00:18:39 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r177777

13 years agoOnly run g++.dg/opt/life1.C on Linux.
H.J. Lu [Mon, 15 Aug 2011 22:04:04 +0000 (22:04 +0000)]
Only run g++.dg/opt/life1.C on Linux.

2011-08-15  H.J. Lu  <hongjiu.lu@intel.com>

PR testsuite/50085
* g++.dg/opt/life1.C: Only run on Linux.

From-SVN: r177772

13 years agofix Change log
Xinliang David Li [Mon, 15 Aug 2011 20:43:07 +0000 (20:43 +0000)]
fix Change log

From-SVN: r177769

13 years agoLINEMAP_POSITION_FOR_COLUMN had the exact same effect as linemap_position_for_column...
Gabriel Charette [Mon, 15 Aug 2011 20:35:58 +0000 (20:35 +0000)]
LINEMAP_POSITION_FOR_COLUMN had the exact same effect as linemap_position_for_column...

LINEMAP_POSITION_FOR_COLUMN had the exact same effect as
linemap_position_for_column, removed it and updated users
to use linemap_position_for_column instead

        libcpp/ChangeLog
* include/line-map.h (LINEMAP_POSITION_FOR_COLUMN): Remove.
Update all users to use linemap_position_for_column instead.

        gcc/go/ChangeLog
* gofrontend/lex.cc (Lex::location): Update to use
linemap_position_for_column instead.
        (Lex::earlier_location): Likewise.

From-SVN: r177768

13 years agoresolve.c (resolve_symbol): Fix coarray result-var check.
Tobias Burnus [Mon, 15 Aug 2011 20:10:51 +0000 (22:10 +0200)]
resolve.c (resolve_symbol): Fix coarray result-var check.

2011-08-15  Tobias Burnus  <burnus@net-b.de>

        * resolve.c (resolve_symbol): Fix coarray result-var check.

2011-08-15  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/coarray_26.f90: New.

From-SVN: r177767

13 years agore PR debug/50006 (ICE in in connect_traces, at dwarf2cfi.c:2677)
Richard Henderson [Mon, 15 Aug 2011 17:44:11 +0000 (10:44 -0700)]
re PR debug/50006 (ICE in in connect_traces, at dwarf2cfi.c:2677)

PR middle-end/50006
        * explow.c (allocate_dynamic_stack_space): Move suppress_reg_args_size
        setting out to include allocate_stack named pattern as well.
        * builtins.c (expand_builtin_apply): Add ARG_SIZE 0 note.
        * stmt.c (expand_stack_restore): Likewise.

From-SVN: r177764

13 years agoFix typo last change
Hans-Peter Nilsson [Mon, 15 Aug 2011 16:34:57 +0000 (16:34 +0000)]
Fix typo last change

From-SVN: r177763

13 years agore PR tree-optimization/50082 (-Wstrict-overflow mishandles typedef)
Richard Guenther [Mon, 15 Aug 2011 15:01:33 +0000 (15:01 +0000)]
re PR tree-optimization/50082 (-Wstrict-overflow mishandles typedef)

2011-08-15  Richard Guenther  <rguenther@suse.de>

PR middle-end/50082
* fold-const.c (maybe_canonicalize_comparison_1): Properly
convert the modified operand to the other operand type.
(fold_comparison): Call maybe_canonicalize_comparison_1 with
useless conversions stripped from comparison operands.

From-SVN: r177762

13 years agotree-vrp.c (value_range_nonnegative_p): Fix anti-range case.
Richard Guenther [Mon, 15 Aug 2011 14:32:12 +0000 (14:32 +0000)]
tree-vrp.c (value_range_nonnegative_p): Fix anti-range case.

2011-08-15  Richard Guenther  <rguenther@suse.de>

* tree-vrp.c (value_range_nonnegative_p): Fix anti-range case.
(extract_range_from_unary_expr_1): Restructure.

From-SVN: r177761

13 years agore PR tree-optimization/50058 (FAIL: g++.dg/tree-ssa/pr41186.C)
Richard Guenther [Mon, 15 Aug 2011 12:17:33 +0000 (12:17 +0000)]
re PR tree-optimization/50058 (FAIL: g++.dg/tree-ssa/pr41186.C)

2011-08-15  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/50058
* tree-ssa-sccvn.c (vn_reference_lookup_3): Relax aggregate
copy matching.

From-SVN: r177760

13 years agore PR target/50022 ("incorrect condition in IT block" when building mozilla code...
Ramana Radhakrishnan [Mon, 15 Aug 2011 11:57:33 +0000 (11:57 +0000)]
re PR target/50022 ("incorrect condition in IT block" when building mozilla code base for ARM)

2011-08-15  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>

PR target/50022
* config/arm/arm.c (output_move_double): Add 2 parameters
to count the number of insns emitted and whether to emit or not.
Use the flag to decide when to emit and count number of instructions
that will be emitted.
Handle case where output_move_double might be called for calculating
lengths with an invalid constant.
(arm_count_output_move_double_insns): Define.
* config/arm/arm-protos.h (arm_count_output_move_double_insns): Declare.
(output_move_double): Adjust prototype.
* config/arm/vfp.md ("*movdi_vfp"): Adjust call to
output_move_double.
("*movdi_vfp_cortexa8"): Likewise and add attribute
for ce_count.
* config/arm/arm.md ("*arm_movdi"): Adjust call to output_move_double.
("*movdf_soft_insn"): Likewise.
* config/arm/cirrus.md ("*cirrus_arm_movdi"): Likewise.
("*cirrus_thumb2_movdi"): Likewise.
("*thumb2_cirrus_movdf_hard_insn"): Likewise.
("*cirrus_movdf_hard_insn"): Likewise.
* config/arm/neon.md (*neon_mov<mode> VD): Likewise.
* config/arm/iwmmxt.md ("*iwmmxt_arm_movdi"): Likewise.
("mov<mode>_internal VMMX"): Likewise.
* config/arm/fpa.md (*movdf_fpa, *thumb2_movdf_fpa): Likewise.

From-SVN: r177759

13 years agovrp61.c: : Use -fdump-tree-vrp1-nouid instead of -fdump-tree-vrp1.
Hans-Peter Nilsson [Mon, 15 Aug 2011 10:07:25 +0000 (10:07 +0000)]
vrp61.c: : Use -fdump-tree-vrp1-nouid instead of -fdump-tree-vrp1.

* gcc.dg/tree-ssa/vrp61.c: : Use -fdump-tree-vrp1-nouid instead of
-fdump-tree-vrp1.

From-SVN: r177758

13 years ago*: Image and image filename changes.
Benjamin Kosnik [Mon, 15 Aug 2011 00:54:18 +0000 (00:54 +0000)]
*: Image and image filename changes.

2011-08-14  Benjamin Kosnik  <bkoz@redhat.com>

* doc/xml/images/*: Image and image filename changes.

From-SVN: r177757

13 years agomake_graph_test_infos.xml: Edit.
Benjamin Kosnik [Mon, 15 Aug 2011 00:51:06 +0000 (00:51 +0000)]
make_graph_test_infos.xml: Edit.

2011-08-14  Benjamin Kosnik  <bkoz@redhat.com>

* testsuite/data/make_graph_test_infos.xml: Edit.
* testsuite/data/make_graph_htmls.xml: Remove
* scripts/make_graph.py: Edit, fix.
* scripts/make_graphs.py: Remove.

* doc/Makefile.am (doc-svg-performance): New.
(doc-html-performance): Remove.
* doc/Makefile.in: Regenerate.

* doc/xml/manual/test_policy_data_structures.xml: Markup changes.
* doc/xml/manual/policy_data_structures.xml: Same.
* doc/xml/manual/locale.xml: Same.

Testsuite renames.
* performance/ext/pb_ds/priority_queue_text_modify_down_timing.cc:
Rename.
* performance/ext/pb_ds/random_int_find_timing.cc: Same.
* performance/ext/pb_ds/multimap_text_insert_mem_usage.hpp
* performance/ext/pb_ds/multimap_text_find_timing.hpp
* performance/ext/pb_ds/priority_queue_random_int_push_timing.cc: Same.
* performance/ext/pb_ds/priority_queue_text_modify_timing.hpp
* performance/ext/pb_ds/tree_order_statistics_timing.cc: Same.
* performance/ext/pb_ds/multimap_text_insert_mem_usage_large.cc: Same.
* performance/ext/pb_ds/priority_queue_text_push_pop_timing.cc: Same.
* performance/ext/pb_ds/priority_queue_text_join_timing.cc: Same.
* performance/ext/pb_ds/multimap_text_insert_timing_small.cc: Same.
* performance/ext/pb_ds/random_int_subscript_insert_timing.cc: Same.
* performance/ext/pb_ds/tree_text_lor_find_timing.cc: Same.
* performance/ext/pb_ds/priority_queue_text_pop_mem_usage.cc: Same.
* performance/ext/pb_ds/multimap_text_find_timing_small.cc: Same.
* performance/ext/pb_ds/text_find_timing.cc: Same.
* performance/ext/pb_ds/tree_text_insert_timing.cc: Same.
* performance/ext/pb_ds/hash_random_int_erase_mem_usage.cc: Same.
* performance/ext/pb_ds/random_int_subscript_find_timing.cc: Same.
* performance/ext/pb_ds/priority_queue_text_push_timing.cc: Same.
* performance/ext/pb_ds/tree_split_join_timing.cc: Same.
* performance/ext/pb_ds/multimap_text_insert_timing_large.cc: Same.
* performance/ext/pb_ds/priority_queue_text_modify_up_timing.cc: Same.
* performance/ext/pb_ds/multimap_text_find_timing_large.cc: Same.
* performance/ext/pb_ds/priority_queue_random_int_push_pop_timing.cc:
Same.
* performance/ext/pb_ds/multimap_text_insert_timing.hpp
* performance/ext/pb_ds/multimap_text_insert_mem_usage_small.cc: Same.
* performance/ext/pb_ds/hash_zlob_random_int_find_timing.cc: Same.

* performance/ext/pb_ds/all_int_find.cc: To these new files...
* performance/ext/pb_ds/all_int_subscript_find.cc: ...this.
* performance/ext/pb_ds/all_int_subscript_insert.cc: ...this.
* performance/ext/pb_ds/all_text_find.cc: ...this.
* performance/ext/pb_ds/hash_int_erase_mem.cc: ...this.
* performance/ext/pb_ds/hash_zlob_int_find.cc: ...this.
* performance/ext/pb_ds/multimap_text_find.hpp
* performance/ext/pb_ds/multimap_text_find_large.cc: ...this.
* performance/ext/pb_ds/multimap_text_find_small.cc: ...this.
* performance/ext/pb_ds/multimap_text_insert.hpp
* performance/ext/pb_ds/multimap_text_insert_large.cc: ...this.
* performance/ext/pb_ds/multimap_text_insert_mem.hpp
* performance/ext/pb_ds/multimap_text_insert_mem_large.cc: ...this.
* performance/ext/pb_ds/multimap_text_insert_mem_small.cc: ...this.
* performance/ext/pb_ds/multimap_text_insert_small.cc: ...this.
* performance/ext/pb_ds/priority_queue_int_push.cc: ...this.
* performance/ext/pb_ds/priority_queue_int_push_pop.cc: ...this.
* performance/ext/pb_ds/priority_queue_text_join.cc: ...this.
* performance/ext/pb_ds/priority_queue_text_modify_down.cc: ...this.
* performance/ext/pb_ds/priority_queue_text_modify.hpp
* performance/ext/pb_ds/priority_queue_text_modify_up.cc: ...this.
* performance/ext/pb_ds/priority_queue_text_pop_mem.cc: ...this.
* performance/ext/pb_ds/priority_queue_text_push.cc: ...this.
* performance/ext/pb_ds/priority_queue_text_push_pop.cc: ...this.
* performance/ext/pb_ds/tree_order_statistics.cc: ...this.
* performance/ext/pb_ds/tree_split_join.cc: ...this.
* performance/ext/pb_ds/tree_text_insert.cc: ...this.
* performance/ext/pb_ds/tree_text_lor_find.cc: ...this.

* doc/xml/images/*: Image and image filename changes.

From-SVN: r177756

13 years agoDaily bump.
GCC Administrator [Mon, 15 Aug 2011 00:18:30 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r177755

13 years agoi386.c (ix86_expand_round_sse4): New function.
Uros Bizjak [Sun, 14 Aug 2011 20:02:32 +0000 (22:02 +0200)]
i386.c (ix86_expand_round_sse4): New function.

* config/i386/i386.c (ix86_expand_round_sse4): New function.
* config/i386/i386-protos.h (ix86_expand_round_sse4): New prototype.
* config/i386/i386.md (round<mode>2): Use ix86_expand_round_sse4
for TARGET_ROUND.

(rint<mode>2): Simplify TARGET_ROUND check.
(floor<mode>2): Ditto.
(ceil<mode>2): Ditto.
(btrunc<mode>2): Ditto.

From-SVN: r177751

13 years agomodule.c (use_iso_fortran_env_module): Spell 'referrenced' correctly.
Steven G. Kargl [Sun, 14 Aug 2011 18:00:51 +0000 (18:00 +0000)]
module.c (use_iso_fortran_env_module): Spell 'referrenced' correctly.

2011-08-14  Steven G. Kargl  <kargl@gcc.gnu.org>

* module.c (use_iso_fortran_env_module):  Spell 'referrenced' correctly.

From-SVN: r177750

13 years agommix.c (TARGET_PREFERRED_OUTPUT_RELOAD_CLASS): Redefine as mmix_preferred_output_relo...
Anatoly Sokolov [Sun, 14 Aug 2011 17:16:42 +0000 (21:16 +0400)]
mmix.c (TARGET_PREFERRED_OUTPUT_RELOAD_CLASS): Redefine as mmix_preferred_output_reload_class.

* config/mmix/mmix.c (TARGET_PREFERRED_OUTPUT_RELOAD_CLASS): Redefine
as mmix_preferred_output_reload_class.

From-SVN: r177749

13 years agoconfigure.ac (tic6x-*-*): Remove gdb from noconfigdirs.
Yao Qi [Sun, 14 Aug 2011 12:25:15 +0000 (12:25 +0000)]
configure.ac (tic6x-*-*): Remove gdb from noconfigdirs.

* configure.ac (tic6x-*-*): Remove gdb from noconfigdirs.
* configure: Regenerate.

From-SVN: r177746

13 years agore PR fortran/50073 (gfortran must not accept function name when result name is present)
Janus Weil [Sun, 14 Aug 2011 09:37:25 +0000 (11:37 +0200)]
re PR fortran/50073 (gfortran must not accept function name when result name is present)

2011-08-14  Janus Weil  <janus@gcc.gnu.org>

PR fortran/50073
* decl.c (check_function_name): New function, separated off from
'variable_decl' and slightly extended.
(variable_decl,attr_decl1): Call it.

2011-08-14  Janus Weil  <janus@gcc.gnu.org>

PR fortran/50073
* gfortran.dg/func_result_7.f90: New.

From-SVN: r177745

13 years agore PR target/49903 ([avr] Redundant comparisons in binary-search switch/case expansion)
Georg-Johann Lay [Sun, 14 Aug 2011 09:10:13 +0000 (09:10 +0000)]
re PR target/49903 ([avr] Redundant comparisons in binary-search switch/case expansion)

* PR target/49903
* config/avr/avr.md (UNSPEC_IDENTITY): New c_enum.
(branch_unspec): New insn.
(branch): Beauty farm.
* config/avr/avr.c (compare_condition): Use JUMP_P.  Test SET_SRC
to be IF_THEN_ELSE.
(avr_compare_pattern, avr_reorg_remove_redundant_compare):
New static functions.
(avr_reorg): Use them.  Use next_real_insn instead of NEXT_INSN.
Use CONST_INT_P.  Beauty.

From-SVN: r177744

13 years agore PR c++/50075 ([C++0x] ICE related to parameter deduction and initializer_list)
Jason Merrill [Sun, 14 Aug 2011 04:41:43 +0000 (00:41 -0400)]
re PR c++/50075 ([C++0x] ICE related to parameter deduction and initializer_list)

PR c++/50075
* name-lookup.c (local_bindings_p): New.
* name-lookup.h: Declare it.
* lex.c (unqualified_name_lookup_error): Use it.

From-SVN: r177743

13 years agoDaily bump.
GCC Administrator [Sun, 14 Aug 2011 00:18:35 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r177741

13 years agore PR c++/50059 ([C++0x] Broken error message with __builtin_remquo & constexpr)
Jason Merrill [Sat, 13 Aug 2011 20:03:23 +0000 (16:03 -0400)]
re PR c++/50059 ([C++0x] Broken error message with __builtin_remquo & constexpr)

PR c++/50059
* error.c (dump_expr): Handle MODIFY_EXPR properly.

From-SVN: r177735

13 years agodecl.c (grok_reference_init): Handle constexpr here.
Jason Merrill [Sat, 13 Aug 2011 20:03:15 +0000 (16:03 -0400)]
decl.c (grok_reference_init): Handle constexpr here.

* decl.c (grok_reference_init): Handle constexpr here.
* call.c (initialize_reference): Not here.

From-SVN: r177734

13 years agoFix bug in vtable initialization
David Li [Sat, 13 Aug 2011 05:13:57 +0000 (05:13 +0000)]
Fix bug in vtable initialization

From-SVN: r177731

13 years agoDaily bump.
GCC Administrator [Sat, 13 Aug 2011 00:19:09 +0000 (00:19 +0000)]
Daily bump.

From-SVN: r177728

13 years agore PR c++/50034 (Overload selection failure within class template)
Jason Merrill [Fri, 12 Aug 2011 21:27:52 +0000 (17:27 -0400)]
re PR c++/50034 (Overload selection failure within class template)

PR c++/50034
* call.c (convert_arg_to_ellipsis): force_rvalue only in
potentially evaluated context.

From-SVN: r177722

13 years agore PR rtl-optimization/49994 (ICE: in maybe_record_trace_start, at dwarf2cfi.c:2234...
Richard Henderson [Fri, 12 Aug 2011 21:00:00 +0000 (14:00 -0700)]
re PR rtl-optimization/49994 (ICE: in maybe_record_trace_start, at dwarf2cfi.c:2234 with -fsched2-use-superblocks)

PR rtl-opt/49994
        * sched-init.h (struct deps_desc): Add sched_before_next_jump.
        * sched-deps.c (init_deps): Clear it.
        (deps_analyze_insn): Consume it.
        (sched_analyze_insn): Fill it.

From-SVN: r177721

13 years agoFix changelog
Richard Sandiford [Fri, 12 Aug 2011 20:28:18 +0000 (20:28 +0000)]
Fix changelog

From-SVN: r177720

13 years agore PR bootstrap/50047 (Revision 177670 failed to bootstrap)
Paolo Bonzini [Fri, 12 Aug 2011 17:13:04 +0000 (17:13 +0000)]
re PR bootstrap/50047 (Revision 177670 failed to bootstrap)

2011-08-12  Paolo Bonzini  <bonzini@gnu.org>

PR bootstrap/50047
* Makefile.in (install-unwind_h): Create
$(gcc_objdir)/include/unwind.h atomically.

From-SVN: r177706

13 years agoFix PR target/48328 part 1
Ramana Radhakrishnan [Fri, 12 Aug 2011 16:58:09 +0000 (16:58 +0000)]
Fix PR target/48328 part 1

From-SVN: r177705

13 years agodata-streamer.h (streamer_write_zero): Rename from output_zero.
Diego Novillo [Fri, 12 Aug 2011 16:42:13 +0000 (12:42 -0400)]
data-streamer.h (streamer_write_zero): Rename from output_zero.

* data-streamer.h (streamer_write_zero): Rename from output_zero.
  (streamer_write_uhwi): Rename from lto_output_uleb128.
  (streamer_write_hwi): Rename from output_sleb128.
  (streamer_write_string): Rename from lto_output_string.
  (streamer_string_index): Rename from lto_string_index.
  (streamer_write_string_with_length): Rename from
  lto_output_string_with_length.
  (streamer_write_uhwi_stream): Rename from lto_output_uleb128_stream.
  (streamer_write_hwi_stream): Rename from lto_output_sleb128_stream.
  (streamer_read_string): Rename from lto_input_string.
  (streamer_read_indexed_string): Rename from input_string_internal.
  (streamer_read_uhwi): Rename from lto_input_uleb128.
  (streamer_read_hwi): Rename from lto_input_sleb128.
  (streamer_write_hwi_in_range): Rename from lto_output_int_in_range.
  (streamer_read_hwi_in_range): Rename from lto_input_int_in_range.
  (streamer_write_enum): Rename from lto_output_enum.
  (streamer_read_enum): Rename from lto_input_enum.
  (streamer_write_record_start): Rename from output_record_start.
  (streamer_read_record_start): Rename from input_record_start.
  (streamer_write_bitpack): Rename from lto_output_bitpack.
  (streamer_read_bitpack): Rename from lto_input_bitpack.
  (streamer_write_char_stream): Rename from lto_output_1_stream.
  (streamer_read_uchar): Rename from lto_input_1_unsigned.
  * tree-streamer.h (streamer_cache_d): Rename from lto_streamer_cache_d.
  (streamer_handle_as_builtin_p): Rename from lto_stream_as_builtin_p.
  (streamer_read_string_cst): Rename from input_string_cst.
  (streamer_read_chain): Rename from lto_input_chain.
  (streamer_alloc_tree): Rename from lto_materialize_tree.
  (streamer_read_tree_body): Rename from lto_input_tree_pointers.
  (streamer_get_pickled_tree): Rename from lto_get_pickled_tree.
  (streamer_get_builtin_tree): Rename from lto_get_builtin_tree.
  (streamer_read_integer_cst): Rename from lto_input_integer_cst.
  (streamer_read_tree_bitfields): Rename from tree_read_bitfields.
  (streamer_write_chain): Rename from lto_output_chain.
  (streamer_write_tree_header): Rename from lto_output_tree_header.
  (streamer_pack_tree_bitfields): Rename from pack_value_fields.
  (streamer_write_tree_body): Rename from lto_output_tree_pointers.
  (streamer_write_integer_cst): Rename from lto_output_integer_cst.
  (streamer_write_builtin): Rename from lto_output_builtin_tree.
  (streamer_check_handled_ts_structures): Rename from
  check_handled_ts_structures.
  (streamer_tree_cache_insert): Rename from lto_streamer_cache_insert.
  (streamer_tree_cache_insert_at): Rename from
  lto_streamer_cache_insert_at.
  (streamer_tree_cache_append): Rename from lto_streamer_cache_append.
  (streamer_tree_cache_lookup): Rename from lto_streamer_cache_lookup.
  (streamer_tree_cache_get): Rename from lto_streamer_cache_get.
  (streamer_tree_cache_create): Rename from lto_streamer_cache_create.
  (streamer_tree_cache_delete): Rename from lto_streamer_cache_delete.
  * tree-streamer-out.c (write_string_cst): Rename from output_string_cst.
  (write_identifier): Rename from output_identifier.
  (write_ts_common_tree_pointers): Rename from
  lto_output_ts_common_tree_pointers.
  (write_ts_vector_tree_pointers): Rename from
  lto_output_ts_vector_tree_pointers.
  (write_ts_complex_tree_pointers): Rename from
  lto_output_ts_complex_tree_pointers.
  (write_ts_decl_minimal_tree_pointers): Rename from
  lto_output_ts_decl_minimal_tree_pointers.
  (write_ts_decl_common_tree_pointers): Rename from
  lto_output_ts_decl_common_tree_pointers.
  (write_ts_decl_non_common_tree_pointers): Rename from
  lto_output_ts_decl_non_common_tree_pointers.
  (write_ts_decl_with_vis_tree_pointers): Rename from
  lto_output_ts_decl_with_vis_tree_pointers.
  (write_ts_field_decl_tree_pointers): Rename from
  lto_output_ts_field_decl_tree_pointers.
  (write_ts_function_decl_tree_pointers): Rename from
  lto_output_ts_function_decl_tree_pointers.
  (write_ts_type_common_tree_pointers): Rename from
  lto_output_ts_type_common_tree_pointers.
  (write_ts_type_non_common_tree_pointers): Rename from
  lto_output_ts_type_non_common_tree_pointers.
  (write_ts_list_tree_pointers): Rename from
  lto_output_ts_list_tree_pointers.
  (write_ts_vec_tree_pointers): Rename from
  lto_output_ts_vec_tree_pointers.
  (write_ts_exp_tree_pointers): Rename from
  lto_output_ts_exp_tree_pointers.
  (write_ts_block_tree_pointers): Rename from
  lto_output_ts_block_tree_pointers.
  (write_ts_binfo_tree_pointers): Rename from
  lto_output_ts_binfo_tree_pointers.
  (write_ts_constructor_tree_pointers): Rename from
  lto_output_ts_constructor_tree_pointers.
  (write_ts_target_option): Rename from
  lto_output_ts_target_option.
  (write_ts_translation_unit_decl_tree_pointers): Rename from
  lto_output_ts_translation_unit_decl_tree_pointers.
  * tree-streamer.c (streamer_tree_cache_add_to_node_array):
  Rename from lto_streamer_cache_add_to_node_array.
  (streamer_tree_cache_insert_1): Rename from lto_streamer_cache_insert_1.
  (record_common_node): Rename from lto_record_common_node.

* streamer-hooks.h (bitpack_d, lto_streamer_cache_d): Remove forward
declarations.
* data-streamer-in.c (lto_input_widest_uint_uleb128): Remove unused
function.
* data-streamer-out.c (lto_output_widest_uint_uleb128_stream): Remove
unused function.
* Makefile.in (lto-section-out.o): Add dependency on DATA_STREAMER_H.
(ipa-reference.o): Likewise.
* lto-section-out.c: Include data-streamer.h.
* ipa-reference.c: Include data-streamer.h.

From-SVN: r177704

13 years agobuiltins.c (expand_builtin_memcmp): Do not use cmpstrnsi pattern.
Nick Clifton [Fri, 12 Aug 2011 16:26:11 +0000 (16:26 +0000)]
builtins.c (expand_builtin_memcmp): Do not use cmpstrnsi pattern.

* builtins.c (expand_builtin_memcmp): Do not use cmpstrnsi
pattern.
* doc/md.texi (cmpstrn): Note that the comparison stops if both
fetched bytes are zero.
(cmpstr): Likewise.
(cmpmem): Note that the comparison does not stop if both of the
fetched bytes are zero.

From-SVN: r177701

13 years agomd5.c (md5_read_ctx): Handle mis-aligned resbuf pointer.
Steve Ellcey [Fri, 12 Aug 2011 16:06:57 +0000 (16:06 +0000)]
md5.c (md5_read_ctx): Handle mis-aligned resbuf pointer.

2011-08-12  Steve Ellcey  <sje@cup.hp.com>

* md5.c (md5_read_ctx): Handle mis-aligned resbuf pointer.

From-SVN: r177700

13 years agocmath (fmod(_Tp, _Up)): Add.
Paolo Carlini [Fri, 12 Aug 2011 15:40:01 +0000 (15:40 +0000)]
cmath (fmod(_Tp, _Up)): Add.

2011-08-12  Paolo Carlini  <paolo.carlini@oracle.com>

* include/c_global/cmath (fmod(_Tp, _Up)): Add.
* include/c_std/cmath: Likewise.

From-SVN: r177698

13 years agobuiltins.def (BUILT_IN_ICEIL{,F,L}, [...]): New builtin definitions.
Uros Bizjak [Fri, 12 Aug 2011 12:32:41 +0000 (14:32 +0200)]
builtins.def (BUILT_IN_ICEIL{,F,L}, [...]): New builtin definitions.

* builtins.def (BUILT_IN_ICEIL{,F,L}, BUILT_IN_IFLOOR{,F,L}
BUILT_IN_IRINT{,F,L}, BUILT_IN_IROUND{,F,L}: New builtin definitions.
* convert.c (convert_to_integer): Convert to BUILT_IN_ICEIL,
BUILT_IN_IFLOOR, BUILT_IN_IRINT or BUILT_INT_IROUND when converting
to integer_type_node.
* fold-const.c (tree_call_nonnegative_warnv_p): Handle BUILT_IN_ICEIL,
BUILT_IN_IFLOOR, BUILT_IN_IRINT and BUILT_INT_IROUND.
* builtins.c (expand_builtin_in): Ditto.
(mathfn_built_in_1): Ditto.
(expand_builtin_int_roundingfn): Handle BUILT_IN_ICEIL and
BUILT_IN_IFLOOR.
(expand_builtin_int_roundingfn_2): Handle BUILT_IN_IRINT and
BUILT_IN_IROUND.
(fold_fixed_mathfn): Canonicalize BUILT_IN_ICEIL, BUILTIN_IN_IFLOOR
BUILT_IN_IRINT and BUILT_IN_IROUND to BUILT_IN_LCEIL,
BUILTIN_IN_LFLOOR, BUILT_IN_LRINT and BUILT_IN_LROUND on ILP32 targets.

testsuite/ChangeLog:

* gcc.dg/builtins-67.c: New test.
* gcc.target/i386/conversion.c: Ditto.

From-SVN: r177694

13 years agotree-vrp.c (extract_range_from_unary_expr_1): Implement -X as 0 - X.
Richard Biener [Fri, 12 Aug 2011 11:29:01 +0000 (11:29 +0000)]
tree-vrp.c (extract_range_from_unary_expr_1): Implement -X as 0 - X.

2011-08-12  Richard Guenther  <rguenther@suse.de>

* tree-vrp.c (extract_range_from_unary_expr_1): Implement
-X as 0 - X.

From-SVN: r177693

13 years agocall.c (build_over_call): Instead of memcpy use an assignment of two MEM_REFs.
Richard Guenther [Fri, 12 Aug 2011 08:55:05 +0000 (08:55 +0000)]
call.c (build_over_call): Instead of memcpy use an assignment of two MEM_REFs.

2011-08-12  Richard Guenther  <rguenther@suse.de>

* call.c (build_over_call): Instead of memcpy use an
assignment of two MEM_REFs.

From-SVN: r177691

13 years agoinstall c-tree.h as a plugin header
Romain Geissler [Fri, 12 Aug 2011 08:19:27 +0000 (08:19 +0000)]
install c-tree.h as a plugin header

From-SVN: r177690

13 years agoarm.c (get_label_padding): New function.
Richard Sandiford [Fri, 12 Aug 2011 07:59:09 +0000 (07:59 +0000)]
arm.c (get_label_padding): New function.

gcc/
* config/arm/arm.c (get_label_padding): New function.
(create_fix_barrier, md_reorg): Likewise.

From-SVN: r177689

13 years agoDaily bump.
GCC Administrator [Fri, 12 Aug 2011 00:18:22 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r177688

13 years agore PR target/49781 ([x32] Unnecessary lea in x32 mode)
Uros Bizjak [Thu, 11 Aug 2011 20:03:29 +0000 (22:03 +0200)]
re PR target/49781 ([x32] Unnecessary lea in x32 mode)

PR target/49781
* config/i386/i386.md (*lea_5_zext): New.
(*lea_6_zext): Ditto.
* config/i386/predicates.md (const_32bit_mask): New predicate.
(lea_address_operand): Reject AND.
* config/i386/i386.c (ix86_decompose_address): Allow Dimode AND with
const_32bit_mask immediate.
(ix86_print_operand_address): Handle AND.
(memory_address_length): Ditto.

From-SVN: r177683

13 years agofuture: constexpr functions are implicitly inline.
Paolo Carlini [Thu, 11 Aug 2011 17:53:05 +0000 (17:53 +0000)]
future: constexpr functions are implicitly inline.

2011-08-11  Paolo Carlini  <paolo.carlini@oracle.com>

* include/std/future: constexpr functions are implicitly inline.
* include/std/chrono: Likewise.
* include/std/complex: Likewise.
* include/bits/move.h: Likewise.
* include/bits/stl_pair.h: Likewise.

From-SVN: r177679

13 years agoplugin.def: Add event for finish_decl.
Romain Geissler [Thu, 11 Aug 2011 15:57:38 +0000 (15:57 +0000)]
plugin.def: Add event for finish_decl.

2011-08-11  Romain Geissler  <romain.geissler@gmail.com>
            Brian Hackett  <bhackett1024@gmail.com>

gcc/ChangeLog:

      * plugin.def: Add event for finish_decl.
      * plugin.c (register_callback, invoke_plugin_callbacks): Same.
      * c-decl.c (finish_decl): Invoke callbacks on above event.
      * doc/plugins.texi: Document above event.

gcc/cp/ChangeLog:

      * decl.c (cp_finish_decl): Invoke callbacks on finish_decl event.

gcc/testsuite/ChangeLog:

      * g++.dg/plugin/decl_plugin.c: New.
      * g++.dg/plugin/decl-plugin-test.C: New.
      * g++.dg/plugin/plugin.exp: Add above testcase.

Co-Authored-By: Brian Hackett <bhackett1024@gmail.com>
From-SVN: r177674

13 years agotree-ssa-sccvn.c (vn_reference_lookup_3): Avoid redundant lookups, make looking throu...
Richard Guenther [Thu, 11 Aug 2011 15:34:46 +0000 (15:34 +0000)]
tree-ssa-sccvn.c (vn_reference_lookup_3): Avoid redundant lookups, make looking through aggregate copies stronger.

2011-08-11  Richard Guenther  <rguenther@suse.de>

* tree-ssa-sccvn.c (vn_reference_lookup_3): Avoid redundant
lookups, make looking through aggregate copies stronger.

* g++.dg/tree-ssa/pr41186.C: Un-XFAIL.

From-SVN: r177672

13 years ago* Makefile.in (install-unwind_h): Remove destination file first.
Rainer Orth [Thu, 11 Aug 2011 15:19:32 +0000 (15:19 +0000)]
* Makefile.in (install-unwind_h): Remove destination file first.

From-SVN: r177670

13 years agore PR bootstrap/50018 (fixup_args_size_notes ICE breaks m68k-linux bootstrap)
Richard Henderson [Thu, 11 Aug 2011 15:09:30 +0000 (08:09 -0700)]
re PR bootstrap/50018 (fixup_args_size_notes ICE breaks m68k-linux bootstrap)

PR bootstrap/50018
        * expr.c (fixup_args_size_notes): Accept and ignore normal calls.

From-SVN: r177669

13 years agolto-cgraph.c (input_node): Use DECL_BUILT_IN.
Richard Guenther [Thu, 11 Aug 2011 14:34:51 +0000 (14:34 +0000)]
lto-cgraph.c (input_node): Use DECL_BUILT_IN.

2011-08-11  Richard Guenther  <rguenther@suse.de>

* lto-cgraph.c (input_node): Use DECL_BUILT_IN.
* tree-vrp.c (stmt_interesting_for_vrp): Likewise.
(vrp_visit_stmt): Likewise.

From-SVN: r177668

13 years agore PR middle-end/50040 (missed warning: ‘x.y’ is used uninitialized in this function)
Richard Guenther [Thu, 11 Aug 2011 14:28:36 +0000 (14:28 +0000)]
re PR middle-end/50040 (missed warning: ‘x.y’ is used uninitialized in this function)

2011-08-11  Richard Guenther  <rguenther@suse.de>

PR middle-end/50040
* gimplify.c (gimplify_modify_expr_complex_part): Mark the
load of the other piece with TREE_NO_WARNING.
* tree-flow.h (warn_uninit): Adjust prototype.
* tree-ssa.c (warn_uninit): Take uninitialized SSA name,
the base variable and the expression that is used separately.
Properly query all TREE_NO_WARNING flags.
(struct walk_data): Remove.
(warn_uninitialized_var): Likewise.
(warn_uninitialized_vars): Do not walk gimple pieces but simply
look at all SSA uses of the statement.  Handle unused memory
separately.
* tree-ssa-uninit.c (warn_uninitialized_phi): Adjust.

* g++.dg/warn/unit-1.C: Un-XFAIL.
* gcc.dg/uninit-I.c: Likewise.

From-SVN: r177667

13 years ago* gcc.dg/graphite/run-id-pr47593.c: Remove -m32.
Michael Matz [Thu, 11 Aug 2011 13:43:05 +0000 (13:43 +0000)]
* gcc.dg/graphite/run-id-pr47593.c: Remove -m32.

From-SVN: r177666

13 years agorx.md (movsicc): Allow register to register transfers.
Kazuhiro Inaoka [Thu, 11 Aug 2011 12:34:30 +0000 (12:34 +0000)]
rx.md (movsicc): Allow register to register transfers.

* config/rx/rx.md (movsicc): Allow register to register
transfers.
(*movsicc): Likewise.
(*stcc): Restrict this pattern to EQ and NE compares.
(*stcc_reg): New pattern.  Works for any comparison but only for
register transfers.

From-SVN: r177665

13 years agoRemove bogus ChangeLog edits.
Diego Novillo [Thu, 11 Aug 2011 12:06:17 +0000 (08:06 -0400)]
Remove bogus ChangeLog edits.

From-SVN: r177662