aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorflorian <florian@a5019735-40e9-0310-863c-91ae7b9d1cf9>2015-10-12 20:35:56 +0000
committerflorian <florian@a5019735-40e9-0310-863c-91ae7b9d1cf9>2015-10-12 20:35:56 +0000
commit416e4bb7c50cea52f911359da427db3912f87b21 (patch)
tree03cfec30f82849d22827de07b299646ccf6fe4d7 /include
parent7f3c1f251860f760950fcbd5c8da91ed4ed35f52 (diff)
downloadvalgrind-416e4bb7c50cea52f911359da427db3912f87b21.tar.gz
On a zEC12 or z13, a glibc with lock elision enabled infers from HWCAP
that the prerequisites for lock elision are met. Then it may use TBEGIN and other transactional-execution instructions which are not implemented by Valgrind. Likewise, the upcoming glibc 2.23 will exploit vector instructions if they are advertised by HWCAP; and those are currently not implemented by Valgrind either. In general, the increased use of ifunc may lead to more such cases in the future. This patch suppresses the advertising of those hardware features via HWCAP which are either not known to Valgrind or currently unsupported. Patch by Andreas Arnez (arnez@linux.vnet.ibm.com). Fixes BZ #353680. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15702 a5019735-40e9-0310-863c-91ae7b9d1cf9
Diffstat (limited to 'include')
-rw-r--r--include/vki/vki-s390x-linux.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/include/vki/vki-s390x-linux.h b/include/vki/vki-s390x-linux.h
index d8eebedfd..c3f6d0047 100644
--- a/include/vki/vki-s390x-linux.h
+++ b/include/vki/vki-s390x-linux.h
@@ -800,12 +800,15 @@ typedef struct
#define VKI_PTRACE_POKEUSR_AREA 0x5001
//----------------------------------------------------------------------
-// From linux-2.6.16.60/include/asm-s390/elf.h
+// From linux-3.18/include/asm-s390/elf.h
//----------------------------------------------------------------------
typedef vki_s390_fp_regs vki_elf_fpregset_t;
typedef vki_s390_regs vki_elf_gregset_t;
+#define VKI_HWCAP_S390_TE 1024
+#define VKI_HWCAP_S390_VXRS 2048
+
//----------------------------------------------------------------------
// From linux-2.6.16.60/include/asm-s390/ucontext.h