CfiExpr e;
VG_(memset)( &e, 0, sizeof(e) );
e.tag = Cex_Undef;
- return VG_(addToXA)( dst, &e );
+ return (Int)VG_(addToXA)( dst, &e );
}
Int ML_(CfiExpr_Deref)( XArray* dst, Int ixAddr )
{
VG_(memset)( &e, 0, sizeof(e) );
e.tag = Cex_Deref;
e.Cex.Deref.ixAddr = ixAddr;
- return VG_(addToXA)( dst, &e );
+ return (Int)VG_(addToXA)( dst, &e );
}
Int ML_(CfiExpr_Const)( XArray* dst, UWord con )
{
VG_(memset)( &e, 0, sizeof(e) );
e.tag = Cex_Const;
e.Cex.Const.con = con;
- return VG_(addToXA)( dst, &e );
+ return (Int)VG_(addToXA)( dst, &e );
}
Int ML_(CfiExpr_Binop)( XArray* dst, CfiOp op, Int ixL, Int ixR )
{
e.Cex.Binop.op = op;
e.Cex.Binop.ixL = ixL;
e.Cex.Binop.ixR = ixR;
- return VG_(addToXA)( dst, &e );
+ return (Int)VG_(addToXA)( dst, &e );
}
Int ML_(CfiExpr_CfiReg)( XArray* dst, CfiReg reg )
{
VG_(memset)( &e, 0, sizeof(e) );
e.tag = Cex_CfiReg;
e.Cex.CfiReg.reg = reg;
- return VG_(addToXA)( dst, &e );
+ return (Int)VG_(addToXA)( dst, &e );
}
Int ML_(CfiExpr_DwReg)( XArray* dst, Int reg )
{
VG_(memset)( &e, 0, sizeof(e) );
e.tag = Cex_DwReg;
e.Cex.DwReg.reg = reg;
- return VG_(addToXA)( dst, &e );
+ return (Int)VG_(addToXA)( dst, &e );
}
static void ppCfiOp ( CfiOp op )
}
}
-Int VG_(addToXA) ( XArray* xao, void* elem )
+Word VG_(addToXA) ( XArray* xao, void* elem )
{
struct _XArray* xa = (struct _XArray*)xao;
vg_assert(xa);
return xa->usedsizeE-1;
}
-Int VG_(addBytesToXA) ( XArray* xao, void* bytesV, Int nbytes )
+Word VG_(addBytesToXA) ( XArray* xao, void* bytesV, Word nbytes )
{
- Int r, i;
+ Word r, i;
struct _XArray* xa = (struct _XArray*)xao;
vg_assert(xa);
vg_assert(xa->elemSzB == 1);
/* Add an element to an XArray. Element is copied into the XArray.
Index at which it was added is returned. Note this will be
invalidated if the array is later sortXA'd. */
-extern Int VG_(addToXA) ( XArray*, void* elem );
+extern Word VG_(addToXA) ( XArray*, void* elem );
/* Add a sequence of bytes to an XArray of bytes. Asserts if nbytes
is negative or the array's element size is not 1. Returns the
index at which the first byte was added. */
-extern Int VG_(addBytesToXA) ( XArray* xao, void* bytesV, Int nbytes );
+extern Word VG_(addBytesToXA) ( XArray* xao, void* bytesV, Word nbytes );
/* Sort an XArray using its comparison function, if set; else bomb.
Probably not a stable sort w.r.t. equal elements module cmpFn. */