1. 29 May, 2014 5 commits
  2. 28 May, 2014 32 commits
    • runtime: fix misc gcc-isms and undefined behavior · 93c521ea
      This includes the use of __complex and __builtin_ functions where
      unprefixed entities would suffice, and the use of a union for
      bit-casting between types.
      
      From-SVN: r211036
      Ian Lance Taylor committed
    • Fix demangler testsuite crashes with CP_DEMANGLE_DEBUG defined · bc2eed9a
      Running the demangler's testsuite with CP_DEMANGLE_DEBUG defined
      crashes, with:
      
       Program received signal SIGSEGV, Segmentation fault.
       0x000000000040a8c3 in d_dump (dc=0x1, indent=12) at ../../src/libiberty/cp-demangle.c:567
       567       switch (dc->type)
      
       (gdb) bt 3
       #0  0x000000000040a8c3 in d_dump (dc=0x1, indent=12) at ../../src/libiberty/cp-demangle.c:567
       #1  0x000000000040ae47 in d_dump (dc=0x7fffffffd098, indent=10) at ../../src/libiberty/cp-demangle.c:787
       #2  0x000000000040ae47 in d_dump (dc=0x7fffffffd0c8, indent=8) at ../../src/libiberty/cp-demangle.c:787
      
      Note dc=0x1, which is obviously a bogus pointer.  This is the end of
      d_dump recursing for a component type that that doesn't actually have
      subtrees:
      
       787       d_dump (d_left (dc), indent + 2);
       788       d_dump (d_right (dc), indent + 2);
      
      This fixes the two cases the testsuite currently trips on.
      
      libiberty/
      2014-05-28  Pedro Alves  <palves@redhat.com>
      
      	* cp-demangle.c (d_dump): Handle DEMANGLE_COMPONENT_FUNCTION_PARAM
      	and DEMANGLE_COMPONENT_NUMBER.
      
      From-SVN: r211035
      Pedro Alves committed
    • Add myself to MAINTAINERS. · fd9ed1ae
      2014-05-28  Pedro Alves  <palves@redhat.com>
      
      	* MAINTAINERS (Write After Approval): Add myself.
      
      From-SVN: r211034
      Pedro Alves committed
    • revert: lra-int.h (struct lra_reg): Add field actual_call_used_reg_set. · ea0b381f
      2014-05-28  Tom de Vries  <tom@codesourcery.com>
      
      	Revert:
      	2014-05-28  Tom de Vries  <tom@codesourcery.com>
      
      	* lra-int.h (struct lra_reg): Add field actual_call_used_reg_set.
      	* lra.c (initialize_lra_reg_info_element): Add init of
      	actual_call_used_reg_set field.
      	(lra): Call lra_create_live_ranges before lra_inheritance for
      	-fuse-caller-save.
      	* lra-assigns.c (lra_assign): Allow call_used_regs to cross calls for
      	-fuse-caller-save.
      	* lra-constraints.c (need_for_call_save_p): Use actual_call_used_reg_set
      	instead of call_used_reg_set for -fuse-caller-save.
      	* lra-lives.c (process_bb_lives): Calculate actual_call_used_reg_set.
      
      From-SVN: r211033
      Tom de Vries committed
    • md.texi: Document that the % constraint character must be at the beginning of the string. · 73f793e3
      gcc/
      	* doc/md.texi: Document that the % constraint character must
      	be at the beginning of the string.
      	* genoutput.c (validate_insn_alternatives): Check that '=',
      	'+' and '%' only appear at the beginning of a constraint.
      	* ira.c (commutative_constraint_p): Delete.
      	(ira_get_dup_out_num): Expect the '%' commutativity marker to be
      	at the start of the string.
      	* config/alpha/alpha.md (*movmemdi_1, *clrmemdi_1): Remove
      	duplicate '='s.
      	* config/arm/neon.md (bicdi3_neon): Likewise.
      	* config/iq2000/iq2000.md (addsi3_internal, subsi3_internal, sgt_si)
      	(slt_si, sltu_si): Likewise.
      	* config/vax/vax.md (sbcdi3): Likewise.
      	* config/h8300/h8300.md (*cmpstz): Remove duplicate '+'.
      	* config/arc/arc.md (mulsi_600, mulsidi_600, umulsidi_600)
      	(mul64): Move '%' to beginning of constraint.
      	* config/arm/arm.md (*xordi3_insn): Likewise.
      	* config/nds32/nds32.md (add<mode>3, mulsi3, andsi3, iorsi3)
      	(xorsi3): Likewise.
      
      From-SVN: r211031
      Richard Sandiford committed
    • md.texi: Document the restrictions on the "enabled" attribute. · 5a7555ab
      gcc/
      	* doc/md.texi: Document the restrictions on the "enabled" attribute.
      
      From-SVN: r211030
      Richard Sandiford committed
    • re PR c++/47202 (Endless recursion during mangling) · d67ff7b7
      	PR c++/47202
      gcc/cp/
      	* decl.c (cxx_comdat_group): Return a decl.
      	* optimize.c (cdtor_comdat_group): Get its DECL_ASSEMBLER_NAME.
      gcc/
      	* cgraph.h (symtab_node::get_comdat_group_id): New.
      	* cgraphunit.c (analyze_functions): Call it.
      	* symtab.c (dump_symtab_node): Likewise.
      	* tree.c (decl_comdat_group_id): New.
      	* tree.h: Declare it.
      	* lto-streamer-out.c (write_symbol): Use it.
      	* trans-mem.c (ipa_tm_create_version_alias): Likewise.
      
      From-SVN: r211026
      Jason Merrill committed
    • pt.c (tsubst): Check for array of array of unknown bound. · a41acf5f
      	* pt.c (tsubst) [ARRAY_TYPE]: Check for array of array of unknown
      	bound.
      
      From-SVN: r211025
      Jason Merrill committed
    • re PR c++/61242 (Bogus "no matching function for call to… · a33ad58b
      re PR c++/61242 (Bogus "no matching function for call to ‘Foo::Create(<brace-enclosed initializer list>)")
      
      	PR c++/61242
      	* call.c (build_aggr_conv): Ignore passed in flags.
      	(build_array_conv, build_complex_conv): Likewise.
      
      From-SVN: r211024
      Jason Merrill committed
    • PR bootstrap/PR61146 · ecc7533a
      	PR bootstrap/PR61146
      	* wide-int.cc: Do not include longlong.h when compiling with clang.
      
      From-SVN: r211023
      Francois-Xavier Coudert committed
    • tree-ssa-propagate.c (add_control_edge): Print less vertical space. · 6e5799b9
      2014-05-28  Richard Biener  <rguenther@suse.de>
      
      	* tree-ssa-propagate.c (add_control_edge): Print less vertical space.
      	* tree-vrp.c (extract_range_from_ssa_name): Also copy VR_UNDEFINED.
      	(vrp_visit_assignment_or_call): Print less vertical space.
      	(vrp_visit_stmt): Likewise.
      	(vrp_visit_phi_node): Likewise.  For a PHI argument with
      	VR_VARYING range consider recording it as copy.
      
      From-SVN: r211022
      Richard Biener committed
    • revert: hwint.h (HOST_WIDE_INT_PRINT_*): Define in terms of PRI*64. · 47f9fca8
      2014-05-28  Richard Biener  <rguenther@suse.de>
      
      	Revert
      	2014-05-28  Richard Biener  <rguenther@suse.de>
      
      	* hwint.h (HOST_WIDE_INT_PRINT_*): Define in terms of PRI*64.
      
      From-SVN: r211021
      Richard Biener committed
    • expr.c (expand_assignment): Fold the bitpos in the to_rtx if sufficiently… · 7fbf8a3e
      expr.c (expand_assignment): Fold the bitpos in the to_rtx if sufficiently aligned and an offset is used at...
      
      2014-05-28  Bernd Edlinger  <bernd.edlinger@hotmail.de>
      
              * expr.c (expand_assignment): Fold the bitpos in the to_rtx if
              sufficiently aligned and an offset is used at the same time.
              (expand_expr_real_1): Likewise.
      
      From-SVN: r211020
      Bernd Edlinger committed
    • re PR middle-end/61045 (Wrong constant folding) · b017a174
      2014-05-28  Richard Biener  <rguenther@suse.de>
      
      	PR middle-end/61045
      	* fold-const.c (fold_comparison): When folding
      	X +- C1 CMP Y +- C2 to X CMP Y +- C2 +- C1 also ensure
      	the sign of the remaining constant operand stays the same.
      
      	* gcc.dg/pr61045.c: New testcase.
      
      From-SVN: r211018
      Richard Biener committed
    • RL78 64bit double support added · a4d6bf7e
      From-SVN: r211017
      Kaushik Phatak committed
    • RL78 64bit double support added · 96360888
      From-SVN: r211016
      Kaushik Phatak committed
    • Centralise clearing hardware capabilities with Sun ld · 3c698bf0
      	gcc:
      	* configure.ac ($gcc_cv_ld_clearcap): New test.
      	* configure: Regenerate.
      	* config.in: Regenerate.
      	* config/sol2.opt (mclear-hwcap): New option.
      	* config/sol2.h (LINK_CLEARCAP_SPEC): Define.
      	* config/sol2-clearcap.map: Moved here from
      	testsuite/gcc.target/i386/clearcap.map.
      	* config/sol2-clearcapv2.map: Move here from
      	gcc.target/i386/clearcapv2.map.
      	* config/t-sol2 (install): Depend on install-clearcap-map.
      	(install-clearcap-map): New target.
      	* doc/invoke.texi (Option Summary, Solaris 2 Options): Document
      	-mclear-hwcap.
      
      	gcc/testsuite:
      	* lib/clearcap.exp: New file.
      	* gcc.dg/vect/vect.exp: Load clearcap.exp.
      	Remove clearcap_ldflags handling.
      	Call clearcap-init, clearcap-finish.
      	* gcc.target/i386/i386.exp: Likewise.
      	* gcc.target/i386/clearcap.map: Move to ../config/sol2-clearcap.map.
      	* gcc.target/i386/clearcapv2.map: Move to
      	../config/sol2-clearcapv2.map.
      	* gcc.target/x86_64/abi/avx/abi-avx.exp: Likewise.
      	* gcc.target/x86_64/abi/avx512f/abi-avx512f.exp: Likewise.
      
      	libitm:
      	* acinclude.m4 (LIBITM_CHECK_LINKER_HWCAP): Check for
      	-mclear-hwcap instead.
      	* configure: Regenerate.
      	* clearcap.map: Remove.
      
      From-SVN: r211014
      Rainer Orth committed
    • hwint.h (*_HALF_WIDE_INT*): Move to ... · 4c8bd90f
      2014-05-28  Richard Biener  <rguenther@suse.de>
      
      	* hwint.h (*_HALF_WIDE_INT*): Move to ...
      	* wide-int.cc (HOST_BITS_PER_HALF_WIDE_INT, HOST_HALF_WIDE_INT):
      	... here and remove the rest.
      	* hwint.h (HOST_WIDE_INT_PRINT_*): Define in terms of PRI*64.
      
      From-SVN: r211013
      Richard Biener committed
    • re PR tree-optimization/61335 (wrong code with -O2 -fbounds-check) · a896172d
      2014-05-28  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/61335
      	* tree-vrp.c (vrp_visit_phi_node): If the compare of old and
      	new range fails, drop to varying.
      
      	* gfortran.dg/pr61335.f90: New testcase.
      
      From-SVN: r211012
      Richard Biener committed
    • vxworks.h (VXCPU_FOR_8548): New. · 49664873
      2014-05-28  Olivier Hainque  <hainque@adacore.com>
      
              * config/rs6000/vxworks.h (VXCPU_FOR_8548): New. Default to PPC85XX.
              (CPP_SPEC): Add entry for -mcpu=8548.
              * config/rs6000/vxworksae.h: Reinstate. Override VXCPU_FOR_8548.
              * config.gcc (powerpc-wrs-vxworksae, tm_file): Add back vxworksae.h.
      
      From-SVN: r211011
      Olivier Hainque committed
    • -fuse-caller-save - Support in lra · b8c6a45a
      2014-05-28  Tom de Vries  <tom@codesourcery.com>
      
      	* lra-int.h (struct lra_reg): Add field actual_call_used_reg_set.
      	* lra.c (initialize_lra_reg_info_element): Add init of
      	actual_call_used_reg_set field.
      	(lra): Call lra_create_live_ranges before lra_inheritance for
      	-fuse-caller-save.
      	* lra-assigns.c (lra_assign): Allow call_used_regs to cross calls for
      	-fuse-caller-save.
      	* lra-constraints.c (need_for_call_save_p): Use actual_call_used_reg_set
      	instead of call_used_reg_set for -fuse-caller-save.
      	* lra-lives.c (process_bb_lives): Calculate actual_call_used_reg_set.
      
      From-SVN: r211010
      Tom de Vries committed
    • -fuse-caller-save - Add documentation · dbe7d9e3
      2014-05-28  Radovan Obradovic  <robradovic@mips.com>
                  Tom de Vries  <tom@codesourcery.com>
      
      	* doc/invoke.texi (@item Optimization Options): Add -fuse-caller-save to
      	gccoptlist.
      	(@item -fuse-caller-save): New item.
      
      Co-Authored-By: Tom de Vries <tom@codesourcery.com>
      
      From-SVN: r211009
      Radovan Obradovic committed
    • -fuse-caller-save - Enable by default at O2 and higher · 5c989bbf
      2014-05-28  Radovan Obradovic  <robradovic@mips.com>
                  Tom de Vries  <tom@codesourcery.com>
      
      	* opts.c (default_options_table): Add OPT_LEVELS_2_PLUS entry with
      	OPT_fuse_caller_save.
      
      Co-Authored-By: Tom de Vries <tom@codesourcery.com>
      
      From-SVN: r211008
      Radovan Obradovic committed
    • -fuse-caller-save - Use collected register usage information · c2ba7e7a
      2014-05-28  Radovan Obradovic  <robradovic@mips.com>
                  Tom de Vries  <tom@codesourcery.com>
      
      	* df-scan.c (df_get_call_refs): Use get_call_reg_set_usage.
      	* caller-save.c (setup_save_areas, save_call_clobbered_regs): Use
      	get_call_reg_set_usage.
      	* resource.c (mark_set_resources, mark_target_live_regs): Use
      	get_call_reg_set_usage.
      	* ira-int.h (struct ira_allocno): Add crossed_calls_clobbered_regs
      	field.
      	(ALLOCNO_CROSSED_CALLS_CLOBBERED_REGS): Define.
      	* ira-lives.c (process_bb_node_lives): Use get_call_reg_set_usage.
      	Calculate ALLOCNO_CROSSED_CALLS_CLOBBERED_REGS.
      	* ira-build.c (ira_create_allocno): Init
      	ALLOCNO_CROSSED_CALLS_CLOBBERED_REGS.
      	(create_cap_allocno, propagate_allocno_info)
      	(propagate_some_info_from_allocno)
      	(copy_info_to_removed_store_destinations): Handle
      	ALLOCNO_CROSSED_CALLS_CLOBBERED_REGS.
      	* ira-costs.c (ira_tune_allocno_costs): Use
      	ALLOCNO_CROSSED_CALLS_CLOBBERED_REGS to adjust costs.
      
      Co-Authored-By: Tom de Vries <tom@codesourcery.com>
      
      From-SVN: r211007
      Radovan Obradovic committed
    • -fuse-caller-save - Collect register usage information · 27c07cc5
      2014-05-28  Radovan Obradovic  <robradovic@mips.com>
                  Tom de Vries  <tom@codesourcery.com>
      
      	* cgraph.h (struct cgraph_rtl_info): Add function_used_regs
      	and function_used_regs_valid fields.
      	* final.c: Move include of hard-reg-set.h to before rtl.h to declare
      	find_all_hard_reg_sets.
      	(collect_fn_hard_reg_usage, get_call_fndecl, get_call_cgraph_rtl_info)
      	(get_call_reg_set_usage): New function.
      	(rest_of_handle_final): Use collect_fn_hard_reg_usage.
      	* regs.h (get_call_reg_set_usage): Declare.
      
      Co-Authored-By: Tom de Vries <tom@codesourcery.com>
      
      From-SVN: r211006
      Radovan Obradovic committed
    • re PR libgcc/61152 (Missing GCC Runtime Library Exception in some files that are… · ca48e5ef
      re PR libgcc/61152 (Missing GCC Runtime Library Exception in some files that are included in libgcc)
      
      gcc/
      	PR libgcc/61152
      	* config/dbx.h (License): Add Runtime Library Exception.
      	* config/newlib-stdint.h (License): Same.
      	* config/rtems.h (License): Same
      	* config/initfini-array.h (License): Same
      	* config/v850/v850.h (License): Same.
      	* config/v850/v850-opts.h (License): Same
      	* config/v850/rtems.h (License): Same.
      
      From-SVN: r211004
      Georg-Johann Lay committed
    • 2014-05-25 Paolo Carlini <paolo.carlini@oracle.com> · 171fa27e
      	* Fix typo in ChangeLog entry.
      
      From-SVN: r211003
      Paolo Carlini committed
    • re PR target/61044 (Computed goto on AVR fails to use word-addressing) · 92747f7d
      	PR target/61044
      	* doc/extend.texi (Local Labels): Note that label differences are
      	not supported for AVR.
      
      From-SVN: r210999
      Georg-Johann Lay committed
    • rtl.h (set_for_reg_notes): Declare. · c8912e53
      2014-05-26  Richard Sandiford  <rdsandiford@googlemail.com>
                  Olivier Hainque  <hainque@adacore.com>
      
              * rtl.h (set_for_reg_notes): Declare.
              * emit-rtl.c (set_for_reg_notes): New function.
              (set_unique_reg_note): Use it.
              * optabs.c (add_equal_note): Likewise
      
      
      Co-Authored-By: Olivier Hainque <hainque@adacore.com>
      
      From-SVN: r210998
      Richard Sandiford committed
    • aarch64.md (stack_protect_set_<mode>): Use <w> for the register in assembly template. · 9c6ab05f
      2014-05-27  Andrew Pinski  <apinski@cavium.com>
      
      	* config/aarch64/aarch64.md (stack_protect_set_<mode>):
      	Use <w> for the register in assembly template.
      	(stack_protect_test): Use the mode of operands[0] for the
      	result.
      	(stack_protect_test_<mode>): Use <w> for the register
      	in assembly template.
      
      From-SVN: r210996
      Andrew Pinski committed
    • rx.c (add_vector_labels): New. · 69c7a374
      * config/rx/rx.c (add_vector_labels): New.
      (rx_output_function_prologue): Call it.
      (rx_handle_func_attribute): Don't require empty arguments.
      (rx_handle_vector_attribute): New.
      (rx_attribute_table): Add "vector" attribute.
      * doc/extend.texi (interrupt, vector): Document new/changed
      RX-specific attributes.
      
      * config/rx/rx.c (rx_adjust_insn_length): Skip for non-insns.
      
      From-SVN: r210995
      DJ Delorie committed
    • Daily bump. · fa07538e
      From-SVN: r210994
      GCC Administrator committed
  3. 27 May, 2014 3 commits