| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
| |
This change adds support for the SHT_MIPS_ABIFLAGS section
reading/writing to the obj2yaml and yaml2obj tools.
llvm-svn: 236738
|
| |
|
|
|
|
| |
Follow up to r227318.
llvm-svn: 227422
|
| |
|
|
|
|
| |
obj2yaml and yaml2obj tools.
llvm-svn: 212908
|
| |
|
|
|
|
| |
Recognize only flags which correspond to the current target.
llvm-svn: 212880
|
| |
|
|
|
|
|
| |
field represents ELF section header sh_info field and does not have any
sense for regular sections. Its interpretation depends on section type.
llvm-svn: 209801
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Some bit-set fields used in ELF file headers in fact contain two parts.
The first one is a regular bit-field. The second one is an enumeraion.
For example ELF header `e_flags` for MIPS target might contain the
following values:
Bit-set values:
EF_MIPS_NOREORDER = 0x00000001
EF_MIPS_PIC = 0x00000002
EF_MIPS_CPIC = 0x00000004
EF_MIPS_ABI2 = 0x00000020
Enumeration:
EF_MIPS_ARCH_32 = 0x50000000
EF_MIPS_ARCH_64 = 0x60000000
EF_MIPS_ARCH_32R2 = 0x70000000
EF_MIPS_ARCH_64R2 = 0x80000000
For printing bit-sets we use the `yaml::IO::bitSetCase()`. It does not
support bit-set/enumeration combinations and prints too many flags from
an enumeration part. This patch fixes this problem. New method
`yaml::IO::maskedBitSetCase()` handle "enumeration" part of bitset
defined by provided mask.
Patch reviewed by Nick Kledzik and Sean Silva.
llvm-svn: 209504
|
| |
|
|
|
|
| |
types to hold relocation's offset and addend.
llvm-svn: 208906
|
| |
|
|
| |
llvm-svn: 208905
|
| |
|
|
|
|
|
|
|
|
| |
The ELF header e_flags field in the MIPS related test cases handled
incorrectly. The obj2yaml prints too many flags. I will fix that in the
next patches.
The patch reviewed by Michael Spencer and Sean Silva.
llvm-svn: 208752
|
| |
|
|
|
|
|
|
|
| |
Don't quote octal compatible strings if they are only two wide, they
aren't ambiguous.
This reverts commit r205857 which reverted r205857.
llvm-svn: 205914
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
The IO normalizer would essentially lump I386 and AMD64 relocations
together. Relocation types with the same numeric value would then get
mapped in appropriately.
For example:
IMAGE_REL_AMD64_ADDR64 and IMAGE_REL_I386_DIR16 both have a numeric
value of one. We would see IMAGE_REL_I386_DIR16 in obj2yaml conversions
of object files with a machine type of IMAGE_FILE_MACHINE_AMD64.
llvm-svn: 205746
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The current state of affairs has auxiliary symbols described as a big
bag of bytes. This is less than satisfying, it detracts from the YAML
file as being human readable.
Instead, allow for symbols to optionally contain their auxiliary data.
This allows us to have a much higher level way of describing things like
weak symbols, function definitions and section definitions.
This depends on D3105.
Differential Revision: http://llvm-reviews.chandlerc.com/D3092
llvm-svn: 204214
|
| |
|
|
| |
llvm-svn: 183403
|
| |
|
|
| |
llvm-svn: 183293
|
| |
|
|
|
|
|
| |
I will try to avoid creating these std::strings, but for now this gets
the tests passing with libc++.
llvm-svn: 182405
|
| |
|
|
| |
llvm-svn: 182212
|
| |
|
|
| |
llvm-svn: 182169
|
|
|
llvm-svn: 178829
|