From: Julian Seward Date: Tue, 6 May 2008 18:14:27 +0000 (+0000) Subject: Un-break signal frame delivery on ppc64 following recent Memcheck X-Git-Tag: svn/VALGRIND_3_4_0~626 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=35695d8b1a6f829c4e203f00a9d3ea943f4f1b6d;p=thirdparty%2Fvalgrind.git Un-break signal frame delivery on ppc64 following recent Memcheck origin tracking changes. This is believed to fix #161628. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8011 --- diff --git a/coregrind/m_sigframe/sigframe-ppc64-linux.c b/coregrind/m_sigframe/sigframe-ppc64-linux.c index 200b0d43cc..bf99e318bf 100644 --- a/coregrind/m_sigframe/sigframe-ppc64-linux.c +++ b/coregrind/m_sigframe/sigframe-ppc64-linux.c @@ -95,8 +95,9 @@ /* Structure containing bits of information that we want to save on signal delivery. */ struct vg_sig_private { - UInt magicPI; - UInt sigNo_private; + UInt magicPI; + UInt sigNo_private; + ULong _unused; /* makes the struct size be zero % 16 */ VexGuestPPC64State vex_shadow1; VexGuestPPC64State vex_shadow2; }; @@ -190,6 +191,7 @@ void VG_(sigframe_create)( ThreadId tid, struct rt_sigframe* frame; /* Stack must be 16-byte aligned */ + vg_assert(VG_IS_16_ALIGNED(sizeof(struct vg_sig_private))); vg_assert(VG_IS_16_ALIGNED(sizeof(struct rt_sigframe))); sp_top_of_frame &= ~0xf;