1. 27 Oct, 2012 6 commits
  2. 26 Oct, 2012 28 commits
    • rl78.c (rl78_as_legitimate_address): Do not allow reg+addend addresses for the _far namespace. · f5ac80f8
      * config/rl78/rl78.c (rl78_as_legitimate_address): Do not allow
      reg+addend addresses for the _far namespace.
      
      From-SVN: r192866
      DJ Delorie committed
    • sync.md (ATOMIC): Correct DI condition. · 1f8c354b
      gcc/
      	* config/rs6000/sync.md (ATOMIC): Correct DI condition.
      
      From-SVN: r192863
      Segher Boessenkool committed
    • re PR c++/55081 (Non-optimized static array elements initialization) · c7a918f1
      	PR c++/55081
      	* typeck2.c (store_init_value): Call fold_non_dependent_expr
      	and maybe_constant_init even for C++98.
      
      	* g++.dg/opt/pr55081.C: New test.
      
      From-SVN: r192862
      Jakub Jelinek committed
    • re PR other/55087 (bogus "linux-vdso.so.1: No such file or directory" caused by libbacktrace) · 73f41491
      	PR other/55087
      	* posix.c (backtrace_open): Add does_not_exist parameter.
      	* elf.c (phdr_callback): Do not warn if shared library could not
      	be opened.
      	* fileline.c (fileline_initialize): Update calls to
      	backtrace_open.
      	* internal.h (backtrace_open): Update declaration.
      
      From-SVN: r192861
      Ian Lance Taylor committed
    • re PR debug/54970 (Missing DW_OP_GNU_implicit_pointer in debuginfo) · 9430b7ba
      	PR debug/54970
      	* cfgexpand.c (expand_debug_expr): Expand &MEM_REF[&var, n]
      	as DEBUG_IMPLICIT_PTR + n if &var expands to DEBUG_IMPLICIT_PTR.
      	* tree-sra.c (create_access_replacement): Allow also MEM_REFs
      	with ADDR_EXPR first operand in DECL_DEBUG_EXPR expressions.
      	* var-tracking.c (track_expr_p): Handle MEM_REFs in DECL_DEBUG_EXPR
      	expressions.
      	* dwarf2out.c (add_var_loc_to_decl): Likewise.
      
      	PR debug/54971
      	* gcc.dg/guality/pr54970.c: New test.
      
      From-SVN: r192860
      Jakub Jelinek committed
    • Update copyright · c88538b7
      From-SVN: r192859
      Andreas Schwab committed
    • ChangeLog: Fix whitespace. · 5b116845
              * ChangeLog: Fix whitespace.
              * testsute/ChangeLog: Ditto.
      
      From-SVN: r192856
      Uros Bizjak committed
    • crtfastmath.c (set_fast_math): Use __builtin_ia32_fxsave. · eff6ca85
      	* config/i386/crtfastmath.c (set_fast_math): Use __builtin_ia32_fxsave.
      	Clear only fxsave.mxcsr_mask.  Use saved mxcsr from fxsave structure
      	when appropriate.  Correct structure element types.
      	* config/i386/t-crtfm (crtfastmath.o): Compile with -mfxsr, remove
      	-minline-all-stringops from compile flags.
      
      From-SVN: r192855
      Uros Bizjak committed
    • syscall: fix creds_test to reliably close os.File · 85c2f96c
      Uncovered by Uros Bizjak.
      
      Before this patch the test would close the file descriptor but
      not the os.File.  When the os.File was GC'ed, the finalizer
      would close the file descriptor again.  That would cause
      problems if the same file descriptor were returned by a later
      call to open in another test.
      
      On my system:
      
      > GOGC=30 go test
      --- FAIL: TestPassFD (0.04 seconds)
      passfd_test.go:62: 	FileConn: dup: bad file descriptor
      FAIL
      
      From-SVN: r192854
      Ian Lance Taylor committed
    • re PR target/55061 (libbacktrace build fails during bootstrap on powerpc-apple-darwin9) · 385710cf
      	PR target/55061
      	* configure.ac: Check for _Unwind_GetIPInfo function declaration.
      	* configure: Regenerate.
      
      From-SVN: r192853
      Jack Howarth committed
    • * tree-ssa-threadedge.c (cond_arg_set_in_bb): Use last stmt. · 24db014b
      From-SVN: r192852
      Jeff Law committed
    • Author: Gunther Nikl <gnikl@users.sourceforge.net> · 9eaff653
      * common/config/m68k/m68k-common.c (m68k_handle_option): Set
      gcc_options fields of opts_set for -m68020-40 and -m68020-60.
      
      From-SVN: r192851
      Gunther Nikl committed
    • Avoid conservative behavior in REE by allowing removal of redundant extends when... · ca3f371f
      Avoid conservative behavior in REE by allowing removal of redundant extends
      when the def feeds another extend with a different mode. This works because
      in merge_def_and_ext only calls combine_set_extension if the candidate for
      removal has a wider mode than the def extend's mode, otherwise the def extend
      mode is preserved. In combine_set_extension the def is modified to use the
      wider candidate's mode.
      
      2012-10-26  Teresa Johnson  <tejohnson@google.com>
      
      	* ree.c (add_removable_extension): Remove unnecessary
      	mode check with other extension.
      	* testsuite/gcc.c-torture/execute/20111227-2.c: New test.
      	* testsuite/gcc.c-torture/execute/20111227-3.c: Ditto.
      
      From-SVN: r192850
      Teresa Johnson committed
    • ipa-inline-transform.c (inline_call): Only account size changes for !DECL_EXTERNAL. · 8256d5ca
      
      	* ipa-inline-transform.c (inline_call): Only account size changes
      	for !DECL_EXTERNAL.
      
      From-SVN: r192849
      Jan Hubicka committed
    • re PR debug/54971 (SRA pessimizes debug info by not creating debug stmts for… · be384c10
      re PR debug/54971 (SRA pessimizes debug info by not creating debug stmts for fields without replacements)
      
      2012-10-26  Martin Jambor  <mjambor@suse.cz>
      
      	PR debug/54971
      	* tree-sra.c (struct access): New flag grp_to_be_debug_replaced.
      	(dump_access): Dump the new flag.
      	(analyze_access_subtree): Set the new flag when appropriate.
      	(create_access_replacement): Handle debug replacements differently.
      	(generate_subtree_copies): Handle the grp_to_be_debug_replaced flag.
      	(init_subtree_with_zero): Likewise.
      	(sra_modify_expr): Likewise.
      	(load_assign_lhs_subreplacements): Likewise.
      	(sra_modify_assign): Likewise.
      
      From-SVN: r192848
      Martin Jambor committed
    • re PR c++/54984 (Array allocated with new in a template class is default initialised) · a4bbf910
      /cp
      2012-10-26  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/54984
      	* init.c (build_new): Don't turn a null *init into a pointer to
      	empty vector orig_init.
      
      /testsuite
      2012-10-26  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/54984
      	* g++.dg/template/new11.C: New.
      
      From-SVN: r192846
      Paolo Carlini committed
    • i386.c (insn_is_function_arg): Add check on CALL instruction. · 39aada70
              * config/i386/i386.c (insn_is_function_arg) : Add check on CALL
              instruction.
              (ix86_dependencies_evaluation_hook): Insert dependencies in all
              predecessors of call block for non-trivial region avoiding creation
              of loop-carried dependency to avoid cross-block motion of HW registers.
      
      From-SVN: r192842
      Yuri Rumyantsev committed
    • re PR tree-optimization/54824 (ICE in verify_loop_structure) · 9037dcc6
      2012-10-26  Richard Biener  <rguenther@suse.de>
      
      	PR middle-end/54824
      	* tree-optimize.c (execute_fixup_cfg): Insert __builtin_unreachable
      	at the end of blocks with no successors.
      
      	* gcc.dg/torture/pr54824.c: New testcase.
      
      From-SVN: r192841
      Richard Biener committed
    • ChangeLog/ · 3a0d99bb
              * gcc/common/config/i386/i386-common.c
              (OPTION_MASK_ISA_FXSR_SET): New.
              (OPTION_MASK_ISA_XSAVE_SET): Likewise.
              (OPTION_MASK_ISA_XSAVEOPT_SET): Likewise.
              (ix86_handle_option): Handle mfxsr, mxsave, mxsaveopt options.
              * gcc/config.gcc (i[34567]86-*-*): Add fxsrintrin.h,
              xsaveintrin.h, xsaveoptintrin.h.
              (x86_64-*-*): Likewise.
              * config/i386/fxsrintrin.h: New header.
              * config/i386/xsaveintrin.h: Likewise.
              * config/i386/xsaveoptintrin.h: Likewise.
              * gcc/config/i386/driver-i386.c (host_detect_local_cpu): Detect
              FXSR/XSAVE/XSAVEOPT support.
              * gcc/config/i386/i386-builtin-types.def
              (VOID_FTYPE_PVOID_INT64): New function type.
              * gcc/config/i386/i386-c.c: Define __FXSR__, __XSAVE__
              and __XSAVEOPT__ if needed.
              * gcc/config/i386/i386.c (ix86_target_string): Define -mfxsr,
               -mxsave and -mxsaveopt options.
              (PTA_FXSR): New.
              (PTA_XSAVE): Likewise.
              (PTA_XSAVEOPT): Likewise.
              (ix86_option_override_internal): Handle new option.
              (processor_alias_table): Added PTA_FXSR, PTA_XSAVE, PTA_XSAVEOPT.
              (ix86_valid_target_attribute_inner_p): Add OPT_mfxsr,
              OPT_mxsave, OPT_mxsaveopt.
              (ix86_builtins): Add IX86_BUILTIN_FXSAVE, IX86_BUILTIN_FXRSTOR,
              IX86_BUILTIN_FXSAVE64, IX86_BUILTIN_XSAVE, IX86_BUILTIN_XSAVE64,
              IX86_BUILTIN_XRSTOR, IX86_BUILTIN_XRSTOR64, IX86_BUILTIN_XSAVEOPT,
              IX86_BUILTIN_XSAVEOPT64.
              (ix86_expand_builtin): Handle these built-ins.
              * gcc/config/i386/i386.h (TARGET_FXSR): New.
              (TARGET_XSAVE): Likewise.
              (TARGET_XSAVEOPT): Likewise.
              * gcc/config/i386/i386.md (ANY_XSAVE): New int iterator.
              (ANY_XSAVE64): Likewise.
              (xsave): New int attribute.
              (fxsave): New instruction.
              (fxsave64): Likewise.
              (fxrstor): Likewise.
              (fxrstor64): Likewise.
              (<xsave>): Likewise.
              (<xsave>_rex64): Likewise.
              (xrstor): Likewise.
              (xrstor_rex64): Likewise.
              (xrstor64): Likewise.
              * gcc/config/i386/i386.opt (mfxsr): New.
              (mxsave): Likewise.
              (mxsaveopt): Likewise.
              * gcc/config/i386/x86intrin.h: Include
              xsaveintrin.h, fxsrintrin.h, xsaveoptintrin.h.
      
      testsuite/ChangeLog
              * gcc.target/i386/fxsave-1.c: New.
              * gcc.target/i386/fxsave64-1.c: Ditto.
              * gcc.target/i386/fxrstor-1.c: Ditto.
              * gcc.target/i386/fxrstor64-1.c: Ditto.
              * gcc.target/i386/xsave-1.c: Ditto.
              * gcc.target/i386/xsave64-1.c: Ditto.
              * gcc.target/i386/xrstor-1.c: Ditto.
              * gcc.target/i386/xrstor64-1.c: Ditto.
              * gcc.target/i386/xsaveopt-1.c: Ditto.
              * gcc.target/i386/xsaveopt64-1.c: Ditto.
              * gcc.target/i386/sse-12.c: Add -mfxsr, -mxsaveopt.
              * gcc.target/i386/sse-13.c: Ditto.
              * gcc.target/i386/sse-14.c: Ditto.
              * gcc.target/i386/sse-22.c: Ditto.
              * gcc.target/i386/sse-23.c: Ditto.
              * g++.dg/other/i386-2.C: Ditto.
              * g++.dg/other/i386-3.C: Ditto.
      
      
      Co-Authored-By: Uros Bizjak <ubizjak@gmail.com>
      
      From-SVN: r192840
      Alexander Ivchenko committed
    • t-rtems: Revert previous commit. · 8befc91f
      2012-10-26  Ralf Corsépius  <ralf.corsepius@rtems.org>
      
      	* config/avr/t-rtems: Revert previous commit.
      
      From-SVN: r192838
      Ralf Corsepius committed
    • re PR bootstrap/55049 (bootstrap failed with --with-multilib-list=m32,m64,mx32) · 277f65de
      gcc/
      	PR bootstrap/55049
      	* Makefile.in (rtlanal.o): Add dependency on addresses.h.
      	* rtl.h (address_info): New structure.
      	(strip_address_mutations, decompose_address, decompose_lea_address)
      	(decompose_mem_address, update_address, get_index_scale)
      	(get_index_code): Declare.
      	* rtlanal.c: Include addresses.h.
      	(strip_address_mutations, must_be_base_p, must_be_index_p)
      	(set_address_segment, set_address_base, set_address_index)
      	(set_address_disp, decompose_incdec_address, decompose_automod_address)
      	(extract_plus_operands, baseness, decompose_normal_address)
      	(decompose_address, decompose_lea_address, decompose_mem_address)
      	(update_address, get_index_scale, get_index_code): New functions.
      	* lra-constraints.c (strip_subreg): New function.
      	(address, extract_loc_address_regs, extract_address_regs)
      	(get_index_scale): Delete.
      	(process_addr_reg): Apply strip_subreg to the location.
      	(uses_hard_regs_p): Use decompose_mem_address.
      	(valid_address_p, base_plus_disp_to_reg, can_add_disp_p)
      	(equiv_address_substitution): Take an address_info rather
      	than an address.  Remove other arguments.  Avoid using Pmode.
      	(process_address): Use decompose_mem_address and decompose_lea_address.
      	Update calls to above functions.
      
      From-SVN: r192837
      Richard Sandiford committed
    • lra-constraints.c (process_address): Tighten arguments to base_reg_class. · f9d4ecd4
      gcc/
      	* lra-constraints.c (process_address): Tighten arguments to
      	base_reg_class.  Use simplify_gen_binary to generate PLUS rtxes.
      
      From-SVN: r192836
      Richard Sandiford committed
    • lra-constraints.c (get_index_scale, [...]): New functions. · 02ea4bf4
      gcc/
      	* lra-constraints.c (get_index_scale, can_add_disp_p): New functions.
      	(equiv_address_substitution): Use them.
      
      From-SVN: r192835
      Richard Sandiford committed
    • lra-constraints.c (valid_address_p): New function, split out from... · 8bf9b489
      gcc/
      	* lra-constraints.c (valid_address_p): New function, split out from...
      	(process_address): ...here.
      
      From-SVN: r192834
      Richard Sandiford committed
    • lra-constraints.c (process_address): Describe the kinds of address that we might see. · bd3d34d4
      gcc/
      	* lra-constraints.c (process_address): Describe the kinds of address
      	that we might see.
      
      From-SVN: r192833
      Richard Sandiford committed
    • lra-int.h (lra_assert): Redefine it gcc_checking_assert. · a202e609
      2012-10-25  Vladimir Makarov  <vmakarov@redhat.com>
      
      	* lra-int.h (lra_assert): Redefine it gcc_checking_assert.
      	* lra-constraints.c (check_and_process_move): Remove #if
      	ENABLE_ASSERT_CHECKING.
      
      From-SVN: r192832
      Vladimir Makarov committed
    • rtems.h (TARGET_OS_CPP_BUILTINS): Remove __USE_INIT_FINI__. · c5022db0
      2012-10-26  Ralf Corsépius  <ralf.corsepius@rtems.org>
      
      	* config/avr/rtems.h (TARGET_OS_CPP_BUILTINS): Remove
      	__USE_INIT_FINI__.
      	* config/avr/t-rtems (LIB1ASMFUNCS): Filter out _exit.
      
      From-SVN: r192828
      Ralf Corsepius committed
    • Daily bump. · c4ffeb65
      From-SVN: r192827
      GCC Administrator committed
  3. 25 Oct, 2012 6 commits
    • Remove unnecessary sparc constraint. · 997f228f
      	* config/sparc/constraints.md ("U"): Delete.
      	* config/sparc/sparc.md: Use 'r' constraint instead of 'U'.
      	* config/sparc/sync.md: Likewise.
      
      From-SVN: r192824
      David S. Miller committed
    • Change hash_table to support a comparator type different from the value type… · 5831a5f0
      Change hash_table to support a comparator type different from the value type stored in the hash table.
      
      Change hash_table to support a comparator type different from the
      value type stored in the hash table.  The 'find' functions now may
      take a different type from the value type.  This requires introducing
      a second typedef into the Descriptor conceptual type.  Change the
      Descriptor concept to use typedefs value_type and compare_type instead
      of T.  Change all users to match.
      
      Add usage documentation to hash-table.h.
      
      Tested on x86-64.
      
      
      Index: gcc/ChangeLog
      
      2012-10-25  Lawrence Crowl  <crowl@google.com>
      
      	* hash-table.h: Add usage documentation.
      	(template struct typed_free_remove): Clarify documentation. 
      	Rename template parameter.
      	(struct typed_noop_remove): Likewise.
      	(descriptor concept): Change typedef T to value_type.
      	Add typedef compare_type.  Use more precise template parameter name,
      	Descriptor instead of Descr.  Update users to match.
      	(struct hash_table): Change 'find' parameters to use compare_type
      	instead of the value type.
      
      From-SVN: r192823
      Lawrence Crowl committed
    • cunroll-4.c: Update; we now remove the loop at ivcanon time. · 2257bc19
      
      	* gcc.dg/tree-ssa/cunroll-4.c: Update; we now remove the loop
      	at ivcanon time.
      
      From-SVN: r192822
      Jan Hubicka committed
    • ipa-cp.c (ipcp_discover_new_direct_edges): If something was turned to direct… · 0f378cb5
      ipa-cp.c (ipcp_discover_new_direct_edges): If something was turned to direct call update the summary.
      
      
      	* ipa-cp.c (ipcp_discover_new_direct_edges): If something was turned
      	to direct call update the summary.
      	* ipa-inline-transform.c (inline_call): Sanity check that summaries
      	match the predicted effect; fix updating of summary after edge
      	redirection.
      	* ipa-inline-analysis.c (inline_node_duplication_hook): Do not try
      	to update the summary and recompute it instead.
      	(estimate_function_body_sizes): Fix self size estimation; double
      	check that it agrees with inline_update_overall_summary.
      	(estimate_edge_size_and_time): Handle devirtualizaiton costs.
      	(estimate_edge_devirt_benefit): Update to be called from
      	estimate_edge_size_and_time.
      	(estimate_calls_size_and_time): Update.
      	(estimate_node_size_and_time): Watch overflows.
      	(inline_merge_summary): Likewise.
      	* ipa-prob.c: Include ipa-inline.h
      	(ipa_make_edge_direct_to_target): After redirection update the summary.
      
      From-SVN: r192821
      Jan Hubicka committed
    • re PR debug/55063 (Thousands of failures in the libstdc++-v3 tests after revision 192739) · 0d198936
      gcc/
      	PR debug/55063
      	* dwarf2out.c (prune_unused_types_prune): Check whether DIE is
      	already a declaration.
      
      From-SVN: r192820
      Cary Coutant committed
    • libgo: Solaris portability patches. · f99a463f
      From Rainer Orth.
      
      From-SVN: r192819
      Ian Lance Taylor committed