Bug 378524

Summary: libvexmultiarch_test regression on s390x and ppc64
Product: [Developer tools] valgrind Reporter: Mark Wielaard <mark>
Component: vexAssignee: Julian Seward <jseward>
Status: RESOLVED FIXED    
Severity: normal CC: mips32r2
Priority: NOR    
Version First Reported In: unspecified   
Target Milestone: ---   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description Mark Wielaard 2017-04-07 07:34:19 UTC
After VEX svn r3341 (and the follow up r3344 for s390x) none/tests/libvexmultiarch_test started failing on ppc64 and s390x.

This is probably because the initialization order changed slightly.

VEX svn r3342:

    Split LibVEX_Translate into front- and back-end parts.  Also, removes use
    of __typeof__ when built with MSVC.  A combination of parts of two patches
    from Andrew Dutcher <andrewrdutcher@gmail.com>.

VEX svn r3344:

    Initialize s390_host_hwcaps early in LibVEX_FrontEnd.
    
    VEX svn r3341 split LibVEX_Translate into LibVEX_FrontEnd and
    LibVEX_BackEnd. The s390_host_hwcaps (KLUDGE) needs to be initialized
    early in LibVEX_FrontEnd.
Comment 1 Mark Wielaard 2017-04-13 07:32:28 UTC
Author: petarj
Date: Wed Apr 12 18:51:45 2017
New Revision: 3348

Log:
fix early initialization of s390_host_hwcaps in LibVEX_FrontEnd

This is a follow-up to r3341 and r3344. r3341 split LibVEX_Translate into
LibVEX_FrontEnd and LibVEX_BackEnd. s390_host_hwcaps needs to be initialized
early when arch_host is VexArchS390X.

This also fixes none/tests/libvexmultiarch_test on MIPS64 BE platforms.