|
From: Carl E. L. <ce...@us...> - 2016-04-28 17:11:40
|
Julian:
I pulled down the new commit r15875 to my PPC 64 BE machine and verified
it does fix the regression failure. Thanks.
Carl Love
On Thu, 2016-04-28 at 16:21 +0000,
val...@li... wrote:
> Date: Thu, 28 Apr 2016 15:52:02 -0000
> From: sv...@va...
> Subject: [Valgrind-developers] Valgrind: r15875 -
> /trunk/coregrind/m_transtab.c
> To: val...@li...
> Message-ID:
> <201...@sq...>
> Content-Type: text/plain; charset="utf-8"
>
> Author: sewardj
> Date: Thu Apr 28 16:52:01 2016
> New Revision: 15875
>
> Log:
> Un-break ppc32-linux following r15784. It appears that ppc32-ELF
> layout constraints are different from x86-ELF and so the assertion on
> the sizeof(TTEntryC) fails on ppc32-linux.
>
> Modified:
> trunk/coregrind/m_transtab.c
>
> Modified: trunk/coregrind/m_transtab.c
> ==============================================================================
> --- trunk/coregrind/m_transtab.c (original)
> +++ trunk/coregrind/m_transtab.c Thu Apr 28 16:52:01 2016
> @@ -2448,10 +2448,18 @@
> if (sizeof(HWord) == 8) {
> vg_assert(sizeof(TTEntryH) <= 32);
> vg_assert(sizeof(TTEntryC) <= 112);
> - } else if (sizeof(HWord) == 4) {
> + }
> + else if (sizeof(HWord) == 4) {
> vg_assert(sizeof(TTEntryH) <= 20);
> +# if defined(VGP_ppc32_linux)
> + /* ppc32-linux is weird. It thinks alignof(ULong) == 8 and so
> the
> + structure is larger than on other 32 bit targets. */
> + vg_assert(sizeof(TTEntryC) <= 96);
> +# else
> vg_assert(sizeof(TTEntryC) <= 88);
> - } else {
> +# endif
> + }
> + else {
> vg_assert(0);
> }
>
|
|
From: Julian S. <js...@ac...> - 2016-04-29 11:24:50
|
On 28/04/16 19:11, Carl E. Love wrote: > Julian: > > I pulled down the new commit r15875 to my PPC 64 BE machine and verified > it does fix the regression failure. Thanks. Sorry to have broken it. I should have tested it better. I assumed that the alignment and size constraints on ppc32 are the same as on x86, but that seems not to be the case. (Not sure why though.) J |