* CodeGen.cs: Add method to add data
[mono.git] / mcs / ilasm / codegen / ChangeLog
index 85dc58a7bb1ad2ed0646e45611b0869e6bcc9f86..6c36a9bdcbc2b4fefaa9e3af4a23d2103f38578e 100644 (file)
@@ -1,3 +1,218 @@
+2003-04-20 Jackson Harper <jackson@latitudegeo.com>
+
+       * CodeGen.cs: Add method to add data
+       * FieldDef.cs: Add method to set a fields value
+       * TypeDef.cs: Add method to add data
+       * DataDef.cs: New file - Definition of a data constant
+               
+2003-04-18 Jackson Harper <jackson@latitudegeo.com>
+
+       * FieldDef.cs: Change peapi fielddef name.
+       * MethodDef.cs: Change peapi methoddef name.
+               
+2003-04-17 Jackson Harper <jackson@latitudegeo.com>
+
+       * MethodDef.cs: New file - definition of a method.
+       * ParamDef.cs: New file - definition of a parameter to a method
+       * TypeDef.cs: Add method definitions, set intransit flag to false
+       before defining members, so a false circular reference is not
+       created.
+       * CodeGen.cs: Add methods to add method definitions
+
+2003-04-17 Jackson Harper <jackson@latitudegeo.com>
+
+       * ExternTypeRef.cs: external types are classrefs
+               
+2003-04-17 Jackson Harper <jackson@latitudegeo.com>
+
+       * PeapiTypeRef.cs: New file - base wrapper for type refs that are
+       just peapi types.
+       * PrimitiveTypeRef.cs: New file - A primitive type (char, int, string)
+               
+2003-04-17 Jackson Harper <jackson@latitudegeo.com>
+
+       * TypeRef.cs: Rewrite - Typerefs are now resolved after parsing.
+       * TypeManager.cs: Rewrite - Just a simple table for looking up
+       typedefs
+       * ExternTable.cs: Create ClassRef's instead of Classes
+       * Location.cs: Make compile
+       * CodeGen.cs: Use new tree system
+               
+2003-04-17 Jackson Harper <jackson@latitudegeo.com>
+
+       * ExternTypeRef.cs: New file - Represents a reference to a type in
+       an external assembly
+       * FieldDef.cs: New file - Represents a field definition
+       * IClassRef.cs: New file - Interface that classrefs must
+       implement. This needs some more thought though because once a
+       classref has been modified it is no longer a classref.
+       * ITypeRef.cs: New file - Interface that references to types must
+       implement
+       * TypeDef.cs: New file - Represents the a class definition, and
+       will hold all of the classes members.
+
+2003-04-07 Jackson Harper <jackson@latitudegeo.com>
+
+       * TypeRef.cs: Return FieldDef when adding a field def to a class
+               
+2003-04-01 Jackson Harper <jackson@latitudegeo.com>
+
+       * TypeRef.cs: Add flag for making types pinned
+       
+2003-04-01 Jackson Harper <jackson@latitudegeo.com>
+
+       * ClassTable.cs: Do not append a . to names that are not in a
+       namespace
+       * CodeGen.cs: Handle nested classes
+               
+2003-03-30 Jackson Harper <jackson@latitudegeo.com>
+
+       * ExternTable.cs: Remove some unsed fields.
+       
+2003-03-30 Jackson Harper <jackson@latitudegeo.com>
+
+       * ExternTable.cs: Add method to lookup classes with a full name,
+       instead of having to have namespace and name seperate.
+       * ClassTable.cs: Make method that seprates full names into
+       name/namespaces public.
+               
+2003-03-30 Jackson Harper <jackson@latitudegeo.com>
+
+       * InstrTable.cs: Add Calli, detabify
+               
+2003-03-29 Jackson Harper <jackson@latitudegeo.com>
+
+       * InstrTable.cs: Add branch ops switch, and lc.r*, also fix some
+       typos for other ops.
+
+2003-03-17 Jackson Harper <jackson@latitudegeo.com>
+
+       * ClassTable.cs: Set defined flag and type attributes for referenced 
+       classes when they are defined.
+
+2003-03-17 Jackson Harper <jackson@latitudegeo.com>
+
+       * MethodTable.cs: Add method to Check if all methods have been defined, set referenced methods properties
+       when defining them
+       * FieldTable.cs: Add method to check if all fields have been defined, set referenced fields properties
+       when defining them
+       * ClassTable.cs: Make sure all methods and fields are defined.
+
+2003-03-16 Jackson Harper <jackson@latitudegeo.com>
+
+       * MethodTable.cs: Fire events when methods are defined and referenced
+
+2003-03-15 Jackson Harper <jackson@latitudegeo.com>
+
+       * ClassTable.cs: Classes now store field tables
+       * CodeGen.cs: Add methods to add fields and get field references
+
+2003-03-15 Jackson Harper <jackson@latitudegeo.com>
+
+       * FieldTable.cs: New file, holds a classes fields
+
+2003-03-15 Jackson Harper <jackson@latitudegeo.com>
+
+       * InstrTable.cs: Add FieldOp instructions
+
+2003-03-15 Jackson Harper <jackson@latitudegeo.com>
+
+       * InstrTable.cs: Add ldstr instruction
+
+2003-03-15 Jackson Harper <jackson@latitudegeo.com>
+
+       * CodeGen.cs: Add method to get method references.
+       * MethodTable.cs: Complete GetReference method
+       * InstrTable.cs: Add MethodOps (instructions that take a method ref param)
+
+2003-03-14 Jackson Harper <jackson@latitudegeo.com>
+
+       * InstrTable.cs: Add TypeOps (instructions that take a type param)
+
+2003-03-14 Jackson Harper <jackson@latitudegeo.com>
+
+       * InstrTable.cs: Add IntOps (instructions that take an integer param)
+
+2003-03-13 Jackson Harper <jackson@latitudegeo.com>
+
+       * InstrTable.cs: Fix instructions that have dots in their name
+
+2003-03-13 Jackson Harper <jackson@latitudegeo.com>
+
+       * CodeGen.cs: Add code buffer for il instructions when a new method is added.
+       * InstrTable.cs: New file, this is a table of all the instructions (just simple 
+       instructions right now)
+
+2003-03-13 Jackson Harper <jackson@latitudegeo.com>
+
+       * CodeGen.cs: Set current method when a new method is added.
+
+2003-03-12 Jackson Harper <jackson@latitudegeo.com>
+
+       * ClassTable.cs: Add Method tables to Class tables, add method to get a 
+       class's method table.
+       * CodeGen.cs: Add Method to add methods :p
+       * MethodTable.cs: Add file, this class is used to add methods to a class.
+
+2003-03-11 Jackson Harper <jackson@latitudegeo.com>
+
+       * TypeRef.cs: New file, used for pairing types and their names.
+
+2003-03-09 Jackson Harper <jackson@latitudegeo.com>
+
+       * ExternTable.cs: Do not verify the existence of external types
+
+2003-03-08: Jackson Harper <jackson@latitudegeo.com>
+
+       * CodeGen.cs: Add ExternTable property
+       * ExternTable.cs: New file, this will is used for pulling 
+       types and methods from external assemblies.
+
+2003-03-06 Jackson Harper <jackson@latitudegeo.com>
+
+       * ClassTable.cs, CodeGen.cs: Add methods to allow types to inherit from another type.
+
+2003-03-06 Jackson Harper <jackson@latitudegeo.com>
+
+       * ClassTable.cs: Add method to check for undefined types
+
+2003-03-06 Jackson Harper <jackson@latitudegeo.com>
+
+       * CodeGen.cs: Use class table for adding type definitions
+       * ClassTable.cs: Return ClassDef when defining types
+       
+2003-03-06 Jackson Harper <jackson@latitudegeo.com>
+
+       * ClassTable.cs: Add method for adding class definitions to the 
+       the table.
+
+2003-03-6 Jackson Harper <jackson@latitudegeo.com>
+
+       * CodeGen.cs: Reconfigure to work with new PEAPI emission system
+
+2003-03-6 Jackson Harper <jackson@latitudegeo.com>
+
+       * ClassTable.cs: Add file, this is a 'table' for storing classes
+       * Location.cs: Add file, this will eventually be used for marking
+       locations in IL files
+
+2003-02-10 Jackson Harper <jackson@latitudegeo.com>
+
+       * Method.cs: Add method to set parameters, 
+              set parameters when defining type
+       * Class.cs: Fix very silly bug in GetMethod method
+       
+
+2003-02-09 Jackson Harper <jackson@latitudegeo.com>
+
+       * Class.cs: Resolve Methods before emiting
+       * InstrBase.cs: Take a Class instead of CodeGen when emiting
+       * Method.cs: Replace MethodInfo property with MethodBuilder property,
+               Add resolve method
+       * Instructions.cs: Take Class instead of CodeGen when emitting, 
+               get member methods from Class.
+       * TypeManager.cs: Add set indexer
+
 2003-02-09 Jackson Harper <jackson@latitudegeo.com>
 
        * Instructions.cs: Use TypeManager to lookup types