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