gcc/libstdc++-v3/include/bits
Andi Kleen a062bb4ba6 Mark all member functions with memory models always inline v2
When a non constant memory model is passed to __atomic_*
gcc falls back to seq_cst. This drops any HLE acquire or release bits.

This can happen when <atomic> is used with -O0
as the member functions are not always inlined then and the memory
argument passed in ends up being non-constant.

v2: Use _GLIBCXX_ALWAYS_INLINE

libstdc++-v3/:

2013-05-08  Andi Kleen  <ak@linux.intel.com>

	PR target/55947
	* libstdc++-v3/include/bits/atomic_base.h
	(_GLIBCXX_ALWAYS_INLINE): Add new macro.
	(atomic_thread_fence, atomic_signal_fence, test_and_set,
	clear, store, load, exchange, compare_exchange_weak)
	compare_exchange_strong, fetch_add, fetch_sub, fetch_and,
	fetch_or, fetch_xor): Mark _GLIBCXX_ALWAYS_INLINE.

From-SVN: r198733
2013-05-09 04:22:11 +00:00
..
algorithmfwd.h memoryfwd.h: New. 2013-03-08 21:39:24 +00:00
alloc_traits.h memoryfwd.h: New. 2013-03-08 21:39:24 +00:00
allocator.h memoryfwd.h: New. 2013-03-08 21:39:24 +00:00
atomic_base.h Mark all member functions with memory models always inline v2 2013-05-09 04:22:11 +00:00
basic_ios.h faq.html: Fix spelling. 2013-02-20 22:41:51 +00:00
basic_ios.tcc Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
basic_string.h functional_hash.h (std::__is_fast_hash<>): New. 2013-02-04 21:14:07 +00:00
basic_string.tcc Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
boost_concept_check.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
c++0x_warning.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
c++config Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
char_traits.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
codecvt.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
concept_check.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
cpp_type_traits.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
deque.tcc PR libstdc++/55977 (partial, std::vector and std::deque bits) 2013-03-18 10:15:56 +00:00
forward_list.h Makefile.am: Add ext/aligned_buffer.h 2013-04-07 17:44:40 +01:00
forward_list.tcc Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
fstream.tcc Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
functexcept.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
functional_hash.h functional_hash.h (std::__is_fast_hash<>): New. 2013-02-04 21:14:07 +00:00
gslice_array.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
gslice.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
hashtable_policy.h hashtable_policy.h (_Hashtable_ebo_helper): Fix comment. 2013-04-28 12:51:59 +01:00
hashtable.h hashtable_policy.h: Add C++11 allocator support. 2013-04-22 20:22:07 +00:00
indirect_array.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
ios_base.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
istream.tcc Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
list.tcc Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
locale_classes.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
locale_classes.tcc Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
locale_facets_nonio.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
locale_facets_nonio.tcc Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
locale_facets.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
locale_facets.tcc Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
localefwd.h memoryfwd.h: New. 2013-03-08 21:39:24 +00:00
mask_array.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
memoryfwd.h memoryfwd.h: New. 2013-03-08 21:39:24 +00:00
move.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
ostream_insert.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
ostream.tcc Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
postypes.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
ptr_traits.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
random.h PR libstdc++/56202 (again) 2013-02-04 19:28:40 +00:00
random.tcc random.tcc (__transform): Remove. 2013-02-12 10:26:54 +00:00
range_access.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
regex_compiler.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
regex_constants.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
regex_cursor.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
regex_error.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
regex_grep_matcher.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
regex_grep_matcher.tcc Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
regex_nfa.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
regex_nfa.tcc Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
regex.h faq.html: Fix spelling. 2013-02-20 22:41:51 +00:00
shared_ptr_base.h re PR libstdc++/51365 (cannot use final empty class in std::tuple) 2013-04-28 12:38:21 +01:00
shared_ptr.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
slice_array.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
sstream.tcc Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
stl_algo.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
stl_algobase.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
stl_bvector.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
stl_construct.h memoryfwd.h: New. 2013-03-08 21:39:24 +00:00
stl_deque.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
stl_function.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
stl_heap.h re PR libstdc++/57010 ([c++0x] priority_queue<>::pop() calls self-move-assignment operator) 2013-04-22 10:07:31 +00:00
stl_iterator_base_funcs.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
stl_iterator_base_types.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
stl_iterator.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
stl_list.h re PR libstdc++/55979 ([C++11] std::list range construction imposes unnecessary conversion constraints) 2013-03-17 18:27:52 +00:00
stl_map.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
stl_multimap.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
stl_multiset.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
stl_numeric.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
stl_pair.h user.cfg.in: Set __cplusplus to 201103L. 2013-02-20 01:52:36 +00:00
stl_queue.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
stl_raw_storage_iter.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
stl_relops.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
stl_set.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
stl_stack.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
stl_tempbuf.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
stl_tree.h re PR libstdc++/56613 (map::operator[](key_type&&) fails with custom allocator) 2013-03-14 23:28:11 +00:00
stl_uninitialized.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
stl_vector.h PR libstdc++/55977 (partial, std::vector and std::deque bits) 2013-03-18 10:15:56 +00:00
stream_iterator.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
streambuf_iterator.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
streambuf.tcc Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
stringfwd.h memoryfwd.h: New. 2013-03-08 21:39:24 +00:00
unique_ptr.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
unordered_map.h re PR libstdc++/57065 (incorrect default allocator template for debug and profile unordered_map) 2013-04-25 09:42:46 +00:00
unordered_set.h hashtable_policy.h: Add C++11 allocator support. 2013-04-22 20:22:07 +00:00
uses_allocator.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
valarray_after.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
valarray_array.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
valarray_array.tcc Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
valarray_before.h Update copyright in libstdc++-v3. 2013-02-03 17:54:05 +00:00
vector.tcc vector.tcc (vector<>operator=(const vector<>&): Reset pointers after deallocation when memory can be reused. 2013-03-08 20:08:20 +00:00