ChangeLog 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691
  1. 2004-09-13 Chris Toshok <[email protected]>
  2. * MonoSymbolFile.cs (MonoSymbolFile.Write): don't sort methods by
  3. token before writing out the method index, since the "index" used
  4. elsewhere is just added to the MethodIndexOffset.
  5. 2004-08-27 Martin Baulig <[email protected]>
  6. * MonoSymbolFile.cs (MonoSymbolFile..ctor): Read the GUID from the
  7. symbol file before reading the OffsetTable.
  8. 2004-08-27 Chris Toshok <[email protected]>
  9. * MonoSymbolFile.cs (MonoSymbolFile.ReadSymbolFile): pass name to
  10. MonoSymbolFile.ctor, not filename, so we load the .mdb file
  11. instead of the .dll.
  12. (MonoSymbolFile.ctor): pass FileAccess.Read to the FileStream
  13. ctor.
  14. 2004-08-27 Martin Baulig <[email protected]>
  15. * MonoSymbolFile.cs (MonoDebuggerSupport.GetGuid): The function is
  16. called Module.Mono_GetGuid(), not Module.MonoDebugger_GetGuid().
  17. 2004-07-30 Martin Baulig <[email protected]>
  18. The library is now called Mono.CompilerServices.SymbolWriter.dll
  19. and is in the Mono.CompilerServices.SymbolWriter namespace.
  20. * MonoSymbolFile.cs (MonoDebuggerSupport.GetGuid): New public
  21. static method.
  22. (MonoSymbolFile.WriteString): Use the BinaryWriter's method.
  23. (MonoSymbolFile.ReadString): Use the BinaryReader's method.
  24. (MonoSymbolFile.Write): Write the module's Guid into the symbol
  25. file.
  26. * MonoSymbolTable.cs, MonoSymbolWriter.cs: Reworked the API.
  27. 2004-07-27 Martin Baulig <[email protected]>
  28. * MonoSymbolFile.cs (MonoSymbolFile.Write): Sort the methods
  29. according to their token values.
  30. (MonoSymbolFile.ReadSymbolFile): Support reading the debugging
  31. information from an external ".mdb" file.
  32. * MonoSymbolTable.cs
  33. (SourceFileEntry): Make the .ctor protected, not internal.
  34. (SourceFileEntry.DefineMethod): This is no longer specific to
  35. System.Reflection(.Emit).
  36. (MethodEntry): We don't need the class and parameter types, the
  37. JIT is already getting this information automatically.
  38. (MethodEntry.ClassTypeIndex): Make this obsolete.
  39. (MethodEntry.ParamTypeIndicies): Likewise.
  40. 2004-07-02 Raja R Harinath <[email protected]>
  41. * Makefile (LIBRARY_USE_INTERMEDIATE_FILE): Define.
  42. (LIBRARY_COMPILE): Simplify.
  43. 2004-06-24 Raja R Harinath <[email protected]>
  44. * Makefile (LIBRARY_COMPILE): Only define for W32.
  45. 2004-06-23 Gonzalo Paniagua Javier <[email protected]>
  46. * Makefile: build using mcs on windows.
  47. 2004-06-19 Martin Baulig <[email protected]>
  48. * MonoSymbolTable.cs
  49. (SourceFileTable.Namespaces): New public property.
  50. 2004-06-02 Martin Baulig <[email protected]>
  51. Set version number to 37.
  52. 2004-05-23 Ben Maurer <[email protected]>
  53. * MonoSymbolTable.cs (BuildLineNumberTable): Avoid arraylist.
  54. 2004-01-16 Martin Baulig <[email protected]>
  55. Set version number to 36.
  56. * MonoSymbolFile.cs (MonoSymbolFile): Removed 'FindMethod' and
  57. 'MethodLookup'.
  58. * MonoSymbolTable.cs (MethodEntry): Don't write the method's full
  59. name into the symbol file.
  60. 2004-01-16 Martin Baulig <[email protected]>
  61. * MonoSymbolFile.cs (MonoDebuggerSupport): As suggested by Ben
  62. Maurer, create a delegate type for each of the methods and then
  63. store the method.
  64. 2004-01-15 Martin Baulig <[email protected]>
  65. * MonoSymbolFile.cs (MonoDebuggerSupport): New public class
  66. containing static wrappers for calling the `MonoDebugger_*'
  67. function in S.R.Assembly.
  68. 2004-01-13 Martin Baulig <[email protected]>
  69. * MonoSymbolTable.cs: Added more #region's and a comment at the
  70. top of the file.
  71. * MonoSymbolWriter.cs (SourceMethod.BuildLineNumberTable): Removed
  72. it here since it's in MethodEntry again.
  73. 2004-01-13 Martin Baulig <[email protected]>
  74. * ChangeLog, MonoSymbolTable.cs: Reviewed Ben's patches. For
  75. those which are not ok, I'll add detailed comments to the source
  76. code.
  77. 2003-12-28 Ben Maurer <[email protected]>
  78. [Revision 1.41, not approved. Martin]
  79. * MonoSymbolTable.cs (MethodEntry): kill more
  80. useless fields.
  81. 2003-12-28 Ben Maurer <[email protected]>
  82. [Revision 1.40, not approved. Martin]
  83. * MonoSymbolTable.cs (MethodEntry): Remove the
  84. SourceFileIndex field, we already have the info.
  85. 2003-12-28 Ben Maurer <[email protected]>
  86. [Revision 1.39, approved. Martin]
  87. * MonoSymbolTable.cs: Don't make the MethodIndexEntry
  88. part of the method entry class, because it just
  89. takes up extra space.
  90. 2003-12-28 Ben Maurer <[email protected]>
  91. [Revisions 1.37 and 1.38; not approved. Martin]
  92. * MonoSymbolTable.cs (MethodEntry.BuildLineNumberTable): Removed.
  93. * MonoSymbolTable.cs, MonoSymbolWriter.cs: Use
  94. fewer arrays, dont use arraylists with structs.
  95. 2003-12-27 Ben Maurer <[email protected]>
  96. * MonoSymbolFile.cs: Much, much better string writing.
  97. 2003-12-20 Ben Maurer <[email protected]>
  98. [Revision 1.36, approved. Martin]
  99. * MonoSymbolTable.cs: Fewer StringBuilder allocs.
  100. 2003-12-08 Zoltan Varga <[email protected]>
  101. * MonoSymbolWriter.cs: Create ArrayLists only when needed.
  102. 2003-12-07 Ben Maurer <[email protected]>
  103. [Revision 1.35, approved. Martin]
  104. * MonoSymbolTable.cs: It is faster to do a linear search
  105. than it is to make a hashtable. Even though the linear
  106. search is O(n^2) while the hashtable is O(n), the allocation
  107. cost for a hashtable is *very* high, especially when only
  108. a few members will be added.
  109. 2003-09-06 Martin Baulig <[email protected]>
  110. * MonoSymbolFile.cs: Removed debugging output.
  111. 2003-08-05 Martin Baulig <[email protected]>
  112. * MonoSymbolTable.cs (MethodEntry.Index): New public field.
  113. 2003-06-27 Zoltan Varga <[email protected]>
  114. * MonoSymbolWriter.cs: Enable calling of DefineDocument multiple
  115. times with the same URL.
  116. 2003-06-10 Zoltan Varga <[email protected]>
  117. * MonoSymbolFile.cs: Fix off-by-one error.
  118. 2003-03-22 Martin Baulig <[email protected]>
  119. * MonoSymbolTable.cs (MethodEntry.LocalNamesAmbiguous): New public
  120. field. Specifies whether two local variables have the same name.
  121. 2003-03-13 Martin Baulig <[email protected]>
  122. Added basic support for lexical scopes. This is just to tell a
  123. debugger that a local variable is only available in a specific
  124. lexical scope and that another variable of the same name may exist
  125. in another lexical scope. See debugger/test/TestLexicalScope.cs
  126. for examples.
  127. * MonoSymbolTable.cs (LexicalScopeEntry): New class.
  128. (LocalVariableEntry): Added `BlockIndex' field which specifies the
  129. lexical scope of this variable.
  130. * MonoSymbolWriter.cs (SourceBlock): Removed, we're now using
  131. LexicalScopeEntry instead.
  132. 2003-02-22 Martin Baulig <[email protected]>
  133. * MonoSymbolTable.cs: Incremented version number.
  134. 2003-02-22 Martin Baulig <[email protected]>
  135. * MonoSymbolFile.cs (MonoSymbolFile.FindMethod): Fixed a bug.
  136. (MonoSymbolFile.MethodLookup): New method.
  137. 2003-02-18 Martin Baulig <[email protected]>
  138. * MonoSymbolFile.cs (MonoSymbolFile.GetMethod): Added overloaded
  139. version which takes a MethodBase.
  140. 2003-02-18 Martin Baulig <[email protected]>
  141. * MonoSymbolTable.cs (MethodIndexEntry): New public struct.
  142. * MonoSymbolFile.cs (MonoSymbolFile.GetMethodByToken): New method.
  143. 2003-02-18 Martin Baulig <[email protected]>
  144. * MonoSymbolFile.cs (MonoSymbolFile.Assembly): New public property.
  145. * MonoSymbolTable.cs (MethodEntry.MethodBase): New public property.
  146. (MethodEntry.LocalTypes): New public variable.
  147. 2003-02-18 Martin Baulig <[email protected]>
  148. * MonoSymbolFile.cs (MethodEntry.ThisTypeIndex): Renamed to
  149. ClassTypeIndex; provide this for all methods so we can get the
  150. class of static methods.
  151. 2003-02-10 Nick Drochak <[email protected]>
  152. * Mono.CSharp.Debugger.build: passing the /r using an 'arg' node works.
  153. The <include> node wasn't getting to the compiler. This fixes build
  154. breakage on cygwin.
  155. * MonoSymbolFile.cs: Qualify which Min method. Fixes build breakage
  156. on cygwin.
  157. 2003-02-09 Martin Baulig <[email protected]>
  158. * MonoSymbolWriter.cs (MonoSymbolWriter.ctor): We don't need the
  159. `mbuilder_array' anymore.
  160. 2003-02-09 Martin Baulig <[email protected]>
  161. * MonoSymbolWriter.cs (SourceFile): Derive from SourceFileEntry.
  162. (SourceBlock): We don't need source lines here.
  163. (SourceMethod): We're always constructed with source info.
  164. * MonoSymbolTable.cs: Added support for namespaces.
  165. (NamespaceEntry): New struct.
  166. (SourceFileEntry.DefineNamespace): New method.
  167. (MethodEntry.BuildLineNumberTable): The table is already sorted,
  168. so we don't need to do this here.
  169. 2003-02-09 Martin Baulig <[email protected]>
  170. * IMonoSymbolWriter.cs: Ooops, I forgot to remove this.
  171. 2003-02-08 Martin Baulig <[email protected]>
  172. * MonoSymbolDocumentWriter.cs: Removed.
  173. * MonoSymbolWriter.cs (SourceFile): Implement ISymbolDocumentWriter.
  174. 2003-02-08 Martin Baulig <[email protected]>
  175. * MonoSymbolFile.cs (GetMethodSource): New public method.
  176. (FindMethod): Return the correct index.
  177. 2003-02-07 Martin Baulig <[email protected]>
  178. * MonoSymbolFile.cs (Methods, Sources): New public properties.
  179. 2003-02-07 Martin Baulig <[email protected]>
  180. * MonoSymbolFile.cs (MonoSymbolFile.ReadSymbolFile): New public
  181. static method, returns null (without throwing an exception) if the
  182. assembly doesn't have any debugging info.
  183. 2003-02-07 Martin Baulig <[email protected]>
  184. * MonoSymbolWriter.cs (MonoSymbolWriter.Initialize): Removed the
  185. custom initialization function.
  186. * MonoSymbolTableWriter.cs: Removed; the code is now in
  187. MonoSymbolFile.cs and MonoSymbolWriter.cs.
  188. 2003-02-07 Martin Baulig <[email protected]>
  189. * MonoSymbolFile.cs: The symbol file is now a resource in the
  190. assembly instead of a separate file.
  191. * MonoSymbolTable.cs: Did a few more cleanups, sort the line
  192. number table and remove duplicate line numbers.
  193. 2003-02-05 Martin Baulig <[email protected]>
  194. Modified the symbol file format to speed up method looks by name
  195. and cleaned this up a lot.
  196. * MonoSymbolFile.cs: New public class. This is now a public class
  197. and writes and reads the symbol file.
  198. * IMonoBinaryReader.cs: Removed.
  199. * MonoSymbolTable.cs: Set version number to 29.
  200. 2003-01-17 Zoltan Varga <[email protected]>
  201. * MonoSymbolWriter.cs (OpenMethod): Make it work on constructors.
  202. 2002-10-13 Martin Baulig <[email protected]>
  203. * MonoSymbolTable.cs: Set version number to 28.
  204. (SourceFileEntry): Read the methods when they're needed.
  205. (MethodSourceEntry): Made this a struct, not a class.
  206. 2002-10-13 Martin Baulig <[email protected]>
  207. * MonoSymbolTable.cs: Set version number to 27. Added a source
  208. file table which is used to search a method by source file + line number.
  209. 2002-09-21 Martin Baulig <[email protected]>
  210. * MonoSymbolTable.cs: Set version number to 26. Removed all the dynamic
  211. stuff, this library now just deals with the compiler generated symbol table.
  212. The dynamic stuff is private between the JIT and the debugger.
  213. 2002-09-21 Martin Baulig <[email protected]>
  214. * MonoSymbolTable.cs: Set version number to 25. Added information about
  215. local variables.
  216. 2002-09-20 Martin Baulig <[email protected]>
  217. * MonoSymbolTable.cs: Set version number to 24. Added a type index
  218. table. Write the type of a local variable or a parameter as an index
  219. into this table.
  220. 2002-09-20 Martin Baulig <[email protected]>
  221. * IMonoSymbolWriter.cs: Remove all the unused interfaces.
  222. 2002-09-20 Martin Baulig <[email protected]>
  223. * MonoSymbolTable.cs: Set version number to 23, include the size
  224. of a variable.
  225. 2002-09-20 Martin Baulig <[email protected]>
  226. * MonoSymbolTable.cs: Set version number to 22. Provide information
  227. about parameters and local variables.
  228. 2002-09-20 Martin Baulig <[email protected]>
  229. * IMonoSymbolWriter.cs: Use fullly qualified name for
  230. System.Diagnostics.SymbolStore.ISymbolWriter rather than `using' this
  231. namespace. This allows us to use the name `ISymbolWriter' in our own
  232. code.
  233. 2002-09-18 Martin Baulig <[email protected]>
  234. * MonoSymbolTable.cs: Set version number to 21. Encode the source file
  235. as a 4-byte length field followed by the UTF8 encoded string.
  236. 2002-09-18 Martin Baulig <[email protected]>
  237. * IMonoBinaryReader.cs: New interface.
  238. * MonoSymbolTable.cs: Use IMonoBinaryReader instead of binary reader.
  239. 2002-09-16 Martin Baulig <[email protected]>
  240. * MonoSymbolTable.cs: Set version number to 20.
  241. 2002-09-14 Martin Baulig <[email protected]>
  242. * MonoSymbolWriter.cs, IMonoSymbolWriter.cs, MonoSymbolTableWriter.cs:
  243. Make all classes and interfaces which don't need to be public internal.
  244. 2002-09-14 Martin Baulig <[email protected]>
  245. * MonoSymbolTable.cs: Use only CLS-compliant types here, bumped version
  246. number to 19.
  247. * MonoSymbolTableReader.cs: Removed, this is now in the debugger.
  248. 2002-09-03 Martin Baulig <[email protected]>
  249. * AssemblerWriterI386.cs, IAssemblerWriter.cs, MonoDwarfFileWriter.cs,
  250. README, README.relocation-table, csharp-lang.[ch], gdb-csharp-support.patch,
  251. gdb-variable-scopes.patch: Removed.
  252. 2002-09-03 Martin Baulig <[email protected]>
  253. * MonoSymbolTableReader.cs (MonoSymbolTableReader.ImageFile): New
  254. public property.
  255. * MonoSymbolTable.cs: Bumped version number to 18.
  256. 2002-08-27 Martin Baulig <[email protected]>
  257. * MonoSymbolTable.cs (MethodAddress): Removed `TrampolineAddress'.
  258. 2002-08-27 Martin Baulig <[email protected]>
  259. * MonoSymbolTable.cs: Changed the file format in a way that allows us
  260. open it read-only and to use a specially malloced area for all the
  261. dynamic data.
  262. 2002-08-25 Martin Baulig <[email protected]>
  263. * MonoSymbolTableReader.cs: New file. This is the reader for the
  264. new symbol file format.
  265. 2002-08-24 Martin Baulig <[email protected]>
  266. * MonoSymbolTable.cs, MonoSymbolTableWriter.cs: New files. This
  267. creates a binary application.dbg file which will be used by the
  268. JIT to display source lines for exceptions.
  269. * list.unix: Disabled the dwarf file writer in the build.
  270. 2002-08-23 Martin Baulig <[email protected]>
  271. * MonoSymbolWriter.cs (MonoSymbolWriter.Initialize): Added
  272. assembly name argument. Since the symbol writer needs to read the
  273. final assembly, we need to give it its full pathname.
  274. 2002-08-23 Martin Baulig <[email protected]>
  275. * makefile.gnu, list.unix: Added.
  276. 2002-07-05 Martin Baulig <[email protected]>
  277. * MonoDwarfFileWriter.cs: Added support for types in referenced assemblies.
  278. 2002-07-05 Martin Baulig <[email protected]>
  279. * MonoDwarfFileWriter.cs: Added support for arrays.
  280. * gdb-csharp-support.patch: Updated.
  281. 2002-06-29 Martin Baulig <[email protected]>
  282. * MonoDwarfFileWriter.cs (DieInheritance): Make this actually work.
  283. 2002-06-29 Martin Baulig <[email protected]>
  284. * MonoDwarfFileWriter.cs, MonoSymbolWriter.cs: Put all TAG_subprogram's into their
  285. corresponding struct/class declarations.
  286. 2002-06-28 Martin Baulig <[email protected]>
  287. * gdb-csharp-support.patch: Updated.
  288. 2002-06-28 Martin Baulig <[email protected]>
  289. * MonoDwarfFileWriter.cs: Use a TAG_string_type when we're using GNU extensions.
  290. Make static struct/class fields actually work. Provide a TAG_typedef for struct's
  291. and classes.
  292. 2002-05-30 Martin Baulig <[email protected]>
  293. * IMonoSymbolWriter (IMonoSymbolWriter): Added custom `Initialize' method.
  294. * MonoSymbolWriter.cs (Initialize): The ISymbolWriter's `Initialize' method
  295. is no longer supported and throws an exception.
  296. (Initialize (string, string[])): New custom initialization function.
  297. * MonoDwarfFileWriter.cs (DwarfFileWriter): Added `string[] args' argument
  298. to the constructor to pass command line arguments.
  299. * gdb-csharp-support.patch: Updated for GDB 5.2.
  300. 2002-05-30 Martin Baulig <[email protected]>
  301. * MonoSymbolWriter.cs (MonoSymbolWriter): The constructor now get's the
  302. AssemblyBuilder's `methods' array as third argument.
  303. (OpenMethod): Use this array to get the method builder rather than using an
  304. interncall for it.
  305. (get_method_builder): Removed this interncall.
  306. 2002-05-25 Martin Baulig <[email protected]>
  307. * MonoDwarfFileWriter.cs: Finished the type rewrite, put back strings and arrays.
  308. 2002-05-24 Martin Baulig <[email protected]>
  309. * IMonoSymbolWriter.cs (ISourceMethod): Added `FullName' and `Parameters'.
  310. (ITypeHandle): New interface.
  311. * DwarfFileWriter.cs: Largely reorganized the type writing code. Types are
  312. now represented by ITypeHandle objects which are stored in a per-dwarf-writer
  313. hash table. At the moment, all types still need to be in one compile unit due
  314. to lacking support in gdb - but this new type code here already supports this.
  315. * MonoSymbolWriter.cs: Moved all the subclasses to the top-level and made them
  316. public, cleaned up the code, put everything into one compile unit.
  317. (DefineLocalVariable): Added a version of this function which takes useful args.
  318. 2002-05-22 Martin Baulig <[email protected]>
  319. * IMonoSymbolWriter.cs (IMonoSymbolWriter): Added `Sources' and `Methods'
  320. properties.
  321. * MonoDwarfFileWriter.cs (WriteSymbolTable): New public method. Moved the
  322. code that writes the "mono_line_numbers" section here from the LineNumberEngine.
  323. 2002-05-22 Martin Baulig <[email protected]>
  324. * IMonoSymbolWriter.cs (IVariable): Replaced Token with `ISourceMethod Method'.
  325. * MonoSymbolWriter.cs (MonoSymbolWriter): The constructor now has an additional
  326. ModuleBuilder argument.
  327. (OpenMethod): Immediately call the `get_method' interncall to get the MethodBase
  328. from the token, then store the MethodBase instead of the token. The token may
  329. still change during the metadata library's fixup process.
  330. (DoFixups): When the image has been written to disk, call the GetToken () method
  331. on all MethodBuilders and all ConstructorBuilders to get the final metadata tokens.
  332. 2002-05-22 Martin Baulig <[email protected]>
  333. * AssemblerWriterI386.cs: Don't use GNU extensions and produce assembler
  334. output which is free of comments and extra whitespaces so that it's suitable
  335. for `as -f'.
  336. 2002-05-22 Martin Baulig <[email protected]>
  337. * IMonoSymbolWriter.cs (ISourceMethod): Replaced `MethodInfo MethodInfo' with
  338. `MethodBase MethodBase' and added `Type ReturnType'. We're now correctly
  339. dealing with constructors and not crashing anymore.
  340. 2002-05-21 Martin Baulig <[email protected]>
  341. * MonoDwarfFileWriter.cs: Write a special line number table which can be read
  342. in by the metadata library to get line number information in backtraces.
  343. 2002-05-06 Martin Baulig <[email protected]>
  344. * MonoSymbolWriter.cs (MonoSymbolWriter.Close): Use Assembly.LoadFrom (), not
  345. AppDomain.Load () to load the assembly.
  346. 2002-04-26 Martin Baulig <[email protected]>
  347. * gdb-csharp-support.patch: A patch for GDB (against the latest CVS version)
  348. to implement C# support.
  349. * csharp-lang.c, csharp-lang.h, csharp-mono-lang.c: Copy these into your GDB
  350. source directory after applying the patch.
  351. 2002-04-26 Martin Baulig <[email protected]>
  352. * MonoDwarfFileWriter.cs (DieInternalString): Removed.
  353. 2002-04-25 Martin Baulig <[email protected]>
  354. * MonoDwarfFileWriter.cs: Reflect latest MonoString changes.
  355. 2002-04-13 Martin Baulig <[email protected]>
  356. * IMonoSymbolWriter.cs (ISourceBlock): Added `Blocks' property and `AddBlock'
  357. method to support nested blocks.
  358. * MonoSymbolWriter.cs: Correctly handle nested blocks.
  359. * MonoDwarfFileWriter.cs (DieMember): Provide info for all fields, not just for
  360. public ones; also added DW_AT_accessibility.
  361. (DieVariable): Reflected latest debug-symfile.c changes.
  362. 2002-04-12 Martin Baulig <[email protected]>
  363. * gdb-variable-scopes.patch: A patch for GDB (against the latest CVS version)
  364. to implement variable lifetimes.
  365. 2002-04-12 Martin Baulig <[email protected]>
  366. * MonoDwarfFileWriter.cs (DieVariable): Provide info about the variable's
  367. lifetime using DW_AT_begin_scope and a new baulig extension DW_AT_end_scope.
  368. 2002-03-29 Martin Baulig <[email protected]>
  369. * AssemblerWriterI386.cs: Rewrote most of the string output function, do the
  370. number->string conversion manually. It's now taking about 15 seconds to write
  371. a symbol file for MCS, no longer more than a minute.
  372. * MonoDwarfFileWriter.cs: Added some profiling code, speeded things up, fixed
  373. a few bugs.
  374. 2002-03-25 Martin Baulig <[email protected]>
  375. * MonoDwarfFileWriter.cs (CreateType): Return a `DieType'.
  376. (RegisterType): Add the type to the type hash before creating dependency types
  377. so we don't get recursion loops.
  378. (RegisterPointerType): New func to register a "pointer to type" type.
  379. (DieTypeDef, DiePointerType, DieArrayType, DieStringType, DieClassType): New
  380. types; added support for strings, arrays and basic support for classes.
  381. 2002-03-24 Martin Baulig <[email protected]>
  382. * IMonoSymbolWriter.cs: Killed all methods in this interface, no longer needed.
  383. * MonoSymbolWriter.cs (MonoSymbolWriter): The constructor now takes a string
  384. argument which is the full pathname of the assembly - you must call Close()
  385. after the assembly has been written to disk since the symbol writer needs to
  386. load the finished assembly to get its metadata.
  387. * MonoDwarfFileWriter.cs: Added support for enums and structs.
  388. 2002-03-24 Martin Baulig <[email protected]>
  389. * MonoDwarfFileWriter.cs: Added support for method parameters.
  390. 2002-03-24 Martin Baulig <[email protected]>
  391. * IMonoSymbolWriter.cs (IMonoSymbolWriter): Removed my custom OpenMethod(),
  392. we're now using the ISymbolWriter's method.
  393. (IVariable): Added `byte[] Signature' property.
  394. * MonoSymbolWriter.cs (SetAssembly): New method. This must be called before
  395. Close(); the assembly parameter is the already-written assembly, ie. it must
  396. contain the full metadata.
  397. (OpenMethod): Only take the token argument and set MethodInfo later in DoFixups.
  398. (SetMethodSourceRange): You must call this function to tell the symbol writer
  399. in which source file the method is defined.
  400. (DefineLocal): Store the signature in the local.
  401. (DoFixups): Use two new interncalls to set the SourceMethod's MethodInfo field
  402. and the LocalVariable's Type field.
  403. 2002-03-23 Martin Baulig <[email protected]>
  404. * IMonoSymbolWriter.cs (ISourceBlock): New interface.
  405. (ILocalVariable): Renamed this interface to IVariable.
  406. (IVariable): Added Line, Type, Token.
  407. (ILocalVariable, IMethodParameter): New interfaces, derive from IVariable.
  408. (ISourceMethod): Added Blocks. Renamed FirstLine and LastLine to Start and End,
  409. changed their type to ISourceLine. Removed CodeSize.
  410. (ISourceLine): Renamed Line to Row, added Column. Added OffsetType and Offset.
  411. * MonoDwarfFileWriter.cs (MonoDwarfFileWriter.DieLexicalBlock): New class.
  412. (MonoDwarfFileWriter.DieMethodVariable): New class.
  413. * MonoSymbolWriter.cs (OpenScope, CloseScope): Implemented.
  414. Reflected latest IMonoSymbolWriter interface changes.
  415. 2002-03-20 Martin Baulig <[email protected]>
  416. * IAssemblerWriter.cs: New interface.
  417. * AssemblerWriterI386.cs: New class.
  418. * MonoDwarfFileWriter.cs: Use the IAssemblerWriter interface to make this class
  419. platform and assembler independent.
  420. 2002-03-20 Martin Baulig <[email protected]>
  421. * IMonoSymbolWriter.cs (ISourceMethod): Added FirstLine, LastLine, CodeSize and
  422. Token properties.
  423. * MonoDwarfFileWriter.cs: Implemented line number support.
  424. 2002-03-19 Martin Baulig <[email protected]>
  425. * IMonoSymbolWriter.cs (ISourceFile, ISourceMethod, ISourceLine, ILocalVariable):
  426. New interfaces.
  427. * IMonoSymbolWriter.cs (OpenMethod): Take a System.Reflection.MethodInfo, not
  428. a string.
  429. 2002-03-19 Martin Baulig <[email protected]>
  430. This is an implementation of the System.Diagnostics.SymbolStore.SymbolWriter
  431. interface. It's still work in progress and not yet used anywhere.
  432. There is some preliminary documentation in the source files and some more
  433. docu in the README and README.relocation-table files.
  434. * IMonoSymbolWriter.cs: New file.
  435. * MonoDwarfFileWriter.cs: New file.
  436. * MonoSymbolDocumentWriter.cs: New file.
  437. * MonoSymbolWriter.cs: New file.
  438. * README, README.relocation-table: Documentation.