722 lines
26 KiB
Plaintext
722 lines
26 KiB
Plaintext
2009-03-31 Rodrigo Kumpera <rkumpera@novell.com>
|
|
|
|
* Code.cs (CILLabel): Add new constructor to signal that
|
|
a label is an absolute il offset. This is required by exception
|
|
handling declarations that use offsets and not labels.
|
|
|
|
2008-06-02 Ankit Jain <jankit@novell.com>
|
|
|
|
Fix bug #367114.
|
|
* Code.cs (TryBlock.ResolveCatchBlocks): New.
|
|
(CILInstructions.AddTryBlock): Resolve the catch blocks with the new
|
|
method.
|
|
(Catch..ctor): Add new .ctor to allow exceptions of any type.
|
|
(Catch.ResolveType): New. Add the exception type to the metadata.
|
|
|
|
2008-04-07 Rodrigo Kumpera <rkumpera@novell.com>
|
|
|
|
* Code.cs: Removed Local::TypeSig() as it is not needed
|
|
for the previous patch.
|
|
|
|
2008-04-07 Erven Rohou <erven.rohou@st.com>
|
|
|
|
* Code.cs: Add new method: GetLocalVars() for ilasm support for
|
|
emitting local variable names.
|
|
|
|
2007-11-05 Jackson Harper <jackson@ximian.com>
|
|
|
|
* LICENSE: Add long lost file.
|
|
|
|
2006-11-09 Ankit Jain <jankit@novell.com>
|
|
|
|
* Metadata.cs (AssemAttr.Retargetable): New.
|
|
(AssemblyRef.AddAssemblyAttr): New.
|
|
|
|
2006-07-20 Ankit Jain <jankit@novell.com>
|
|
|
|
* Metadata.cs (CustomAttribute.BuildTables): Value can be null.
|
|
|
|
2006-06-07 Ankit Jain <jankit@novell.com>
|
|
|
|
* PEAPI.cs (PEFile.GetNextSectStart): Handle the case when (tide %
|
|
SectionAlignment) == 0 . Patch by Carlo Kok. Fixes bug #78182.
|
|
|
|
2006-06-01 Ankit Jain <jankit@novell.com>
|
|
|
|
* PEAPI.cs (PEFile.AddMethod): Add overload for return type as Param
|
|
instead of PEAPI.Type .
|
|
* Metadata.cs (MetaDataElement.HasCustomAttr): New. Temporary hack.
|
|
(Param.HasMarshalInfo): New.
|
|
(ClassDef.AddMethod): Add overload for return type as Param.
|
|
(MethodDef.ctor): Change internal .ctor's sig to take Param instead of
|
|
PEAPI.Type for return type.
|
|
(MethodDef.retType): Remove.
|
|
(MethodDef.TypeSig): Update to use ret_param always.
|
|
(MethodDef.BuildTables): Add ret_param to Param table only if it has
|
|
marshal info or custom attributes.
|
|
|
|
2006-05-26 Ankit Jain <jankit@novell.com>
|
|
|
|
* Metadata.cs (DeclSecurity): Rename to ..
|
|
(BaseDeclSecurity): .. this.
|
|
(DeclSecurity): New. Derive from BaseDeclSecurity.
|
|
(DeclSecurity_20): Likewise. For 2.0 style declaritive security.
|
|
(PermissionSet): New.
|
|
(Permission): New.
|
|
(PermissionMember): New.
|
|
(MetaData.AddDeclSecurity): Update to use BaseDeclSecurity.
|
|
(MetaData.BuildMetaData): Likewise.
|
|
|
|
* PEAPI.cs (PEFile.AddDeclSecurity): New overload for new PermissionSet
|
|
class.
|
|
|
|
2006-05-10 Ankit Jain <jankit@novell.com>
|
|
|
|
* Metadata.cs (NativeType): Add LPStruct and Error.
|
|
|
|
2006-04-24 Ankit Jain <jankit@novell.com>
|
|
|
|
* PEAPI.cs (PEFile.WritePEFile): ReserveStrongNameSignatureSpace only if
|
|
we have assembly manifest.
|
|
|
|
2006-02-22 Ankit Jain <jankit@novell.com>
|
|
|
|
* Metadata.cs (TypeAttr): Add [Flags] attribute.
|
|
|
|
2006-02-20 Ankit Jain <jankit@novell.com>
|
|
|
|
* PEAPI.cs (PEFileException): Update error message.
|
|
* Metadata.cs: Update to throw PEFileException instead of Exception.
|
|
|
|
2006-02-19 Ankit Jain <jankit@novell.com>
|
|
|
|
* Metadata.cs (Module): Implment IExternRef to allow reference to types
|
|
in 'this' module.
|
|
|
|
2006-02-15 Raja R Harinath <rharinath@novell.com>
|
|
|
|
* Metadata.cs (BoundArray.CompressSignedNum): Document the
|
|
transformation. Avoid a few casts.
|
|
|
|
2006-02-15 Ankit Jain <jankit@novell.com>
|
|
|
|
* Metadata.cs (BoundArray.CompressSignedNum): New. Encode signed values,
|
|
used only for encoding lower bounds of arrays.
|
|
(BoundArray.TypeSig): Use new CompressSignedNum to encode lower bounds.
|
|
|
|
2006-02-08 Ankit Jain <jankit@novell.com>
|
|
|
|
* Metadata.cs (BoundArray.ctor): Change param 'upBounds' to sizes.
|
|
(MetaData.CompressNum): Fix range check.
|
|
|
|
2006-01-31 Ankit Jain <jankit@novell.com>
|
|
|
|
* Metadata.cs (Op.readonly_): New.
|
|
|
|
2006-01-19 Ankit Jain <jankit@novell.com>
|
|
|
|
* Metadata.cs (GenericParameter.GetCodedIx): Override. Return coded index
|
|
for HasCustomAttr.
|
|
(MetaData.BuildMetaData): Sort CustomAttribute table at the end.
|
|
|
|
2006-01-16 Ankit Jain <jankit@novell.com>
|
|
|
|
* Metadata.cs (PInvokeAttr): Add 'bestfit_on', 'bestfit_off', 'bestfit_mask',
|
|
'charmaperror_on' & 'charmaperror_off'.
|
|
|
|
2006-01-13 Ankit Jain <jankit@novell.com>
|
|
|
|
* Metadata.cs (GenericMethodSig): Ensure sig is added to the blob only once.
|
|
|
|
2006-01-10 Ankit Jain <jankit@novell.com>
|
|
|
|
* Metadata.cs (GenParam): Don't use GetTypeSpec to create typespec for GenParam.
|
|
Adding required methods directly to GenParam.
|
|
* PEAPI.cs (PEFile.AddGenericParam): Add it to the TypeSpec table directly.
|
|
|
|
2006-01-09 Ankit Jain <jankit@novell.com>
|
|
|
|
* PEAPI.cs (PEFile.AddGenricParam): New. Adds a GenParam to the TypeSpec
|
|
table.
|
|
* Metadata.cs (GenParam): Inherit from 'Class' instead of 'Type'.
|
|
(GenParam.name): Rename to param_name as it hides Class.name .
|
|
(GenParam.GetTypeSpec): Override to create TypeSpec for genparam.
|
|
|
|
2006-01-08 Ankit Jain <jankit@novell.com>
|
|
|
|
* Metadata.cs (TypeOp): Add 'constrained' op.
|
|
|
|
2006-01-07 Ankit Jain <jankit@novell.com>
|
|
|
|
* Metadata.cs (GenericParamAttributes): New.
|
|
(MetaDataElement.Row): Always set value.
|
|
(GenericParameter): Update to use GenericParameterAttributes.
|
|
(GenericParameterConstraint.SortKey): New. override to support sorting.
|
|
(ClassDef.AddGenericParameter):
|
|
(MethodDef.AddGenericParameter): New overloads for accepting attributes also.
|
|
|
|
2006-01-06 Ankit Jain <jankit@novell.com>
|
|
|
|
* Metadata.cs (UIntConst): Change constructor param from signed int/sbyte/etc to
|
|
unsigned.
|
|
(UIntConst.GetBlobIndex):
|
|
(UIntConst.Write): Change use of signed types to unsigned ones.
|
|
|
|
2006-01-06 Ankit Jain <jankit@novell.com>
|
|
|
|
* PEAPI.cs (PEFile.AddGenericClass): New. Adds a GenericTypeInst to the TypeSpec table.
|
|
* Metadata.cs (GenericTypeInst): Change base class from 'Type' to 'Class'.
|
|
(GenericTypeInst.GetTypeSpec):
|
|
(GenericTypeInst.BuildTables):
|
|
(GenericTypeInst.Size):
|
|
(GenericTypeInst.Write):
|
|
(GenericTypeInst.GetCodedIx): Implement these for GenericTypeInst.
|
|
(ClassDef.SetSuper): Set typeIndexChecked to false if 'super' is not GenericTypeInst.
|
|
Fixup of typeIndex is not required for GenericTypeInst .
|
|
(ClassDef.CheckTypeIndex): Recursively fix typeIndex if superType is ClassDef.
|
|
(MetaData.BuildMetaData): BuildTable for TypeSpec.
|
|
|
|
2005-12-24 Jb Evain <jbevain@gmail.com>
|
|
|
|
* Metadata.cs (Property): Add a new 'instance' field.
|
|
(Property.SetInstance): New mutator for the instance field.
|
|
(Property.BuildTables): Emit the correct property tag depending on the instance field.
|
|
|
|
2005-12-14 Ankit Jain <jankit@novell.com>
|
|
|
|
* Metadata.cs (BoundArray.ctor): Don't calculate sizes if upBounds is
|
|
null.
|
|
|
|
2005-12-12 Ankit Jain <jankit@novell.com>
|
|
|
|
* Metadata.cs (TypeAttr): Add VisibilityMask.
|
|
|
|
2005-12-09 Ankit Jain <jankit@novell.com>
|
|
|
|
* Metadata.cs (Method.ctor): Remove rType parameter.
|
|
(Method.GetRetType): Remove.
|
|
(Method.AddCallConv): Make it abstract.
|
|
(Method.GetSigIx): Likewise.
|
|
(MethodDef): Override and implement abstract methods from Method class.
|
|
(MethodRef): Likewise.
|
|
(MethodSpec): Change base class from MetaDataElement to Method. Override
|
|
abstract methods from Method but throw Exception as they are not meant to be used here.
|
|
(MethodDef.TypeSig): Write gen_param_count before num of params.
|
|
(ClassRef.AddMethod): New overload with an extra gen_param_count param.
|
|
* PEAPI.cs (PEFile.AddMethodToTypeSpec): New overload with an extra gen_param_count
|
|
param.
|
|
(PEFile.AddMethodSpec): Change return type from void to Method.
|
|
|
|
2005-12-05 Ankit Jain <jankit@novell.com>
|
|
|
|
* Metadata.cs (GenParamType): New enum.
|
|
(CallConv): Add [Flags] attribute.
|
|
(GenParam): New. Replaces ..
|
|
(MVar): .. this ..
|
|
(GenericTypeSpec): .. and this.
|
|
(GenericTypeInst.ctor): Use PrimitiveType.GenericInst.GetTypeIndex () instead
|
|
of hard-coded 0x15.
|
|
(GenericTypeInst.TypeSig): First byte should the 0x0A (GENERIC_INST).
|
|
(Method.gen_param_count): New. Num of generic parameters.
|
|
(MethodDef.ctor): Use overload.
|
|
(MethodDef.TypeSig): Write gen_param_count if callConv is Generic.
|
|
(MethodRef.GenParamCount): New.
|
|
(MethodRef.TypeSig): Write gen_param_count if callConv is Generic.
|
|
(PrimitiveType.Var): New.
|
|
(PrimitiveType.MVar): New.
|
|
(PrimitiveType.GenericInst): New.
|
|
|
|
2005-11-21 Ankit Jain <jankit@novell.com>
|
|
|
|
* Metadata.cs (MetaData.WriteCodedIndex): Fix indentation.
|
|
|
|
2005-11-21 Ankit Jain <jankit@novell.com>
|
|
|
|
* Metadata.cs (GenericParameter.SortKey2): New. Use index as the secondary key.
|
|
(GenericParameter.Size): Set size correctly.
|
|
(GenericParameter.Write): Use StringsIndex to write the index.
|
|
(MetaData.WriteTildeStream): Emit 2,0 as version for NET_2_0 profile.
|
|
(MetaData.version): Use 'v2.0.50727' for NET_2_0 profile.
|
|
(MetaData.BuildMetaData): Build and sort GenericParam, MethodSpec and
|
|
GenericParamConstraint tables only for NET_2_0 profile.
|
|
|
|
2005-09-16 Ankit Jain <jankit@novell.com>
|
|
|
|
* PEAPI.cs: Clean up indentation. Split into ...
|
|
Metadata.cs, Code.cs, PEAPI.cs: ... these.
|
|
|
|
2005-09-08 Ankit Jain <jankit@novell.com>
|
|
|
|
* PEAPI.cs (FileImage.stackReserve): New. Set to default value of 0x100000 (1Mb).
|
|
(FileImage.WritePEHeader): Write stackReserve instead of the default value.
|
|
(PEFile.SetStackReserve): Set stack reserve for fileImage.
|
|
|
|
2005-09-06 Ankit Jain <jankit@novell.com>
|
|
|
|
* PEAPI.cs (MetaData.WriteTildeStream): Change minor version back to 0.
|
|
|
|
2005-08-30 Ankit Jain <jankit@novell.com>
|
|
|
|
* PEAPI.cs (MetaData.WriteTildeStream): Change minor version to 1.
|
|
|
|
2005-08-29 Ankit Jain <jankit@novell.com>
|
|
|
|
* PEAPI.cs (CustomMarshaller.ctor): New.
|
|
(CustomMarshaller.ToBlob): Emit marshallerName and cookie strings with
|
|
their lengths.
|
|
|
|
2005-08-26 Ankit Jain <jankit@novell.com>
|
|
|
|
* PEAPI.cs (PEFile.ctor): Restore old constructor overload to avoid
|
|
changing public API.
|
|
|
|
2005-08-26 Ankit Jain <jankit@novell.com>
|
|
|
|
* PEAPI.cs (IResolutionScope): New. Empty interface.
|
|
(ClassRef): Implement IResolutionScope.
|
|
(ClassRef.parent): Change type from ResolutionScope to IResolutionScope.
|
|
(ClassRef.AddClass): New. Add nested class.
|
|
(ClassRef.AddValueClass): New. Add nested value class.
|
|
|
|
2005-08-23 Ankit Jain <jankit@novell.com>
|
|
|
|
* PEAPI.cs (MetaData.version): Change from 1.0.3705 to 1.1.4322.
|
|
|
|
2005-08-23 Ankit Jain <jankit@novell.com>
|
|
|
|
* PEAPI.cs (MSCorLib.systemClasses): Change type from ClassRef[] to
|
|
Class[].
|
|
(MSCorLib.ctor): Add assembly ref to mscorlib for non-mscorlib assemblies
|
|
only.
|
|
(MSCorLib.AddClass): Use Class instead of ClassRef.
|
|
(MSCorLib.GetSpecialClass): Change return type to Class from ClassRef.
|
|
Don't instantiate object of SystemClass if this assembly is mscorlib.
|
|
(MSCorLib.SetSpecialSystemClass): New. Set a System.* class for primitive
|
|
types, used for compiling mscorlib.
|
|
(MSCorLib.GetValueClass): Change to handle new type of systemClasses.
|
|
(MSCorLib.ValueType),
|
|
(MSCorLib.EnumType): Don't instantiate ClassRef if this assembly is mscorlib.
|
|
(ClassDef.ctor): Don't superType to System.Object for System.Object and <Module>.
|
|
(ClassDef.MakeValueClass): Set typeIndex to ValueType's typeIndex.
|
|
(ClassDef.IsValueType),
|
|
(ClassDef.IsEnum): Use "==" instead of .CompareTo for string comparison.
|
|
(ClassDef.AddNestedClass): Set typeIndexChecked = true for the nested class.
|
|
(PEFile.isMSCorlib): New. bool field.
|
|
(PEFile.ctor): Move all ctor logic into one overload and call that from others.
|
|
(PEFile.ctor): Add outputDir parameter.
|
|
(PEFile.SetName): Set name of the assembly and set isMSCorlib accordingly.
|
|
(PEFile.IsMSCorlib): New. bool Property.
|
|
(PEFile.AddClass): Call overload.
|
|
(PEFile.AddClass): Set superType and SetSpecialSystemClass if compiling mscorlib.
|
|
(PEFile.AddValueClass): Call MakeValueClass only if the class is not System.ValueType
|
|
or System.Enum itself, else set the supertype correctly.
|
|
|
|
2005-08-16 Ankit Jain <jankit@novell.com>
|
|
|
|
* PEAPI.cs (FieldAttr): Move HasFieldMarshal from FieldDef to this.
|
|
(ParamAttr): Move HasDefault and HasFieldMarshal from Param to this.
|
|
(ManifestResource.ctor): Use 'mres' param to clone.
|
|
(MethodDef.ret_param): New.
|
|
(MethodDef.AddRetTypeMarshallInfo): New.
|
|
(MethodDef.TypeSig): Set seqNo for ret_param to zero.
|
|
(MethodDef.BuildTables): Add ret_param to Param table, and BuildTables
|
|
for it.
|
|
(FixedSysString): New. Class to represent Fixed SysString native type.
|
|
(NativeArray): Rename len to numElem. Init numElem, parNum and elemMult
|
|
to -1.
|
|
(NativeArray.ctor): Uncomment ctor with one param (elemType).
|
|
(NativeArray.ctor): Move ctor logic to the one with all params.
|
|
(NativeArray.ToBlob): Emit values in correct order.
|
|
(SafeArray.hasElemType): New. bool var to indicate presence of ElemType.
|
|
(SafeArray.ctor): New. Parameterless constructor.
|
|
(SafeArray.ToBlob): Emit correctly.
|
|
(FixedArray.ctor): Remove elemType param.
|
|
(FixedArray.ToBlob): Don't emit elemType.
|
|
|
|
2005-08-08 Ankit Jain <jankit@novell.com>
|
|
|
|
* PEAPI.cs (CodeBlock): Set maxCodeSize to 255 instead of 256 for checking
|
|
Fat format.
|
|
(CILInstructions.CheckCode): Use 255 instead of 256 for checking Fat format.
|
|
|
|
2005-08-08 Ankit Jain <jankit@novell.com>
|
|
|
|
* PEAPI.cs (FileImage.WriteCLIHeader): Move the check for no entrypoint
|
|
in case of an EXE to ilasm/codegen/CodeGen.cs to avoid creating unnecessary
|
|
.exe.
|
|
|
|
2005-08-05 Ankit Jain <jankit@novell.com>
|
|
|
|
* PEAPI.cs (FileImage.WriteCLIHeader): Throw Exception if an EXE has been
|
|
requested but the source file has no entrypoint defined.
|
|
|
|
2005-08-05 Ankit Jain <jankit@novell.com>
|
|
|
|
* PEAPI.cs (TypeAttr): Add HasSecurity.
|
|
(MethAttr): Likewise.
|
|
(SecurityAction): New enum.
|
|
(DeclSecurity.ctor): Add 'byte []' as the third parameter.
|
|
(DeclSecurity.BuildTables): Write the byte array to the blob.
|
|
(MetaData.AddDeclSecurity): Add DeclSecurity to declsec_list.
|
|
(MetaData.BuildMetaData): Call BuildTables for declsec_list members.
|
|
(PEFile.AddDeclSecurity): New. Add DeclSecurity to metaData.
|
|
|
|
2005-04-30 Ankit Jain <ankit@corewars.org>
|
|
|
|
* PEAPI.cs (InterfaceImpl.SortKey): New.
|
|
(MetaData.BuildMetaData): Sort InterfaceImpl table.
|
|
(MethodSemantics.SortKey): Compute key correctly.
|
|
|
|
2005-04-18 Ankit Jain <ankit@corewars.org>
|
|
|
|
* PEAPI.cs (ManifestResource.InitResource): New. Used by constructors
|
|
to initialize the resource.
|
|
(ManifestResource.ctor): New. Constructor to accept resource as a
|
|
byte array.
|
|
(ManifestResource.ctor): New. Constructor to accept an object of self.
|
|
(ManifestResource.BuildTables): Update.
|
|
(MetaData.AddResource): New. Add the resource to the list, adjust
|
|
resourcesSize.
|
|
(MetaData.WriteResource): New. Write resources to the FileImage.
|
|
(PEFile.AddExternalManagedResource): New. Add a new resource.
|
|
(PEFile.GetResource): New. Get resource by name.
|
|
(PEFile.GetResources): New. Get array of resources.
|
|
|
|
2005-04-12 Ankit Jain <ankit@corewars.org>
|
|
|
|
* PEAPI.cs (CustomAttribute.ctor): Dont throw
|
|
NotYetImplementedException.
|
|
(MethodSemantics.SortKey): Should be sorted by
|
|
'Association' column.
|
|
|
|
2005-04-08 Ankit Jain <radical@corewars.org>
|
|
|
|
* PEAPI.cs (MSCorLib.GetSpecialClass): Don't encode
|
|
System.ValueType and System.Enum as value types.
|
|
(ValueClass): New enum.
|
|
(Class.MakeValueClass): Add a 'ValueClass' parameter.
|
|
(ClassDef.MakeValueClass): Set supertype to ValueType or Enum
|
|
according to ValueClass parameter.
|
|
(IsValueType,IsEnum): New. Test if type is System.ValueType or
|
|
System.Enum.
|
|
(ClassDef.AddNestedClass): Don't encode System.ValueType and
|
|
System.Enum as value types.
|
|
|
|
2005-03-17 Ankit Jain <radical@corewars.org>
|
|
|
|
* PEAPI.cs: Metadata tables that must be sorted are sorted now.
|
|
Fixes the code for ParamAttr.Opt. Fix bug #73517.
|
|
|
|
2004-12-08 Sebastien Pouliot <sebastien@ximian.com>
|
|
|
|
* PEAPI.cs: Added support for allocating and storing strongname
|
|
signatures when a .publickey directive is present in source. Fix bug
|
|
#69721.
|
|
|
|
2004-12-01 Jackson Harper <jackson@ximian.com>
|
|
|
|
* PEAPI.cs: Allow underlying types of ByteArrConsts to be set when
|
|
they are used as field init data.
|
|
|
|
2004-07-29 Martin Baulig <martin@ximian.com>
|
|
|
|
* PEAPI.cs (Module.Guid): New public property.
|
|
|
|
2004-07-27 Martin Baulig <martin@ximian.com>
|
|
|
|
* PEAPI.cs (CILInstructions.Offset): New public property.
|
|
|
|
2004-07-23 Jackson Harper <jackson@ximian.com>
|
|
|
|
* PEAPI.cs: Make the type index modifiable so ClassRefInsts will
|
|
be emitted properly. This is in desperate need of some API love.
|
|
|
|
2004-07-21 Jackson Harper <jackson@ximian.com>
|
|
|
|
* PEAPI.cs: Do all the index size checks. I always wondered why
|
|
the code was like that and finally realized today that it was like
|
|
that because it was wrong. Wait until the opportune momement to
|
|
calculate the index sizes (after everything has been added to the
|
|
streams, and before writing anything).
|
|
|
|
2004-07-21 Jackson Harper <jackson@ximian.com>
|
|
|
|
* PEAPI.cs: Create ClassRefInsts with types not just
|
|
ClassRefs. This way modified types can be used. I am having alot
|
|
of trouble remembering why I actually even need this class though.
|
|
|
|
2004-07-16 Jackson Harper <jackson@ximian.com>
|
|
|
|
* PEAPI.cs: make sure small index sizes get set properly. Use a
|
|
continue to reduce nesting a little and make code almost mildly
|
|
readable. Add MDTable.Field to the list of tables that can
|
|
increase the CustomAttributeType shift. TODO: What else should be
|
|
here?
|
|
|
|
2004-07-13 Jackson Harper <jackson@ximian.com>
|
|
|
|
* PEAPI.cs: Use a byte array hash code provider and comprarer, so
|
|
checking the byte hashtable for duplicate entries actually
|
|
works. Old method was valid but created larger then needed binaries.
|
|
|
|
2004-07-09 Jackson Harper <jackson@ximian.com>
|
|
|
|
* PEAPI.cs: Don't build custom attributes twice.
|
|
|
|
2004-07-08 Jackson Harper <jackson@ximian.com>
|
|
|
|
* PEAPI.cs: Add custom attributes through the pefile so that we
|
|
can ensure they are emitted no matter what table they are
|
|
in. Previously not all custom attributes were getting emitted.
|
|
|
|
2004-06-26 Jackson Harper <jackson@ximian.com>
|
|
|
|
* PEAPI.cs: Add a method to set the fields list. This is needed so
|
|
that sequentially laid out fields are laid out in the right
|
|
order. When building custom attribute tables actually emit the
|
|
custom attribute data. When writing the .sdata section make sure
|
|
to pad to its size. The constants itself will not make up the
|
|
entire section because it is aligned on 512 byte blocks.
|
|
|
|
2004-06-19 Jackson Harper <jackson@ximian.com>
|
|
|
|
* PEAPI.cs: Make sure the sentinel is placed properly for vararg
|
|
method pointers.
|
|
|
|
2004-06-19 Jackson Harper <jackson@ximian.com>
|
|
|
|
* PEAPI.cs: Allow MethPtrTypes to be created from a signature
|
|
instead of from a method reference because it really doesn't make
|
|
sense to do it that way ;-).
|
|
|
|
2004-06-14 Jackson Harper <jackson@ximian.com>
|
|
|
|
* PEAPI.cs: Add IExternRef interface and modify sigs so it can be
|
|
used. So we can easily add stuff to modules and assemblies. Fix
|
|
the nometadata flag, it should be set when there is NO metadata
|
|
not when there is metadata.
|
|
|
|
2004-06-14 Jackson Harper <jackson@ximian.com>
|
|
|
|
* PEAPI.cs: Add new constructor so we can explicitly set the
|
|
module name.
|
|
|
|
2004-06-03 Jackson Harper <jackson@ximian.com>
|
|
|
|
* PEAPI.cs: Do not null terminate byte arrays when writing to the
|
|
blob stream.
|
|
|
|
2004-05-25 Jackson Harper <jackson@ximian.com>
|
|
|
|
* PEAPI.cs: When writing to the blob heap we always set a size.
|
|
|
|
2004-05-25 Jackson Harper <jackson@ximian.com>
|
|
|
|
* PEAPI.cs: Set the has default flag on fields when a default data
|
|
constant is assigned to them.
|
|
|
|
2004-05-25 Jackson Harper <jackson@ximian.com>
|
|
|
|
* PEAPI.cs: Encode string constants as unicode before putting them
|
|
in the blob.
|
|
|
|
2004-05-25 Jackson Harper <jackson@ximian.com>
|
|
|
|
* PEAPI.cs: zero RVAs for abstract, runtime, and internal call
|
|
methods.
|
|
|
|
2004-04-30 Duncan Mak <duncan@ximian.com>
|
|
|
|
* PEAPI.dll.sources: Added Assembly/AssemblyInfo.cs and
|
|
Locale.cs to build.
|
|
|
|
2004-04-02 Jackson Harper <jackson@ximian.com>
|
|
|
|
* PEAPI.cs: Allow hash algorithms to be any integer.
|
|
|
|
2004-02-18 Jackson Harper <jackson@ximian.com>
|
|
|
|
* PEAPI.cs: Add a class for creating instances of class refs, this
|
|
is used for setting the class or valuetype of a types instance so the class
|
|
reference isn't modified. Allows things like 'valuetype [mscorlib]System.Object'.
|
|
|
|
2003-11-18 Jackson Harper <jackson@ximian.com>
|
|
|
|
* PEAPI.cs: If the data length for a methods seh section is
|
|
greater then 255 use fat format headers.
|
|
|
|
2003-11-17 Jackson Harper <jackson@ximian.com>
|
|
|
|
* PEAPI.cs: Allow strings to be loaded as bytearrays.
|
|
|
|
2003-10-19 Jackson Harper <jackson@ximian.com>
|
|
|
|
* PEAPI.cs: Use bytes not bits for constant sizes.
|
|
|
|
2003-10-18 Jackson Harper <jackson@ximian.com>
|
|
|
|
* PEAPI.cs: Add proper support for short instructions, removing
|
|
PEAPI's auto selection of short/long branch operations feature.
|
|
|
|
2003-10-10 Jackson Harper <jackson@ximian.com>
|
|
|
|
* PEAPI.cs: New GenericMethodSig class for creating generic method
|
|
signatures. Use this class instead of GenericTypeInst for creating
|
|
generic methods. Fix Generic call conv. according to two of my
|
|
docs it is 0x10 and only one says 0x50 so I will go with 0x10.
|
|
|
|
2003-10-09 Jackson Harper <jackson@ximian.com>
|
|
|
|
* PEAPI.cs: Add generic method Mvar type. Add MethodSpec table,
|
|
and an Api method for adding methods to the methodspec table.
|
|
|
|
2003-10-08 Jackson Harper <jackson@ximian.com>
|
|
|
|
* PEAPI.cs: Remove some old hacks for adding methods to arrays,
|
|
typespecs are used for this now. Add Generic call conv.
|
|
|
|
2003-10-08 Jackson Harper <jackson@ximian.com>
|
|
|
|
* PEAPI.cs: Remove methods for creating generic parameters without
|
|
a name, names are mandatory. Add method to add type parameters to
|
|
methods. Allow GenericParameters to have either a type or a
|
|
method as its owner. Also fix visibility of GenericParameters, a
|
|
GenericParameter should not be created outside of PEAPI.
|
|
|
|
2003-10-07 Jackson Harper <jackson@ximian.com>
|
|
|
|
* PEAPI.cs: Add unbox.any instruction.
|
|
|
|
2003-09-27 Jackson Harper <jackson@latitudegeo.com>
|
|
|
|
* PEAPI.cs: Fix pinvoke attributes, zero a methods RVA if it has
|
|
pinvoke info. This isn't entirely correct because native unmanaged
|
|
methods can have pinvoke info and not have 0 RVAs PEAPI can't
|
|
handle native unmanged code though. Expose the ModuleClass so
|
|
'global' items can be referenced like this '<Module>'::foo.
|
|
|
|
2003-09-21 Jackson Harper <jackson@latitudegeo.com>
|
|
|
|
* PEAPI.cs: sigh, sometimes it is best to calculate variables
|
|
before using them. This fixes PEAPI creating broken images when
|
|
the sdata section is used.
|
|
|
|
2003-09-20 Jackson Harper <jackson@latitudegeo.com>
|
|
|
|
* PEAPI.cs: Rework to allow multiple constraints to be added to a
|
|
single generic parameter.
|
|
|
|
2003-08-19 Jackson Harper <jackson@latitudegeo.com>
|
|
|
|
* PEAPI.cs: Make no super method public so we can have types
|
|
with no super type.
|
|
|
|
2003-08-03 Jackson Harper <jackson@latitudegeo.com>
|
|
|
|
* PEAPI.cs: New Sentinel type.
|
|
|
|
2003-08-03 Jackson Harper <jackson@latitudegeo.com>
|
|
|
|
* PEAPI.cs: Only give method definitions 0 RVAs if they are
|
|
marked abstract.
|
|
|
|
2003-08-03 Jackson Harper <jackson@latitudegeo.com>
|
|
|
|
* PEAPI.cs: Offsets are not explicit offsets, they are just
|
|
byte offsets from the current position.
|
|
|
|
2003-07-29 Jackson Harper <jackson@latitudegeo.com>
|
|
|
|
* PEAPI.cs: Allow labels to be created with an explicit offset
|
|
|
|
Fri Jul 25 19:25:31 CEST 2003 Paolo Molaro <lupus@ximian.com>
|
|
|
|
* PEAPI.cs: added coded index for the owner field in the GenericParam
|
|
table.
|
|
|
|
2003-07-20 Jackson Harper <jackson@latitudegeo.com>
|
|
|
|
* PEAPI.cs: Add methods to PEFile to allow fields and methods to
|
|
be added to type specs. This fixing bah-zillions of little
|
|
problems in ilasm. We can now add fields and methods to arrays,
|
|
reference types, and most importantly generics.
|
|
|
|
Add the GenericTypeInst class. This is an instance of a generic
|
|
type. ie Hash<int32, string>. GenericTypeSpecs now write their id
|
|
number as a compressed number, this matches the way the runtime
|
|
loads them and will allow generic types to have more then 255 type
|
|
parameters.
|
|
|
|
2003-07-17 Jackson Harper <jackson@latitudegeo.com>
|
|
|
|
* PEAPI.cs: Add GenericTypeSpec so generic members can be
|
|
referenced. Add the ldelem and stelem opcodes (these are part of
|
|
the new spec).
|
|
|
|
2003-07-15 Jackson Harper <jackson@latitudegeo.com>
|
|
|
|
* PEAPI.cs: Allow generic constraints to be added, emit generic
|
|
constraints.
|
|
|
|
2003-07-14 Jackson Harper <jackson@latitudegeo.com>
|
|
|
|
* PEAPI.cs: Cleanup methods for generics, now that constraints and
|
|
params are seperated.
|
|
|
|
2003-05-31 Jackson Harper <jackson@latitudegeo.com>
|
|
|
|
* PEAPI.cs: Initial work on implementing custom
|
|
attributes. Attributes can now be added to ClassDefs and
|
|
MethodDefs. Still need to implement for other metadata elements.
|
|
Added the stele.r4 and stelem.r8 instructions, this should also
|
|
shift the stelem.ref instruction to the proper value (0xA2)
|
|
|
|
2003-05-25 Jackson Harper <jackson@latitudegeo.com>
|
|
|
|
* PEAPI.cs: Create a list of vararg signatures and add them all to
|
|
tables. this allows more then one vararg signature to be created
|
|
per method.
|
|
|
|
2003-05-18 Jackson Harper <jackson@latitudegeo.com>
|
|
|
|
* PEAPI.cs: Add methods to allow methods to be added to arrays.
|
|
|
|
2003-05-11 Jackson Harper <jackson@latitudegeo.com>
|
|
|
|
* PEAPI.cs: The class size in class layout metadata table is a
|
|
uint not a short.
|
|
|
|
2003-04-05 Jackson Harper <jackson@latitudegeo.com>
|
|
|
|
* PEAPI.cs: Add indexes to GenericParameters, make string index
|
|
always a full 4 bytes.
|
|
|
|
2003-04-05 Jackson Harper <jackson@latitudegeo.com>
|
|
|
|
* PEAPI.cs: Add GenericParameter table, and method to add generic
|
|
parameters.
|
|
|
|
2003-03-15 Daniel Morgan <danmorg@sc.rr.com>
|
|
|
|
* PEAPI.build: added file for windows build
|
|
|
|
2003-03-06 Jackson Harper <jackson@latitudegeo.com>
|
|
|
|
* PEAPI.cs: (ImplAttr) Add Optil implementation flag (not supported
|
|
in first release of CLR)
|
|
(Class) And Name property
|
|
|
|
2003-03-06 Jackson Harper <jackson@latitudegeo.com>
|
|
|
|
* makefile.gnu: Add file
|
|
* list.unix: Add file
|
|
|
|
2003-03-02 Jackson Harper <jackson@latitudegeo.com>
|
|
|
|
* PEAPI.cs: Do not add file extensions to output names
|
|
|
|
2003-03-02 Jackson Harper <jackson@latitudegeo.com>
|
|
|
|
* PEAPI.cs: Add file
|
|
* README.txt: Add file
|