1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/patches/dmalloc/5.5.2/200-mips.patch Thu Jul 12 13:23:21 2007 +0000
1.3 @@ -0,0 +1,64 @@
1.4 +Patch to correctly handle the MIPS case.
1.5 +
1.6 +It was build up by Yann E. MORIN <yann.morin.1998@anciens.enib.fr> from some
1.7 +bits gathered from buildroot, which is LGPL v2.1
1.8 +License for dmalloc is:
1.9 + * Permission to use, copy, modify, and distribute this software for
1.10 + * any purpose and without fee is hereby granted, provided that the
1.11 + * above copyright notice and this permission notice appear in all
1.12 + * copies, and that the name of Gray Watson not be used in advertising
1.13 + * or publicity pertaining to distribution of the document or software
1.14 + * without specific, written prior permission.
1.15 + *
1.16 + * Gray Watson makes no representations about the suitability of the
1.17 + * software described herein for any purpose. It is provided "as is"
1.18 + * without express or implied warranty.
1.19 +
1.20 +I personnaly believe that the resulting code should therefore be
1.21 +LGPL v2.1, but don't believe me, ask your lawyers!
1.22 +
1.23 +diff -dur dmalloc-5.5.2.orig/configure dmalloc-5.5.2/configure
1.24 +--- dmalloc-5.5.2.orig/configure 2007-05-18 12:15:39.000000000 +0200
1.25 ++++ dmalloc-5.5.2/configure 2007-05-18 12:15:48.000000000 +0200
1.26 +@@ -7107,7 +7107,7 @@
1.27 + echo $ECHO_N "checking return.h macros work... $ECHO_C" >&6
1.28 + if test "$cross_compiling" = yes; then
1.29 + cat >>confdefs.h <<\_ACEOF
1.30 +-#define RETURN_MACROS_WORK 0
1.31 ++#define RETURN_MACROS_WORK 1
1.32 + _ACEOF
1.33 + echo "$as_me:$LINENO: result: no" >&5
1.34 + echo "${ECHO_T}no" >&6
1.35 +diff -dur dmalloc-5.5.2.orig/return.h dmalloc-5.5.2/return.h
1.36 +--- dmalloc-5.5.2.orig/return.h 2007-05-14 19:26:14.000000000 +0200
1.37 ++++ dmalloc-5.5.2/return.h 2007-05-18 12:15:48.000000000 +0200
1.38 +@@ -106,26 +106,16 @@
1.39 + /*************************************/
1.40 +
1.41 + /*
1.42 +- * For DEC Mips machines running Ultrix
1.43 ++ * For Mips machines running Linux
1.44 + */
1.45 + #if __mips
1.46 +
1.47 + /*
1.48 +- * I have no idea how to get inline assembly with the default cc.
1.49 +- * Anyone know how?
1.50 +- */
1.51 +-
1.52 +-#if 0
1.53 +-
1.54 +-/*
1.55 + * NOTE: we assume here that file is global.
1.56 + *
1.57 +- * $31 is the frame pointer. $2 looks to be the return address but maybe
1.58 +- * not consistently.
1.59 ++ * $31 is the return address.
1.60 + */
1.61 +-#define GET_RET_ADDR(file) asm("sw $2, file")
1.62 +-
1.63 +-#endif
1.64 ++#define GET_RET_ADDR(file) asm("sw $31, %0" : "=m" (file))
1.65 +
1.66 + #endif /* __mips */
1.67 +