Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 6323 → Rev 6324

/contrib/toolchain/binutils/include/coff/internal.h
1,8 → 1,7
/* Internal format of COFF object file data structures, for GNU BFD.
This file is part of BFD, the Binary File Descriptor library.
Copyright 1999, 2000, 2001, 2002, 2003, 2004. 2005, 2006, 2007, 2009,
2010 Free Software Foundation, Inc.
Copyright (C) 1999-2015 Free Software Foundation, Inc.
 
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
74,7 → 73,7
 
/* Standard coff internal info. */
unsigned short f_magic; /* magic number */
unsigned short f_nscns; /* number of sections */
unsigned int f_nscns; /* number of sections */
long f_timdat; /* time & date stamp */
bfd_vma f_symptr; /* file pointer to symtab */
long f_nsyms; /* number of symtab entries */
133,6 → 132,44
/* DataDirectory[15] is currently reserved, so no define. */
#define IMAGE_NUMBEROF_DIRECTORY_ENTRIES 16
 
/* Extra structure used in debug directory. */
struct internal_IMAGE_DEBUG_DIRECTORY
{
unsigned long Characteristics;
unsigned long TimeDateStamp;
unsigned short MajorVersion;
unsigned short MinorVersion;
unsigned long Type;
unsigned long SizeOfData;
unsigned long AddressOfRawData;
unsigned long PointerToRawData;
};
 
#define PE_IMAGE_DEBUG_TYPE_UNKNOWN 0
#define PE_IMAGE_DEBUG_TYPE_COFF 1
#define PE_IMAGE_DEBUG_TYPE_CODEVIEW 2
#define PE_IMAGE_DEBUG_TYPE_FPO 3
#define PE_IMAGE_DEBUG_TYPE_MISC 4
#define PE_IMAGE_DEBUG_TYPE_EXCEPTION 5
#define PE_IMAGE_DEBUG_TYPE_FIXUP 6
#define PE_IMAGE_DEBUG_TYPE_OMAP_TO_SRC 7
#define PE_IMAGE_DEBUG_TYPE_OMAP_FROM_SRC 8
#define PE_IMAGE_DEBUG_TYPE_BORLAND 9
#define PE_IMAGE_DEBUG_TYPE_RESERVED10 10
#define PE_IMAGE_DEBUG_TYPE_CLSID 11
 
/* Extra structure for a codeview debug record */
#define CV_INFO_SIGNATURE_LENGTH 16
 
typedef struct _CODEVIEW_INFO
{
unsigned long CVSignature;
char Signature[CV_INFO_SIGNATURE_LENGTH];
unsigned int SignatureLength;
unsigned long Age;
// char PdbFileName[];
} CODEVIEW_INFO;
 
/* Default image base for NT. */
#define NT_EXE_IMAGE_BASE 0x400000
#define NT_DLL_IMAGE_BASE 0x10000000
153,17 → 190,17
/* FIXME: The following entries are in AOUTHDR. But they aren't
available internally in bfd. We add them here so that objdump
can dump them. */
/* The state of the image file */
/* The state of the image file. */
short Magic;
/* Linker major version number */
/* Linker major version number. */
char MajorLinkerVersion;
/* Linker minor version number */
/* Linker minor version number. */
char MinorLinkerVersion;
/* Total size of all code sections */
/* Total size of all code sections. */
long SizeOfCode;
/* Total size of all initialized data sections */
/* Total size of all initialized data sections. */
long SizeOfInitializedData;
/* Total size of all uninitialized data sections */
/* Total size of all uninitialized data sections. */
long SizeOfUninitializedData;
/* Address of entry point relative to image base. */
bfd_vma AddressOfEntryPoint;
173,38 → 210,38
bfd_vma BaseOfData;
/* PE stuff */
bfd_vma ImageBase; /* address of specific location in memory that
file is located, NT default 0x10000 */
bfd_vma ImageBase; /* Address of specific location in memory that
file is located, NT default 0x10000. */
 
bfd_vma SectionAlignment; /* section alignment default 0x1000 */
bfd_vma FileAlignment; /* file alignment default 0x200 */
short MajorOperatingSystemVersion; /* minimum version of the operating */
short MinorOperatingSystemVersion; /* system req'd for exe, default to 1*/
short MajorImageVersion; /* user defineable field to store version of */
short MinorImageVersion; /* exe or dll being created, default to 0 */
short MajorSubsystemVersion; /* minimum subsystem version required to */
short MinorSubsystemVersion; /* run exe; default to 3.1 */
long Reserved1; /* seems to be 0 */
long SizeOfImage; /* size of memory to allocate for prog */
long SizeOfHeaders; /* size of PE header and section table */
long CheckSum; /* set to 0 */
bfd_vma SectionAlignment; /* Section alignment default 0x1000. */
bfd_vma FileAlignment; /* File alignment default 0x200. */
short MajorOperatingSystemVersion; /* Minimum version of the operating. */
short MinorOperatingSystemVersion; /* System req'd for exe, default to 1. */
short MajorImageVersion; /* User defineable field to store version of */
short MinorImageVersion; /* exe or dll being created, default to 0. */
short MajorSubsystemVersion; /* Minimum subsystem version required to */
short MinorSubsystemVersion; /* run exe; default to 3.1. */
long Reserved1; /* Seems to be 0. */
long SizeOfImage; /* Size of memory to allocate for prog. */
long SizeOfHeaders; /* Size of PE header and section table. */
long CheckSum; /* Set to 0. */
short Subsystem;
 
/* type of subsystem exe uses for user interface,
/* Type of subsystem exe uses for user interface,
possible values:
1 - NATIVE Doesn't require a subsystem
2 - WINDOWS_GUI runs in Windows GUI subsystem
3 - WINDOWS_CUI runs in Windows char sub. (console app)
5 - OS2_CUI runs in OS/2 character subsystem
7 - POSIX_CUI runs in Posix character subsystem */
unsigned short DllCharacteristics; /* flags for DLL init */
bfd_vma SizeOfStackReserve; /* amount of memory to reserve */
bfd_vma SizeOfStackCommit; /* amount of memory initially committed for
initial thread's stack, default is 0x1000 */
bfd_vma SizeOfHeapReserve; /* amount of virtual memory to reserve and */
bfd_vma SizeOfHeapCommit; /* commit, don't know what to defaut it to */
long LoaderFlags; /* can probably set to 0 */
long NumberOfRvaAndSizes; /* number of entries in next entry, 16 */
7 - POSIX_CUI runs in Posix character subsystem. */
unsigned short DllCharacteristics; /* flags for DLL init. */
bfd_vma SizeOfStackReserve; /* Amount of memory to reserve. */
bfd_vma SizeOfStackCommit; /* Amount of memory initially committed for
initial thread's stack, default is 0x1000. */
bfd_vma SizeOfHeapReserve; /* Amount of virtual memory to reserve and */
bfd_vma SizeOfHeapCommit; /* commit, don't know what to defaut it to. */
long LoaderFlags; /* Can probably set to 0. */
long NumberOfRvaAndSizes; /* Number of entries in next entry, 16. */
IMAGE_DATA_DIRECTORY DataDirectory[IMAGE_NUMBEROF_DIRECTORY_ENTRIES];
};
 
551,7 → 588,11
 
union
{
char x_fname[FILNMLEN];
/* PR 17754: We use to FILNMLEN for the size of the x_fname
array, but that cause problems as PE targets use a larger
value. We cannot use their definition of EFILNMLEN as this
header can be used without including any PE headers. */
char x_fname[20];
struct
{
long x_zeroes;