aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorUros Bizjak <ubizjak@gmail.com>2020-07-24 15:59:38 +0200
committerUros Bizjak <ubizjak@gmail.com>2020-07-24 16:00:39 +0200
commit8c7bb540803e8bff9998bc86806e8a83acc75370 (patch)
treeaa91be40a3aed734265be505531e83b93e5443d2 /gcc
parentfdc9db25395e5a6e77069c04fe713f165a9c52a4 (diff)
downloadgcc-8c7bb540803e8bff9998bc86806e8a83acc75370.zip
gcc-8c7bb540803e8bff9998bc86806e8a83acc75370.tar.gz
gcc-8c7bb540803e8bff9998bc86806e8a83acc75370.tar.bz2
i386: Emit mfence_sse2 for -Os [PR95750]
2020-07-24 Uroš Bizjak <ubizjak@gmail.com> gcc/ChangeLog: PR target/95750 * config/i386/sync.md (mmem_thread_fence): Emit mfence_sse2 for -Os.
Diffstat (limited to 'gcc')
-rw-r--r--gcc/config/i386/sync.md3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/config/i386/sync.md b/gcc/config/i386/sync.md
index c88750d..ed17bb0 100644
--- a/gcc/config/i386/sync.md
+++ b/gcc/config/i386/sync.md
@@ -123,7 +123,8 @@
rtx mem;
if ((TARGET_64BIT || TARGET_SSE2)
- && !TARGET_AVOID_MFENCE)
+ && (optimize_function_for_size_p (cfun)
+ || !TARGET_AVOID_MFENCE))
mfence_insn = gen_mfence_sse2;
else
mfence_insn = gen_mfence_nosse;