source: git/omalloc/omReturn.h @ f5d2647

spielwiese
Last change on this file since f5d2647 was 6ce030f, checked in by Oleksandr Motsak <motsak@…>, 12 years ago
removal of the $Id$ svn tag from everywhere NOTE: the git SHA1 may be used instead (only on special places) NOTE: the libraries Singular/LIB/*.lib still contain the marker due to our current use of svn
  • Property mode set to 100644
File size: 2.0 KB
Line 
1/* slightly changed for use by omalloc.h */
2/*
3 * defines to get the return-address for non-dmalloc_lp malloc calls.
4 *
5 * Copyright 2000 by Gray Watson
6 *
7 * This file is part of the dmalloc package.
8 *
9 * Permission to use, copy, modify, and distribute this software for
10 * any purpose and without fee is hereby granted, provided that the
11 * above copyright notice and this permission notice appear in all
12 * copies, and that the name of Gray Watson not be used in advertising
13 * or publicity pertaining to distribution of the document or software
14 * without specific, written prior permission.
15 *
16 * Gray Watson makes no representations about the suitability of the
17 * software described herein for any purpose.  It is provided "as is"
18 * without express or implied warranty.
19 *
20 * The author may be contacted via http://dmalloc.com/
21 *
22 */
23
24/*
25 * This file contains the definition of the GET_RET_ADDR macro which
26 * is designed to contain the archecture/compiler specific hacks to
27 * determine the return-address from inside the malloc library.  With
28 * this information, the library can display caller information from
29 * calls that do not use the malloc_lp functions.
30 *
31 * Most of the archectures here have been contributed by other
32 * individuals and may need to be toggled a bit to remove local
33 * configuration differences.
34 *
35 * PLEASE send all submissions, comments, problems to the author.
36 *
37 * NOTE: examining the assembly code for x =
38 * __builtin_return_address(0); with gcc version 2+ should give you a
39 * good start on building a hack for your box.
40 *
41 * NOTE: the hacks mentioned above were removed in favor of the GCC macro
42 * __builtin_return_address(). Assumptions made in these hacks break for
43 * recent GCC versions.
44 */
45
46#ifndef __OM_RETURN_H__
47#define __OM_RETURN_H__
48
49
50/********************************** default **********************************/
51#ifndef GET_RET_ADDR
52
53#if __GNUC__ > 1
54#define GET_RET_ADDR(file) (file = __builtin_return_address(0))
55#else
56#define GET_RET_ADDR(file)      (file = 0)
57#endif
58#endif /* __GNUC__ > 1 */
59
60#endif /* ! __OM_RETURN_H__ */
Note: See TracBrowser for help on using the repository browser.