public override ObjectData GetData(NodeFactory factory, bool relocsOnly = false) { // TODO: define _tls_index as "comdat select any" when multiple object files present. ObjectDataBuilder objData = new ObjectDataBuilder(factory, relocsOnly); objData.RequireInitialPointerAlignment(); objData.AddSymbol(this); // Emit an aliased symbol named _tls_index for native P/Invoke code that uses TLS. This is required // because we do not link against libcmt.lib. ObjectAndOffsetSymbolNode aliasedSymbol = new ObjectAndOffsetSymbolNode(this, objData.CountBytes, "_tls_index", false); objData.AddSymbol(aliasedSymbol); // This is the TLS index field which is a 4-byte integer. objData.EmitInt(0); return(objData.ToObjectData()); }
public DefaultConstructorMapNode(ExternalReferencesTableNode externalReferences) { _endSymbol = new ObjectAndOffsetSymbolNode(this, 0, "__DefaultConstructor_Map_End", true); _externalReferences = externalReferences; }
public DynamicInvokeTemplateDataNode(ExternalReferencesTableNode externalReferences) { _endSymbol = new ObjectAndOffsetSymbolNode(this, 0, "__dynamic_invoke_template_data_end", true); _externalReferences = externalReferences; }
public ArrayOfEmbeddedDataNode(string startSymbolMangledName, string endSymbolMangledName, IComparer <TEmbedded> nodeSorter) { _startSymbol = new ObjectAndOffsetSymbolNode(this, 0, startSymbolMangledName, true); _endSymbol = new ObjectAndOffsetSymbolNode(this, 0, endSymbolMangledName, true); _sorter = nodeSorter; }
public ExternalReferencesTableNode(string blobName, TargetDetails targetDetails) { _blobName = blobName; _endSymbol = new ObjectAndOffsetSymbolNode(this, 0, "__external_" + blobName + "_references_End", true); _target = targetDetails; }
public TypeMetadataMapNode(ExternalReferencesTableNode externalReferences) { _endSymbol = new ObjectAndOffsetSymbolNode(this, 0, "__type_to_metadata_map_End", true); _externalReferences = externalReferences; }
public ReflectionInvokeMapNode(ExternalReferencesTableNode externalReferences) { _endSymbol = new ObjectAndOffsetSymbolNode(this, 0, "__method_to_entrypoint_map_End", true); _externalReferences = externalReferences; }
public MetadataNode() { _endSymbol = new ObjectAndOffsetSymbolNode(this, 0, "__embedded_metadata_End", true); }
public ResourceIndexNode(ResourceDataNode resourceDataNode) { _resourceDataNode = resourceDataNode; _endSymbol = new ObjectAndOffsetSymbolNode(this, 0, "__embedded_resourceindex_End", true); }
public ExternalReferencesTableNode() { _endSymbol = new ObjectAndOffsetSymbolNode(this, 0, this.GetMangledName() + "End"); }
public TypeMetadataMapNode(ExternalReferencesTableNode externalReferences) { _endSymbol = new ObjectAndOffsetSymbolNode(this, 0, this.GetMangledName() + "End"); _externalReferences = externalReferences; }
public ClassConstructorContextMap(ExternalReferencesTableNode externalReferences) { _endSymbol = new ObjectAndOffsetSymbolNode(this, 0, this.GetMangledName() + "End"); _externalReferences = externalReferences; }
protected EmbeddedDataContainerNode(string startSymbolMangledName, string endSymbolMangledName) { _startSymbolMangledName = startSymbolMangledName; _startSymbol = new ObjectAndOffsetSymbolNode(this, 0, startSymbolMangledName, true); _endSymbol = new ObjectAndOffsetSymbolNode(this, 0, endSymbolMangledName, true); }
public ExternalReferencesTableNode() { _endSymbol = new ObjectAndOffsetSymbolNode(this, 0, ((ISymbolNode)this).MangledName + "End"); }
public GenericVirtualMethodTableNode(ExternalReferencesTableNode externalReferences) { _endSymbol = new ObjectAndOffsetSymbolNode(this, 0, "__gvm_table_End", true); _externalReferences = externalReferences; _gvmImplemenations = new Dictionary <MethodDesc, Dictionary <TypeDesc, MethodDesc> >(); }
public ClassConstructorContextMap(ExternalReferencesTableNode externalReferences) { _endSymbol = new ObjectAndOffsetSymbolNode(this, 0, "__type_to_cctorContext_map_End", true); _externalReferences = externalReferences; }
public ReflectionVirtualInvokeMapNode(ExternalReferencesTableNode externalReferences) { _endSymbol = new ObjectAndOffsetSymbolNode(this, 0, "__VirtualInvokeMap_End", true); _externalReferences = externalReferences; }
public ExactMethodInstantiationsNode(ExternalReferencesTableNode externalReferences) { _endSymbol = new ObjectAndOffsetSymbolNode(this, 0, "__exact_method_instantiations_End", true); _externalReferences = externalReferences; }
public ArrayMapNode(ExternalReferencesTableNode externalReferences) { _endSymbol = new ObjectAndOffsetSymbolNode(this, 0, "__array_type_map_End", true); _externalReferences = externalReferences; }
public StructMarshallingStubMapNode(ExternalReferencesTableNode externalReferences) { _endSymbol = new ObjectAndOffsetSymbolNode(this, 0, "__struct_marshalling_stub_map_End", true); _externalReferences = externalReferences; }
public GenericMethodsTemplateMap(ExternalReferencesTableNode externalReferences) { _endSymbol = new ObjectAndOffsetSymbolNode(this, 0, "__GenericMethodsTemplateMap_End", true); _externalReferences = externalReferences; }
public MetadataNode() { _endSymbol = new ObjectAndOffsetSymbolNode(this, 0, ((ISymbolNode)this).MangledName + "End"); }
public ResourceDataNode() { _endSymbol = new ObjectAndOffsetSymbolNode(this, 0, "__embedded_resourcedata_End", true); }
public GenericsHashtableNode(ExternalReferencesTableNode externalReferences) { _endSymbol = new ObjectAndOffsetSymbolNode(this, 0, "__generics_hashtable_End", true); _externalReferences = externalReferences; }
public BlockReflectionTypeMapNode(ExternalReferencesTableNode externalReferences) { _endSymbol = new ObjectAndOffsetSymbolNode(this, 0, "__block_reflection_type_map_End", true); _externalReferences = externalReferences; }
public ReflectionFieldMapNode(ExternalReferencesTableNode externalReferences) { _endSymbol = new ObjectAndOffsetSymbolNode(this, 0, "__field_to_offset_map_End", true); _externalReferences = externalReferences; }
public ExternalReferencesTableNode(string blobName, NodeFactory nodeFactory) { _blobName = blobName; _endSymbol = new ObjectAndOffsetSymbolNode(this, 0, "__external_" + blobName + "_references_End", true); _nodeFactory = nodeFactory; }
public StaticsInfoHashtableNode(ExternalReferencesTableNode externalReferences, ExternalReferencesTableNode nativeStaticsReferences) { _endSymbol = new ObjectAndOffsetSymbolNode(this, 0, "_StaticsInfoHashtableNode_End", true); _externalReferences = externalReferences; _nativeStaticsReferences = nativeStaticsReferences; }
public StackTraceEmbeddedMetadataNode() { _endSymbol = new ObjectAndOffsetSymbolNode(this, 0, "_stacktrace_embedded_metadata_End", true); }
public ModuleInitializerListNode() { _endSymbol = new ObjectAndOffsetSymbolNode(this, 0, "__module_initializers_End", true); }