aboutsummaryrefslogtreecommitdiff
path: root/gcc/config
diff options
context:
space:
mode:
authorUros Bizjak <ubizjak@gmail.com>2019-10-08 19:01:55 +0200
committerUros Bizjak <uros@gcc.gnu.org>2019-10-08 19:01:55 +0200
commitfe42ae7cf57616f53a17544b614b425076d694db (patch)
treef08a4c0258c543e4d7b176cca9d4cabd4bbcdb2a /gcc/config
parent8cad1ad5ade3fac0a2a796361bf5400d5f385036 (diff)
downloadgcc-fe42ae7cf57616f53a17544b614b425076d694db.zip
gcc-fe42ae7cf57616f53a17544b614b425076d694db.tar.gz
gcc-fe42ae7cf57616f53a17544b614b425076d694db.tar.bz2
re PR rtl-optimization/91994 (r276327 breaks -mvzeroupper)
PR target/91994 * config/i386/i386.c (x86_avx_u128_mode_needed): Use SSE_REG instead of ALL_SSE_REG to check if function call preserves some 256-bit SSE registers. From-SVN: r276707
Diffstat (limited to 'gcc/config')
-rw-r--r--gcc/config/i386/i386.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index 083e228..1a272d9 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -13530,7 +13530,7 @@ ix86_avx_u128_mode_needed (rtx_insn *insn)
modes wider than 256 bits. It's only safe to issue a
vzeroupper if all SSE registers are clobbered. */
const function_abi &abi = insn_callee_abi (insn);
- if (!hard_reg_set_subset_p (reg_class_contents[ALL_SSE_REGS],
+ if (!hard_reg_set_subset_p (reg_class_contents[SSE_REGS],
abi.mode_clobbers (V4DImode)))
return AVX_U128_ANY;