1. 25 Sep, 2015 13 commits
    • * tr.po: Update. · 9e703070
      From-SVN: r228138
      Joseph Myers committed
    • This patch unsets -freorder-blocks-and-partition when -fprofile-use is not specified. · 66971048
      This patch unsets -freorder-blocks-and-partition when -fprofile-use
      is not specified. Function splitting was not actually being performed
      in that case, as probably_never_executed_bb_p does not distinguish
      any basic blocks as being cold vs hot when there is no profile data.
      Leaving it enabled, however, causes the assembly code generator to create
      (empty) cold sections and labels, leading to unnecessary size overhead.
      
      2015-09-25  Teresa Johnson  <tejohnson@google.com>
      
      	* opts.c (finish_options): Unset -freorder-blocks-and-partition
      	if not using profile.
      
      From-SVN: r228136
      Teresa Johnson committed
    • Avoid creating dangling references in case of nested tuples · 5e2f2cd5
      for tuple constructors that construct from other tuples.
      
      2015-09-25  Ville Voutilainen  <ville.voutilainen@gmail.com>
      
      	Avoid creating dangling references in case of nested tuples
      	for tuple constructors that construct from other tuples.
      	* include/std/tuple (_TC::_NonNestedTuple): New.
      	* include/std/tuple (tuple::_TNTC): New.
      	* include/std/tuple (tuple(const tuple<_UElements...>&),
      	tuple(tuple<_UElements...>&&): Use _TNTC.
      	* testsuite/20_util/tuple/cons/nested_tuple_construct.cc: New.
      
      From-SVN: r228134
      Ville Voutilainen committed
    • PR pretty-print/67567 do not pass NULL as a string · 41d9f1e0
      Fortran passes NULL where a non-null string is expected by the pretty-printer,
      which causes a sanitizer warning. This could have been found earlier by using
      gcc_checking_assert. Even if the assertion is false, the result is just an
      incomplete diagnostic, thus it seems more user-friendly to assert only when
      checking. I do not have any idea how to properly fix the Fortran bug, thus this
      patch simply works-around it.
      
      gcc/fortran/ChangeLog:
      
      2015-09-25  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	PR pretty-print/67567
      	* resolve.c (resolve_fl_procedure): Work-around when iface->module
      	== NULL.
      
      gcc/ChangeLog:
      
      2015-09-25  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	PR pretty-print/67567
      	* pretty-print.c (pp_string): Add gcc_checking_assert.
      	* pretty-print.h (output_buffer_append_r): Likewise.
      
      From-SVN: r228131
      Manuel López-Ibáñez committed
    • re PR target/67675 ([SH] Improve __builtin_strcmp alignment test) · f700c7ca
      gcc/
      	PR target/67675
      	* config/sh/sh-mem.cc (sh_expand_cmpstr): Check alignment of addr1 and
      	addr2 individually.  Don't emit logical or insn if one is known to
      	be aligned approriately.
      	(sh_expand_cmpnstr): Likewise.
      
      gcc/testsuite/
      	PR target/67675
      	* gcc.target/sh/pr67675.c: New.
      
      From-SVN: r228118
      Oleg Endo committed
    • [AArch64] Force __builtin_aarch64_fp[sc]r argument into a REG · e6cf8d65
      The testcase triggered an ICE because the builtin expansion
      code passed the output of expand_normal directly to the SET_FP[SC]R
      generator, without forcing it into a register first.
      
      gcc/
      	* config/aarch64/aarch64-builtins.c (aarch64_expand_builtin): Force
      	__builtin_aarch64_fp[sc]r arguments into a register.
      
      gcc/testsuite/
      	* gcc.target/aarch64/fpcr_fpsr_1.c: New file.
      
      From-SVN: r228116
      Richard Sandiford committed
    • Rename IA MCU processor lakemount to lakemont · 2d6b2e28
      IA MCU processor name is lakemont, not lakemount.
      
      gcc/
      
      	* config.gcc (x86_archs): Replace lakemount with lakemont.
      	(with_cpu): Likewise.
      	(with_arch): Likewise.
      	* config/i386/i386-c.c (ix86_target_macros_internal): Replace
      	PROCESSOR_LAKEMOUNT with PROCESSOR_LAKEMONT.  Replace
      	__tune_lakemount__ with __tune_lakemont__.
      	* config/i386/i386.c (lakemount_cost): Renamed to ...
      	(lakemont_cost): This.
      	(m_LAKEMOUNT): Renamed to ...
      	(m_LAKEMONT): This.
      	(initial_ix86_arch_features): Replace m_LAKEMOUNT with m_LAKEMONT.
      	(processor_target_table): Replace "lakemount" with "lakemont".
      	(processor_alias_table): Likewise.
      	(ix86_issue_rate): Replace PROCESSOR_LAKEMOUNT with
      	PROCESSOR_LAKEMONT.
      	(ix86_adjust_cost): Likewise.
      	(ia32_multipass_dfa_lookahead): Likewise.
      	* config/i386/i386.h (processor_type): Likewise.
      	* config/i386/x86-tune.def: Replace m_LAKEMOUNT with m_LAKEMONT.
      	* doc/invoke.texi: Replace lakemount with lakemont.  Replace
      	Lakemount with Lakemont.
      
      gcc/testsuite/
      
      	* gcc.target/i386/pr66749.c (dg-options): Replace
      	-mtune=lakemount with -mtune=lakemont.
      	* gcc.target/i386/pr66821.c (dg-options): Likewise.
      	* gcc.target/i386/pr67329.c (dg-options): Likewise.
      
      From-SVN: r228115
      H.J. Lu committed
    • c-ubsan.c (ubsan_instrument_division): Remove unnecessary code. · 974348ee
      	* c-ubsan.c (ubsan_instrument_division): Remove unnecessary code.
      	(ubsan_instrument_shift): Likewise.
      
      	* c-c++-common/ubsan/bounds-11.c: New test.
      	* c-c++-common/ubsan/bounds-12.c: New test.
      
      From-SVN: r228114
      Marek Polacek committed
    • re PR sanitizer/64906 (-fsanitize=integer-divide-by-zero creates false… · 15dbc1a6
      re PR sanitizer/64906 (-fsanitize=integer-divide-by-zero creates false -Wmaybe-uninitialized warning)
      
      	PR sanitizer/64906
      	* c-ubsan.c (ubsan_instrument_division): Also pre-evaluate OP1.
      
      	* c-c++-common/ubsan/pr64906.c: New test.
      
      From-SVN: r228112
      Marek Polacek committed
    • Change IA MCU processor from iamcu to lakemount · 89e5941d
      The first IA MCU processor will be Lakemount.  This patch changes IA MCU
      processor name from iamcu to lakemount.
      
      gcc/
      
      	* config.gcc (x86_archs): Replace iamcu with lakemount.
      	(with_cpu): Likewise.
      	(with_arch): Likewise.
      	* doc/invoke.texi: Likewise.
      	* config/i386/i386-c.c (ix86_target_macros_internal): Replace
      	PROCESSOR_IAMCU with PROCESSOR_LAKEMOUNT.  Replace
      	__tune_iamcu__ with __tune_lakemount__.
      	* config/i386/i386.c (iamcu_cost): Renamed to ...
      	(lakemount_cost): This.
      	(m_IAMCU): Renamed to ...
      	(m_LAKEMOUNT): This.
      	(initial_ix86_arch_features): Replace m_IAMCU with m_LAKEMOUNT.
      	(processor_target_table): Replace "iamcu" with "lakemount".
      	(processor_alias_table): Likewise.
      	(ix86_issue_rate): Replace PROCESSOR_IAMCU with
      	PROCESSOR_LAKEMOUNT.
      	(ix86_adjust_cost): Likewise.
      	(ia32_multipass_dfa_lookahead): Likewise.
      	* config/i386/i386.h (processor_type): Likewise.
      	* config/i386/x86-tune.def: Replace m_IAMCU with m_LAKEMOUNT.
      
      gcc/testsuite/
      
      	* gcc.target/i386/pr66749.c (dg-options): Replace -mtune=iamcu
      	with -mtune=lakemount.
      	* gcc.target/i386/pr66821.c (dg-options): Likewise.
      	* gcc.target/i386/pr67329.c (dg-options): Likewise.
      
      From-SVN: r228109
      H.J. Lu committed
    • Daily bump. · 925f700a
      From-SVN: r228108
      GCC Administrator committed
    • pa-linux.h (HAVE_sync_compare_and_swapdi): Define. · 7e7c9d40
      	* config/pa/pa-linux.h (HAVE_sync_compare_and_swapdi): Define.
      	* config/pa/pa-protos.h (pa_maybe_emit_compare_and_swap_exchange_loop):
      	Declare.
      	* config/pa/pa.c (pa_init_libfuncs): Init sync libfuncs up to 8 bytes.
      	(pa_expand_compare_and_swap_loop): New.
      	(pa_maybe_emit_compare_and_swap_exchange_loop): New.
      	* config/pa/pa.md (atomic_storeqi, atomic_storehi, atomic_storesi,
      	atomic_storesf, atomic_loaddf, atomic_storedf): New expanders.
      	(atomic_loaddf_1, atomic_storedf_1): New insn patterns.
      	(atomic_loaddi, atomic_loaddi_1, atomic_storedi, atomic_storedi_1):
      	Revise.
      
      From-SVN: r228104
      John David Anglin committed
  2. 24 Sep, 2015 21 commits
  3. 23 Sep, 2015 6 commits