[Bug target/86019] [8/9 Regression] Unref implementation using atomic_thread_fence generates worse code on x86-64 in gcc 8.1 than 7.3

2019-02-25 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86019

--- Comment #5 from Jakub Jelinek  ---
This used to be handled by peephole2, but that can't do anything with multiple
basic blocks and
(insn 12 11 13 3 (set (mem/v:BLK (scratch:DI) [0  A8])
(unspec:BLK [
(mem/v:BLK (scratch:DI) [0  A8])
] UNSPEC_MEMORY_BLOCKAGE))
"/usr/src/gcc-7/obj/x86_64-pc-linux-gnu/libstdc++-v3/include/bits/atomic_base.h":102:26
688 {*memory_blockag
e}
 (nil))
emitted in there.  And generic code doesn't know anything about the memory
blockage instruction that it would e.g. be able to move it from the conditional
to unconditional if it was the only thing (say let ifcvt pass do it?).

[Bug target/86019] [8/9 Regression] Unref implementation using atomic_thread_fence generates worse code on x86-64 in gcc 8.1 than 7.3

2019-02-22 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86019

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.3 |8.4

--- Comment #4 from Jakub Jelinek  ---
GCC 8.3 has been released.

[Bug target/86019] [8/9 Regression] Unref implementation using atomic_thread_fence generates worse code on x86-64 in gcc 8.1 than 7.3

2018-12-20 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86019

Richard Biener  changed:

   What|Removed |Added

   Priority|P3  |P2

[Bug target/86019] [8/9 Regression] Unref implementation using atomic_thread_fence generates worse code on x86-64 in gcc 8.1 than 7.3

2018-07-26 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86019

Jakub Jelinek  changed:

   What|Removed |Added

   Target Milestone|8.2 |8.3

--- Comment #3 from Jakub Jelinek  ---
GCC 8.2 has been released.

[Bug target/86019] [8/9 Regression] Unref implementation using atomic_thread_fence generates worse code on x86-64 in gcc 8.1 than 7.3

2018-06-15 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86019

Jakub Jelinek  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2018-06-15
 CC||amonakov at gcc dot gnu.org,
   ||jakub at gcc dot gnu.org
 Ever confirmed|0   |1

--- Comment #2 from Jakub Jelinek  ---
This broke with r251377 aka PR80640 fix.

[Bug target/86019] [8/9 Regression] Unref implementation using atomic_thread_fence generates worse code on x86-64 in gcc 8.1 than 7.3

2018-06-01 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86019

Richard Biener  changed:

   What|Removed |Added

   Keywords||missed-optimization
URL|missed-optimization |
  Known to work||7.3.0
Version|unknown |8.1.0
   Target Milestone|--- |8.2
Summary|Unref implementation using  |[8/9 Regression] Unref
   |atomic_thread_fence |implementation using
   |generates worse code on |atomic_thread_fence
   |x86-64 in gcc 8.1 than 7.3  |generates worse code on
   ||x86-64 in gcc 8.1 than 7.3