|
From: <sv...@va...> - 2014-12-06 20:24:15
|
Author: florian
Date: Sat Dec 6 20:24:08 2014
New Revision: 3032
Log:
Add a few more asserts. Fix a function prototype.
Modified:
trunk/priv/guest_s390_helpers.c
trunk/priv/host_s390_defs.c
Modified: trunk/priv/guest_s390_helpers.c
==============================================================================
--- trunk/priv/guest_s390_helpers.c (original)
+++ trunk/priv/guest_s390_helpers.c Sat Dec 6 20:24:08 2014
@@ -1811,7 +1811,7 @@
static inline Bool
-isC64(IRExpr *expr)
+isC64(const IRExpr *expr)
{
return expr->tag == Iex_Const && expr->Iex.Const.con->tag == Ico_U64;
}
Modified: trunk/priv/host_s390_defs.c
==============================================================================
--- trunk/priv/host_s390_defs.c (original)
+++ trunk/priv/host_s390_defs.c Sat Dec 6 20:24:08 2014
@@ -2907,6 +2907,8 @@
static UChar *
s390_emit_MVHHI(UChar *p, UChar b1, UShort d1, UShort i2)
{
+ vassert(s390_host_has_gie);
+
if (UNLIKELY(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, UDXB, INT), "mvhhi", d1, 0, b1, i2);
@@ -2917,6 +2919,8 @@
static UChar *
s390_emit_MVHI(UChar *p, UChar b1, UShort d1, UShort i2)
{
+ vassert(s390_host_has_gie);
+
if (UNLIKELY(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, UDXB, INT), "mvhi", d1, 0, b1, i2);
@@ -2927,6 +2931,8 @@
static UChar *
s390_emit_MVGHI(UChar *p, UChar b1, UShort d1, UShort i2)
{
+ vassert(s390_host_has_gie);
+
if (UNLIKELY(vex_traceflags & VEX_TRACE_ASM))
s390_disasm(ENC3(MNM, UDXB, INT), "mvghi", d1, 0, b1, i2);
@@ -6300,6 +6306,8 @@
/* This insn will be mapped to an ASI or AGSI so we can only allow base
register plus 12-bit / 20-bit displacement. */
vassert(dst->tag == S390_AMODE_B12 || dst->tag == S390_AMODE_B20);
+ /* ASI and AGSI require the GIE facility */
+ vassert(s390_host_has_gie);
insn->tag = S390_INSN_MADD;
insn->size = size;
|