diff options
author | Noah Goldstein <goldstein.w.n@gmail.com> | 2022-06-20 13:02:10 -0700 |
---|---|---|
committer | Noah Goldstein <goldstein.w.n@gmail.com> | 2022-06-22 19:42:17 -0700 |
commit | 3079f652d7cc34456aefb412677c01e758922527 (patch) | |
tree | 5d3f749db7fcfdeb17e3765858894a15c1267e26 /sysdeps/x86_64/fpu/multiarch/svml_d_exp28_core_avx512.S | |
parent | 3edda6a0f013736ca9554a95e553739a41dbd4b7 (diff) | |
download | glibc-3079f652d7cc34456aefb412677c01e758922527.tar.gz glibc-3079f652d7cc34456aefb412677c01e758922527.tar.xz glibc-3079f652d7cc34456aefb412677c01e758922527.zip |
x86: Replace all sse instructions with vex equivilent in avx+ files
Most of these don't really matter as there was no dirty upper state but we should generally avoid stray sse when its not needed. The one case that really matters is in svml_d_tanh4_core_avx2.S: blendvps %xmm0, %xmm8, %xmm7 When there was a dirty upper state. Tested on x86_64-linux
Diffstat (limited to 'sysdeps/x86_64/fpu/multiarch/svml_d_exp28_core_avx512.S')
-rw-r--r-- | sysdeps/x86_64/fpu/multiarch/svml_d_exp28_core_avx512.S | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sysdeps/x86_64/fpu/multiarch/svml_d_exp28_core_avx512.S b/sysdeps/x86_64/fpu/multiarch/svml_d_exp28_core_avx512.S index 7a85fd8b18..eee785dbf5 100644 --- a/sysdeps/x86_64/fpu/multiarch/svml_d_exp28_core_avx512.S +++ b/sysdeps/x86_64/fpu/multiarch/svml_d_exp28_core_avx512.S @@ -227,11 +227,11 @@ L(SPECIAL_VALUES_LOOP): L(SCALAR_MATH_CALL): movl %r12d, %r14d - movsd 64(%rsp, %r14, 8), %xmm0 + vmovsd 64(%rsp, %r14, 8), %xmm0 call exp2@PLT # LOE rbx r14 r15 r12d r13d xmm0 - movsd %xmm0, 128(%rsp, %r14, 8) + vmovsd %xmm0, 128(%rsp, %r14, 8) /* Process special inputs in loop */ jmp L(SPECIAL_VALUES_LOOP) |