patches/dmalloc/5.5.2/130-mips.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Tue Jan 12 19:24:03 2010 +0100 (2010-01-12)
changeset 1761 88020b2c3246
parent 103 b6e20abe9256
permissions -rw-r--r--
scripts/functions: change handling of nochdir

- 'nochdir' must be the first option
- have systematic pushd/popd, even if nochdir
yann@103
     1
Patch to correctly handle the MIPS case.
yann@103
     2
yann@103
     3
It was build up by Yann E. MORIN <yann.morin.1998@anciens.enib.fr> from some
yann@103
     4
bits gathered from buildroot, which is LGPL v2.1
yann@103
     5
License for dmalloc is:
yann@103
     6
 * Permission to use, copy, modify, and distribute this software for
yann@103
     7
 * any purpose and without fee is hereby granted, provided that the
yann@103
     8
 * above copyright notice and this permission notice appear in all
yann@103
     9
 * copies, and that the name of Gray Watson not be used in advertising
yann@103
    10
 * or publicity pertaining to distribution of the document or software
yann@103
    11
 * without specific, written prior permission.
yann@103
    12
 *
yann@103
    13
 * Gray Watson makes no representations about the suitability of the
yann@103
    14
 * software described herein for any purpose.  It is provided "as is"
yann@103
    15
 * without express or implied warranty.
yann@103
    16
yann@103
    17
I personnaly believe that the resulting code should therefore be
yann@103
    18
LGPL v2.1, but don't believe me, ask your lawyers!
yann@103
    19
yann@103
    20
diff -dur dmalloc-5.5.2.orig/configure dmalloc-5.5.2/configure
yann@103
    21
--- dmalloc-5.5.2.orig/configure	2007-05-18 12:15:39.000000000 +0200
yann@103
    22
+++ dmalloc-5.5.2/configure	2007-05-18 12:15:48.000000000 +0200
yann@103
    23
@@ -7107,7 +7107,7 @@
yann@103
    24
 echo $ECHO_N "checking return.h macros work... $ECHO_C" >&6
yann@103
    25
 if test "$cross_compiling" = yes; then
yann@103
    26
    cat >>confdefs.h <<\_ACEOF
yann@103
    27
-#define RETURN_MACROS_WORK 0
yann@103
    28
+#define RETURN_MACROS_WORK 1
yann@103
    29
 _ACEOF
yann@103
    30
  echo "$as_me:$LINENO: result: no" >&5
yann@103
    31
 echo "${ECHO_T}no" >&6
yann@103
    32
diff -dur dmalloc-5.5.2.orig/return.h dmalloc-5.5.2/return.h
yann@103
    33
--- dmalloc-5.5.2.orig/return.h	2007-05-14 19:26:14.000000000 +0200
yann@103
    34
+++ dmalloc-5.5.2/return.h	2007-05-18 12:15:48.000000000 +0200
yann@103
    35
@@ -106,26 +106,16 @@
yann@103
    36
 /*************************************/
yann@103
    37
 
yann@103
    38
 /*
yann@103
    39
- * For DEC Mips machines running Ultrix
yann@103
    40
+ * For Mips machines running Linux
yann@103
    41
  */
yann@103
    42
 #if __mips
yann@103
    43
 
yann@103
    44
 /*
yann@103
    45
- * I have no idea how to get inline assembly with the default cc.
yann@103
    46
- * Anyone know how?
yann@103
    47
- */
yann@103
    48
-
yann@103
    49
-#if 0
yann@103
    50
-
yann@103
    51
-/*
yann@103
    52
  * NOTE: we assume here that file is global.
yann@103
    53
  *
yann@103
    54
- * $31 is the frame pointer.  $2 looks to be the return address but maybe
yann@103
    55
- * not consistently.
yann@103
    56
+ * $31 is the return address.
yann@103
    57
  */
yann@103
    58
-#define GET_RET_ADDR(file)	asm("sw $2, file")
yann@103
    59
-
yann@103
    60
-#endif
yann@103
    61
+#define GET_RET_ADDR(file)	asm("sw $31, %0" : "=m" (file))
yann@103
    62
 
yann@103
    63
 #endif /* __mips */
yann@103
    64