* get.c (get_method_core): Emit generic arity for a MemberRef.
[mono.git] / mono / dis / ChangeLog
1 2006-01-28  Ankit Jain  <jankit@novell.com>
2
3         * get.c (get_method_core): Emit generic arity for a MemberRef.
4         (get_method_override): Emit full sig only if its a generic type.
5
6 2006-01-27  Ankit Jain  <jankit@novell.com>
7
8         * get.c (get_methodref_signature): Remove 'context' parameter.
9         Update call sites.
10         * get.h (get_methodref_signature): Update.
11         * dump.c (dump_table_memberref): Update.
12
13 2006-01-26  Raja R Harinath  <harinath@gmail.com>
14
15         * get.c (stringify_double): Simplify, and avoid 'E' too.
16
17 2006-01-26  Ankit Jain  <jankit@novell.com>
18
19         * get.c (stringify_double): Remove trailing '.' if it has 'e'.
20
21 2006-01-25  Ankit Jain  <jankit@novell.com>
22
23         * get.c (stringify_double): New. Fix printing of float/doubles to enable
24         roundtripping.
25         * get.h (stringify_double): Add new function.
26         (get_constant): Use stringify_double.
27         * dis-cil.c (disassemble_cil): Likewise.
28         
29 2006-01-25  Ankit Jain  <jankit@novell.com>
30             Raja R Harinath  <rharinath@novell.com>
31
32         * get.c (dis_stringify_type): For MVAR/VAR, print number if the generic param
33         is in the mono_generic_params_with_ambiguous_names table.
34
35 2006-01-20  Raja R Harinath  <rharinath@novell.com>
36
37         * main.c (monodis_assembly_load_hook): New.
38         (monodis_assembly_search_hook): New.
39         (main): Install them as hooks into the assembly loading core.
40
41 2006-01-19  Ankit Jain  <jankit@novell.com>
42
43         * main.c (dis_type): Dump custom attributes for a type before doing the same
44         for its type parameters.
45
46 2006-01-18  Ankit Jain  <jankit@novell.com>
47
48         * main.c (typedef_flags): Change 'special-name' to 'specialname'.
49
50 2006-01-17  Ankit Jain  <jankit@novell.com>
51
52         * get.c (get_method_override): Use '.override method' syntax if the class or
53         or the method itself is generic.
54         * main.c (dis_code): Emit '.override' only, 'method' gets handled by get_method_override.
55
56 2006-01-17  Ankit Jain  <jankit@novell.com>
57
58         * get.c (init_key_table): Add keywords 'bestfit', 'charmaperror', 'off' & 'on'.
59
60 2006-01-16  Ankit Jain  <jankit@novell.com>
61
62         * get.c (get_method_core): Handle a MemberRef with a TypeSpec parent.
63         Inflate MonoMethod after getting it from mono_get_method_full.
64
65 2006-01-15  Ankit Jain  <jankit@novell.com>
66
67         * get.c (get_method_override): Get full signature of the method.
68         * main.c (dis_code): Emit ".override method" for full signature
69         of the method.
70
71 2006-01-06  Ankit Jain  <jankit@novell.com>
72
73         * get.c (get_generic_param): Generic param attributes can be any combination
74         of .ctor, valuetype and class, emit correctly.
75
76 2006-01-03  Ankit Jain  <jankit@novell.com>
77
78         * get.c (init_key_table): Add keywords uint8, uint16, uint32 and uint64.
79
80 2005-12-24  Jb Evain  <jbevain@gmail.com>
81
82         * main.c (dis_property_signature): read the hasthis flag.
83
84 2005-12-13  Zoltan Varga  <vargaz@gmail.com>
85
86         * get.c (get_constant): Use finite() instead of isnormal () since the
87         latter is not available on solaris.
88
89 2005-11-23  Ankit Jain  <jankit@novell.com>
90
91         * get.c (get_methodspec): Use mono_get_method_full so as to handle
92         methodspecs that refer to generic methods in other assemblies.
93
94 2005-11-23  Ankit Jain  <jankit@novell.com>
95
96         * dump.c (has_cattr_get_table): Handle GenericParam.
97         * get.c (dis_get_custom_attrs): Likewise.
98         * main.c (dump_cattrs_for_type_params): New. Dump custom attributes
99         for type parameters.
100         (dis_method_list): Call dump_cattrs_for_type_params.
101         (dis_type): Likewise.
102
103 2005-11-17  Ankit Jain  <jankit@novell.com>
104
105         * get.c (dis_stringify_type): Escape generic type parameter names.
106
107 2005-11-17  Ankit Jain  <jankit@novell.com>
108
109         * get.c (str_escape): New. Escape a given list of characters.
110           (get_escaped_name): Escape ' and \ using str_escape, and 
111         allow ` .
112
113 2005-11-10  Ankit Jain  <jankit@novell.com>
114
115         * dump.c (dump_table_method): Load generic param constraints.
116         * get.c (dis_stringify_method_signature): Likewise.
117         * main.c (dis_method_list): Likewise.
118           (dis_type): Likewise.
119
120 2005-11-10  Ankit Jain  <jankit@novell.com>
121
122         * get.c (init_key_table): Add keyword - uint.
123
124 2005-11-08  Ankit Jain  <jankit@novell.com>
125
126         * dump.c (dump_table_method): Get the type/method context required for parsing
127           method signature and dis_stringify'ing it.
128
129 2005-11-08  Ankit Jain  <jankit@novell.com>
130
131         * get.c (init_key_table): Add keywords - callconv and flags.
132
133 2005-10-28  Ankit Jain  <jankit@novell.com>
134
135         * dis_stringify_method_signature: Add detail for 'returns:' in the comment.
136
137 2005-10-28  Ankit Jain  <jankit@novell.com>
138
139         * tests: Add new directory for test cases.
140
141 2005-10-28  Ankit Jain  <jankit@novell.com>
142
143         * get.c (dis_stringify_method_signature): Use context instead of container
144           as container can be NULL.
145
146 2005-10-20  Ankit Jain  <jankit@novell.com>
147
148         * get.c (get_method_core): Use the parent context for get_methodspec
149           instead of the inflated method's context.
150           (get_methodspec): Get the context for the generic method.
151           Use parent_context for getting the method's type parameters. 
152
153 2005-10-20  Ankit Jain  <jankit@novell.com>
154
155         * main.c (dis_method_list): Oops. Check method_context for null.
156
157 2005-10-19  Ankit Jain  <jankit@novell.com>
158
159         * main.c (dis_method_list): Fix warning introduced by my last patch.
160
161 2005-10-19  Ankit Jain  <jankit@novell.com>
162
163         * main.c (dis_method_list): Use 'method_context' instead of 'container' for 
164           mono_metadata_parse_method_signature_full.
165
166 2005-10-02  Zoltan Varga  <vargaz@freemail.hu>
167
168         * get.h get.c main.c: Fix some warnings and bugs.
169
170 2005-09-20  Ankit Jain  <jankit@novell.com>
171
172         * monodis.1: Update documentation for --output.
173
174 2005-09-20  Ankit Jain  <jankit@novell.com>
175
176         * main.c (table_list): Add --mresources to the table.
177           (usage): Don't add "--mresources" explicitly for usage output.
178           (main): Remove explicit handling for --mresources.
179
180 2005-09-20  Ankit Jain  <jankit@novell.com>
181
182         * main.c (main): Dump managed resources when --output is specified.
183
184 2005-09-08  Ankit Jain  <jankit@novell.com>
185
186         * monodis.1: Document --customattr, --declsec, --forward-decls, --implmap,
187           --marshal, --methodimpl, --methodspec, --mresources, --nested, --standalonesig,
188           and --typespec.
189
190 2005-09-08  Ankit Jain  <jankit@novell.com>
191
192         * main.c (dis_nt_header): New. Dump pe_stack_reserve if different from the
193           default value (0x100000).
194           (disassemble_file): Call dis_nt_header.
195
196 2005-09-06  Ankit Jain  <jankit@novell.com>
197
198         * main.cs (dis_directive_assemblyref): Use the row id into the AssemblyRef
199           table instead of 1 for dump_cattrs.
200           Spotted by Harinath.
201
202 2005-09-05  Atsushi Enomoto  <atsushi@ximian.com>
203
204         quick build fix.
205         * get.cs : (dis_get_custom_attrs) added assembly reference support.
206         * main.cs: (dis_directive_assemblyref) use MONO_TOKEN_ASSEMBLY_REF.
207
208 2005-09-05  Ankit Jain  <jankit@novell.com>
209
210         * main.c (dis_directive_assemblyref): Dump custom attributes.
211
212 2005-08-29  Ankit Jain  <jankit@novell.com>
213
214         * get.c (dis_stringify_marshal_spec): Add new case for MONO_NATIVE_CUSTOM.
215         
216 2005-08-27  Ankit Jain  <jankit@novell.com>
217
218         * get.c (init_key_table): Add keywords - ldelem, stelem, stloc, stobj,
219           stsfld, sub, sub.ovf, sub.ovf.un, unbox to the table.
220
221 2005-08-25  Ankit Jain  <jankit@novell.com>
222
223         * get.c (get_encoded_user_string_or_bytearray): Add len param.
224           (get_constant): Pass len param to get_encoded_user_string_or_bytearray.
225         * dis-cil.c (dissasemble_cil): Calculate len of the userstring and pass to
226           get_encoded_user_string_or_bytearray.
227         * get.h (get_encoded_user_string_or_bytearray): Add len param.
228
229 2005-08-23  Ankit Jain  <jankit@novell.com>
230
231         Fix #75186.
232         * get.c (get_ret_type): Use '&' instead of '[out]' for return type.
233
234 2005-08-23  Ankit Jain  <jankit@novell.com>
235
236         * get.c (get_encoded_user_string_or_bytearray): New. Print a string if possible
237           or else a bytearray from the US heap.
238           (get_encoded_user_string_bytearray): New. Print a bytearray from the US heap.
239           (get_constant): Use get_encoded_user_string_or_bytearray for MONO_TYPE_STRING.
240         * get.h (get_encoded_user_string_or_bytearray): Add the new function. 
241         * dis-cil.c (get_encoded_user_string): Move to get.c .
242           (disassemble_cil): Use get_encoded_user_string_or_bytearray instead of 
243           get_encoded_user_string.
244
245 2005-08-20  Ankit Jain  <jankit@novell.com>
246
247         * dis-cil.c (dissasemble_cil): Specify precision to enable
248           roundtripping of floats.
249         * get.c (get_constant): Likewise.  
250
251 2005-08-13  Jb Evain  <jbevain@gmail.com>
252
253         * get.c (get_token): handle the case when
254           the token is a member ref pointing to a method.
255
256 2005-08-12  Ankit Jain  <jankit@novell.com>
257
258         * get.c (init_key_table): Add "xor" to the table.
259
260 2005-08-12  Jb Evain  <jbevain@gmail.com>
261
262         * get.c (dis_stringify_method_signature): handle case when a method
263           has parameters but no corresponding Param row.
264           Patch forged with Ankit.
265
266 2005-08-12  Ankit Jain <jankit@novell.com>
267
268         * get.c (dis_stringify_variant_type): New. Stringify MonoMarshalVariant.
269           (dis_stringify_marshal_spec): Add new case for MONO_NATIVE_SAFEARRAY. 
270
271 2005-08-11  Ankit Jain <jankit@novell.com>
272
273         * get.c (element_type_map): Use "typedref" instead of "TypedByRef" for
274           MONO_TYPE_TYPEDBYREF.
275           (get_ret_type): Use "typedref" instead of "typedbyref".
276           (get_param): Likewise.
277           
278 Wed Aug 10 17:15:52 CEST 2005 Paolo Molaro <lupus@ximian.com>
279
280         * dump.c: dump the marshal signature blob on --marshal.
281
282 2005-08-04  Ankit Jain <jankit@novell.com>
283
284         * main.c (dis_directive_moduleref): Always escape module ref names.
285
286 2005-08-03  Ankit Jain <jankit@novell.com>
287
288         * main.c (call_conv_map): Oops. Add a sentinel entry (-1, NULL).
289
290 2005-08-03  Ankit Jain <jankit@novell.com>
291
292         * main.c (call_conv_map): Map call conv value of 0 to "".
293
294 2005-08-02  Ankit Jain <jankit@novell.com>
295
296         * main.c (dis_directive_moduleref): Escape module ref names.
297
298 2005-08-01  Ankit Jain <jankit@novell.com>
299
300         * get.c (field_flags_map): Use C comments instead of C#.
301
302 2005-08-01  Ankit Jain <jankit@novell.com>
303
304         * get.c (dis_stringify_marshal_spec): Include "marshal (..)" as part of the
305           returned string. And fix memory leak.
306           (dis_stringify_method_signature): Fix usage of dis_stringify_marshal_spec
307           accordingly.
308         * main.c (dis_field_list): Fix usage of dis_stringify_marshal_spec. Cleanup
309           output of spaces.
310
311 2005-08-01  Ankit Jain <jankit@novell.com>
312
313         * get.c (dis_stringify_marshal_spec): Make it non-static.
314         * main.c (dis_field_list): Print marshal info for fields.
315         
316 2005-07-29  Ankit Jain <jankit@novell.com>
317
318         * get.c (get_constant): Fix printing of some constant types and make it consistent.
319
320 2005-07-28  Ankit Jain <jankit@novell.com>
321
322         * get.c (dis_stringify_method_signature): Fix handling of marshal info for
323           method params. Also, handle possible gaps in the PARAM table.
324
325 2005-07-26  Zoltan Varga  <vargaz@freemail.hu>
326
327         * main.c: Fix noinline->noinlining.
328
329 2005-05-26  Sebastien Pouliot  <sebastien@ximian.com>
330
331         * monodis.vcproj: Project file for monodis.
332
333 2005-05-06  Zoltan Varga  <vargaz@freemail.hu>
334
335         * main.c: Respect MONO_PATH when loading assemblies.
336
337 2005-04-23  Ankit Jain  <ankit@corewars.org>
338
339         * get.c : Revert Atsushi's earlier patch. Its already been fixed with r43342.
340
341 2005-04-22  Atsushi Enomoto  <atsushi@ximian.com>
342
343         * get.c : arraytype[,] should not be wrapped as 'arraytype[]'.
344
345 2005-04-20  Ankit Jain  <ankit@corewars.org>
346
347         Fix #74521.
348         * get.c (get_generic_param, get_method_core, get_methoddef): Dont use
349         dis_stringify_object_with_class directly, use dis_stringify_type instead.
350
351 2005-04-20  Ankit Jain  <ankit@corewars.org>
352
353         Fix #74657.
354         * main.c (dis_field_list): Print default value if field has
355         HAS_DEFAULT flag set.
356
357 2005-04-12  Ankit Jain  <ankit@corewars.org>
358         
359         Fix #74579.
360         * main.c (dis_mresource): New. Dump embedded managed resources.
361         (main, usage): Add '--mresources' argument.
362
363 2005-04-08  Ankit Jain  <radical@corewars.org>
364
365         Fix #74374.
366         * main.c (dis_type): Add 'is_nested' and 'forward' arguments.  If
367         'is_nested', don't emit .namespace directive even if namespace is
368         set.  If 'forward', print only types.
369         (dis_types): Update to allow emitting forward declarations.
370         (disassemble_file): Emit forward declarations if requested.
371         (main, usage): Add '--forward-decls' argument.
372         * get.c (get_typedef): When printing a nested type, don't include
373         the namespace again, even if it is set.
374
375 2005-04-05  Zoltan Varga  <vargaz@freemail.hu>
376
377         * dump.c dis-cil.c: Apply patches from freebsd ports collection.
378
379 2005-04-04  Zoltan Varga  <vargaz@freemail.hu>
380
381         * get.c (get_constant): Applied patch from Ankit Jain (radical@gmail.com). Fixes #74367.
382
383 2005-03-29  Sebastien Pouliot  <sebastien@ximian.com>
384
385         * dis-cil.c, dump.c: Add mono-compiler.h header to allow/ease 
386         compilation with non-GCC compilers.
387
388 2005-03-04  Zoltan Varga  <vargaz@freemail.hu>
389
390         * get.c (dis_stringify_marshal_spec): Fix this after recent runtime
391         changes.
392
393 2005-03-01  Zoltan Varga  <vargaz@freemail.hu>
394
395         * get.c: Output marshal info for parameters.
396
397 2005-02-13  Zoltan Varga  <vargaz@freemail.hu>
398
399         * main.c: Output managed resources as well. Fixes #72033.
400
401 2005-02-01  Raja R Harinath  <rharinath@novell.com>
402
403         * get.c (get_method_core): Use mono_method_signature (mh), not
404         mh->signature.
405
406 2005-01-30  Zoltan Varga  <vargaz@freemail.hu>
407
408         * get.c dis-cil.c dump.c: Fix 64 bit warnings.
409
410 2004-12-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
411
412         * dump.c:
413         * dis-cil.c: added isinf() for Solaris, that does not seem to have it.
414         Fixes the build on Solaris.
415
416 2004-12-13  Miguel de Icaza  <miguel@ximian.com>
417
418         * dis-cil.c, dump.c: Encode special constant +Inf, -Inf and NaN
419         using hex constants instead of letting libc print the values.
420
421 2004-12-11  Martin Baulig  <martin@ximian.com>
422
423         * get.c (get_typespec): Added `gboolean is_def' argument; removed
424         the special case for MONO_TYPE_VAR/MVAR and pass `is_def' down to
425         dis_stringify_type().
426         (get_escaped_name): Allow `!'.  
427
428 2004-12-11  Martin Baulig  <martin@ximian.com>
429
430         * get.c (get_token): Escape typedefs.
431
432 2004-12-11  Martin Baulig  <martin@ximian.com>
433
434         * get.c (get_escaped_name): Correctly escape nested classes.
435
436 2004-12-11  Martin Baulig  <martin@ximian.com>
437
438         * get.c (get_class_name): Renamed to get_escaped_class_name() and
439         return an escaped class name; correctly escape nested classes.
440
441 2004-12-11  Martin Baulig  <martin@ximian.com>
442
443         * get.c (dis_stringify_type): Added `gboolean is_def' argument; if
444         false, display type parameters as numbers and not as names.
445         (dis_stringify_object_with_class): Added `gboolean is_def' argument.
446         (dis_stringify_array): Likewise.
447
448 2004-12-10  Martin Baulig  <martin@ximian.com>
449
450         * get.c (init_key_table): Added `type' and `strict'.
451         (get_generic_param): Also escape the type parameter names.
452         Correctly handle multiple constraints.
453
454 2004-12-10  Martin Baulig  <martin@ximian.com>
455
456         * get.c (get_fieldref_signature): Escape the field type and name
457         here, too.
458
459 2004-12-10  Martin Baulig  <martin@ximian.com>
460
461         Started to add generics support to monodis.
462
463         * get.c (get_typedef_or_ref): Added `MonoGenericContext *'.
464         (get_field_signature, get_field): Likewise.
465         (get_methodref_signature, get_methodspec): Likewise.
466         (get_token, get_token_type, get_typespec): Likewise.
467         (get_method, get_method_type_param): Likewise.
468         (get_method_override, dis_stringify_method_signature): Likewise.
469         (get_type, get_ret_type, get_param): Likewise.
470
471         * dis-cil.c (disasemble_cil): Added `MonoGenericContext *'.
472
473 2004-12-09  Martin Baulig  <martin@ximian.com>
474
475         * get.c (get_generic_param): Take a `MonoGenericContainer *' and
476         use it to print things instead of manually parsing the metadata.
477
478         * main.c (dis_generic_param_and_constraints): Removed, use
479         get_generic_param() instead.
480         (dis_method_list): Added `MonoGenericContext *' argument.
481
482 Mon Dec 6 13:31:48 CET 2004 Paolo Molaro <lupus@ximian.com>
483
484         * main.c: add a --filter=filename option to load a file
485         with a list of types, fields, methods to disassemble.
486
487 2004-12-02  Miguel de Icaza  <miguel@ximian.com>
488
489         * main.c: Rename compilercontrolled to privatescope
490
491         * get.c (get_class_name): Correct implementation that correctly
492         handles nested classes.
493
494 2004-11-26  Miguel de Icaza  <miguel@ximian.com>
495
496         * main.c: Better implementation of the quote keyword, list all of
497         the known keywords to ildasm here. 
498
499         * get.c (dis_stringify_object_with_class): Take an argument
500         `prefix' that controls whether the `class', `valuetype' labels are
501         used.  This is needed for the catch clause that takes the type
502         directly. 
503         (get_method_core): Rename get_method to get_method_core, and allow
504         for only part of the signature to be specified, so we can produce
505         .override signatures correctly.
506         (get_method_override): Pass false as the `fullsig' argument.
507
508         (get_typedef): no longer quote the type, we quote in the call site
509         elsewhere.   Avoids double quotes.
510         
511         * main.c (quote_keyword): Quote keywords.
512
513 Tue Nov 9 17:29:28 CET 2004 Paolo Molaro <lupus@ximian.com>
514
515         * dis-cil.c, get.c, get.h: update to exception clause structure changes.
516
517 2004-11-08  Ben Maurer  <bmaurer@ximian.com>
518
519         * get.c, dump.c: warning free.
520
521 2004-10-21  Jackson Harper  <jackson@ximian.com>
522
523         * get.c: Escape typedef names.
524
525 2004-10-19    <vargaz@freemail.hu>
526
527         * main.c: Applied patch from Alexandre Rocha Lima e Marcondes  (alexandremarcondes@psl-pr.softwarelivre.org). Really fix 2.95 build.
528
529 2004-10-04  Sebastien Pouliot  <sebastien@ximian.com>
530
531         * dump.c: Added new "internal" security actions for non-CAS demands:
532         NonCasDemand, NonCasLinkDemand and NonCasInheritance.
533         * main.c: Added new "internal" security actions for non-CAS demands:
534         noncasdemand, noncaslinkdemand and noncasinheritance.
535
536 2004-09-24  Zoltan Varga  <vargaz@freemail.hu>
537
538         * main.c: Add support for pinvoke flags BestFit and 
539         ThrowOnUnmappableChar.
540
541 2004-09-23  Miguel de Icaza  <miguel@ximian.com>
542
543         * main.c (dis_directive_assemblyref): Dump the locale and public
544         key tokens 
545
546         * get.c (dis_stringify_object_with_class): Escape assembly name. 
547
548         * main.c (dis_directive_assemblyref): Escape assembly name
549
550 2004-09-21  Martin Baulig  <martin@ximian.com>
551
552         * main.c (main): If just a single assembly was specified, use the
553         runtime version it requires.
554
555 2004-09-16  Sebastien Pouliot  <sebastien@ximian.com>
556
557         * dump.c: Added new security actions added in 2.0: LinkDemandChoice,
558         InheritanceDemandChoice and DemandChoice.
559         * main.c: Added ".permissionset" to output IL. Removed "hassecurity"
560         as MS ilasm can't compile it.
561
562 2004-09-16  Zoltan Varga  <vargaz@freemail.hu>
563
564         * get.c (get_token): Add support for memberrefs.
565
566 2004-09-06  Zoltan Varga  <vargaz@freemail.hu>
567
568         * main.c: Fix build && warnings.
569
570 2004-09-05  Jambunathan K  <kjambunathan@novell.com>
571         * main.c (dump_cattrs_list): Newly carved out of dump_cattrs.
572         
573         Renamed cattrs_for_method() to more meaningful
574         dump_cattrs_for_method_params()
575         
576         (dump_cattrs_for_method_params): Fixed so that ".param[]" gets
577         dumped only when necessary. i.e., when a method parameter has
578         either a default value and/or when it has a custom attribute.
579
580 2004-09-06  Zoltan Varga  <vargaz@freemail.hu>
581
582         * get.c: Fix printing of unmanaged calling conventions.
583         (get_constant): Fix warning.
584
585 2004-08-28  Jambunathan K  <kjambunathan@novell.com>
586         * main.c: modified cattrs_for_method so that
587           emitting of ".param[] = ..." is complete.
588         
589         * get.c: Modified get_constant() so that
590           1. MONO_TYPE_CHAR now handles unicode characters
591           2. MONO_TYPE_I8 now emits int64(...)
592           3. MONO_TYPE_STRING emits a bytearray()
593
594 2004-08-18  Jambunathan K  <kjambunathan@novell.com>
595         * get.c: Changed dis_stringify_param to emit [opt] for parameters
596           that are marked as Optional.
597
598         * dump.c: Fixed dump_table_constant so that the parent field's
599           description is correctly displayed.
600
601 2004-08-08  Zoltan Varga  <vargaz@freemail.hu>
602
603         * get.c (get_typespec): Append '*' to pointer types. Fixes #62331.
604
605 2004-08-03  Martin Baulig  <martin@ximian.com>
606
607         * dump.c (method_dor_to_token): Moved to get.c and made public.
608
609         * get.c (get_method_override): New public function.
610
611         * main.c (dis_code): Added `.override' for override methods.
612
613 2004-08-02  Martin Baulig  <martin@ximian.com>
614
615         * get.c (dis_stringify_object_with_class): Include our generic
616         arguments in the method's class name.
617
618         * main.c (dis_generic_param_and_constraints): Use the new
619         constraints syntax.
620
621 2004-08-02  Martin Baulig  <martin@ximian.com>
622
623         * dump.c (dump_stream_blob): Format this nicely.
624         (dump_table_standalonesig): New public function.
625
626         * main.c (dis_locals): If --show-tokens was requested, print the
627         standalone signature token.
628         (table_list): Added "--standalonesig".
629
630 2004-07-09  Jackson Harper  <jackson@ximian.com>
631
632         * get.c: Make "class" the default so only valuetypes get the
633         "valuetype" modifier. Otherwise object, string, int,... will get
634         it.
635         
636 2004-07-08  Jackson Harper  <jackson@ximian.com>
637
638         * main.c: Spaces after visibility types.
639         
640 2004-07-06  Jackson Harper  <jackson@ximian.com>
641
642         * get.c: Add float cast for outputing floats. Patch by Steve Brown.
643         
644 2004-06-25  Jackson Harper  <jackson@ximian.com>
645
646         * get.c: Add a few more keywords to be escaped.
647         * main.c: MS's ildasm writes '// end of class' not '// end of
648         type'. The python.net tool searches for this string.
649         
650 2004-06-24  David Waite  <mass@akuma.org>
651
652         * dump.c: change to C90-style comments from C99/C++-style
653         
654 2004-06-23  Raja R Harinath  <rharinath@novell.com>
655
656         * main.c (dis_event_signature): Decode and print event_flags.
657
658 2004-06-20  Jackson Harper  <jackson@ximian.com>
659
660         * dis-cil.c: Handle switch statements with no labels.
661         
662 2004-06-19  Jackson Harper  <jackson@ximian.com>
663
664         * dump.c/h: New function to dump the contents of the blob
665         stream. I found it useful for debugging so I will share.
666         * main.c: Add --blob switch to dump the blob stream.
667         * monodis.1: Document --blob
668         
669 2004-06-19  Jackson Harper  <jackson@ximian.com>
670
671         * get.c/h: New function to stringify function pointers.
672         
673 2004-06-19  Jackson Harper  <jackson@ximian.com>
674
675         * get.c: Fix name escaping so we dont escape everything in the
676         world anymore.
677         
678 2004-06-11  Martin Baulig  <martin@ximian.com>
679
680         * get.c (get_methodref_signature): Include "vararg " in the
681         signature of a varargs method.
682
683 2004-06-11  Martin Baulig  <martin@ximian.com>
684
685         * get.c (get_methodref_signature): If we're a varargs method,
686         print "..." for the sentinel followed by the actual types.
687
688 2004-06-08  Martin Baulig  <martin@ximian.com>
689
690         * dump.c (dump_table_memberref): Added support for MethodDef
691         parents.        
692
693 2004-05-06  Bernie Solomon  <bernard@ugsolutions.com>
694
695         * dump.c:
696         * get.c:
697         * main.c:
698         * util.c:
699         * util.h: rename map_t dis_map_t to avoid AIX symbol clash
700
701 2004-04-01  Martin Baulig  <martin@ximian.com>
702
703         * dump.c (dump_table_memberref): Added support for TypeDef's.
704
705 2004-03-29  Jackson Harper  <jackson@ximian.com>
706
707         * main.c: Handle pinvoke info where there is not an impl_map
708         entry.
709         
710 2004-03-27  Vladimir Vukicevic  <vladimir@pobox.com>
711
712        * get.c (get_constant): output bool consts as bool(true) or
713        bool(false)  (to be same as ildasm, also what mono and ms
714        ilasm expect)
715
716 2004-01-31  Martin Baulig  <martin@ximian.com>
717
718         * get.c (get_methodspec): It's a methoddef or ref token.
719
720 2004-01-26  Martin Baulig  <martin@ximian.com>
721
722         * main.cs (--show-tokens): New command line argument to show
723         type tokens in the disassembly.
724
725         * get.c (get_typedef, get_typespec, get_typeref): If
726         `show_tokens', include the token in the type name.
727         (get_type): Do some type parsing here and include the token in the
728         returned type name if requested.
729         (get_method): Include tokens if requested.
730
731 2004-01-17  Zoltan Varga  <vargaz@freemail.hu>
732
733         * main.c get.c: Add support for dumping the custom attributes of
734         modules.
735
736 2004-01-09  Jackson Harper  <jackson@ximian.com>
737
738         * monodis.1: Add --show-method-tokens switch
739         * get.c: When stringifying methods show the method token if the
740         show-method-tokens flag is set.
741         * get.h: Add show_method_tokens flag
742         * main.c: Add --show-method-tokens switch
743         
744 2004-01-09  Jackson Harper  <jackson@ximian.com>
745
746         * monodis.1: Add typespec switch
747         
748 2004-01-08  Jackson Harper  <jackson@ximian.com>
749
750         * main.c: Add switch to dump typespec table.
751         * dump.c/dump.h: Add function for dumping typespec table.
752         
753 2003-12-19  Zoltan Varga  <vargaz@freemail.hu>
754
755         * dump.c (dump_table_exported): Fix output.
756
757 2003-12-08  Jackson Harper <jackson@ximian.com>
758
759         * main.cs: escape module names.
760         
761 2003-12-03  Zoltan Varga  <vargaz@freemail.hu>
762
763         * main.c (dis_field_list): Update after changes to 
764         mono_metadata_get_constant_index ().
765
766 2003-11-26  Zoltan Varga  <vargaz@freemail.hu>
767
768         * dump.c dump.h main.c: Added support for dumping the ImplMap table
769         (--implmap).
770
771         * main.c (dis_method_list): Avoid disassembling native code.
772
773 2003-11-19  Zoltan Varga  <vargaz@freemail.hu>
774
775         * get.c (dis_stringify_modifiers): Fix display of modreq and modopt.
776
777 Thu Nov 13 16:12:09 CET 2003 Paolo Molaro <lupus@ximian.com>
778
779         * util.h, dump.c: get rid of ugly CSIZE macro.
780
781 2003-11-01  Zoltan Varga  <vargaz@freemail.hu>
782
783         * main.c: Add disassembly of module, moduleref and file tables.
784
785         * get.h get.c: Add support for modulerefs.
786
787         * dump.c: Avoid crash on empty assembly table.
788
789 2003-10-22 Jackson Harper <jackson@ximian.com>
790
791         * main.c: Use escaped names for method, and type names. Initialize
792         the name table.
793         * main.c (visibility_map): Fix typo, should be nested family not
794         family
795         * main.c (dis_data): Use uppercase hex to avoid name conflicts.
796         * get.c/get.h: New method to get an escaped name. This method will
797         take a name and escape it if it is an ilasm keyword, or uses a non
798         id char. Use escaped names for type, method, field, and parameter names.
799         * get.c (get_typespec): A typespec can be used for anything, so we
800         need to handle all types not just modified types.
801         * get.c (dis_stringify_object_with_class): Handle nested classes
802         * get.c (get_token): Add field keyword to field tokens.
803         
804 2003-10-21 Jackson Harper <jackson@ximian.com>
805
806         * get.c (get_fieldref_signature): Use MONO_MEMBERREF_SIGNATURE in
807         the member ref table.
808         
809 2003-10-21  Martin Baulig  <martin@ximian.com>
810
811         * get.c (get_typespec): Add MONO_TYPE_VAR and MONO_TYPE_MVAR.
812
813 2003-10-18 Jackson Harper <jackson@ximian.com>
814
815         * dis-cil.c (get_encoded_user_string): use g_strescape instead of
816         escaping manually.
817         * util.c (hex_dump): Use uppercase hex so there are no conflicts
818         with ilasm keywords ie cf
819         
820 2003-10-17 Jackson Harper <jackson@ximian.com>
821
822         * dis-cil.c (get_encoded_user_string): Escape user strings when
823         loading. ie ""quote"" should be "\"quote\"".
824         * dis-cil.c (dissasemble_cil): Write SEH debug info into a comment
825         block. Combine SEH blocks that have the same offset and length,
826         this prevents creating invalid SEH blocks. 
827         
828 2003-10-15  Zoltan Varga  <vargaz@freemail.hu>
829
830         * get.c (get_ret_type): Remove needless warning message.
831
832 2003-10-13 Jackson Harper <jackson@ximian.com>
833
834         * get.c: stringify nested types properly ie Outer/Inner.
835         
836 2003-10-10 Jackson Harper <jackson@ximian.com>
837
838         * dump.c: When dumping methodspecs dump the full methodspec with
839         signature, and dump the signature.
840         
841 2003-10-10 Jackson Harper <jackson@ximian.com>
842
843         * get.c/get.h: Add methods to get stringified methodspecs and
844         method type parameters. 
845         
846 2003-10-09 Jackson Harper <jackson@ximian.com>
847
848         * main.c/get.c: Remove magic numbers, use constants.
849         
850 2003-10-08 Jackson Harper <jackson@ximian.com>
851
852         * main.c (dis_genericparam): renamed to
853         dis_generic_param_and_constraints, allow a table type to be passed
854         to the method so this could be used with generic methods (It is
855         not though).
856         * get.c/get.h (get_generic_param): method to stringify generic
857         type and method parameters.
858         * get.c (dis_stringify_method_signature): Add generic parameters.
859         
860 2003-10-08 Jackson Harper <jackson@ximian.com>
861
862         * main.c (dis_type): NULL cnst_block so we dont explode on
863         interfaces.
864         * main.c (dis_genericparam): oops, fix off-by-one error.
865         
866 2003-10-08 Jackson Harper <jackson@ximian.com>
867
868         * get.c/get.h add method to get a methoddef from an index, simplify
869         get_typd_or_methdef, use new get_methoddef to get the method
870         because we have a method index not a method token.
871         
872 2003-10-07 Jackson Harper <jackson@ximian.com>
873
874         * main.c: When dis. generic parameters the TypeOrMethodDef token
875         only needs to be shifted 1 bit. Added dis of generic constraints.
876         * get.c/get.h: New method for getting a TypeOrMethodDef token
877         * dump.c: When dumping generic parameters and generic constraints
878         output readable names instead of just tokens.
879         
880 2003-10-01 Jackson Harper <jackson@latitudegeo.com>
881         
882         * main.c: Fix visibility level names, when outputing pinvoke info
883         quote the module and method names, properties have specialname,
884         and rtspecialname flags (nothing else), dis global methods and
885         fields FIXME: indentation issues.
886         * get.h: declare get_fieldref_signature
887         * get.c: Fix unsigned ints (not uint), single quote argument names
888         (this is kinda a hack, ildasm will only single quote arg names
889         that are ilasm keywords), remove fixme, we know what typedbyref
890         means, output fieldref signatures instead of their token value.
891         
892 2003-09-19 Jackson Harper <jackson@latitudegeo.com>
893
894         * dis-cil.c: Output fault blocks, and filter blocks. If in a
895         filter block outptut 0xDC as endfilter if in a fault output as
896         endfault.
897         
898 2003-08-22  Zoltan Varga  <vargaz@freemail.hu>
899
900         * main.c (dis_event_list): Same for event methods.
901
902         * get.c (dis_stringify_method_signature): New argument specifying
903         whenever to return a fully qualified method name.
904         * dump.c main.c: Updated to work with the new function.
905
906         * main.c (dis_property_methods): Print fully qualified method names 
907         for property methods. Fixes #46221.
908
909 2003-07-22 Jackson Harper <jackson@latitudegeo.com>
910
911         * main.c: Dissasemble generic type parameters for type
912         definitions. TODO: Sort type parameters by index, and
913         auto-generate names for parameters that have no name.
914         
915 Fri Jul 18 13:12:38 CEST 2003 Paolo Molaro <lupus@ximian.com>
916
917         * get.c: updates for array type representation changes.
918
919 2003-06-16 Jackson Harper <jackson@latitudegeo.com>
920
921         * get.c: Fix modopt and modreq
922                 
923 Thu May 29 12:21:47 CEST 2003 Paolo Molaro <lupus@ximian.com>
924
925         * dump.c, get.c: misc fixes.
926
927 Wed May 7 16:50:00 CEST 2003 Paolo Molaro <lupus@ximian.com>
928
929         * main.c: output custom attributes for method parameters.
930
931 Wed May 7 16:24:43 CEST 2003 Paolo Molaro <lupus@ximian.com>
932
933         * main.c: output nested types inside their nesting class.
934
935 2003-04-12  Zoltan Varga  <vargaz@freemail.hu>
936
937         * get.c (dis_stringify_modifiers): Print a space between custom modifers.
938         * get.c (get_custom_mod): Handle multiple custom modifiers aka bug #30812.
939         * main.c: Print klass name at the end of each method to make it easier
940         to find a given method.
941
942 2003-03-31  Miguel de Icaza  <miguel@ximian.com>
943
944         * main.c: Sorted command line options table by name.
945
946         * dump.c: Add support for dumping the new generic tables. 
947
948         * monodis.1: Update man page.
949         
950 2003-03-09 Jackson Harper <jackson@latitudegeo.com>
951
952         * main.c: Ouput implements clause as a comma seperated list.
953
954 Thu Feb  6 02:43:23 PST 2003 Piers Haken <piersh@friskit.com>
955
956         * dump.c: more warning cleanups
957
958 Mon Jan 27 17:16:50 CET 2003 Paolo Molaro <lupus@ximian.com>
959
960         * get.c: decode also the size info in get_marshal_info()
961         for ByValStr and ByValArray.
962
963 Tue Sep 24 11:48:53 CEST 2002 Paolo Molaro <lupus@ximian.com>
964
965         * main.c: use mono_type_size () to get the size of
966         a blob of data for a type (Zoltan Varga spotted the bug).
967
968 2002-09-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
969
970         * get.c: closes bug #30814. Thanks to Zoltan Varga.
971
972 Mon Sep 16 18:49:55 CEST 2002 Paolo Molaro <lupus@ximian.com>
973
974         * main.c, get.c, dump.c: updates for changes in libmetadata.
975
976 Fri Sep 13 15:39:41 CEST 2002 Paolo Molaro <lupus@ximian.com>
977
978         * main.c: dump public key.
979         * get.c, util.h, util.c: prettyfy data dumps.
980
981 2002-08-28  Dick Porter  <dick@ximian.com>
982
983         * Makefile.am: Export HOST_CC for w32 builds
984
985 Tue Aug 6 12:40:09 CEST 2002 Paolo Molaro <lupus@ximian.com>
986
987         * main.c: use mono_image_get_entry_point ().
988
989 Fri Jul 26 11:41:32 CEST 2002 Paolo Molaro <lupus@ximian.com>
990
991         * main.c, dump.h, dump.c: output hash value in File table.
992         Add dumper function for DeclSecurity table.
993
994 Fri Jul 19 14:20:10 CEST 2002 Paolo Molaro <lupus@ximian.com>
995
996         * main.c: handle null parent.
997
998 2002-07-02  Martin Baulig  <martin@gnome.org>
999
1000         * get.c (dis_stringify_object_with_class): New static function to
1001         stringify an object when we already have its class.
1002         (dis_stringify_object): Get the class and call dis_stringify_object().
1003         (get_method): Call dis_stringify_object_with_class() since we already
1004         have the object's class.
1005
1006 Thu Jun 20 11:50:38 CEST 2002 Paolo Molaro <lupus@ximian.com>
1007
1008         * main.c, dump.c, dump.h: code to dump the MethodImpl table.
1009
1010 Mon Jun 17 17:31:19 CEST 2002 Paolo Molaro <lupus@ximian.com>
1011
1012         * get.h, get.c: get_marshal_info() to get a marshal descriptor.
1013         * main.c, dump.h, dump.c: added code to dump the FieldMarshl table.
1014
1015 Tue Jun 11 14:11:12 CEST 2002 Paolo Molaro <lupus@ximian.com>
1016
1017         * get.c: handle modulerefs.
1018         * main.c: fix --mscorlib argument handling.
1019
1020 Fri Jun 7 19:39:43 CEST 2002 Paolo Molaro <lupus@ximian.com>
1021
1022         * get.c: handle typerefs of nested types. Don't print "."
1023         with an empty namespace.
1024
1025 Sat Jun 1 13:57:17 CEST 2002 Paolo Molaro <lupus@ximian.com>
1026
1027         * main.c: print byte values correctly.
1028
1029 2002-05-20  Martin Baulig  <martin@gnome.org>
1030
1031         * main.c: Added `--output=FILENAME' command line option.
1032
1033         * monodis.1: Documented it here.
1034
1035 Thu May 16 17:21:07 CEST 2002 Paolo Molaro <lupus@ximian.com>
1036
1037         * main.c, dump,c, get.h, get.c: diassemble custom attributes.
1038
1039 Wed May 15 16:02:56 CEST 2002 Paolo Molaro <lupus@ximian.com>
1040
1041         * main.c: output field RVA data.
1042
1043 Fri May 10 21:00:52 CEST 2002 Paolo Molaro <lupus@ximian.com>
1044
1045         * main.c: print field offset info if needed.
1046
1047 Wed May 1 17:07:56 CEST 2002 Paolo Molaro <lupus@ximian.com>
1048
1049         * dump.c, dump.h, main.c: dump ExportedTypes table.
1050         * get.c: fix get_module (), remove magic numbers.
1051         * monodis.1: update manpage (hi miguel!:)
1052
1053 Mon Apr 29 12:12:35 CEST 2002 Paolo Molaro <lupus@ximian.com>
1054
1055         * dump.c, dump.h, main.c: support for dumping the manifest resource table.
1056
1057 Mon Apr 15 11:35:05 CEST 2002 Paolo Molaro <lupus@ximian.com>
1058
1059         * dump.c, dump.h, get.c, get.h, main.c: support for dumping the
1060         module table and guid values.
1061
1062 Mon Apr 8 17:15:04 CEST 2002 Paolo Molaro <lupus@ximian.com>
1063
1064         * main.c: removed unneeded runtime invoke support.
1065
1066 Thu Mar 28 16:52:11 CET 2002 Paolo Molaro <lupus@ximian.com>
1067
1068         * dis-cil.c, dump.c, get.c, main.c, util.h: spring warning cleanup.
1069
1070 Thu Mar 28 11:29:58 CET 2002 Paolo Molaro <lupus@ximian.com>
1071
1072         * util.c: when an invalid flags combination is seen,
1073         return the string "invalid-flags", so disassembly can continue.
1074
1075 Tue Mar 19 18:15:29 CET 2002 Paolo Molaro <lupus@ximian.com>
1076
1077         * dis-cil.c: use unsigned for variables.
1078
1079 Sat Mar 16 19:13:57 CET 2002 Paolo Molaro <lupus@ximian.com>
1080
1081         * dump.c: handle TypeSpec token in memberref table dump.
1082
1083 2002-03-08  Nick Drochak  <ndrochak@gol.com>
1084
1085         * monodis.1: Add info about new parameter
1086         * main.c: Add flag to remember if user wants to us mscorlib for
1087         non-corilb assembly names
1088         * get.c(get_typedef): use mscorlib for assembly name only
1089         if user specifies it with a command line parameter. Default
1090         behavior is now to use actual assembly name.
1091  
1092 Tue Mar 5 18:11:01 CET 2002 Paolo Molaro <lupus@ximian.com>
1093
1094         * dump.c: print index of the methodsemantics table.
1095         * main.cs: print event information.
1096
1097 Wed Feb 20 22:10:48 CET 2002 Paolo Molaro <lupus@ximian.com>
1098
1099         * dump.c: fix the fix and more complete custom attribute decoder.
1100
1101 Tue Feb 19 20:20:15 CET 2002 Paolo Molaro <lupus@ximian.com>
1102
1103         * dump.c: the prolog is before each arg in the custom attribute blob.
1104
1105 Mon Feb 18 15:48:38 CET 2002 Paolo Molaro <lupus@ximian.com>
1106
1107         * get.c: include last param.
1108
1109 Thu Feb 14 18:59:37 CET 2002 Paolo Molaro <lupus@ximian.com>
1110
1111         * main.c: output pack and size info if needed.
1112
1113 2002-02-13  Dietmar Maurer  <dietmar@ximian.com>
1114
1115         * *.c: s/MonoMetadata/MonoImage/ 
1116
1117 Tue Feb 12 14:33:53 CET 2002 Paolo Molaro <lupus@ximian.com>
1118
1119         * dump.c: make all the indexes printed starting from 1.
1120
1121 Fri Feb 8 19:28:31 CET 2002 Paolo Molaro <lupus@ximian.com>
1122
1123         * get.c: don't abort if a methodref is not found, usa alternative way
1124         to get the method name.
1125
1126 Fri Feb 8 12:29:41 CET 2002 Paolo Molaro <lupus@ximian.com>
1127
1128         * Makefile.am: correct linking order.
1129         * dis-cil.c: use opcode info from opcodes.h instead of a copy of the data.
1130
1131 Thu Jan 31 18:21:12 CET 2002 Paolo Molaro <lupus@ximian.com>
1132
1133         * dis-cil.c: reverse order when outputting start try blocks.
1134
1135 Mon Jan 14 17:00:23 CET 2002 Paolo Molaro <lupus@ximian.com>
1136
1137         * dump.c: more info in method table dump.
1138
1139 Mon Dec 24 17:24:13 CET 2001 Paolo Molaro <lupus@ximian.com>
1140
1141         * main.c, dump.h, dump.c: add dump_table_nestedclass().
1142         * dis-cil.c: output int64 as hex.
1143
1144 Tue Dec 18 18:48:00 CET 2001 Paolo Molaro <lupus@ximian.com>
1145
1146         * main.c: use mono_metadata_methods_from_property() and
1147         mono_metadata_properties_from_typedef() from metadata instead of
1148         custom code.
1149
1150 Tue Nov 27 16:31:52 CET 2001 Paolo Molaro <lupus@ximian.com>
1151
1152         * main.c: output a marker for method (used in debug support).
1153
1154 Mon Nov 19 11:32:28 CET 2001 Paolo Molaro <lupus@ximian.com>
1155
1156         * main.c: remove arch_create_jit_trampoline().
1157
1158 Thu Nov 15 17:42:03 CET 2001 Paolo Molaro <lupus@ximian.com>
1159
1160         * dump.c: decode more info in the constant table.
1161         * get.c: show literals the same way ildasm does.
1162         * main.c: decode literal values for fields.
1163
1164 Fri Nov 2 19:04:21 CET 2001 Paolo Molaro <lupus@ximian.com>
1165
1166         * main.c, dump, dump.c: decode the customattr table.
1167         * dump.c: handle also field signature when dumping the memberref
1168         table.
1169
1170 2001-11-07  Miguel de Icaza  <miguel@ximian.com>
1171
1172         * main.c (dis_property_methods): Added missing colon which avoided
1173         setting loc.t
1174
1175 2001-10-10  Dietmar Maurer  <dietmar@ximian.com>
1176
1177         * main.c (arch_compile_method):  added to compute vtable entry
1178
1179 Mon Oct 8 16:13:55 CEST 2001 Paolo Molaro <lupus@ximian.com>
1180
1181         * get.c, get.h: MonoArray changed in MonoArrayType.
1182         * main.c: guard against calling bsearch with a NULL pointer
1183         (pointed out by Laurent Rioux, smoux).
1184
1185 Thu Oct 4 19:05:56 CEST 2001 Paolo Molaro <lupus@ximian.com>
1186
1187         * dis-cil.c: fix printing of exception stuff.
1188         * dump.c: display some more info in the typedef table dump.
1189         * main.c: typo fix and method list fix.
1190
1191 2001-10-04  Dick Porter  <dick@ximian.com>
1192
1193         * meta.h: include mono-endian.h not endian.h
1194
1195 2001-10-02  Dietmar Maurer  <dietmar@ximian.com>
1196
1197         * get.c (get_method): always write namespace and class name.
1198
1199 2001-09-06  Miguel de Icaza  <miguel@ximian.com>
1200
1201         * monodis.1: Update man page.
1202
1203 Tue Aug 28 15:54:45 CEST 2001 Paolo Molaro <lupus@ximian.com>
1204
1205         * main.c, dump.c, dump.h, get.c: added dump_table_interfaceimpl ().
1206         Output info about interfaces when disassembling a type. Many small
1207         changes to make the output correct assembler.
1208
1209 Mon Aug 27 20:13:49 CEST 2001 Paolo Molaro <lupus@ximian.com>
1210
1211         * dis-cil.c, get.c: some endian fixes.
1212         * main.c: colon-separate version numbers. Print also namespace
1213         when outputting class information.
1214
1215 Fri Aug 24 16:10:12 CEST 2001 Paolo Molaro <lupus@ximian.com>
1216
1217         * get.c, main.c, get.h: updates for MonoParam merge in MonoType.
1218
1219 2001-08-24  Dietmar Maurer  <dietmar@ximian.com>
1220
1221         * main.c (disassemble_file): use assembly_open instead of image_open
1222
1223 Wed Aug 22 16:22:22 CEST 2001 Paolo Molaro <lupus@ximian.com>
1224
1225         * dis-cil.c: add a newline after branch instructions. Move
1226         end of exception handler code at the end.
1227
1228 Tue Aug 21 18:51:05 CEST 2001 Paolo Molaro <lupus@ximian.com>
1229
1230         * dis-cil.c: correctly print the label for multi-byte opcodes.
1231
1232 Mon Aug 20 19:33:34 CEST 2001 Paolo Molaro <lupus@ximian.com>
1233
1234         * util.c: add a space when decoding multiple flags.
1235         * dump.c, dump.h, main.c: decode the property map and
1236         methodsemantics tables. Disassemble property information
1237         to .property IL directives.
1238         * get.c: allow passing a NULL as method in dis_stringify_method ()
1239         if a methoddef_row is given.
1240         
1241 2001-08-20  Dietmar Maurer  <dietmar@ximian.com>
1242
1243         * get.c (dis_stringify_type): support pinned values
1244
1245 Sat Aug 18 11:24:07 CEST 2001 Paolo Molaro <lupus@ximian.com>
1246
1247         * dump.c, get.c, get.h, main.c: dis_stringify_method_signature()
1248         gets an optional methodef_row index instead of a name, so it
1249         can figure out also the names and attributes of params.
1250         parse_method_signature() and free_method_signature() removed as
1251         they are useless now.
1252
1253 2001-08-17  Dietmar Maurer  <dietmar@ximian.com>
1254
1255         * main.c (pinvoke_info): bug fix - use the right column in the table
1256
1257 2001-08-14  Dietmar Maurer  <dietmar@ximian.com>
1258
1259         * get.c (dis_stringify_type): use strconcat instead of strjoin
1260
1261 Sat Aug 4 12:36:54 CEST 2001 Paolo Molaro <lupus@ximian.com>
1262
1263         * get.c, get.h, main.c, dump.c: implement dis_stringify_method_signature().
1264         More magic constants replaced by enum values (spotted at least 3 real bugs
1265         doing this). Print usage information if an unknown option is given.
1266         Print the full signature when dumping the method table.
1267         Changed method and field table dumps to show the typedef name the field
1268         or method belongs to.
1269
1270 Fri Aug 3 18:30:16 CEST 2001 Paolo Molaro <lupus@ximian.com>
1271
1272         * get.c (get_method): fix use of unitialized variable and
1273         remove magic constants all over the place.
1274
1275 Wed Aug 1 22:46:45 CEST 2001 Paolo Molaro <lupus@ximian.com>
1276
1277         * dis-cil.c: properly decode the switch opcode.
1278         
1279 2001-08-01  Dietmar Maurer  <dietmar@ximian.com>
1280
1281         * get.c (get_token): decode typedef and typeref tokens
1282
1283         * main.c (dis_method_list): don't decode the next row, that is
1284         totally unnecessary
1285
1286 Tue Jul 31 17:48:11 CEST 2001 Paolo Molaro <lupus@ximian.com>
1287
1288         * dis-cil.c, dis-cil.h, dump.c, dump.h, get.c, get.h, main.c, push-pop.h:
1289         massive namespace cleanup.
1290         * main.c: dis_locals() now just strigifies a MonoMethodHeader.
1291
1292 2001-07-31  Dietmar Maurer  <dietmar@ximian.com>
1293
1294         * main.c (pinvoke_flags): impl.
1295
1296 Mon Jul 30 20:08:37 CEST 2001 Paolo Molaro <lupus@ximian.com>
1297
1298         * dis-cil.c, dis-cil.h, main.c: changes to disassemble also
1299         the information about try/catch/finally blocks.
1300
1301 2001-07-27  Dietmar Maurer  <dietmar@ximian.com>
1302
1303         * get.c (dis_stringify_type): return "void" if !type
1304         (dis_stringify_type): print type* instead of *type
1305
1306 Thu Jul 26 13:22:28 CEST 2001 Paolo Molaro <lupus@ximian.com>
1307
1308         * dis-cil.c, dump.c, get.c, main.c: updates to match changes in metadata.
1309         Removed dead code.
1310
1311 2001-07-17  Miguel de Icaza  <miguel@ximian.com>
1312
1313         * main.c (usage): Print out all the arguments.
1314
1315         * get.c, main.c, dump.c: Remove `expand', `get_encoded_value',
1316         `get_blob_encoded_size' and replaced with the proper functions
1317         from metadata.c
1318
1319 2001-07-15  Miguel de Icaza  <miguel@ximian.com>
1320
1321         * main.c (dis_code): Only display .entrypoint when we are dealing
1322         with a module that contains an entry point.  This removes a bunch
1323         of warnings for .dll dumping
1324
1325 Sun Jul 15 17:29:10 CEST 2001 Paolo Molaro <lupus@ximian.com>
1326
1327         * get.h,get.c: added some dis_stringify_object() functions:
1328         metadata decoding is now done in libmetadata. Still need to use
1329         them throughhout the code (and move other decode code to
1330         metadata). Fix also field decoding (band-aid until we load
1331         also referenced assemblies).
1332         * dis/main.c: start using the new routines.
1333
1334 2001-07-13  Miguel de Icaza  <miguel@ximian.com>
1335
1336         * get.c (get_method): GOOD. Implemented this other bad boy.
1337
1338 2001-07-12  Miguel de Icaza  <miguel@ximian.com>
1339
1340         * get.c (get_token_type): Implement TOKEN_TYPE_TYPE_SPEC.
1341         (get_typespec): Implement.
1342         (get_typedef_or_ref): Use get_typespec.
1343
1344         * dis-cil.c (dissasemble_cil): Implement InlineField
1345         (dissasemble_cil): Implement InlineTok.
1346
1347         * get.c (get_token, get_field): Implemented.  Worked around lame
1348         tables in the spec.
1349
1350 Wed Jul 11 18:52:15 CEST 2001 Paolo Molaro <lupus@ximian.com>
1351
1352         * dis-cil.c: output real name of local var.
1353         * dump.c: output more info about fields (flags and type). Properly decode
1354         Property signatures. Decode also method table.
1355         * main.c: Fix local variable info. Hopefully fix field and property list.
1356
1357 Mon Jul  9 16:39:41 CEST 2001 Paolo Molaro <lupus@ximian.com>
1358
1359         * dump.c: write stuff to output, not stderr. Give more info for properties.
1360         * dump.c,dump.h,main.c: implement dump_table_event(), dump_table_file(),
1361         dump_table_moduleref().
1362         * get.c: first attempt to decode string constants, need to find if and where
1363         this is actually specified.
1364
1365 Fri Jul  6 19:49:21 CEST 2001 Paolo Molaro <lupus@ximian.com>
1366
1367         * dump.c,dump.h: implement dump_table_property().
1368         * main.c: implement local variable info disassembling.
1369         Annotate entrypoint method. Remove memory leak in 
1370         parse_method_signature ().
1371
1372 2001-07-04  Miguel de Icaza  <miguel@ximian.com>
1373         
1374         * get.c (get_methodref_signature): Implement.
1375
1376         * dump.c (dump_table_memberref): Add memberref dumping.
1377
1378 Tue,  3 Jul 2001 18:32:10 +0200 Paolo Molaro <lupus@ximian.com>
1379
1380         * main.c: return on failure.
1381
1382 2001-07-02  Miguel de Icaza  <miguel@ximian.com>
1383
1384         * dis-cil.c (get_encoded_user_string): Return a string from the
1385         #US heap. o
1386
1387         * get.c (get_blob_encoded_size): Implement 23.1.4 decoding.
1388
1389 2001-07-01  Miguel de Icaza  <miguel@ximian.com>
1390
1391         * dis-cil.c: New file.  CIL opcode dissasembler.
1392
1393 2001-06-27  Miguel de Icaza  <miguel@ximian.com>
1394
1395         * main.c: Split code.
1396
1397 2001-06-22  Miguel de Icaza  <miguel@ximian.com>
1398
1399         * main.c: More work on the disassembler and on the understanding
1400         of the metadata file format.   
1401