This is the mail archive of the libffi-discuss@sourceware.org mailing list for the libffi project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
On 20.12.09 03:21, Gerald Pfeifer wrote:On Thu, 10 Dec 2009, Andreas Tobler wrote:Anyway, there are other architectures which do have the same issue. FreeBSD, OpenBSD, apple-darwin10. We 'solved' this with adding the snippet below in the configure.ac (from the libffi sources, not in the gcc repo yet.):
case "$target" in *-apple-darwin10* | *-*-freebsd* | *-*-openbsd*) AC_DEFINE(FFI_MMAP_EXEC_WRIT, 1, [Cannot use malloc on this target, so, we revert to alternative means]) ;;
So, my question, shall we move the three remaining OS variants into the closures.c file. Or should we move the solaris/x86 part from the closures.c file into the configure.ac part?
Are you planning on addressing this for the three platforms (Darwin, FreeBSD, OpenBSD) for GCC 4.5? Or do we have a different fix in the GCC tree for the time being?
Yes, it's planned. I should come up soon with a proposal.
But here I lack the test environment, any volunteers? I can hack an untested patch for these targets.
Thanks, Andreas
* configure.ac: Define FFI_MMAP_EXEC_WRIT for the given targets. * configure: Regenerate. * fficonfig.h.in: Likewise. * src/closures.c: Remove the FFI_MMAP_EXEC_WRIT definition for Solaris/x86.
Attachment:
ffi_mmap_exec_writ.diff
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |