mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-24 19:52:54 +01:00
cca2985848
On MachO, sections also have segment names. When a tool looking at a .o file prints a segment name, this is what they mean. In reality, a .o has only one anonymous, segment. This patch adds a MachO only function to fetch that segment name. I named it getSectionFinalSegmentName since the main use for the name seems to be inform the linker with segment this section should go to. The patch also changes MachOObjectFile::getSectionName to return just the section name instead of computing SegmentName,SectionName. The main difference from the previous patch is that it doesn't use InMemoryStruct. It is extremely dangerous: if the endians match it returns a pointer to the file buffer, if not, it returns a pointer to an internal buffer that is overwritten in the next API call. We should change all of this code to use support::detail::packed_endian_specific_integral like ELF, but since these functions only handle strings, they work with big and little endian machines as is. I have tested this by installing ubuntu 12.10 ppc on qemu, that is why it took so long :-) llvm-svn: 170838 |
||
---|---|---|
.. | ||
bugpoint | ||
bugpoint-passes | ||
gold | ||
llc | ||
lli | ||
llvm-ar | ||
llvm-as | ||
llvm-bcanalyzer | ||
llvm-config | ||
llvm-cov | ||
llvm-diff | ||
llvm-dis | ||
llvm-dwarfdump | ||
llvm-extract | ||
llvm-jitlistener | ||
llvm-link | ||
llvm-mc | ||
llvm-mcmarkup | ||
llvm-nm | ||
llvm-objdump | ||
llvm-prof | ||
llvm-ranlib | ||
llvm-readobj | ||
llvm-rtdyld | ||
llvm-shlib | ||
llvm-size | ||
llvm-stress | ||
llvm-symbolizer | ||
lto | ||
macho-dump | ||
opt | ||
CMakeLists.txt | ||
LLVMBuild.txt | ||
Makefile |