History log of /external/llvm/include/llvm/Support/COFF.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
3a101048affcb00654b85558157150ad270fc46d 16-Jul-2013 Rui Ueyama <ruiu@google.com> COFF: Add constants for optional data directory.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186377 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Support/COFF.h
1a4f2a33fbd94c840d620ff572dd25540c650f70 11-Jun-2013 Rui Ueyama <ruiu@google.com> [PECOFF] Remove COFF header from PE header for simplicity.

COFF header is always present both in executable and in object file. PE header
is present only in executable. So the natural way to handle PE/COFF file is
treating COFF is mandatory header and PE is optional. Current data structre
does not allow it, because PE header includes COFF header. Removing COFF
header will simplify the code to handle PE/COFF files.

Reviewers: Bigcheese

CC: llvm-commits

Differential Revision: http://llvm-reviews.chandlerc.com/D952

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183788 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Support/COFF.h
76e70f340c09ba759ad96d8dfe416b64f24bc287 03-Apr-2013 Eric Christopher <echristo@gmail.com> Implements low-level object file format specific output for COFF and
ELF with support for:

- File headers
- Section headers + data
- Relocations
- Symbols
- Unwind data (only COFF/Win64)

The output format follows a few rules:
- Values are almost always output one per line (as elf-dump/coff-dump already do). - Many values are translated to something readable (like enum names), with the raw value in parentheses.
- Hex numbers are output in uppercase, prefixed with "0x".
- Flags are sorted alphabetically.
- Lists and groups are always delimited.

Example output:
---------- snip ----------
Sections [
Section {
Index: 1
Name: .text (5)
Type: SHT_PROGBITS (0x1)
Flags [ (0x6)
SHF_ALLOC (0x2)
SHF_EXECINSTR (0x4)
]
Address: 0x0
Offset: 0x40
Size: 33
Link: 0
Info: 0
AddressAlignment: 16
EntrySize: 0
Relocations [
0x6 R_386_32 .rodata.str1.1 0x0
0xB R_386_PC32 puts 0x0
0x12 R_386_32 .rodata.str1.1 0x0
0x17 R_386_PC32 puts 0x0
]
SectionData (
0000: 83EC04C7 04240000 0000E8FC FFFFFFC7 |.....$..........|
0010: 04240600 0000E8FC FFFFFF31 C083C404 |.$.........1....|
0020: C3 |.|
)
}
]
---------- snip ----------

Relocations and symbols can be output standalone or together with the section header as displayed in the example.
This feature set supports all tests in test/MC/COFF and test/MC/ELF (and I suspect all additional tests using elf-dump), making elf-dump and coff-dump deprecated.

Patch by Nico Rieck!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178679 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Support/COFF.h
674be02d525d4e24bc6943ed9274958c580bcfbc 10-Jan-2013 Jakub Staszak <kubastaszak@gmail.com> Fix include guards so they exactly match file names.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172025 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Support/COFF.h
32bab64eec9aae19c1ca159472fba17b6db8538a 15-Aug-2012 Michael J. Spencer <bigcheesegs@gmail.com> [yaml2obj] Fix incorrect use of signed values.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161900 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Support/COFF.h
a915f247f72570a994d55cd0d2961cd2d7bbd0e1 02-Aug-2012 Michael J. Spencer <bigcheesegs@gmail.com> Add yaml2obj. A utility to convert YAML to binaries.

yaml2obj takes a textual description of an object file in YAML format
and outputs the binary equivalent. This greatly simplifies writing
tests that take binary object files as input.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161205 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Support/COFF.h
752026b69eb265750ca31f345579a4855c02d493 15-May-2012 Michael J. Spencer <bigcheesegs@gmail.com> [Support/COFF] Make the order of members in symbol match the standard.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156785 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Support/COFF.h
a9a4f5eda8c9123dcdb46b351de4adb56706bb76 16-Nov-2011 Michael J. Spencer <bigcheesegs@gmail.com> Remove extra ,.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144759 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Support/COFF.h
dc296639d9bf3b85167b2a7ec1b4110b953e98bb 16-Nov-2011 Michael J. Spencer <bigcheesegs@gmail.com> Support/COFF: Add structs and enums from the standard for image files.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144756 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Support/COFF.h
1f6efa3996dd1929fbc129203ce5009b620e6969 29-Nov-2010 Michael J. Spencer <bigcheesegs@gmail.com> Merge System into Support.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120298 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Support/COFF.h
4cee2890a66974af506f2125243114cc14bd5556 16-Oct-2010 Michael J. Spencer <bigcheesegs@gmail.com> MC-COFF: Add support for default-null weak externals.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116666 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Support/COFF.h
6ab219de7e8aa36aee266f111ac5e08ec8e4a16d 08-Oct-2010 Michael J. Spencer <bigcheesegs@gmail.com> MC-COFF: Fix Simple and Complex type. Fixes PR8320.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116037 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Support/COFF.h
290b316a4eb8616c388f1fa3bea7ef338bf6c4ec 08-Oct-2010 Michael J. Spencer <bigcheesegs@gmail.com> Fix Whitespace.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116036 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Support/COFF.h
4563704c21a0549c2f2d484c7ca76a67319cf627 01-Sep-2010 Michael J. Spencer <bigcheesegs@gmail.com> COFF: Fix incorrect SCT_COMPLEX_TYPE_SHIFT. Add a few constants.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112703 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Support/COFF.h
da0bfcdaf95d95a66e306ef6d45f638939272d34 21-Aug-2010 Michael J. Spencer <bigcheesegs@gmail.com> MC: Add partial x86-64 support to COFF.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111728 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Support/COFF.h
d7343ddce500c8043a58dd50cac6127ba7d9d9a3 17-Aug-2010 Anton Korobeynikov <asl@math.spbu.ru> Add some win64 coff goodness.
Patch by Cameron Esfahani!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111287 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Support/COFF.h
801a3591161789e9716b0ec519f0f950b2d0c2ac 26-Jul-2010 Michael J. Spencer <bigcheesegs@gmail.com> MC: Add WinCOFFObjectWriter implementation.

Origonal Windows COFF implementation by Nathan Jedffords.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109389 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Support/COFF.h
9fe2c6704582a6730f4fc99dd85e214b23f3494b 14-Jul-2010 Chris Lattner <sabre@nondot.org> Merge lib/Target/X86/X86COFF.h into include/llvm/Support/COFF.h,
patch by Michael Spencer!



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108342 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Support/COFF.h
eb89c90f0b79fbec9b7b20776764a9c52a4c7965 01-Jul-2010 Daniel Dunbar <daniel@zuster.org> Remove stray comma.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107425 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Support/COFF.h
94610588af55ae7d16ba7d72d1e68324631ec249 01-Jul-2010 Daniel Dunbar <daniel@zuster.org> MC: Move COFF enumeration constants to llvm/Support/COFF.h, patch by Michael
Spencer!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107418 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Support/COFF.h