1 2005-04-08 Ankit Jain <radical@corewars.org>
3 * ILParser.jay (type): When parsing K_VALUETYPE, mark the typeref
5 (field_init): The float32 and float64 constructor argument is
6 the hex representation, not the integer equivalent value.
8 2005-03-17 Ankit Jain <radical@corewars.org>
10 * ILParser.jay(method_decl): Add default value for a method param.
12 2004-12-02 Miguel de Icaza <miguel@ximian.com>
14 * ILParser.jay(field_init): Explicit cast to the target type, this
15 is what ilasm does (0xFFFFFFFF) as an int gets translated
17 Added D_STACKRESERVE token.
19 (prop_head, event_head): Allow it to take a compound name (for explicit
20 interface implementations of properties).
22 2004-07-21 Jackson Harper <jackson@ximian.com>
24 * ILParser.jay: Clones ExternTypeRefInsts as well as
25 ExternTypeRefs, wrap this check into a method so things are
28 2004-07-08 Jackson Harper <jackson@ximian.com>
30 * ILParser.jay: Add custom attributes to assemblyrefs.
32 2004-06-26 Jackson Harper <jackson@ximian.com>
34 * ILParser.jay: vtable fixups use the int32 or int64 keyword, not
35 actual int values. When adding modules for pinvoke info use the
36 ExternTable so we dont get duplicate modules.
38 2004-06-19 Jackson Harper <jackson@ximian.com>
40 * ILParser.jay: Resolve method pointers that are being treated as
43 2004-06-19 Jackson Harper <jackson@ximian.com>
45 * ILParser.jay: Resolve other modules global 'type'.
47 2004-06-14 Jackson Harper <jackson@ximian.com>
49 * ILParser.jay: Add file refs.
51 2004-06-14 Jackson Harper <jackson@ximian.com>
53 * ILParser.jay: Add module refs, allow them to be referenced.
55 2004-06-14 Jackson Harper <jackson@ximian.com>
57 * ILParser.jay: Set module names.
59 2004-05-25 Jackson Harper <jackson@ximian.com>
61 * ILParser.jay: Fix casting for data type constants.
63 2004-05-22 Jackson Harper <jackson@ximian.com>
65 * ILParser.jay: [,] is short form for [...,...] this fixes bug
68 2004-05-22 Jackson Harper <jackson@ximian.com>
70 * ILParser.jay: Handle wchar, it is just an alias for char. This
73 2004-05-05 Jackson Harper <jackson@ximian.com>
75 * ILParser.jay: Handle endian issues when converting numeric
78 2004-04-14 Jackson Harper <jackson@ximian.com>
80 * ILParser.jay: Correct args for version numbers.
82 2004-04-03 Jackson Harper <jackson@ximian.com>
84 * ILParser.jay: Dont use hash alg enum its too restrictive
86 2004-04-02 Jackson Harper <jackson@ximian.com>
88 * ILParser.jay: Set assembly info.
90 2004-04-01 Jackson Harper <jackson@ximian.com>
92 * ILParser.jay: Set a flag in the tokenizer when parsing byte
93 arrays. Otherwise we can't tell WTF they are. Set assemblyref
96 2004-03-28 Jackson Harper <jackson@ximian.com>
98 * ILParser.jay: Fix typo.
100 2004-03-28 Jackson Harper <jackson@ximian.com>
102 * ILParser.jay: Set true and false literals properly. Add instance
105 2004-02-18 Jackson Harper <jackson@ximian.com>
107 * ILParser.jay: Create ExternTypeRefInsts when a valuetype
108 extern_class is encountered. This way the underlying type is not
109 changed to a value type.
112 2003-12-10 Jackson Harper <jackson@ximian.com>
114 * ILParser.jay: When modifying extern types, clone them and modify
117 2003-12-10 Jackson Harper <jackson@ximian.com>
119 * ILParser.jay: Use the extern table for all extern type
122 2003-12-10 Jackson Harper <jackson@ximian.com>
124 * ILParser.jay: Add COMP_NAME token.
126 2003-12-10 Jackson Harper <jackson@ximian.com>
128 * ILParser.jay: vtable fixups can be int32s
130 2003-11-18 Jackson Harper <jackson@ximian.com>
132 * ILParser.jay: Add zeroinit.
134 2003-11-17 Jackson Harper <jackson@ximian.com>
136 * ILParser.jay: Create strings from byte arrays. Fix parsing of
137 bytes that are passed as INT64.
139 2003-11-16 Jackson Harper <jackson@ximian.com>
141 * ILParser.jay: Handle string instructions that are given byte
142 arrays. This fixes bug #51039.
144 2003-10-28 Jackson Harper <jackson@ximian.com>
146 * ILParser.jay: Use the ExternTable to create external type
147 references. Remove some ultra top secret debugging code.
149 2003-10-17 Jackson Harper <jackson@ximian.com>
151 * ILParser.jay: Set value types, set enums as value types. Use
152 correct var for call conv in method signatures.
154 2003-10-10 Jackson Harper <jackson@ximian.com>
156 * ILParser.jay: Create generic method refs.
158 2003-10-08 Jackson Harper <jackson@ximian.com>
160 * ILParser.jay: Attach generic type parameters to methods.
162 2003-09-27 Jackson Harper <jackson@latitudegeo.com>
164 * ILParser.jay: Set pinvoke info. Allow param attributes in type
167 2003-09-21 Jackson Harper <jackson@latitudegeo.com>
169 * ILParser.jay: Define data
171 2003-09-15 Jackson Harper <jackson@latitudegeo.com>
173 * ILParser.jay: dashed names aren't legal for file names, if the
174 name has a dash in it it needs to be quoted ie 'gtk-sharp'.
176 2003-09-12 Jackson Harper <jackson@latitudegeo.com>
178 * ILParser.jay: Fix typo in field inits. Methods attached to
179 modified types should be type spec method refs.
181 2003-08-19 Jackson Harper <jackson@latitudegeo.com>
183 * ILParser.jay: Implement address constants and string
184 constants. Add data definitions to their types, and create data
185 item lists. Also implement long form overrides.
187 2003-08-19 Jackson Harper <jackson@latitudegeo.com>
189 * ILParser.jay: Add override methods.
191 2003-08-10 Jackson Harper <jackson@latitudegeo.com>
193 * ILParser.jay: Create an empty array list for empty type
194 lists. Start phasing out INT32 because the tokenizer will no
195 longer create this token.
197 2003-08-03 Jackson Harper <jackson@latitudegeo.com>
199 * ILParser.jay: Use new sentinel type. Create valuetypes.
201 2003-08-03 Jackson Harper <jackson@latitudegeo.com>
203 * ILParser.jay: Make value types and enum types.
205 2003-08-03 Jackson Harper <jackson@latitudegeo.com>
207 * ILParser.jay: Create label references where appropriate instead
210 2003-08-02 Jackson Harper <jackson@latitudegeo.com>
212 * ILParser.jay: Set from label, not to label for filter block handlers
214 2003-07-30 Jackson Harper <jackson@latitudegeo.com>
216 * ILParser.jay: Create branch instructions with explicit offsets
218 2003-07-29 Jackson Harper <jackson@latitudegeo.com>
220 * ILParser.jay: Use new labeling system for handler blocks.
222 2003-07-29 Jackson Harper <jackson@latitudegeo.com>
224 * ILParser.jay: No longer need to supply method references
225 to instructions, they get that when emitting now.
227 2003-07-28 Jackson Harper <jackson@latitudegeo.com>
229 * ILParser.jay: Use TypeRef.Ellipsis instead of null for a
230 placeholder in bound arrays. Do not use AsClassRef anymore.
232 2003-07-21 Jackson Harper <jackson@latitudegeo.com>
234 * ILParser.jay: Set maxstack
236 2003-07-20 Jackson Harper <jackson@latitudegeo.com>
238 * ILParser.jay: Do not use the AsClassRef method anymore to attach
239 methods and fields to types. All types can do this now. Create
240 generic type refs and generic type instances.
242 2003-07-17 Jackson Harper <jackson@latitudegeo.com>
244 * ILParser.jay: Add generic type refs, and fake generic class refs.
246 2003-07-15 Jackson Harper <jackson@latitudegeo.com>
248 * ILParser.jay: Add generic type constraints and tokens used to
251 2003-07-16 Peter Williams <peter@newton.cx>
253 * .cvsignore: ILParser.cs has been moved.
255 2003-07-14 Jackson Harper <jackson@latitudegeo.com>
257 * ILParser.jay: Seperate generic constraints from generic parameters.
259 2003-06-14 Jackson Harper <jackson@latitudegeo.com>
261 * ILParser.jay: Add set imagebase, subsystem, and corflags.
263 2003-06-14 Jackson Harper <jackson@latitidegeo.com>
265 * ILParser.jay: Implement custom modified types.
267 2003-06-08 Jackson Harper <jackson@latitudegeo.com>
269 * ILParser.jay: Implement properties
271 2003-06-08 Jackson Harper <jackson@latitudegeo.com>
273 * ILParser.jay: Add generic type parameters to types. Implement events.
275 2003-06-04 Jackson Harper <jackson@latitudegeo.com>
277 * ILParser.jay: Assembly and module names may have dashes in them
278 (like gtk-sharp.dll).
280 2003-05-31 Jackson Harper <jackson@latitudegeo.com>
282 * ILParser.jay: Set assembly names. When looking up types in the
283 form [assembly]name first check if the assembly is this
284 assembly. Implement scope_blocks, and implement scope block form
287 2003-05-31 Jackson Harper <jackson@latitudegeo.com>
289 * ILParser.jay: Use type instead of params for calli signatures.
291 2003-05-31 Jackson Harper <jackson@latitudegeo.com>
293 * ILParser.jay: When looking up types first check to see if this
294 is actually a primitive object type (System.String,
295 System.Object). Add custom attributes to types. Handle the il
296 keyword the exact same way as cil. Add ellipsises to param and sig
297 lists. Add an optional name to typelists, this is just parsed it
298 is not implemented properly. Add custom attributes to
299 methods. Implement custom types (just methodrefs to ctors).
301 2003-05-25 Jackson Harper <jackson@latitudegeo.com>
303 * ILParser.jay: Pass call conv to methoref constructors. Add the
304 ELLIPSIS to type_lists, this is for vararg methods
306 2003-05-23 Jackson Harper <jackson@latitudegeo.com>
308 * ILParser.jay: Remove top secret debugging code.
310 2003-05-23 Jackson Harper <jackson@latitudegeo.com>
312 * ILParser.jay: Implement label form structured exception handling.
314 2003-05-22 Jackson Harper <jackson@latitudegeo.com>
316 * ILParser.jay: Comment out K_IMF and K_NAN these are not used in
319 2003-05-21 Jackson Harper <jackson@latitudegeo.com>
321 * ILParser.jay: Add ldc.r4 to INSTR_R int also fix cast to double.
323 2003-05-21 Jackson Harper <jackson@latitudegeo.com>
325 * ILParser.jay: When converting from int32 to int64 do an exact
326 bit conversion, not a numerical conversion.
328 2003-05-21 Jackson Harper <jackson@latitudegeo.com>
330 * ILParser.jay: INT_I8s are not int instructions, currently the
331 only INT_I8 instruction is ldc.i8 so this new code does more
332 checks then needed but is written in anticipation of some new long
333 instructions being found. Implement signature instructions, token
334 instructions, and signatures. Convert INT32s masquerading as
337 2003-05-19 Jackson Harper <jackson@latitudegeo.com>
339 * ILParser.jay: Same as below but with float64 ()
341 2003-05-19 Jackson Harper <jackson@latitudegeo.com>
343 * ILParser.jay: When the float32 (0xFFFFFF) syntax is used the hex
344 value represents the exact byte value of a float NOT an integer
345 value that is converted to a float.
347 2003-05-18 Jackson Harper <jackson@latitudegeo.com>
349 * ILParser.jay: Use new methods for converting types to
350 classrefs. Expand grammar for locals.
353 2003-05-18 Jackson Harper <jackson@latitudegeo.com>
355 * ILParser.jay: Convert cast integers to floats.
357 2003-05-11 Jackson Harper <jackson@latitudegeo.com>
359 * ILParser.jay: Add tokens for instructions that take param and
360 local args. Do not create empty lists for sig_args and
361 type_lists. Add param and local instructions.
363 2003-05-11 Jackson Harper <jackson@latitudegeo.com>
365 * ILParser.jay: Set size and packing information for types
367 2003-05-10 Jackson Harper <jackson@latitudegeo.com>
369 * ILParser.jay: Add field instructions
371 2003-05-10 Jackson Harper <jackson@latitudegeo.com>
373 * ILParser.jay: Add global method references
375 2003-05-10 Jackson Harper <jackson@latitudegeo.com>
377 * ILParser.jay: Add locals, method references, and method instructions
379 2003-05-07 Jackson Harper <jackson@latitudegeo.com>
381 * ILParser.jay: Add type instructions. NOTE - type_spec is not
382 fully implemented yet, so this has some explosive potential.
384 2003-05-07 Jackson Harper <jackson@latitudegeo.com>
386 * ILParser.jay: Remove dotted_name, it is not used at all
387 anymore. vtattr only take an int64 param, this fix gets rid of all
388 of the remaining reduce/reduce conflicts
390 2003-05-07 Jackson Harper <jackson@latitudegeo.com>
392 * ILParser.jay: Remove extraneous dotted_name, also make comp_name
393 contain dotted_name logic. Oh how I will miss the 301
394 reduce/reduce conflicts these small changes fixed :-)
396 2003-05-06 Jackson Harper <jackson@latitudegeo.com>
398 * ILParser.jay: Emit INSTR_I8 instructions as int
399 instructions. Implement label lists, emit switch instruction.
401 2003-05-05 Jackson Harper <jackson@latitudegeo.com>
403 * ILParser.jay: Add labels to methods, add branching instructions.
405 2003-05-04 Jackson Harper <jackson@latitudegeo.com>
407 * ILParser.jay: Use new MiscInstr.ldstr for ldstr, add INSTR_Rs
409 2003-05-04 Jackson Harper <jackson@latitudegeo.com>
411 * ILParser.jay: Set int64's masquerading as int32 to upper and
412 lower bounds if neccasary. NEED TO TEST this behavoir on windows.
414 2003-05-01 Jackson Harper <jackson@latitudegeo.com>
416 * ILParser.jay: Fix a bunch of conversions, implement hexbytes
418 2003-04-30 Jackson Harper <jackson@latitudegeo.com>
420 * ILParser.jay: Implement non marshalled methodheads, method
421 attributes, impl attributes, imit simple int and ldstr instructions.
423 2003-04-17 Jackson Harper <jackson@latitudegeo.com>
425 * ILParser.jay: Define data, fix repeat_opt allways being set.
427 2003-04-17 Jackson Harper <jackson@latitudegeo.com>
429 * ILParser.jay: Add external types to the extern type table.
431 2003-04-17 Jackson Harper <jackson@latitudegeo.com>
433 * ILParser.jay: Use new types and methods to build a tree.
435 2003-04-07 Jackson Harper <jackson@latitudegeo.com>
437 * ILParser.jay: Implement data items
439 2003-04-07 Jackson Harper <jackson@latitudegeo.com>
441 * ILParser.jay: Implement most field features
443 2003-04-05 Jackson Harper <jackson@latitudegeo.com>
445 * ILParser.jay: Set type parameter index
447 2003-04-05 Jackson Harper <jackson@latitudegeo.com>
449 * ILParser.jay: Emit parameterized types
451 2003-04-04 Jackson Harper <jackson@latitudegeo.com>
453 * ILParser.jay: Add parameterized method declarations.
455 2003-04-03 Jackson Harper <jackson@latitudegeo.com>
457 * ILParser.jay: Add parameterized types to classes.
459 2003-04-02 Jackson Harper <jackson@latitudegeo.com>
461 * ILParser.jay: Support most non-obsolete native types.
463 2003-04-02 Jackson Harper <jackson@latitudegeo.com>
465 * ILParser.jay: Proper names for native int and native uint
467 2003-04-01 Jackson Harper <jackson@latitudegeo.com>
469 * ILParser.jay: Add Call conventions, fix primitive spelling.
471 2003-04-01 Jackson Harper <jackson@latitudegeo.com>
473 * ILParser.jay: Add TypedRef primative type.
475 2003-04-01 Jackson Harper <jackson@latitudegeo.com>
477 * ILParser.jay: Support pinned, modreq, and modopt types.
479 2003-04-01 Jackson Harper <jackson@latitudegeo.com>
481 * ILParser.jay: Use the CodeGen CompleteClass method when a class
482 is completed instead of setting the current class to null. This
483 does some extra cleanup
485 2003-03-31 Jackson Harper <jackson@latitudegeo.com>
487 * ILParser.jay: Add bound arrays
489 2003-03-30 Jackson Harper <jackson@latitudegeo.com>
491 * ILParser.jay: Concat slashed names properly
493 2003-03-30 Jackson Harper <jackson@latitudegeo.com>
495 * ILParser.jay: Implement most of type
497 2003-03-30 Jackson Harper <jackson@latitudegeo.com>
499 * ILParser.jay: Add code from old parser to declare and define classes.
501 2003-03-30 Jackson Harper <jackson@latitudegeo.com>
503 * ILParser.jay: New grammar that I haven't made a mess of, this
504 takes all the special cases into account much better.
506 2003-03-19 Jackson Harper <jackson@latitudegeo.com>
508 * ILParser.jay: .hash algorithm can be followed by bytes
510 2003-03-19 Jackson Harper <jackson@latitudegeo.com>
512 * ILParser.jay: Allow assembly refs to have dots in name.
514 2003-03-17 Jackson Harper <jackson@latitudegeo.com>
516 * ILParser.jay: Add object to primative types
518 2003-03-17 Jackson Harper <jackson@latitudegeo.com>
520 * ILParser.jay: Set CallConv for opcodes that have a call conv,
523 2003-03-17 Jackson Harper <jackson@latitudegeo.com>
525 * ILParser.jay: Set CallConvs properly, use type_ref instead of type for
528 2003-03-16 Jackson Harper <jackson@latitudegeo.com>
530 * ILParser.jay: .ctor and .cctor can also be method names.
532 2003-03-16 Jackson Harper <jackson@latitudegeo.com>
534 * ILParser.jay: Use assembly_ref for extern assemblies so names with dashes can be used.
536 2003-03-15 Jackson Harper <jackson@latitudegeo.com>
538 * ILParser.jay: Define local variables
540 2003-03-15 Jackson Harper <jackson@latitudegeo.com>
542 * ILParser.jay: Add param_list definition, use param_list for method refs
544 2003-03-15 Jackson Harper <jackson@latitudegeo.com>
546 * ILParser.jay: de-bacwardificate values passed to add method,
547 I was setting the return to the parent before, but the parent
548 value was being set to the return type value so it all worked
549 out but was very confusing.
551 2003-03-15 Jackson Harper <jackson@latitudegeo.com>
553 * ILParser.jay: Add external field references
555 2003-03-15 Jackson Harper <jackson@latitudegeo.com>
557 * ILParser.jay: Add fields to the field table, add field references,
558 emit instructions that take a field param
560 2003-03-15 Jackson Harper <jackson@latitudegeo.com>
562 * ILParser.jay: Emit ldstr instruction
564 2003-03-15 Jackson Harper <jackson@latitudegeo.com>
566 * ILParser.jay: Create external method references
568 2003-03-14 Jackson Harper <jackson@latitudegeo.com>
570 * ILParser.jay: Emit instructions that take a method def as a single param
572 2003-03-14 Jackson Harper <jackson@latitudegeo.com>
574 * ILParser.jay: Emit instructions that take a single type as a param
576 2003-03-14 Jackson Harper <jackson@latitudegeo.com>
578 * ILParser.jay: Emit instructions that take a single int32 as a param
580 2003-03-13 Jackson Harper <jackson@latitudegeo.com>
582 * ILParser.jay: Remove unused references
584 2003-03-13 Jackson Harper <jackson@latitudegeo.com>
586 * ILParser.jay: Emit simple instructions
588 2003-03-13 Jackson Harper <jackson@latitudegeo.com>
590 * ILParser.jay: Set MaxStack, clean up some typos
592 2003-03-13 Jackson Harper <jackson@latitudegeo.com>
594 * ILParser.jay: Set entrypoint
596 2003-03-11 Jackson Harper <jackson@latitudegeo.com>
598 * ILParser.jay: Create TypeRefs instead of types, define methods.
600 2003-03-09 Jackson Harper <jackson@latitudegeo.com>
602 * ILParser.jay: Set Call Conventions and Implementation Flags
604 2003-03-09 Jackson Harper <jackson@latitudegeo.com>
606 * ILParser.jay: Add implemented interfaces
608 2003-03-08 Jackson Harper <jackson@latitudegeo.com>
610 * ILParser.jay: Create method attributes
612 2003-03-08 Jackson Harper <jackson@latitudegeo.com>
614 * ILParser.jay: Reference external assemblies.
616 2003-03-06 Jackson Harper <jackson@latitudegeo.com>
618 * ILParser.jay: Implemented class inheritence
620 2003-03-06 Jackson Harper <jackson@latitudegeo.com>
622 * ILParser.jay: Pass null Location when adding class, concat dottedName pieces
624 2003-03-06 Jackson Harper <jackson@latitudegeo.com>
626 * ILParser.jay: Reconfigure to work with new PEAPI emission system
628 2003-02-10 Jackson Harper <jackson@latitudegeo.com>
630 * ILParser.jay: Use arg_list for method signatures, set method parameters
632 2003-02-09 Jackson Harper <jackson@latitudegeo.com>
634 * ILParser.jay: full names can be short names too (for members)
636 2003-02-09 Jackson Harper <jackson@latitudegeo.com>
638 * ILParser.jay: Use full names for calling instructions
640 2003-02-08 Jackson Harper <jackson@latitudegeo.com>
642 * ILParser.jay: Create type names properly
644 2003-02-08 Jackson Harper <jackson@latitudegeo.com>
646 * ILParser.jay: Handle argument lists better
648 2003-02-08 Jackson Harper <jackson@latitudegeo.com>
650 * ILParser.jay: Handle .local and newobj
652 2003-02-06 Jackson Harper <jackson@latitudegeo.com>
654 * ILParser.jay: Allow assembly names to have lots of dashes.
656 2003-02-06 Jackson Harper <jackson@latitudegeo.com>
658 * ILParser.jay: Add dash token, allow assembly refs to have dashes in their names.
660 2003-02-02 Jackson Harper <jackson@latitudegeo.com>
662 * ILParser.jay: Add call instruction, other little fixes and additions