1. 10 Sep, 2015 31 commits
  2. 09 Sep, 2015 9 commits
    • nvptx.md (call_operation): Move bound out of loop. · f324806d
      	* config/nvptx/nvptx.md (call_operation): Move bound out of loop.
      	(*cmp<mode>): Add assembler spacing.
      	(setcc_int<mode>, set_cc_float<mode>): Likewise.
      	* config/nvptx/nvptx.c (nvptx_option_override): Override debug
      	level.
      	(write_func_decl_from_insn): Refactor argument loops & comma emission.
      	(nvptx_expand_call): Likewise.
      	(nvptx_output_call_insn): Likewise.
      	(nvptx_reorg_subreg): Add spacing.
      
      From-SVN: r227597
      Nathan Sidwell committed
    • Enable lightweight checks with _GLIBCXX_ASSERTIONS. · 2f1e8e7c
      	* doc/xml/manual/using.xml (_GLIBCXX_ASSERTIONS): Document.
      	* doc/html/manual/using_macros.html: Regenerate.
      	* include/bits/c++config: Define _GLIBCXX_ASSERTIONS when
      	_GLIBCXX_DEBUG is defined. Disable std::string extern templates when
      	(_GLIBCXX_EXTERN_TEMPLATE, __glibcxx_assert): Depend on
      	_GLIBCXX_ASSERTIONS instead of _GLIBCXX_DEBUG.
      	* include/debug/debug.h [!_GLIBCXX_DEBUG]: Define
      	__glibcxx_requires_non_empty_range and __glibcxx_requires_nonempty.
      	* include/backward/auto_ptr.h (auto_ptr::operator*,
      	auto_ptr::operator->): Replace _GLIBCXX_DEBUG_ASSERT with
      	__glibcxx_assert.
      	* include/bits/basic_string.h (basic_string::operator[],
      	basic_string::front, basic_string::back, basic_string::pop_back):
      	Likewise.
      	* include/bits/random.h
      	(uniform_int_distribution::param_type::param_type,
      	uniform_real_distribution::param_type::param_type,
      	normal_distribution::param_type::param_type,
      	gamma_distribution::param_type::param_type,
      	bernoulli_distribution::param_type::param_type,
      	binomial_distribution::param_type::param_type,
      	geometric_distribution::param_type::param_type,
      	negative_binomial_distribution::param_type::param_type,
      	poisson_distribution::param_type::param_type,
      	exponential_distribution::param_type::param_type): Likewise.
      	* include/bits/regex.h (match_results::operator[],
      	match_results::prefix, match_results::suffix): Likewise.
      	* include/bits/regex.tcc (format, regex_iterator::operator++):
      	Likewise.
      	* include/bits/regex_automaton.tcc (_StateSeq::_M_clone): Likewise.
      	* include/bits/regex_compiler.tcc (_Compiler::_Compiler,
      	_Compiler::_M_insert_character_class_matcher): Likewise.
      	* include/bits/regex_executor.tcc (_Executor::_M_dfs): Likewise.
      	* include/bits/regex_scanner.tcc (_Scanner::_M_advance,
      	_Scanner::_M_scan_normal): Likewise.
      	* include/bits/shared_ptr_base.h (__shared_ptr::_M_reset,
      	__shared_ptr::operator*): Likewise.
      	* include/bits/stl_iterator_base_funcs.h (__advance): Likewise.
      	* include/bits/unique_ptr.h (unique_ptr::operator*,
      	unique_ptr::operator[]): Likewise.
      	* include/experimental/fs_path.h (path::path(string_type, _Type),
      	path::iterator::operator++, path::iterator::operator--,
      	path::iterator::operator*): Likewise.
      	* include/experimental/string_view (basic_string_view::operator[],
      	basic_string_view::front, basic_string_view::back,
      	basic_string_view::remove_prefix): Likewise.
      	* include/ext/random (beta_distribution::param_type::param_type,
      	normal_mv_distribution::param_type::param_type,
      	rice_distribution::param_type::param_type,
      	pareto_distribution::param_type::param_type,
      	k_distribution::param_type::param_type,
      	arcsine_distribution::param_type::param_type,
      	hoyt_distribution::param_type::param_type,
      	triangular_distribution::param_type::param_type,
      	von_mises_distribution::param_type::param_type,
      	hypergeometric_distribution::param_type::param_type,
      	logistic_distribution::param_type::param_type): Likewise.
      	* include/ext/vstring.h (__versa_string::operator[]): Likewise.
      	* include/std/complex (polar): Likewise.
      	* include/std/mutex [!_GTHREAD_USE_MUTEX_TIMEDLOCK]
      	(timed_mutex::~timed_mutex, timed_mutex::unlock,
      	(recursive_timed_mutex::~timed_mutex, recursive_timed_mutex::unlock):
      	Likewise.
      	* include/std/shared_mutex [!PTHREAD_RWLOCK_INITIALIZER]
      	(__shared_mutex_pthread::__shared_mutex_pthread,
      	__shared_mutex_pthread::~__shared_mutex_pthread): Likewise.
      	(__shared_mutex_pthread::lock, __shared_mutex_pthread::try_lock,
      	__shared_mutex_pthread::unlock, __shared_mutex_pthread::lock_shared,
      	__shared_mutex_pthread::try_lock_shared): Likewise.
      	(__shared_mutex_cv::~__shared_mutex_cv, __shared_mutex_cv::unlock,
      	__shared_mutex_cv::unlock_shared): Likewise.
      	(shared_timed_mutex::try_lock_until,
      	shared_timed_mutex::try_lock_shared_until): Likewise.
      	* include/std/valarray (valarray::valarray(const _Tp*, size_t),
      	valarray::operator=, valarray::sum, valarray::min, valarray::max,
      	_DEFINE_VALARRAY_AUGMENTED_ASSIGNMENT, _DEFINE_BINARY_OPERATOR):
      	Likewise.
      
      From-SVN: r227595
      Jonathan Wakely committed
    • re PR middle-end/67512 (internal compiler error: in invert_tree_comparison, at fold-const.c:2456) · c27348aa
      	PR middle-end/67512
      	* tree-ssa-uninit.c (pred_equal_p): Only call invert_tree_comparison
      	for comparisons.
      
      	* gcc.dg/pr67512.c: New test.
      
      From-SVN: r227594
      Marek Polacek committed
    • re PR c++/53184 (Unnecessary anonymous namespace warnings) · 273aa49e
      2015-09-09  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/53184
      	* doc/invoke.texi ([Wsubobject-linkage]): Document.
      
      /c-family
      2015-09-09  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/53184
      	* c.opt ([Wsubobject-linkage]): Add.
      
      /cp
      2015-09-09  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/53184
      	* decl2.c (constrain_class_visibility): Use Wsubobject-linkage.
      
      /testsuite
      2015-09-09  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/53184
      	* g++.dg/warn/Wsubobject-linkage-1.C: New.
      	* g++.dg/warn/Wsubobject-linkage-2.C: Likewise.
      	* g++.dg/warn/Wsubobject-linkage-3.C: Likewise.
      	* g++.dg/warn/Wsubobject-linkage-4.C: Likewise.
      
      From-SVN: r227593
      Paolo Carlini committed
    • Fix sanitizer/67258 by cherry picking upstream patch · 1842a04c
      	PR sanitizer/67258
      	* ubsan/ubsan_type_hash.cc: Cherry pick upstream r244101.
      
      Upstraem patch:
      commit 1d2477faafda9ad2cc19927b3c31efd22747f013
      Author: Alexey Samsonov <vonosmas@gmail.com>
      Date:   Wed Aug 5 19:35:46 2015 +0000
      
          [UBSan] Fix UBSan-vptr false positive.
      
          Offset from vptr to the start of most-derived object can actually
          be positive in some virtual base class vtables.
      
          Patch by Stephan Bergmann!
      
          git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@244101 91177308-0d34-0410-b5e6-96231b3b80d8
      
      From-SVN: r227591
      Markus Trippelsdorf committed
    • Add copyright in gcc/params-list.h · 34bc1d22
      2015-09-09  Tom de Vries  <tom@codesourcery.com>
      
      	* params-list.h: Add missing copyright notice.
      
      From-SVN: r227590
      Tom de Vries committed
    • nvptx.md (atomic_compare_and_swap<mode>): Use sel_truesi, not andsi. · 41c3713a
      	* config/nvptx/nvptx.md (atomic_compare_and_swap<mode>): Use
      	sel_truesi, not andsi.
      
      From-SVN: r227587
      Nathan Sidwell committed
    • [ARM][3/3] Expand mod by power of 2 · 956db28e
      	* config/arm/arm.md (*subsi3_compare0): Rename to...
      	(subsi3_compare0): ... This.
      	(modsi3): New define_expand.
      	* config/arm/arm.c (arm_new_rtx_costs, MOD case): Handle case
      	when operand is power of 2.
      
      	* gcc.target/aarch64/mod_2.x: New file.
      	* gcc.target/aarch64/mod_256.x: Likewise.
      	* gcc.target/arm/mod_2.c: New test.
      	* gcc.target/arm/mod_256.c: Likewise.
      	* gcc.target/aarch64/mod_2.c: Likewise.
      	* gcc.target/aarch64/mod_256.c: Likewise.
      
      From-SVN: r227586
      Kyrylo Tkachov committed
    • [AArch64][1/3] Expand signed mod by power of 2 using CSNEG · 4f58fe36
      	* config/aarch64/aarch64.md (mod<mode>3): New define_expand.
      	(*neg<mode>2_compare0): Rename to...
      	(neg<mode>2_compare0): ... This.
      	* config/aarch64/aarch64.c (aarch64_rtx_costs, MOD case):
      	Move check for speed inside the if-then-elses.  Reflect
      	CSNEG sequence in MOD by power of 2 case.
      
      From-SVN: r227585
      Kyrylo Tkachov committed