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