https://bugs.kde.org/show_bug.cgi?id=386945

--- Comment #63 from Mark Wielaard <m...@klomp.org> ---
(In reply to Julian Seward from comment #62)
> Created attachment 116827 [details]
> Possible fix for the comment 61 problems
> 
> This patch:
> 
> * changes set_AV_CR6 so that it does scalar comparisons against zero,
>   rather than sometimes against an all-ones word.  This is something
>   that Memcheck can instrument exactly.
> 
> * in Memcheck, requests expensive instrumentation of Iop_Cmp{EQ,NE}64
>   by default on ppc64le.
> 
> Note, this is all untested!  In particular it would be good to verify
> that the CR6 results are unchanged.

That definitely fixes the issue. I tested on both power9 and power8 with a gcc
and glibc build with the new str[n]cmp inline patch plus the following fixes
from this bug:

- Implement ppc64 ldbrx as 64-bit load and Iop_Reverse8sIn64_x1.
- memcheck: Allow unaligned loads of words on ppc64[le].
- Implement ppc64 lxvd2x as 128-bit load with double word swap for ppc64le.
- memcheck: Allow unaligned loads of 128bit vectors on ppc64[le].
- Implement ppc64 lxvb16x as 128-bit vector load with reversed double words.

And it seems to resolve all gcc strcmp inline issues I was seeing before.
Both setups were ppc64le. I haven't yet tested on ppc64 or ppc32.

I do see bug #401827 and bug #401828 but they are unrelated.

Also memcheck/tests/undef_malloc_args (stderr) fails. That one does seem caused
by earlier patches from this bug.

And occasionally I see Use of uninitialised value of size 8 in _vgnU_freeres
(vg_preloaded.c:68) which is mysterious. It goes away with
--run-libc-freeres=no --run-cxx-freeres=no. It seems unrelated to this issue.
But I haven't found out yet what is causing it. It is as if sometimes we are
unable to see that the weak symbol _ZN9__gnu_cxx9__freeresEv
(__gnu_cxx::__freeres) is initialized. Very odd, since it normally works except
in some cases. But it is very likely unrelated to this bug.

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to