1. 04 May, 2013 12 commits
    • environ.c: Include unistd.h. · 19f0e98f
              * runtime/environ.c: Include unistd.h.
              * runtime/pause.c: Test HAVE_UNISTD_H.
              * runtime/stop.c: Same.
              * io/open.c: Same.
              * io/unix.c: Same.
              * io/read.c (si_max): Protect declaration of value.
      
      From-SVN: r198603
      David Edelsohn committed
    • rs6000.c (INT_P): Reformat. · 4b36ae28
              * config/rs6000/rs6000.c (INT_P): Reformat.  Delete obsolete comment.
              (INT_LOWPART): Delete.
              (extract_MB): Adjust.
              (extract_ME): Adjust.
              (print_operand): Adjust.
      
      From-SVN: r198602
      Segher Boessenkool committed
    • predicates.md (reg_or_add_cint_operand, [...]): Delete "HOST_BITS_PER_WIDE_INT == 32" case. · da226db2
             * config/rs6000/predicates.md (reg_or_add_cint_operand,
             reg_or_sub_cint_operand): Delete "HOST_BITS_PER_WIDE_INT == 32" case.
             (reg_or_logical_cint_operand, easy_fp_constant,
             logical_const_operand): Delete "CONST_DOUBLE" case.
             * config/rs6000/rs6000.c (num_insns_constant_wide): Delete
             "HOST_BITS_PER_WIDE_INT == 64" test.
             (num_insns_constant): Ditto.  Delete CONST_DOUBLE DImode/VOIDmode
             case.
             (build_mask64_2_operands): Delete "HOST_BITS_PER_WIDE_INT >= 64" test.
             (rs6000_emit_set_const): Delete CONST_DOUBLE case.
             (rs6000_emit_set_long_const): Delete "HOST_BITS_PER_WIDE_INT >= 64"
             test.
             (includes_rldic_lshift_p, includes_rldicr_lshift_p): Delete
             CONST_DOUBLE DImode/VOIDmode case.
             (INT_P, INT_LOWPART): Delete CONST_DOUBLE case.
             (print_operand): Delete "HOST_BITS_PER_WIDE_INT == 32" case.  Delete
             CONST_DOUBLE VOIDmode case.
             (output_toc): Delete "HOST_BITS_PER_WIDE_INT == 32" case.
             (rs6000_rtx_costs): Delete CONST_DOUBLE DImode/VOIDmode case.
             * config/rs6000/rs6000.md (iordi3, xordi3, splitter for these):
             Delete CONST_DOUBLE case.
             (splitters for mov FMOVE64 const_double): Delete
             "HOST_BITS_PER_WIDE_INT == 32" case.  Delete
             "HOST_BITS_PER_WIDE_INT >= 64" test.
             (splitter for mov DI const_int): Delete "HOST_BITS_PER_WIDE_INT == 32"
             case.
             (mov DI const_double): Delete.
      
      From-SVN: r198601
      Segher Boessenkool committed
    • re PR tree-optimization/56205 (stdarg pass confused by jump threading) · efa5b9b3
      	PR tree-optimization/56205
      	* gcc.dg/tree-ssa/stdarg-6.c: Add cleanup-tree-dump "stdarg".
      
      From-SVN: r198599
      Jakub Jelinek committed
    • decl.c (gfc_verify_c_interop_param): Permit allocatable and pointer with -std=f2008ts. · 60f6ca95
      2013-05-04  Tobias Burnus  <burnus@net-b.de>
      
              * decl.c (gfc_verify_c_interop_param): Permit allocatable
              and pointer with -std=f2008ts.
      
      2013-05-04  Tobias Burnus  <burnus@net-b.de>
      
              * gfortran.dg/bind_c_array_params.f03: Update dg-error.
              * gfortran.dg/bind_c_usage_27.f90: New.
              * gfortran.dg/bind_c_usage_28.f90: New.
      
      From-SVN: r198597
      Tobias Burnus committed
    • inclhack.def (aix_null): New. · 0654e6be
              * inclhack.def (aix_null): New.
              (void_null): Update replacement definition of NULL.
              * fixincl.x: Regenerate.
              * tests/base/curses.h: Update for new fix.
      
      From-SVN: r198596
      David Edelsohn committed
    • combine.c (combine_simplify_rtx): If nonzero_bits on op shows all bits zero in… · 40de22d6
      combine.c (combine_simplify_rtx): If nonzero_bits on op shows all bits zero in mode of a lowpart subreg, return zero.
      
      	* combine.c (combine_simplify_rtx) <case SUBREG>: If nonzero_bits
      	on op shows all bits zero in mode of a lowpart subreg, return zero.
      
      From-SVN: r198595
      Jakub Jelinek committed
    • re PR c++/51927 ([C++0x] Cannot access non-static members in initializer) · 71871e37
      2013-05-04  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/51927
      	* g++.dg/cpp0x/lambda/lambda-nsdmi4.C: New.
      
      From-SVN: r198594
      Paolo Carlini committed
    • re PR target/57150 (GCC when targeting power7 spills long double using VSX instructions.) · 5ec6aff2
      [gcc]
      2013-05-03  Michael Meissner  <meissner@linux.vnet.ibm.com>
      
      	PR target/57150
      	* config/rs6000/rs6000.h (HARD_REGNO_CALLER_SAVE_MODE): Use DFmode
      	to save TFmode registers and DImode to save TImode registers for
      	caller save operations.
      	(HARD_REGNO_CALL_PART_CLOBBERED): TFmode and TDmode do not need to
      	mark being partially clobbered since they only use the first
      	double word.
      
      	* config/rs6000/rs6000.c (rs6000_init_hard_regno_mode_ok): TFmode
      	and TDmode only use the upper 64-bits of each VSX register.
      
      [gcc/testsuite]
      2013-05-03  Michael Meissner  <meissner@linux.vnet.ibm.com>
      
      	PR target/57150
      	* gcc.target/powerpc/pr57150.c: New file.
      
      From-SVN: r198593
      Michael Meissner committed
    • gimple-ssa-strength-reduction.c (slsr_process_phi): Disable. · 2cefad90
      gcc:
      
      2013-05-03  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
      
      	* gimple-ssa-strength-reduction.c (slsr_process_phi): Disable.
      	(find_candidates_in_block): Disable slsr_process_phi.
      
      gcc/testsuite:
      
      2013-05-03  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
      
      	* gcc.dg/tree-ssa/slsr-32.c: Skip test for now.
      	* gcc.dg/tree-ssa/slsr-33.c: Likewise.
      	* gcc.dg/tree-ssa/slsr-34.c: Likewise.
      	* gcc.dg/tree-ssa/slsr-35.c: Likewise.
      	* gcc.dg/tree-ssa/slsr-36.c: Likewise.
      	* gcc.dg/tree-ssa/slsr-37.c: Likewise.
      	* gcc.dg/tree-ssa/slsr-38.c: Likewise.
      
      From-SVN: r198592
      Bill Schmidt committed
    • coverage.c (coverage_obj_init): Move the construction of gcov constructor to · d6d7eee1
      	* coverage.c (coverage_obj_init): Move the construction of gcov
      	constructor to
      	(build_init_ctor): here.
      
      From-SVN: r198591
      Guozhi Wei committed
    • Daily bump. · 898ca809
      From-SVN: r198590
      GCC Administrator committed
  2. 03 May, 2013 15 commits
    • Remove "\\" from scan-assembler-times · 0595891e
      2013-05-03  Dominique d'Humieres  <dominiq@lps.ens.fr>
      p
      	* gcc.target/i386/sse2-init-v2di-2.c: Remove "\\" from
      	scan-assembler-times.
      
      From-SVN: r198587
      Dominique d'Humieres committed
    • gimple-ssa-strength-reduction.c (cand_kind): Add CAND_PHI. · 9b92d12b
      gcc:
      
      2013-05-03  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
      
      	* gimple-ssa-strength-reduction.c (cand_kind): Add CAND_PHI.
      	(slsr_cand_d): Redefine def_phi.
      	(stride_status, phi_adjust_status, count_phis_status): New enums.
      	(find_phi_def): New.
      	(find_basis_for_base_expr): New.
      	(find_basis_for_candidate): Handle hidden bases.
      	(alloc_cand_and_find_basis): Handle phi candidates.
      	(slsr_process_phi): New.
      	(create_mul_ssa_cand): Exclude phi base candidates; use integer_onep.
      	(create_mul_imm_cand): Likewise.
      	(create_add_ssa_cand): Exclude phi base candidates.
      	(create_add_imm_cand): Likewise.
      	(slsr_process_cast): Likewise.
      	(slsr_process_copy): Likewise.
      	(find_candidates_in_block): Handle phi candidates.
      	(dump_candidate): Likewise.
      	(unconditional_cands): Delete.
      	(unconditional_cands_with_known_stride_p): Delete.
      	(phi_dependent_cand_p): New.
      	(cand_increment): Handle phi-dependent candidates.
      	(replace_dependent): Delete.
      	(replace_mult_candidate): New.
      	(replace_unconditional_candidate): New.
      	(incr_vec_index): Move to avoid forward reference.
      	(create_add_on_incoming_edge): New.
      	(create_phi_basis): New.
      	(replace_dependents): Delete.
      	(replace_conditional_candidate): New.
      	(phi_add_costs): New.
      	(replace_uncond_cands_and_profitable_phis): New.
      	(record_increment): Handle phi adjustments.
      	(record_phi_increments): New.
      	(record_increments): Handle phi adjustments.
      	(phi_incr_cost): New.
      	(lowest_cost_path): Handle phis.
      	(total_savings): Likewise.
      	(analyze_increments): Likewise.
      	(ncd_with_phi): New.
      	(ncd_of_cand_and_phis): New.
      	(nearest_common_dominator_for_cands): Handle phi increments.
      	(all_phi_incrs_profitable): New.
      	(replace_profitable_candidates): Handle phi-dependent candidates.
      	(analyze_candidates_and_replace): Likewise.
      
      gcc/testsuite:
      
      2013-05-03  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
      
      	* gcc.dg/tree-ssa/slsr-32.c: New.
      	* gcc.dg/tree-ssa/slsr-33.c: New.
      	* gcc.dg/tree-ssa/slsr-34.c: New.
      	* gcc.dg/tree-ssa/slsr-35.c: New.
      	* gcc.dg/tree-ssa/slsr-36.c: New.
      	* gcc.dg/tree-ssa/slsr-37.c: New.
      	* gcc.dg/tree-ssa/slsr-38.c: New.
      
      From-SVN: r198586
      Bill Schmidt committed
    • AArch64 test cases for TST instruction · 72c88644
      From-SVN: r198585
      Ian Bolton committed
    • re PR bootstrap/57154 (Bootstrap broken for powerpc64-unknown-linux-gnu) · 68f073d4
      2013-05-03  Teresa Johnson  <tejohnson@google.com>
      
      	PR bootstrap/57154
      	* sched-rgn.c (compute_dom_prob_ps): Ensure accumulated probabilities
      	do not exceed REG_BR_PROB_BASE.
      
      From-SVN: r198584
      Teresa Johnson committed
    • Fix typos in ChangeLog entries · ade67f70
      From-SVN: r198583
      Jeff Law committed
    • re PR tree-optimization/57411 (ICE: verify_ssa failed: definition in block 4… · a4ee7cb9
      re PR tree-optimization/57411 (ICE: verify_ssa failed: definition in block 4 does not dominate use in block 11 with -fno-tree-dce -ftree-vectorize)
      
      	PR tree-optimization/57411
      	* tree-vrp.c (simplify_cond_using_ranges): Verify the constant
      	operand of the condition will bit into the new type when eliminating
      	a cast feeding a condition.
      
      	PR tree-optimization/57411
      	* gcc.c-torture/execute/pr57144.c: New test.
      
      From-SVN: r198582
      Jeff Law committed
    • re PR rtl-optimization/57130 (Incorrect "and --> extract" conversion in combine) · 47954c4e
      	PR rtl-optimization/57130
      	* combine.c (make_compound_operation) <case SUBREG>: Pass
      	SET instead of COMPARE as in_code to the recursive call
      	if needed.
      
      	* gcc.c-torture/execute/pr57130.c: New test.
      
      From-SVN: r198579
      Jakub Jelinek committed
    • i386.md (isa): Add x64_sse4_noavx and x64_avx members. · 3c21604f
      	* config/i386/i386.md (isa): Add x64_sse4_noavx and x64_avx members.
      	(enabled): Handle new members.
      	* config/i386/sse.md (*vec_concatv2si): Merge from
      	*vec_concatv2si_sse2 and vec_concatv2si_sse.
      	(vec_concatv2di): Merge with *vec_concatv2di_rex64.
      
      testsuite/ChangeLog:
      
      	* gcc.target/i386/sse2-init-v2di-2.c: Update scan assembler string.
      
      From-SVN: r198578
      Uros Bizjak committed
    • re PR tree-optimization/57027 (ICE in gimple_assign_rhs_code, at gimple.h:2022) · 95c03b36
      2013-05-03  Joern Rennecke <joern.rennecke@embecosm.com>
      
              PR tree-optimization/57027
              * tree-ssa-math-opts.c (convert_mult_to_fma): When checking for
              fnms opportunity, check we got the prerequisite kind of tree / gimple
              before using accessor functions.
      
      From-SVN: r198577
      Joern Rennecke committed
    • double-int.h (lshift): New overload without precision and arith argument. · 07bfc9ec
      2013-05-03  Richard Biener  <rguenther@suse.de>
      
      	* double-int.h (lshift): New overload without precision
      	and arith argument.
      	(operator *=, operator +=, operator -=): Move ...
      	* double-int.c (operator *=, operator +=, operator -=): ... here
      	and implement more efficiently.
      	(mul_double_with_sign): Remove.
      	(lshift_double): Adjust to take unsinged shift argument, push
      	dispatching code to callers.
      	(mul_double_wide_with_sign): Add early out for callers that
      	are not interested in high parts or overflow.
      	(lshift): New function.
      	(lshift, rshift, alshift, arshift, llshift, lrshift): Add
      	dispatch code here.
      	(lrotate, rrotate): Use logical shifts.
      	* expr.c (get_inner_reference): Use lshift.
      	* fixed-value.c (do_fixed_divide): Likewise.
      	* tree-dfa.c (get_ref_base_and_extent): Likewise.
      	* tree-ssa-alias.c (indirect_ref_may_alias_decl_p): Likewise.
      	(indirect_refs_may_alias_p): Likewise.
      	(stmt_kills_ref_p_1): Likewise.
      
      From-SVN: r198576
      Richard Biener committed
    • [AArch64] Correct simd_fabd comment text. · 7769bb64
      From-SVN: r198575
      Vidya Praveen committed
    • [AArch64] Support scalar FABD · 1d0c8e5c
      gcc/ChangeLog
      
      2013-05-02  Vidya Praveen  <vidyapraveen@arm.com>
      
              * config/aarch64/aarch64-simd.md (*fabd_scalar<mode>3): Support
                scalar form of FABD instruction.
      
      gcc/testsuite/ChangeLog
      
      2013-05-02  Vidya Praveen <vidyapraveen@arm.com>
      
              * gcc.target/aarch64/fabd.c: New file.
      
      From-SVN: r198574
      Vidya Praveen committed
    • re PR c++/54318 ([C++11] Bogus "template instantiation depth exceeds maximum" error + segfault) · eacb22bf
      2013-05-03  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/54318
      	* g++.dg/cpp0x/pr54318.C: New.
      
      From-SVN: r198573
      Paolo Carlini committed
    • re PR c++/14283 (Diagnostic for invalid template-id could be improved) · c067d9fe
      /cp
      2013-05-03  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/14283
      	* parser.c (cp_parser_diagnose_invalid_type_name): Improve error
      	messages for template types and fix column numbers.
      
      /testsuite
      2013-05-03  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/14283
      	* g++.dg/parse/error51.C: New.
      	* g++.dg/parse/error15.C: Adjust column numbers.
      
      From-SVN: r198572
      Paolo Carlini committed
    • Daily bump. · 79d944d2
      From-SVN: r198568
      GCC Administrator committed
  3. 02 May, 2013 13 commits
    • Add ChangeLog entry for r197770 (in boehm-gc). · 09864bc7
      From-SVN: r198562
      Yvan Roux committed
    • lra-constraints.c (process_alt_operands): Add checking alt number to choose the best alternative. · f15feaf9
      2013-05-02  Vladimir Makarov  <vmakarov@redhat.com>
      
      	* lra-constraints.c (process_alt_operands): Add checking alt
      	number to choose the best alternative.
      
      From-SVN: r198558
      Vladimir Makarov committed
    • tree-eh.c (cleanup_empty_eh_merge_phis): Remove rename_virts bitmap and its handling. · d90e76d4
      	* tree-eh.c (cleanup_empty_eh_merge_phis): Remove rename_virts
      	bitmap and its handling.
      	(pass_cleanup_eh): Set todo_flags_finish to TODO_verify_ssa.
      
      From-SVN: r198552
      Richard Biener committed
    • re PR fortran/57142 (SIZE/SHAPE overflow despite kind=8) · 1634e53f
      2013-05-02  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/57142
              * simplify.c (gfc_simplify_size): Renamed from
              simplify_size; fix kind=8 handling.
              (gfc_simplify_size): New function.
              (gfc_simplify_shape): Add range check.
              * resolve.c (resolve_function): Fix handling
              for ISYM_SIZE.
      
      2013-05-02  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/57142
              * gfortran.dg/size_kind_2.f90: New.
              * gfortran.dg/size_kind_3.f90: New.
      
      From-SVN: r198549
      Tobias Burnus committed
    • re PR middle-end/57140 (Segmentation fault in backtrace_dwarf_add) · 9f8e7a96
      2013-05-02  Richard Biener  <rguenther@suse.de>
      
      	PR middle-end/57140
      	* tree-inline.c (copy_loops): Properly handle removed loops.
      	(copy_cfg_body): Mark destination loops for fixup if source
      	loops needed fixup.
      
      	* g++.dg/torture/pr57140.C: New testcase.
      
      From-SVN: r198548
      Richard Biener committed
    • re PR rtl-optimization/56732 (ICE in advance_target_bb) · f3a81b39
      gcc/ChangeLog
      
      2013-05-02  Greta Yorsh  <Greta.Yorsh@arm.com>
      
      	PR target/56732
      	* config/arm/arm.c (arm_expand_epilogue): Check really_return before
      	generating simple_return for naked functions.
      
      gcc/testsuite/ChangeLog
      
      2013-05-02  Greta Yorsh  <Greta.Yorsh@arm.com>
      
      	PR target/56732
      	* gcc.target/arm/pr56732-1.c: New test.
      
      From-SVN: r198547
      Greta Yorsh committed
    • re PR middle-end/56988 (ipa-cp incorrectly propagates a field of an aggregate) · 7b920a9a
      2013-05-02  Martin Jambor  <mjambor@suse.cz>
      
      	PR middle-end/56988
      	* ipa-prop.h (ipa_agg_replacement_value): New flag by_ref.
      	* ipa-cp.c (ipa_get_indirect_edge_target_1): Also check that by_ref
      	flags match.
      	(find_aggregate_values_for_callers_subset): Fill in the by_ref flag of
      	ipa_agg_replacement_value structures.
      	(known_aggs_to_agg_replacement_list): Likewise.
      	* ipa-prop.c (write_agg_replacement_chain): Stream by_ref flag.
      	(read_agg_replacement_chain): Likewise.
      	(ipcp_transform_function): Also check that by_ref flags match.
      
      testsuite/
      	* gcc.dg/ipa/pr56988.c: New test.
      
      From-SVN: r198540
      Martin Jambor committed
    • graphds.h (struct graph): Add obstack member. · 2c41c19d
      2013-05-02  Richard Biener  <rguenther@suse.de>
      
      	* graphds.h (struct graph): Add obstack member.
      	* graphds.c (new_graph): Initialize obstack and allocate
      	vertices from it.
      	(add_edge): Allocate edge from the obstack.
      	(free_graph): Free the obstack instead of all edges and
      	vertices.
      
      From-SVN: r198539
      Richard Biener committed
    • Follow-on patch to r197595 to complete the replacement of truncating divides in... · 8b47039c
      Follow-on patch to r197595 to complete the replacement of truncating divides
      in profile scaling code with rounding divide equivalents using helper routines
      in basic-block.h. 
      
      In addition to bootstrap and profiledbootstrap builds and tests (with and
      without LTO), I built and tested performance of the SPEC cpu2006 benchmarks
      with FDO on a Nehalem system. I didn't see any performance changes that
      looked significant.
      
      2013-05-02  Teresa Johnson  <tejohnson@google.com>
      
      	* loop-unswitch.c (unswitch_loop): Use helper routines with rounding
              divides.
      	* cfg.c (update_bb_profile_for_threading): Ditto.
      	* tree-inline.c (copy_bb): Ditto.
      	(copy_edges_for_bb): Ditto.
      	(initialize_cfun): Ditto.
      	(copy_cfg_body): Ditto.
      	(expand_call_inline): Ditto.
      	* ipa-inline-analysis.c (estimate_edge_size_and_time): Ditto.
      	(estimate_node_size_and_time): Ditto.
      	(inline_merge_summary): Ditto.
      	* cgraphclones.c (cgraph_clone_edge): Ditto.
      	(cgraph_clone_node): Ditto.
      	* sched-rgn.c (compute_dom_prob_ps): Ditto.
      	(compute_trg_info): Ditto.
      
      From-SVN: r198532
      Teresa Johnson committed
    • AArch64 fix for LDR/STR from/to S and D regs · da65928c
      From-SVN: r198527
      Ian Bolton committed
    • AArch64 Support for BICS in the backend · add3c965
      From-SVN: r198526
      Ian Bolton committed
    • tree-scalar-evolution.c (scev_info_hasher): Remove. · fdd43ac4
      2013-05-02  Richard Biener  <rguenther@suse.de>
      
      	* tree-scalar-evolution.c (scev_info_hasher): Remove.
      	(struct instantiate_cache_entry): New type.
      	(struct instantiate_cache_entry_hasher): New hashtable descriptor.
      	(struct instantiate_cache_type): New type.
      	(set_instantiated_value, get_instantiated_value): Remove.
      	(get_instantiated_value_entry): New function.
      	(instantiate_scev_name): Use the new cache and adjust.
      	(instantiate_scev_poly): Adjust.
      	(instantiate_scev_binary): Likewise.
      	(instantiate_array_ref): Likewise.
      	(instantiate_scev_convert): Likewise.
      	(instantiate_scev_not): Likewise.
      	(instantiate_scev_3): Likewise.
      	(instantiate_scev_2): Likewise.
      	(instantiate_scev_r): Likewise.
      	(instantiate_scev): Likewise.
      	(resolve_mixers): Likewise.
      
      From-SVN: r198523
      Richard Biener committed
    • constexpr_data.cc: Move... · b273e79b
      2013-05-02  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* testsuite/tr1/4_metaprogramming/integral_constant/requirements/
      	constexpr_data.cc: Move...
      	* testsuite/20_util/integral_constant/requirements/constexpr_data.cc:
      	... here.
      	* testsuite/20_util/integral_constant/requirements/
      	explicit_instantiation.cc: New.
      	* testsuite/20_util/integral_constant/requirements/typedefs.cc:
      	Likewise.
      	* testsuite/20_util/integral_constant/static_definition.cc: Likewise.
      	* testsuite/20_util/integral_constant/true_false_type_typedefs.cc:
      	Likewise.
      	* testsuite/20_util/integral_constant/true_false_value.cc: Likewise.
      	* testsuite/20_util/integral_constant/operator_value_type.cc: Likewise.
      
      From-SVN: r198521
      Paolo Carlini committed