re PR target/71245 (std::atomic<double> load/store bounces the data to the stack...
authorUros Bizjak <ubizjak@gmail.com>
Sun, 29 May 2016 20:50:32 +0000 (22:50 +0200)
committerUros Bizjak <uros@gcc.gnu.org>
Sun, 29 May 2016 20:50:32 +0000 (22:50 +0200)
commitbeed3701c796842abbfb27d7484b35bd82818740
tree56f243f0598adbb1fca56be6d0960c8128f04028
parentf0b03e9423c1965ba30cd90ce248475423fd55a9
re PR target/71245 (std::atomic<double> load/store bounces the data to the stack using fild/fistp)

PR target/71245
* config/i386/sync.md (define_peephole2 atomic_storedi_fpu):
New peepholes to remove unneeded fild/fistp pairs.
(define_peephole2 atomic_loaddi_fpu): Ditto.

testsuite/ChangeLog:

PR target/71245
* gcc.target/i386/pr71245-1.c: New test.
* gcc.target/i386/pr71245-2.c: Ditto.

From-SVN: r236863
gcc/ChangeLog
gcc/config/i386/sync.md
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/i386/pr71245-1.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr71245-2.c [new file with mode: 0644]