Windows NT 4.0 source code leak
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.

119 lines
4.8 KiB

4 years ago
  1. /***********************************************************************
  2. * Microsoft (R) 32-Bit Incremental Linker
  3. *
  4. * Copyright (C) Microsoft Corp 1992-95. All rights reserved.
  5. *
  6. * File: db.h
  7. *
  8. * File Comments:
  9. *
  10. * diagnostic switch #defines
  11. *
  12. ***********************************************************************/
  13. #if DBG
  14. # define DBEXEC(flg, expr) if(flg){expr;}else
  15. #else
  16. # define DBEXEC(flg, expr)
  17. #endif // DBG
  18. # define DBEXEC_REL(flg, expr) if(flg){expr;}else
  19. # define PRINT printf
  20. # define DBPRINT dbprintf
  21. extern int ifdb(int);
  22. extern int dbprintf(char*, ...);
  23. extern int dblog(char*);
  24. extern void dbsetflags(char *p, char *e);
  25. #define DB_VERBOSE 0 /* modifies other switches, verbose form */
  26. #define DB_LOG 1 /* log to file (vs. stdout) */
  27. #define DB_NOSTDOUT 2 /* don't log to stdout */
  28. #define DB_3 3 /* reserved */
  29. #define DB_4 4 /* reserved */
  30. /* remainder (5-100) are user-defined */
  31. #define DB_IO_WRITE ifdb(5) /* i/o logging: writes */
  32. #define DB_HASHSTATS ifdb(6) /* hash table statistics */
  33. #define DB_CHKMALLOC ifdb(7) /* heap checking (rather slow) */
  34. // 9 unused
  35. // 10 unused
  36. #define DB_BUFVERBOSE ifdb(11) /* buffered i/o diagnostics */
  37. #define DB_FILECACHE ifdb(12) /* file handle caching diagnostics */
  38. #define DB_DUMPSYMHASH ifdb(13) /* dump external symbol hash table */
  39. #define DB_IO_READ ifdb(14) /* i/o logging: reads */
  40. #define DB_IO_SEEK ifdb(15) /* i/o logging: seeks */
  41. #define DB_IO_FLUSH ifdb(16) /* i/o logging: flushes */
  42. #define DB_IO_OC ifdb(17) /* i/o logging: open and closes */
  43. #define DB_MALLOC ifdb(18) /* malloc logging */
  44. #define DB_SCAN_RELOCS ifdb(19) /* pre-scan of section relocs in objects */
  45. #define DB_DUMPBASEREL ifdb(20) /* dump base relocations */
  46. #define DB_BASERELINFO ifdb(21) /* dumps base reloc info - not all relocs as with 29 */
  47. // 22 unused
  48. // 23 unused
  49. //#define DB_DUMPCOMDATS ifdb(24) /* fill empty order file with comdats */
  50. // 25 unused
  51. // 26 unused
  52. // 27 unused
  53. // 28 unused
  54. // 29 unused
  55. #define DB_CONLOG ifdb(30) /* log of new plib, pmod, psec, pgrp, pcon */
  56. #define DB_DUMPIMAGEMAP ifdb(31) /* dump linker's image map */
  57. #define DB_DUMPDRIVEMAP ifdb(32) /* dump linker's driver map */
  58. #define DB_PASS2PSYM ifdb(33) /* pass 2 symbol dump */
  59. #define DB_PASS2PCON ifdb(34) /* pass 2 contribution dump */
  60. #define DB_NOSCREENBUF ifdb(35) /* turn off screen buffering */
  61. // 36 unused
  62. // 37 unused
  63. // 38 unused
  64. // 39 unused
  65. #define DB_TCE_GRAPH ifdb(40) /* dump the TCE graph to stdout */
  66. #define DB_TCE_DISCARD ifdb(41) /* dump verbose comdat discard information */
  67. #define DB_CV_SUPPORT ifdb(42) /* CodeView info generation */
  68. // 43 unused
  69. #define DB_NO_FILE_MAP ifdb(44) /* force no file mapping */
  70. // 45 unused
  71. #define DB_MAC ifdb(46) /* Macintosh support */
  72. // mainly for ilink
  73. #define DB_DUMPIMAGE ifdb(75) /* dump entire image. useful to look at incr db */
  74. #define DB_MEMMGRLOG ifdb(76) /* prints a log of all memory manager actions */
  75. #define DB_LISTMODFILES ifdb(77) /* lists all modified files since last link */
  76. #define DB_DUMPJMPTBL ifdb(78) /* dumps the master jump table */
  77. #define DB_PDATA ifdb(79) /* trace pdata manipulation */
  78. #define DB_SYMREFS ifdb(80) /* dumps symbol references on incr build */
  79. #define DB_SYMPROCESS ifdb(81) /* dumps symbol changes on an build */
  80. #define DB_INCRCALCPTRS ifdb(82) /* displays actions while doing incrcalcptrs */
  81. #define DB_I386FIXUPS ifdb(83) /* displays fixup info */
  82. #define DB_MPPC_INDIRECT ifdb(84)
  83. #define DB_MPPC_TOCREL ifdb(85)
  84. #define DB_MPPC_TOCCALL ifdb(86)
  85. #define DB_MPPC_LOCALCALL ifdb(87)
  86. #define DB_MPPC_SIZES ifdb(88)
  87. #define DB_MPPC_IMPORTS ifdb(89)
  88. #define DB_MPPC_ENTRYPOINT ifdb(90)
  89. #define DB_MPPC_RELOC ifdb(91)
  90. #define DB_MPPC_DATAREL ifdb(92)
  91. #define DB_MPPC_DLLLIST ifdb(93)
  92. #define DB_MPPC_INIT ifdb(94)
  93. #define DB_MPPC_DATASEG ifdb(95)
  94. #define DB_MPPC_EXPORT ifdb(96)
  95. #define DB_MPPC_FILENAME ifdb(97)
  96. #define DB_MPPC_CONTAINER ifdb(98)
  97. #define DB_MPPC_DESCREL ifdb(99)
  98. #define DB_MPPC_DATADESCREL ifdb(100)
  99. #define DB_MPPC_LOOKUP ifdb(101)
  100. #define DB_MPPC_TEXTSEG ifdb(102)
  101. #define DB_MPPC_IMPORTORDER ifdb(103)
  102. #define DB_MPPC_TERM ifdb(104)
  103. #define DB_MPPC_STRINGS ifdb(105)
  104. #define DB_MPPC_TOCBIAS ifdb(106)
  105. #define DB_MPPC_EXPORTINFO ifdb(107)
  106. #define DB_MPPC_SHLHEADER ifdb(108)
  107. #define DB_MPPC_IMPORTLIB ifdb(109)
  108. #define DB_MPPC_PDATATABLE ifdb(110)
  109. #define DB_TOC ifdb(111)
  110. #define DB_MAX 125
  111. extern char Dbflags[DB_MAX];