diff options
| author | ak <ak@138bc75d-0d04-0410-961f-82ee72b054a4> | 2013-05-09 04:22:11 +0000 |
|---|---|---|
| committer | ak <ak@138bc75d-0d04-0410-961f-82ee72b054a4> | 2013-05-09 04:22:11 +0000 |
| commit | b6de2eafb4cd39af2539cc42fca95aa84c8ae4de (patch) | |
| tree | 5cd84b58b1cfba1a839f177accc1bdf34f32a189 /libjava/classpath/gnu/java/beans/encoder/Root.java | |
| parent | a35e091e4876b4033e0980d5b34429a8ed789631 (diff) | |
| download | ppe42-gcc-b6de2eafb4cd39af2539cc42fca95aa84c8ae4de.tar.gz ppe42-gcc-b6de2eafb4cd39af2539cc42fca95aa84c8ae4de.zip | |
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198733 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/classpath/gnu/java/beans/encoder/Root.java')
0 files changed, 0 insertions, 0 deletions

