|
From: <sv...@va...> - 2005-11-01 19:46:09
|
Author: tom
Date: 2005-11-01 19:46:07 +0000 (Tue, 01 Nov 2005)
New Revision: 4980
Log:
Make the request for space for the interpreter into a hint so that we
can still proceed if the preferred load address is not available.
Modified:
trunk/coregrind/m_ume.c
Modified: trunk/coregrind/m_ume.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/coregrind/m_ume.c 2005-11-01 17:52:34 UTC (rev 4979)
+++ trunk/coregrind/m_ume.c 2005-11-01 19:46:07 UTC (rev 4980)
@@ -438,6 +438,7 @@
=20
if (interp !=3D NULL) {
/* reserve a chunk of address space for interpreter */
+ MapRequest mreq;
Addr advised;
Bool ok;
=20
@@ -447,9 +448,10 @@
the specified address. This is a bit of hack, but it should
work because there should be no intervening transactions with
aspacem which could cause those fixed maps to fail. */
- advised =3D VG_(am_get_advisory_client_simple)(=20
- (Addr)interp_addr, interp_size, &ok=20
- );
+ mreq.rkind =3D MHint;
+ mreq.start =3D interp_addr;
+ mreq.len =3D interp_size;
+ advised =3D VG_(am_get_advisory)( &mreq, True/*client*/, &ok );
if (!ok) {
/* bomb out */
SysRes res =3D VG_(mk_SysRes_Error)(VKI_EINVAL);
|