You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

89 lines
2.9 KiB

  1. /************************************************************************
  2. * *
  3. * Copyright (c) 1985 by *
  4. * Digital Equipment Corporation, Maynard, MA *
  5. * All rights reserved. *
  6. * *
  7. * The information in this software is subject to change without *
  8. * notice and should not be construed as a commitment by Digital *
  9. * Equipment Corporation. *
  10. * *
  11. * Digital assumes no responsibility for the use or reliability *
  12. * of its software on equipment which is not supplied by Digital. *
  13. * *
  14. * Redistribution and use in source and binary forms are permitted *
  15. * provided that the above copyright notice and this paragraph are *
  16. * duplicated in all such forms and that any documentation, *
  17. * advertising materials, and other materials related to such *
  18. * distribution and use acknowledge that the software was developed *
  19. * by Digital Equipment Corporation. The name of Digital Equipment *
  20. * Corporation may not be used to endorse or promote products derived *
  21. * from this software without specific prior written permission. *
  22. * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR *
  23. * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED *
  24. * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.*
  25. * Do not take internally. In case of accidental ingestion, contact *
  26. * your physician immediately. *
  27. * *
  28. ************************************************************************/
  29. #ifndef _INCL_MNEMCONF_H
  30. /*
  31. /fats/tools/hsv/mnemosyne/mnemconf.h,v 1.1.1.1 1995/06/06 18:18:29 fabio Exp
  32. */
  33. /*
  34. site specific and shared internal data structures used by mnemosyne.
  35. the only data structure that may need to be shared is the struct ptr,
  36. which is defined herein.
  37. Marcus J. Ranum, 1990. (mjr@decuac.dec.com)
  38. */
  39. /* if your machine has malloc and all declared as a (void *) not a (char *) */
  40. #ifdef MALLOC_IS_VOIDSTAR
  41. typedef void *mall_t;
  42. #else
  43. typedef char *mall_t;
  44. #endif
  45. /* size of internal hash tables - don't go wild - this is slow anyhow */
  46. #define HASHSIZ 2027
  47. /* names of files to write */
  48. #define LINESFILE "mnem.syms"
  49. #define PTRFILE "mnem.dat"
  50. extern mall_t malloc();
  51. extern mall_t realloc();
  52. extern mall_t calloc();
  53. extern void free();
  54. /*
  55. storage for a pointer map entry - the only data structure we share
  56. a whole mess of these get written to mnem.dat as calls to malloc and
  57. whatnot are made. the distinction between an *allocated* pointer and
  58. and unallocated one is that 'siz' is 0 in freed ptrs. this is used
  59. by the post-processor to look for memory leaks.
  60. */
  61. struct ptr {
  62. mall_t ptr; /* pointer to allocated memory */
  63. int map; /* this pointer's map # */
  64. struct ptr *next;
  65. /* only part that gets written to the disk */
  66. struct {
  67. unsigned siz; /* size allocated (or 0) */
  68. int smap; /* symbol map # */
  69. } dsk;
  70. };
  71. #define _INCL_MNEMCONF_H
  72. #endif