|
From: <sv...@va...> - 2012-05-03 01:30:56
|
florian 2012-05-03 02:30:48 +0100 (Thu, 03 May 2012)
New Revision: 2319
Log:
Add ETF3 facility (VEX bits). Part of fixing Bugzilla #289839.
Patch by Divya Vyas (div...@li...)
Modified files:
trunk/priv/host_s390_defs.h
trunk/priv/main_main.c
trunk/pub/libvex.h
Modified: trunk/priv/main_main.c (+3 -0)
===================================================================
--- trunk/priv/main_main.c 2012-04-30 09:10:11 +01:00 (rev 2318)
+++ trunk/priv/main_main.c 2012-05-03 02:30:48 +01:00 (rev 2319)
@@ -1178,6 +1178,7 @@
{ "fgx" },
{ "stfle" },
{ "etf2" },
+ { "etf3" },
};
static HChar buf[sizeof facilities + sizeof prefix + 1];
static HChar *p;
@@ -1201,6 +1202,8 @@
p = p + vex_sprintf(p, "-%s", facilities[5]);
if (hwcaps & VEX_HWCAPS_S390X_ETF2)
p = p + vex_sprintf(p, "-%s", facilities[6]);
+ if (hwcaps & VEX_HWCAPS_S390X_ETF3)
+ p = p + vex_sprintf(p, "-%s", facilities[7]);
/* If there are no facilities, add "zarch" */
if (hwcaps == 0)
Modified: trunk/pub/libvex.h (+2 -0)
===================================================================
--- trunk/pub/libvex.h 2012-04-30 09:10:11 +01:00 (rev 2318)
+++ trunk/pub/libvex.h 2012-05-03 02:30:48 +01:00 (rev 2319)
@@ -134,6 +134,7 @@
#define VEX_HWCAPS_S390X_FGX (1<<10) /* FPR-GR transfer facility */
#define VEX_HWCAPS_S390X_ETF2 (1<<11) /* ETF2-enhancement facility */
#define VEX_HWCAPS_S390X_STFLE (1<<12) /* STFLE facility */
+#define VEX_HWCAPS_S390X_ETF3 (1<<13) /* ETF3-enhancement facility */
/* Special value representing all available s390x hwcaps */
#define VEX_HWCAPS_S390X_ALL (VEX_HWCAPS_S390X_LDISP | \
@@ -142,6 +143,7 @@
VEX_HWCAPS_S390X_DFP | \
VEX_HWCAPS_S390X_FGX | \
VEX_HWCAPS_S390X_STFLE | \
+ VEX_HWCAPS_S390X_ETF3 | \
VEX_HWCAPS_S390X_ETF2)
#define VEX_HWCAPS_S390X(x) ((x) & ~VEX_S390X_MODEL_MASK)
Modified: trunk/priv/host_s390_defs.h (+2 -0)
===================================================================
--- trunk/priv/host_s390_defs.h 2012-04-30 09:10:11 +01:00 (rev 2318)
+++ trunk/priv/host_s390_defs.h 2012-05-03 02:30:48 +01:00 (rev 2319)
@@ -564,6 +564,8 @@
(s390_host_hwcaps & (VEX_HWCAPS_S390X_ETF2))
#define s390_host_has_stfle \
(s390_host_hwcaps & (VEX_HWCAPS_S390X_STFLE))
+#define s390_host_has_etf3 \
+ (s390_host_hwcaps & (VEX_HWCAPS_S390X_ETF3))
#endif /* ndef __VEX_HOST_S390_DEFS_H */
|