* ILParser.jay: Use the ExternTable to create external type
[mono.git] / mcs / ilasm / parser / ChangeLog
1 2003-10-28 Jackson Harper <jackson@ximian.com>
2
3         * ILParser.jay: Use the ExternTable to create external type
4         references. Remove some ultra top secret debugging code.
5         
6 2003-10-17 Jackson Harper <jackson@ximian.com>
7
8         * ILParser.jay: Set value types, set enums as value types. Use
9         correct var for call conv in method signatures.
10         
11 2003-10-10 Jackson Harper <jackson@ximian.com>
12
13         * ILParser.jay: Create generic method refs.
14         
15 2003-10-08 Jackson Harper <jackson@ximian.com>
16
17         * ILParser.jay: Attach generic type parameters to methods.
18         
19 2003-09-27 Jackson Harper <jackson@latitudegeo.com>
20
21         * ILParser.jay: Set pinvoke info. Allow param attributes in type
22         lists.
23         
24 2003-09-21 Jackson Harper <jackson@latitudegeo.com>
25
26         * ILParser.jay: Define data
27         
28 2003-09-15 Jackson Harper <jackson@latitudegeo.com>
29
30         * ILParser.jay: dashed names aren't legal for file names, if the
31         name has a dash in it it needs to be quoted ie 'gtk-sharp'.
32         
33 2003-09-12 Jackson Harper <jackson@latitudegeo.com>
34
35         * ILParser.jay: Fix typo in field inits. Methods attached to
36         modified types should be type spec method refs.
37         
38 2003-08-19 Jackson Harper <jackson@latitudegeo.com>
39
40         * ILParser.jay: Implement address constants and string
41         constants. Add data definitions to their types, and create data
42         item lists. Also implement long form overrides.
43         
44 2003-08-19 Jackson Harper <jackson@latitudegeo.com>
45
46         * ILParser.jay: Add override methods.
47         
48 2003-08-10 Jackson Harper <jackson@latitudegeo.com>
49
50         * ILParser.jay: Create an empty array list for empty type
51         lists. Start phasing out INT32 because the tokenizer will no
52         longer create this token.
53                 
54 2003-08-03 Jackson Harper <jackson@latitudegeo.com>
55
56         * ILParser.jay: Use new sentinel type. Create valuetypes.
57
58 2003-08-03 Jackson Harper <jackson@latitudegeo.com>
59
60         * ILParser.jay: Make value types and enum types.
61         
62 2003-08-03 Jackson Harper <jackson@latitudegeo.com>
63
64         * ILParser.jay: Create label references where appropriate instead
65         of adding labels.
66         
67 2003-08-02 Jackson Harper <jackson@latitudegeo.com>
68
69         * ILParser.jay: Set from label, not to label for filter block handlers
70         
71 2003-07-30 Jackson Harper <jackson@latitudegeo.com>
72
73         * ILParser.jay: Create branch instructions with explicit offsets
74         
75 2003-07-29 Jackson Harper <jackson@latitudegeo.com>
76
77         * ILParser.jay: Use new labeling system for handler blocks.
78         
79 2003-07-29 Jackson Harper <jackson@latitudegeo.com>
80
81         * ILParser.jay: No longer need to supply method references
82         to instructions, they get that when emitting now.
83         
84 2003-07-28 Jackson Harper <jackson@latitudegeo.com>
85
86         * ILParser.jay: Use TypeRef.Ellipsis instead of null for a 
87         placeholder in bound arrays. Do not use AsClassRef anymore.
88         
89 2003-07-21 Jackson Harper <jackson@latitudegeo.com>
90
91         * ILParser.jay: Set maxstack
92         
93 2003-07-20 Jackson Harper <jackson@latitudegeo.com>
94
95         * ILParser.jay: Do not use the AsClassRef method anymore to attach
96         methods and fields to types. All types can do this now. Create
97         generic type refs and generic type instances. 
98         
99 2003-07-17 Jackson Harper <jackson@latitudegeo.com>
100
101         * ILParser.jay: Add generic type refs, and fake generic class refs.
102                 
103 2003-07-15 Jackson Harper <jackson@latitudegeo.com>
104
105         * ILParser.jay: Add generic type constraints and tokens used to
106         create them
107                 
108 2003-07-16  Peter Williams  <peter@newton.cx>
109
110         * .cvsignore: ILParser.cs has been moved.
111
112 2003-07-14 Jackson Harper <jackson@latitudegeo.com>
113
114         * ILParser.jay: Seperate generic constraints from generic parameters.
115                 
116 2003-06-14 Jackson Harper <jackson@latitudegeo.com>
117
118         * ILParser.jay: Add set imagebase, subsystem, and corflags.
119                 
120 2003-06-14 Jackson Harper <jackson@latitidegeo.com>
121
122         * ILParser.jay: Implement custom modified types.
123                 
124 2003-06-08 Jackson Harper <jackson@latitudegeo.com>
125
126         * ILParser.jay: Implement properties
127                 
128 2003-06-08 Jackson Harper <jackson@latitudegeo.com>
129
130         * ILParser.jay: Add generic type parameters to types. Implement events.
131                 
132 2003-06-04 Jackson Harper <jackson@latitudegeo.com>
133
134         * ILParser.jay: Assembly and module names may have dashes in them
135         (like gtk-sharp.dll).
136                 
137 2003-05-31 Jackson Harper <jackson@latitudegeo.com>
138
139         * ILParser.jay: Set assembly names. When looking up types in the
140         form [assembly]name first check if the assembly is this
141         assembly. Implement scope_blocks, and implement scope block form
142         exception handling.
143                 
144 2003-05-31 Jackson Harper <jackson@latitudegeo.com>
145
146         * ILParser.jay: Use type instead of params for calli signatures.
147                 
148 2003-05-31 Jackson Harper <jackson@latitudegeo.com>
149
150         * ILParser.jay: When looking up types first check to see if this
151         is actually a primitive object type (System.String,
152         System.Object). Add custom attributes to types. Handle the il
153         keyword the exact same way as cil. Add ellipsises to param and sig
154         lists. Add an optional name to typelists, this is just parsed it
155         is not implemented properly. Add custom attributes to
156         methods. Implement custom types (just methodrefs to ctors).
157                 
158 2003-05-25 Jackson Harper <jackson@latitudegeo.com>
159
160         * ILParser.jay: Pass call conv to methoref constructors. Add the
161         ELLIPSIS to type_lists, this is for vararg methods
162                 
163 2003-05-23 Jackson Harper <jackson@latitudegeo.com>
164
165         * ILParser.jay: Remove top secret debugging code.
166                 
167 2003-05-23 Jackson Harper <jackson@latitudegeo.com>
168
169         * ILParser.jay: Implement label form structured exception handling.
170                 
171 2003-05-22 Jackson Harper <jackson@latitudegeo.com>
172
173         * ILParser.jay: Comment out K_IMF and K_NAN these are not used in
174         the grammar.
175                 
176 2003-05-21 Jackson Harper <jackson@latitudegeo.com>
177
178         * ILParser.jay: Add ldc.r4 to INSTR_R int also fix cast to double.
179                 
180 2003-05-21 Jackson Harper <jackson@latitudegeo.com>
181
182         * ILParser.jay: When converting from int32 to int64 do an exact
183         bit conversion, not a numerical conversion.
184                 
185 2003-05-21 Jackson Harper <jackson@latitudegeo.com>
186
187         * ILParser.jay: INT_I8s are not int instructions, currently the
188         only INT_I8 instruction is ldc.i8 so this new code does more
189         checks then needed but is written in anticipation of some new long
190         instructions being found. Implement signature instructions, token
191         instructions, and signatures. Convert INT32s masquerading as
192         INT64s to Int64.
193                 
194 2003-05-19 Jackson Harper <jackson@latitudegeo.com>
195
196         * ILParser.jay: Same as below but with float64 ()
197                 
198 2003-05-19 Jackson Harper <jackson@latitudegeo.com>
199
200         * ILParser.jay: When the float32 (0xFFFFFF) syntax is used the hex
201         value represents the exact byte value of a float NOT an integer
202         value that is converted to a float.
203                 
204 2003-05-18 Jackson Harper <jackson@latitudegeo.com>
205
206         * ILParser.jay: Use new methods for converting types to
207         classrefs. Expand grammar for locals.
208
209                 
210 2003-05-18 Jackson Harper <jackson@latitudegeo.com>
211
212         * ILParser.jay: Convert cast integers to floats.
213                 
214 2003-05-11 Jackson Harper <jackson@latitudegeo.com>
215
216         * ILParser.jay: Add tokens for instructions that take param and
217         local args. Do not create empty lists for sig_args and
218         type_lists. Add param and local instructions.
219                 
220 2003-05-11 Jackson Harper <jackson@latitudegeo.com>
221
222         * ILParser.jay: Set size and packing information for types
223                 
224 2003-05-10 Jackson Harper <jackson@latitudegeo.com>
225
226         * ILParser.jay: Add field instructions
227                 
228 2003-05-10 Jackson Harper <jackson@latitudegeo.com>
229
230         * ILParser.jay: Add global method references
231                 
232 2003-05-10 Jackson Harper <jackson@latitudegeo.com>
233
234         * ILParser.jay: Add locals, method references, and method instructions
235                 
236 2003-05-07 Jackson Harper <jackson@latitudegeo.com>
237
238         * ILParser.jay: Add type instructions. NOTE - type_spec is not
239         fully implemented yet, so this has some explosive potential.
240                 
241 2003-05-07 Jackson Harper <jackson@latitudegeo.com>
242
243         * ILParser.jay: Remove dotted_name, it is not used at all
244         anymore. vtattr only take an int64 param, this fix gets rid of all
245         of the remaining reduce/reduce conflicts
246                 
247 2003-05-07 Jackson Harper <jackson@latitudegeo.com>
248
249         * ILParser.jay: Remove extraneous dotted_name, also make comp_name
250         contain dotted_name logic. Oh how I will miss the 301
251         reduce/reduce conflicts these small changes fixed :-)
252                 
253 2003-05-06 Jackson Harper <jackson@latitudegeo.com>
254
255         * ILParser.jay: Emit INSTR_I8 instructions as int
256         instructions. Implement label lists, emit switch instruction.
257                 
258 2003-05-05 Jackson Harper <jackson@latitudegeo.com>
259
260         * ILParser.jay: Add labels to methods, add branching instructions.
261                 
262 2003-05-04 Jackson Harper <jackson@latitudegeo.com>
263
264         * ILParser.jay: Use new MiscInstr.ldstr for ldstr, add INSTR_Rs
265                 
266 2003-05-04 Jackson Harper <jackson@latitudegeo.com>
267
268         * ILParser.jay: Set int64's masquerading as int32 to upper and
269         lower bounds if neccasary. NEED TO TEST this behavoir on windows.
270                 
271 2003-05-01 Jackson Harper <jackson@latitudegeo.com>
272
273         * ILParser.jay: Fix a bunch of conversions, implement hexbytes
274                 
275 2003-04-30 Jackson Harper <jackson@latitudegeo.com>
276
277         * ILParser.jay: Implement non marshalled methodheads, method
278         attributes, impl attributes, imit simple int and ldstr instructions.
279                 
280 2003-04-17 Jackson Harper <jackson@latitudegeo.com>
281
282         * ILParser.jay: Define data, fix repeat_opt allways being set.
283                 
284 2003-04-17 Jackson Harper <jackson@latitudegeo.com>
285
286         * ILParser.jay: Add external types to the extern type table.
287                 
288 2003-04-17 Jackson Harper <jackson@latitudegeo.com>
289
290         * ILParser.jay: Use new types and methods to build a tree.
291                 
292 2003-04-07 Jackson Harper <jackson@latitudegeo.com>
293
294         * ILParser.jay: Implement data items
295                 
296 2003-04-07 Jackson Harper <jackson@latitudegeo.com>
297
298         * ILParser.jay: Implement most field features
299                 
300 2003-04-05 Jackson Harper <jackson@latitudegeo.com>
301
302         * ILParser.jay: Set type parameter index
303                 
304 2003-04-05 Jackson Harper <jackson@latitudegeo.com>
305
306         * ILParser.jay: Emit parameterized types
307                 
308 2003-04-04 Jackson Harper <jackson@latitudegeo.com>
309
310         * ILParser.jay: Add parameterized method declarations.
311                 
312 2003-04-03 Jackson Harper <jackson@latitudegeo.com>
313
314         * ILParser.jay: Add parameterized types to classes.
315                 
316 2003-04-02 Jackson Harper <jackson@latitudegeo.com>
317
318         * ILParser.jay: Support most non-obsolete native types.
319                 
320 2003-04-02 Jackson Harper <jackson@latitudegeo.com>
321
322         * ILParser.jay: Proper names for native int and native uint
323                 
324 2003-04-01 Jackson Harper <jackson@latitudegeo.com>
325
326         * ILParser.jay: Add Call conventions, fix primitive spelling.
327         
328 2003-04-01 Jackson Harper <jackson@latitudegeo.com>
329
330         * ILParser.jay: Add TypedRef primative type.
331         
332 2003-04-01 Jackson Harper <jackson@latitudegeo.com>
333
334         * ILParser.jay: Support pinned, modreq, and modopt types.
335         
336 2003-04-01 Jackson Harper <jackson@latitudegeo.com>
337
338         * ILParser.jay: Use the CodeGen CompleteClass method when a class
339         is completed instead of setting the current class to null. This
340         does some extra cleanup
341         
342 2003-03-31 Jackson Harper <jackson@latitudegeo.com>
343
344         * ILParser.jay: Add bound arrays
345         
346 2003-03-30 Jackson Harper <jackson@latitudegeo.com>
347
348         * ILParser.jay: Concat slashed names properly
349         
350 2003-03-30 Jackson Harper <jackson@latitudegeo.com>
351
352         * ILParser.jay: Implement most of type
353         
354 2003-03-30 Jackson Harper <jackson@latitudegeo.com>
355
356         * ILParser.jay: Add code from old parser to declare and define classes.
357                 
358 2003-03-30 Jackson Harper <jackson@latitudegeo.com>
359
360         * ILParser.jay: New grammar that I haven't made a mess of, this
361         takes all the special cases into account much better.
362                 
363 2003-03-19 Jackson Harper <jackson@latitudegeo.com>
364
365         * ILParser.jay: .hash algorithm can be followed by bytes
366
367 2003-03-19 Jackson Harper <jackson@latitudegeo.com>
368
369         * ILParser.jay: Allow assembly refs to have dots in name.
370
371 2003-03-17 Jackson Harper <jackson@latitudegeo.com>
372
373         * ILParser.jay: Add object to primative types
374
375 2003-03-17 Jackson Harper <jackson@latitudegeo.com>
376
377         * ILParser.jay: Set CallConv for opcodes that have a call conv, 
378         like call and newobj
379
380 2003-03-17 Jackson Harper <jackson@latitudegeo.com>
381
382         * ILParser.jay: Set CallConvs properly, use type_ref instead of type for
383         method overrides.
384
385 2003-03-16 Jackson Harper <jackson@latitudegeo.com>
386
387         * ILParser.jay: .ctor and .cctor can also be method names.
388
389 2003-03-16 Jackson Harper <jackson@latitudegeo.com>
390
391         * ILParser.jay: Use assembly_ref for extern assemblies so names with dashes can be used.
392
393 2003-03-15 Jackson Harper <jackson@latitudegeo.com>
394
395         * ILParser.jay: Define local variables
396
397 2003-03-15 Jackson Harper <jackson@latitudegeo.com>
398
399         * ILParser.jay: Add param_list definition, use param_list for method refs
400
401 2003-03-15 Jackson Harper <jackson@latitudegeo.com>
402
403         * ILParser.jay: de-bacwardificate values passed to add method, 
404         I was setting the return to the parent before, but the parent 
405         value was being set to the return type value so it all worked 
406         out but was very confusing.
407
408 2003-03-15 Jackson Harper <jackson@latitudegeo.com>
409
410         * ILParser.jay: Add external field references
411
412 2003-03-15 Jackson Harper <jackson@latitudegeo.com>
413
414         * ILParser.jay: Add fields to the field table, add field references,
415         emit instructions that take a field param
416
417 2003-03-15 Jackson Harper <jackson@latitudegeo.com>
418
419         * ILParser.jay: Emit ldstr instruction
420
421 2003-03-15 Jackson Harper <jackson@latitudegeo.com>
422
423         * ILParser.jay: Create external method references
424
425 2003-03-14 Jackson Harper <jackson@latitudegeo.com>
426
427         * ILParser.jay: Emit instructions that take a method def as a single param
428
429 2003-03-14 Jackson Harper <jackson@latitudegeo.com>
430
431         * ILParser.jay: Emit instructions that take a single type as a param
432
433 2003-03-14 Jackson Harper <jackson@latitudegeo.com>
434
435         * ILParser.jay: Emit instructions that take a single int32 as a param
436
437 2003-03-13 Jackson Harper <jackson@latitudegeo.com>
438
439         * ILParser.jay: Remove unused references
440
441 2003-03-13 Jackson Harper <jackson@latitudegeo.com>
442
443         * ILParser.jay: Emit simple instructions
444
445 2003-03-13 Jackson Harper <jackson@latitudegeo.com>
446
447         * ILParser.jay: Set MaxStack, clean up some typos
448
449 2003-03-13 Jackson Harper <jackson@latitudegeo.com>
450
451         * ILParser.jay: Set entrypoint 
452
453 2003-03-11 Jackson Harper <jackson@latitudegeo.com>
454
455         * ILParser.jay: Create TypeRefs instead of types, define methods.
456
457 2003-03-09 Jackson Harper <jackson@latitudegeo.com>
458
459         * ILParser.jay: Set Call Conventions and Implementation Flags
460
461 2003-03-09 Jackson Harper <jackson@latitudegeo.com>
462
463         * ILParser.jay: Add implemented interfaces
464
465 2003-03-08 Jackson Harper <jackson@latitudegeo.com>
466
467         * ILParser.jay: Create method attributes
468
469 2003-03-08 Jackson Harper <jackson@latitudegeo.com>
470
471         * ILParser.jay: Reference external assemblies.
472
473 2003-03-06 Jackson Harper <jackson@latitudegeo.com>
474
475         * ILParser.jay: Implemented class inheritence
476
477 2003-03-06 Jackson Harper <jackson@latitudegeo.com>
478
479         * ILParser.jay: Pass null Location when adding class, concat dottedName pieces
480
481 2003-03-06 Jackson Harper <jackson@latitudegeo.com>
482
483         * ILParser.jay: Reconfigure to work with new PEAPI emission system
484
485 2003-02-10 Jackson Harper <jackson@latitudegeo.com>
486
487         * ILParser.jay: Use arg_list for method signatures, set method parameters
488
489 2003-02-09 Jackson Harper <jackson@latitudegeo.com>
490
491         * ILParser.jay: full names can be short names too (for members)
492
493 2003-02-09 Jackson Harper <jackson@latitudegeo.com>
494
495         * ILParser.jay: Use full names for calling instructions
496
497 2003-02-08 Jackson Harper <jackson@latitudegeo.com>
498
499         * ILParser.jay: Create type names properly
500
501 2003-02-08 Jackson Harper <jackson@latitudegeo.com>
502
503         * ILParser.jay: Handle argument lists better
504
505 2003-02-08 Jackson Harper <jackson@latitudegeo.com>
506
507         * ILParser.jay: Handle .local and newobj
508
509 2003-02-06 Jackson Harper <jackson@latitudegeo.com>
510
511         * ILParser.jay: Allow assembly names to have lots of dashes.
512
513 2003-02-06 Jackson Harper <jackson@latitudegeo.com>
514
515         * ILParser.jay: Add dash token, allow assembly refs to have dashes in their names.
516
517 2003-02-02 Jackson Harper <jackson@latitudegeo.com>
518
519         * ILParser.jay: Add call instruction, other little fixes and additions