glibc ld.so has an optimization when resolving a symbol that checks
whether or not the upper 128 bits of the ymm registers are zero. If
so it uses "cheaper" instructions to save/restore them using the xmm
registers. If those upper 128 bits contain undefined values memcheck
will issue an Conditional jump or move depends on uninitialised value(s)
warning whenever trying to resolve a symbol.
This triggers in our sh-mem-vecxxx test cases. Suppress the warning
by default.
https://bugs.kde.org/show_bug.cgi?id=385868
385210 PPC64, vpermr instruction could exhaust temporary memory
385183 PPC64, Add support for xscmpeqdp, xscmpgtdp, xscmpgedp, xsmincdp instructions
385334 PPC64, fix vpermr, xxperm, xxpermr mask value.
+385868 glibc ld.so _dl_runtime_resolve_avx_slow conditional jump warning.
Release 3.13.0 (15 June 2017)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Memcheck:Cond
fun:_dl_relocate_object
}
+
+# glibc ld.so has an optimization when resolving a symbol that checks
+# whether or not the upper 128 bits of the ymm registers are zero. If
+# so it uses "cheaper" instructions to save/restore them using the xmm
+# registers. If those upper 128 bits contain undefined values memcheck
+# will issue an Conditional jump or move depends on uninitialised value(s)
+# warning whenever trying to resolve a symbol.
+{
+ dl-trampoline-sse-avx
+ Memcheck:Cond
+ fun:_dl_runtime_resolve_avx_slow
+}