1. 18 Sep, 2015 9 commits
    • [PATCH] Break out phi-only cprop into its own file · a502f7b6
      	PR tree-optimization/47679
      	* Makefile.in (OBJS): Add tree-ssa-phionlycprop.o
      	* tree-ssa-dom.c: Remove unnecessary header includes.
      	(remove_stmt_or_phi): Moved from here into tree-ssa-phionlycprop.c
      	(get_rhs_or_phi_arg, get_lhs_or_phi_result): Likewise.
      	(propagate_rhs_into_lhs, eliminate_const_or_copy): Likewise.
      	(eliminate_degenerate_phis_1, pass_phi_only_cprop): Likewise.
      	(pass_phi_only_cprop::execute): Likewise.
      	(make_pass_phi_only_cprop): Likewise.
      	* tree-ssa-phionlycprop.c: New file with moved code.  Eliminate
      	uses of file scoped statics by passing the required objects
      	as parameters wherever needed.
      
      From-SVN: r227908
      Jeff Law committed
    • aix61.h (STARTFILE_SPEC): Add crtdbase.o. · e707a2dd
              * config/rs6000/aix61.h (STARTFILE_SPEC): Add crtdbase.o.
              * config/rs6000/rs6000-protos.h (rs6000_asm_output_dwarf_pcrel):
              Declare.
              (rs6000_asm_output_dwarf_datarel): Declare.
      
      Co-Authored-By: David Edelsohn <dje.gcc@gmail.com>
      
      From-SVN: r227907
      Andrew Dixie committed
    • config.host (powerpc-ibm-aix*): Add crtdbase.o to extra_parts. · 04218b35
      libgcc/
              * config.host (powerpc-ibm-aix*): Add crtdbase.o to extra_parts.
              * config/rs6000/crtdbase.S: New file.
              * config/rs6000/t-aix-cxa: Build crtdbase.o.
      
      gcc/
              * defaults.h (EH_FRAME_SECTION_NAME): Depend on
              EH_FRAME_THROUGH_COLLECT2.
              * dwarf2asm.c (dw2_asm_output_encoded_addr_rtx): Add case for
              DW_EH_PE_datarel.
              * dwarf2out.c (switch_to_eh_frame_section): Use a read-only section
              even if EH_FRAME_SECTION_NAME is undefined.  Restrict special
              collect2 labels to EH_FRAME_THROUGH_COLLECT2.
              * except.c (switch_to_exception_section): Use a read-only section
              even if EH_FRAME_SECTION_NAME is undefined.
              * system.h (EH_FRAME_IN_DATA_SECTION): Poison.
              * collect2.c (write_c_file_stat): Provide dbase on AIX.
              (scan_prog_file): Don't export __dso_handle nor
              __gcc_unwind_dbase.
              * config/rs6000/aix.h (ASM_PREFERRED_EH_DATA_FORMAT): Define.
              (EH_TABLES_CAN_BE_READ_ONLY): Define.
              (ASM_OUTPUT_DWARF_PCREL): Define.
              (ASM_OUTPUT_DWARF_DATAREL): Define.
              (EH_FRAME_THROUGH_COLLECT2): Define.
              (EH_FRAME_IN_DATA_SECTION): Delete.
              * config/rs6000/rs6000.c (rs6000_aix_asm_output_dwarf_pcrel): New.
              (rs6000_aix_asm_output_dwarf_datarel): New.
              (rs6000_xcoff_asm_init_sections): Don't set exception_section.
              * config/spu/spu-elf.h (EH_FRAME_IN_DATA_SECTION): Delete.
              (EH_FRAME_THROUGH_COLLECT2): Define.
              * config/i386/i386-interix.h (EH_FRAME_IN_DATA_SECTION): Delete.
              (EH_FRAME_THROUGH_COLLECT2): Define.
              (EH_TABLES_CAN_BE_READ_ONLY): Define.
              * doc/tm.texi.in (EH_FRAME_IN_DATA_SECTION): Delete.
              (EH_FRAME_THROUGH_COLLECT2): New.
              (ASM_OUTPUT_DWARF_DATAREL): New.
              * doc/tm.texi: Regenerate.
      
      Co-Authored-By: David Edelsohn <dje.gcc@gmail.com>
      
      From-SVN: r227906
      Andrew Dixie committed
    • dwarf2out.c (append_entry_to_tmpl_value_parm_die_table): Assert we're in early phase. · 8cd60b23
      2015-09-18  Richard Biener  <rguenther@suse.de>
      
      	* dwarf2out.c (append_entry_to_tmpl_value_parm_die_table): Assert
      	we're in early phase.
      	(schedule_generic_params_dies_gen): Likewise.
      	(gen_remaining_tmpl_value_param_die_attribute): Do only as much
      	work as possible, retaining unhandled cases.
      	(gen_scheduled_generic_parms_dies): Set early-dwarf flag and
      	clear out generic_type_instances at the end.
      	(dwarf2out_finish): Move call to gen_scheduled_generic_parms_dies...
      	(dwarf2out_early_finish): ... here.  Do most of
      	gen_remaining_tmpl_value_param_die_attribute here.
      
      From-SVN: r227905
      Richard Biener committed
    • Fix errors due to extra includes in extc++.h · 7215aaed
      	* include/precompiled/extc++.h: Fix bootstrap error due to
      	unconditional inclusion of <ext/enc_filebuf.h>.
      	* include/ext/random: Check for definition of UINT32_C.
      
      From-SVN: r227902
      Jonathan Wakely committed
    • completely_scalarize arrays as well as records. · d0f4e7fc
      gcc/:
          
      	PR tree-optimization/67283
      	* tree-sra.c (type_consists_of_records_p): Rename to...
      	(scalarizable_type_p): ...this, add case for ARRAY_TYPE.
      	(completely_scalarize_record): Rename to...
      	(completely_scalarize): ...this, add ARRAY_TYPE case, move some code to:
      	(scalarize_elem): New.
      	(analyze_all_variable_accesses): Follow renamings.
          
      gcc/testsuite/:
          
      	* gcc.dg/tree-ssa/sra-15.c: New.
      	* gcc.dg/tree-ssa/sra-16.c: New.
      
      From-SVN: r227901
      Alan Lawrence committed
    • dwarf2out.c (add_location_or_const_value_attribute): Do nothing in early-dwarf. · f5916470
      2015-09-18  Richard Biener  <rguenther@suse.de>
      
      	* dwarf2out.c (add_location_or_const_value_attribute): Do nothing
      	in early-dwarf.
      
      From-SVN: r227899
      Richard Biener committed
    • re PR tree-optimization/66142 (Loop is not vectorized because not sufficient… · a0f79fcc
      re PR tree-optimization/66142 (Loop is not vectorized because not sufficient support for GOMP_SIMD_LANE)
      
      2015-09-18  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/66142
      	* fold-const.c (operand_equal_p): When OEP_ADDRESS_OF
      	treat MEM[&x] and x the same.
      	* tree-ssa-sccvn.h (vn_reference_fold_indirect): Remove.
      	* tree-ssa-sccvn.c (vn_reference_fold_indirect): Return true
      	when we simplified sth.
      	(vn_reference_maybe_forwprop_address): Likewise.
      	(valueize_refs_1): When we simplified through
      	vn_reference_fold_indirect or vn_reference_maybe_forwprop_address
      	set valueized_anything to true.
      	(vn_reference_lookup_3): Use stmt_kills_ref_p to see whether
      	one ref kills the other instead of just a offset-based test.
      	* tree-ssa-alias.c (stmt_kills_ref_p): Use OEP_ADDRESS_OF
      	for the operand_equal_p test to compare bases and also compare
      	sizes.
      
      From-SVN: r227896
      Richard Biener committed
    • Daily bump. · 9ace6a87
      From-SVN: r227892
      GCC Administrator committed
  2. 17 Sep, 2015 30 commits
    • debug.cc: Include <cstdio>. · 05c0e3eb
      2015-09-17  Catherine Moore  <clm@codesourcery.com>
      
              * src/c++11/debug.cc: Include <cstdio>.
      
      From-SVN: r227888
      Catherine Moore committed
    • Include <cerrno> in src/c++11/random.cc · 0b546684
      2015-09-17  Gerald Pfeifer  <gerald@pfeifer.com>
      
      	* src/c++11/random.cc: Include <cerrno>.
      
      From-SVN: r227887
      Gerald Pfeifer committed
    • re PR sanitizer/64078 (FAIL: c-c++-common/ubsan/object-size-9.c) · e9db0d1b
      2015-09-17  Bernd Edlinger  <bernd.edlinger@hotmail.de>
      
              PR sanitizer/64078
              * c-c++-common/ubsan/object-size-9.c (s): Add alignment attribute.
              (f2, f3): Make the function static.
              * c-c++-common/ubsan/object-size-10.c (a, b): Add alignment attribute.
      
      From-SVN: r227886
      Bernd Edlinger committed
    • 2015-09-17 François Dumont <fdumont@gcc.gnu.org> · 814e52ca
      	* include/debug/formatter.h
      	(_Error_formatter::_Parameter::_M_print_field): Deprecate.
      	(_Error_formatter::_Parameter::_M_print_description): Likewise.
      	(_Error_formatter::_M_format_word): Likewise.
      	(_Error_formatter::_M_print_word): Likewise.
      	(_Error_formatter::_M_print_string): Likewise.
      	(_Error_formatter::_M_get_max_length): Likewise.
      	(_Error_formatter::_M_max_length): Delete.
      	(_Error_formatter::_M_indent): Likewise.
      	(_Error_formatter::_M_column): Likewise.
      	(_Error_formatter::_M_first_line): Likewise.
      	(_Error_formatter::_M_wordwrap): Likewise.
      	* src/c++11/debug.cc: Adapt.
      
      From-SVN: r227885
      François Dumont committed
    • Implement N4295 fold-expressions. · 378b307d
      	* cp-tree.def: Add UNARY_LEFT_FOLD_EXPR, UNARY_RIGHT_FOLD_EXPR,
      	BINARY_LEFT_FOLD_EXPR, BINARY_RIGHT_FOLD_EXPR.
      	* cp-objcp-common.c (cp_common_init_ts): Handle them.
      	* cp-tree.h (FOLD_EXPR_CHECK, BINARY_FOLD_EXPR_CHECK, FOLD_EXPR_P)
      	(FOLD_EXPR_MODIFY_P, FOLD_EXPR_OP, FOLD_EXPR_PACK, FOLD_EXPR_INIT): New.
      	* parser.c (cp_parser_skip_to_closing_parenthesis): Split out...
      	(cp_parser_skip_to_closing_parenthesis_1): This function.  Change
      	or_comma parameter to or_ttype.
      	(cp_parser_fold_operator, cp_parser_fold_expr_p)
      	(cp_parser_fold_expression): New.
      	(cp_parser_primary_expression): Use them.
      	* pt.c (expand_empty_fold, fold_expression, tsubst_fold_expr_pack)
      	(tsubst_fold_expr_init, expand_left_fold, tsubst_unary_left_fold)
      	(tsubst_binary_left_fold, expand_right_fold)
      	(tsubst_unary_right_fold, tsubst_binary_right_fold): New.
      	(tsubst_copy): Use them.
      	(type_dependent_expression_p): Handle fold-expressions.
      	* semantics.c (finish_unary_fold_expr)
      	(finish_left_unary_fold_expr, finish_right_unary_fold_expr)
      	(finish_binary_fold_expr): New.
      
      Co-Authored-By: Jason Merrill <jason@redhat.com>
      
      From-SVN: r227883
      Andrew Sutton committed
    • posix.c (backtrace_open): Cast second argument of open() to int. · 750cdaf7
      2015-09-17  Ian Lance Taylor  <iant@google.com>
      
              * posix.c (backtrace_open): Cast second argument of open() to int.
      
      From-SVN: r227881
      Ian Lance Taylor committed
    • arm.md (*call_value_symbol): Fix operand for interworking. · 1eb50e95
      2015-09-17  Christian Bruel  <christian.bruel@st.com>
      
      	* config/arm/arm.md (*call_value_symbol): Fix operand for interworking.
      
      From-SVN: r227880
      Christian Bruel committed
    • Handle alignment in __atomic_is_lock_free · 310055e7
      gcc:
      
      2015-09-17  Richard Henderson  <rth@redhat.com>
      
      	PR libstdc++/65913
      	* builtins.c (fold_builtin_atomic_always_lock_free): Handle fake
      	pointers that encode the alignment of the object.
      
      libstdc++-v3:
      
      2015-09-17  Jonathan Wakely  <jwakely@redhat.com>
      
      	PR libstdc++/65913
      	* include/bits/atomic_base.h (__atomic_base<_TTp>::is_lock_free(),
      	__atomic_base<_PTp*>::is_lock_free()): Call the built-in with the
      	immediate pointer value, not a variable.
      	* include/std/atomic (atomic<T>::is_lock_free()): Likewise.
      	* testsuite/29_atomics/atomic/65913.cc: New.
      
      From-SVN: r227878
      Jonathan Wakely committed
    • re PR rtl-optimization/66790 (Invalid uninitialized register handling in REE) · 308fbc42
      	PR rtl-optimization/66790
      	* df-problems.c (LIVE): Amend documentation.
      
      From-SVN: r227874
      Eric Botcazou committed
    • Remove non-deterministic part of canonical() test · 01610fec
      	* testsuite/experimental/filesystem/operations/canonical.cc: Remove
      	non-deterministic part of the test.
      
      From-SVN: r227873
      Jonathan Wakely committed
    • Make std::random_device retry after short reads · a2b4d73d
      	PR libstdc++/65142
      	* src/c++11/random.cc (random_device::_M_getval()): Retry after short
      	reads.
      
      From-SVN: r227872
      Jonathan Wakely committed
    • Remove redundant conditional expressions in <system_error> · 2eb57e54
      	* include/std/system_error (error_code::operator bool(),
      	error_condition::operator bool()): Remove redundant conditional
      	expression.
      
      From-SVN: r227871
      Jonathan Wakely committed
    • Only do shrink_to_fit() when exceptions enabled · 99f04955
      	* include/bits/allocator.h (__shrink_to_fit_aux<T, true>::_S_do_it):
      	Do nothing if exceptions are disabled.
      	* include/bits/basic_string.h (basic_string::shrink_to_fit): Likewise.
      
      From-SVN: r227870
      Jonathan Wakely committed
    • Split up optabs.[hc] · 385399a8
      optabs.[hc] is a bit of a behemoth.  It includes basic functions for querying
      what a target can do, related tree- and gimple-level query functions,
      related rtl-level query functions, and the functions that actually
      generate code.  Some gimple optimisations therefore need:
      
      #include "insn-config.h"
      #include "expmed.h"
      #include "dojump.h"
      #include "explow.h"
      #include "emit-rtl.h"
      #include "varasm.h"
      #include "stmt.h"
      #include "expr.h"
      
      purely to query whether the target has support for a particular operation.
      
      This patch splits optabs up as follows:
      
            - optabs-query.[hc]: IL-independent functions for querying what a target
                can do natively.
            - optabs-tree.[hc]: tree and gimple query functions (an extension of
                optabs-query.[hc]).
            - optabs-libfuncs.[hc]: optabs-specific libfuncs (an extension of
                libfuncs.h)
            - optabs.h: For now includes optabs-query.h and optabs-libfuncs.h.
      
      Only two files outside optabs need to include both optabs.h and
      optabs-tree.h: expr.c and function.c.  I think that's expected given
      that both are related to expand.
      
      It might be good to split optabs.h further, but this is already quite
      a big patch.
      
      I changed can_conditionally_move_p from returning an int to returning
      a bool and fixed a few formatting glitches.  There should be no other
      changes to the functions themselves.
      
      gcc/
      	* Makefile.in (OBJS): Add optabs-libfuncs.o, optabs-query.o
      	and optabs-tree.o.
      	(GTFILES): Replace optabs.c with optabs-libfunc.c.
      	* genopinit.c (main): Add an include guard to insn-opinit.h.
      	Protect the rtx_code parts with NUM_RTX_CODE.
      	* optabs.h: Split parts out to...
      	* optabs-libfuncs.h, optabs-query.h, optabs-tree.h: ...these
      	new files.
      	* optabs.c: Split parts out to...
      	* optabs-libfuncs.c, optabs-query.c, optabs-tree.c: ...these
      	new files.
      	* cilk-common.c: Include optabs-query.h rather than optabs.h.
      	* fold-const.c: Likewise.
      	* target-globals.c: Likewise.
      	* tree-if-conv.c: Likewise.
      	* tree-ssa-forwprop.c: Likewise.
      	* tree-ssa-loop-prefetch.c: Likewise.
      	* tree-ssa-math-opts.c: Include optabs-tree.h rather than
      	optabs.h.  Remove unncessary include files.
      	* tree-ssa-phiopt.c: Likewise.
      	* tree-ssa-reassoc.c: Likewise.
      	* tree-switch-conversion.c: Likewise.
      	* tree-vect-data-refs.c: Likewise.
      	* tree-vect-generic.c: Likewise.
      	* tree-vect-loop.c: Likewise.
      	* tree-vect-patterns.c: Likewise.
      	* tree-vect-slp.c: Likewise.
      	* tree-vect-stmts.c: Likewise.
      	* tree-vrp.c: Likewise.
      	* toplev.c: Include optabs-query.h and optabs-libfuncs.h
      	rather than optabs.h.
      	* expr.c: Include optabs-tree.h.
      	* function.c: Likewise.
      
      From-SVN: r227865
      Richard Sandiford committed
    • compiler: Issue channel type errors earlier. · a78eb72a
          
          When asking for the type of a receive operation, the compiler would
          return an error type if the receive operator was being used on an
          invalid channel type and the error would be reported in a later pass.
          There are several ways that the type checking pass would not see
          the original node and fail to issue the error.  This patch modifies
          receive operations to give an error immediately once it is known that
          the channel type is invalid.
          
          Fixes golang/go#12323.
          
          Reviewed-on: https://go-review.googlesource.com/13987
      
      From-SVN: r227863
      Ian Lance Taylor committed
    • re PR middle-end/65958 (-fstack-check breaks alloca on architectures using generic stack checking) · 4fb94ef9
      	PR middle-end/65958
      	* config/arm/linux-elf.h (STACK_CHECK_STATIC_BUILTIN): Define.
      	* config/arm/arm-protos.h (output_probe_stack_range): Declare.
      	* config/arm/arm.c: Include common/common-target.h.
      	(use_return_insn): Return 0 if the static chain register was saved
      	above a non-APCS frame.
      	(arm_compute_static_chain_stack_bytes): Adjust for stack checking.
      	(struct scratch_reg): New.
      	(get_scratch_register_on_entry): New function.
      	(release_scratch_register_on_entry): Likewise.
      	(arm_emit_probe_stack_range): Likewise.
      	(output_probe_stack_range): Likewise.
      	(arm_expand_prologue): Factor out code dealing with the IP register
      	for nested function and adjust it for stack checking.
      	Invoke arm_emit_probe_stack_range if static builtin stack checking
      	is enabled.
      	(thumb1_expand_prologue): Sorry out if static builtin stack checking
      	is enabled.
      	(arm_expand_epilogue): Add the saved static chain register, if any, to
      	the amount of pre-pushed registers to pop.
      	(arm_frame_pointer_required): Return true if static stack checking is
      	enabled and we want to catch the exception with the EABI unwinder.
      	* config/arm/unspecs.md (UNSPEC_PROBE_STACK): New constant.
      	(UNSPEC_PROBE_STACK_RANGE): Likewise.
      	* config/arm/arm.md (probe_stack): New insn.
      	(probe_stack_range): Likewise.
      
      From-SVN: r227860
      Eric Botcazou committed
    • genmatch.c (parser::parse_expr): Improve error message for mis-placed flags. · 2e96ac06
      2015-09-17  Richard Biener  <rguenther@suse.de>
      
      	* genmatch.c (parser::parse_expr): Improve error message
      	for mis-placed flags.
      
      From-SVN: r227859
      Richard Biener committed
    • passes.c (rest_of_decl_compilation): Always call early_global_decl debug hook… · bf2dbec4
      passes.c (rest_of_decl_compilation): Always call early_global_decl debug hook when we created a varpool node.
      
      2015-09-17  Richard Biener  <rguenther@suse.de>
      
      	* passes.c (rest_of_decl_compilation): Always call early_global_decl
      	debug hook when we created a varpool node.
      	* dwarf2out.c (dwarf2out_late_global_decl): When in LTO call
      	dwarf2out_early_global_decl, when not just add location or
      	value attributes to existing DIEs.
      
      From-SVN: r227857
      Richard Biener committed
    • re PR fortran/52846 ([F2008] Support submodules) · e3b5d7ba
      2015-09-17  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/52846
      	PR fortran/67588
      	* module.c : Add static no_module_procedures.
      	(gfc_match_submodule): Correct memory leakage caused during the
      	freeing of use_lists.
      	(mio_symbol_attribute): Reset above if module procedure is
      	encountered.
      	(gfc_dump_module): Set above and exit without writing smod file
      	if it reset.
      	* gfortran.texi : Add section on submodule support.
      
      2015-09-17  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/52846
      	* gfortran.dg/public_private_module_5.f90: Add module procedure
      	trigger_smod to ensure that the smod file is written.
      
      From-SVN: r227855
      Paul Thomas committed
    • [AArch64] Implement copysign[ds]f3 · fb0f04fe
      gcc/
      
      	* config/aarch64/aarch64.md (copysigndf3): New.
      	(copysignsf3): Likewise.
      
      gcc/testsuite/
      
      	* gcc.target/aarch64/copysign_1.c: New.
      	* gcc.target/aarch64/copysign_2.c: New.
      
      From-SVN: r227849
      James Greenhalgh committed
    • Fix LRA regressions on 64-bit SPARC. · bb6b3973
      gcc/
      	* config/sparc/sparc-protos.h (sparc_secondary_memory_needed):
      	Declare.
      	* config/sparc/sparc.c (sparc_secondary_memory_needed): New
      	function.
      	* config/sparc/sparc.h (SECONDARY_MEMORY_NEEDED): Use it.
      	(HARD_REGNO_CALLER_SAVE_MODE): Define.
      	* config/sparc/sparc.md (sethi_di_medlow, losum_di_medlow, seth44)
      	(setm44, setl44, sethh, setlm, sethm, setlo, embmedany_sethi)
      	(embmedany_losum, embmedany_brsum, embmedany_textuhi)
      	(embmedany_texthi, embmedany_textulo, embmedany_textlo): Do not
      	provide when flag_pic.
      
      From-SVN: r227847
      David S. Miller committed
    • cp-tree.h (note_decl_for_pch): Remove. · b5415a9e
      2015-09-17  Richard Biener  <rguenther@suse.de>
      
      	* cp-tree.h (note_decl_for_pch): Remove.
      	* class.c (build_clone): Do not call note_decl_for_pch.
      	* semantics.c (finish_member_declaration): Likewise.
      	(note_decl_for_pch): Remove.
      	* decl2.c (c_parse_final_cleanups): Mangle all globals before
      	writing the PCH.
      
      From-SVN: r227846
      Richard Biener committed
    • Fix build failure for SH. · 8c464611
      * config/sh/sh.c (label_ref_list_d_pool): Adjust to object_allocator change.
      
      From-SVN: r227845
      Kaz Kojima committed
    • re PR tree-optimization/66388 (Test gcc.target/i386/pr49781-1.c failed because… · e4142529
      re PR tree-optimization/66388 (Test gcc.target/i386/pr49781-1.c failed because of recent scev overflow patches.)
      
      
      	PR tree-optimization/66388
      	* tree-ssa-loop-ivopts.c (struct iv, iv_cand, ivopts_data): New
      	fields.
      	(dump_iv): Dump no_overflow information.
      	(alloc_iv): Initialize new field for struct iv.
      	(mark_bivs): Count number of no_overflow bivs.
      	(find_deriving_biv_for_expr, record_biv_for_address_use): New
      	functions.
      	(idx_find_step): Call new functions above.
      	(add_candidate_1, add_candidate): New paramter.
      	(add_iv_candidate_for_biv): Add sizetype cand for BIV.
      	(get_computation_aff): Simplify convertion of cand for BIV.
      	(get_computation_cost_at): Step cand's base if necessary.
      
      From-SVN: r227844
      Bin Cheng committed
    • tree-ssa-loop-niter.c (tree_simplify_using_condition_1): New parameter. · f3c5f3a3
      
      	* tree-ssa-loop-niter.c (tree_simplify_using_condition_1): New
      	parameter.
      	(tree_simplify_using_condition): Ditto.
      	(simplify_using_initial_conditions): Ditto.
      	(loop_exits_before_overflow): Pass new argument to function
      	simplify_using_initial_conditions.  Remove case for type conversions
      	simplification.
      	* tree-ssa-loop-niter.h (simplify_using_initial_conditions): New
      	parameter.
      	* tree-scalar-evolution.c (simple_iv): Simplify type conversions
      	in iv base using loop initial conditions.
      
      	gcc/testsuite/ChangeLog
      	* gcc.dg/tree-ssa/loop-bound-2.c: New test.
      	* gcc.dg/tree-ssa/loop-bound-4.c: New test.
      	* gcc.dg/tree-ssa/loop-bound-6.c: New test.
      
      From-SVN: r227843
      Bin Cheng committed
    • [PATCH] Pass in avail_expr_stack and setup edge_infos earlier · e8ae63bb
      	PR tree-optimization/47679
      	* tree-ssa-dom.c (free_edge_info): Factored out of free_all_edge_infos.
      	(free_all_edge_infos): Use it.
      	(allocate_edge_info): Free preexisting edge info data.
      	(pass_dominator::execute): Set up initial edge info structures.
      	(dom_opt_dom_walker::thread_across_edge): Pass avail_expr_stack to
      	thread_across_edge.
      	* tree-ssa-threadedge.c (thread_across_edge): Accept new argument.  If
      	non-null, then push/pop markers appropriately.
      	* tree-ssa-threadedge.h (thread_across_edge): Update prototype.
      	* tree-vrp.c (identify_jump_threads): Pass NULL for new argument to
      	thread-across_edge.
      
      From-SVN: r227842
      Jeff Law committed
    • [FT32] Fix memory address space predicate. · a481f93b
      gcc/
      
      	* config/ft32/ft32.c Fix the memory address space predicate.
      
      From-SVN: r227841
      James Bowman committed
    • Daily bump. · f0f51b9f
      From-SVN: r227840
      GCC Administrator committed
    • re PR target/67573 ([SH] wrong code generated for… · a9a421e1
      re PR target/67573 ([SH] wrong code generated for libstdc++-v3/src/c++11/cxx11-shim_facets.cc at -mlra)
      
      PR target/67573
      * config/sh/sh.md: Add early clobber to scratch	operand of *call_*pcrel
      insn_and_split so not to CSE scratch reg.
      
      From-SVN: r227837
      Kaz Kojima committed
  3. 16 Sep, 2015 1 commit
    • Implement filesystem::canonical() without realpath · 30362998
      	PR libstdc++/67173
      	* acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Check _XOPEN_VERSION
      	and PATH_MAX for _GLIBCXX_USE_REALPATH.
      	* config.h.in: Regenerate.
      	* configure: Regenerate.
      	* src/filesystem/ops.cc: (canonical) [!_GLIBCXX_USE_REALPATH]: Add
      	alternative implementation.
      	* testsuite/experimental/filesystem/operations/canonical.cc: New.
      	* testsuite/experimental/filesystem/operations/exists.cc: Add more
      	tests.
      	* testsuite/experimental/filesystem/operations/absolute.cc: Add test
      	variables.
      	* testsuite/experimental/filesystem/operations/copy.cc: Likewise.
      	* testsuite/experimental/filesystem/operations/current_path.cc:
      	Likewise.
      	* testsuite/experimental/filesystem/operations/file_size.cc: Likewise.
      	* testsuite/experimental/filesystem/operations/status.cc: Likewise.
      	* testsuite/experimental/filesystem/operations/temp_directory_path.cc:
      	Likewise.
      
      From-SVN: r227836
      Jonathan Wakely committed