commit 3c3aa1c62767c48ac8f2015df66f04f354dd897b Author: Mark Wielaard Date: Tue Oct 17 17:49:26 2017 +0200 Suppress _dl_runtime_resolve_avx_slow for memcheck conditional. 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. diff --git a/glibc-2.X.supp.in b/glibc-2.X.supp.in index 8edeb4a..126e8b3 100644 --- a/glibc-2.X.supp.in +++ b/glibc-2.X.supp.in @@ -236,3 +236,15 @@ 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 +}