llvm-project/llvm/tools
Rafael Espindola a9f810b6b5 Add a function to get the segment name of a section.
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
2012-12-21 03:47:03 +00:00
..
bugpoint Sort the #include lines for tools/... 2012-12-04 10:44:52 +00:00
bugpoint-passes Move the InstVisitor utility into VMCore where it belongs. It heavily 2012-11-30 03:08:41 +00:00
gold Sort the #include lines for tools/... 2012-12-04 10:44:52 +00:00
llc llvm/tools: Add #include "llvm/TargetTransformInfo.h" 2012-12-11 05:53:37 +00:00
lli Sort the #include lines for tools/... 2012-12-04 10:44:52 +00:00
llvm-ar Sort the #include lines for tools/... 2012-12-04 10:44:52 +00:00
llvm-as Sort the #include lines for tools/... 2012-12-04 10:44:52 +00:00
llvm-bcanalyzer Sort the #include lines for tools/... 2012-12-04 10:44:52 +00:00
llvm-config Re-enable support for --program-prefix. 2012-10-01 18:40:32 +00:00
llvm-cov Remove accidental commit. 2012-11-07 18:39:32 +00:00
llvm-diff Sort the #include lines for tools/... 2012-12-04 10:44:52 +00:00
llvm-dis Sort the #include lines for tools/... 2012-12-04 10:44:52 +00:00
llvm-dwarfdump Sort the #include lines for tools/... 2012-12-04 10:44:52 +00:00
llvm-extract Sort the #include lines for tools/... 2012-12-04 10:44:52 +00:00
llvm-jitlistener Sort the #include lines for tools/... 2012-12-04 10:44:52 +00:00
llvm-link Sort the #include lines for tools/... 2012-12-04 10:44:52 +00:00
llvm-mc Remove MCTargetAsmLexer and its derived classes now that edis, 2012-12-20 14:43:30 +00:00
llvm-mcmarkup MC: Simple example parser for MC assembly markup. 2012-10-31 23:24:13 +00:00
llvm-nm Sort the #include lines for tools/... 2012-12-04 10:44:52 +00:00
llvm-objdump Add a function to get the segment name of a section. 2012-12-21 03:47:03 +00:00
llvm-prof Sort the #include lines for tools/... 2012-12-04 10:44:52 +00:00
llvm-ranlib Sort the #include lines for tools/... 2012-12-04 10:44:52 +00:00
llvm-readobj Sort the #include lines for tools/... 2012-12-04 10:44:52 +00:00
llvm-rtdyld Sort the #include lines for tools/... 2012-12-04 10:44:52 +00:00
llvm-shlib Add support for the OpenBSD for Bitrig. 2012-08-06 20:52:18 +00:00
llvm-size Sort the #include lines for tools/... 2012-12-04 10:44:52 +00:00
llvm-stress Sort the #include lines for tools/... 2012-12-04 10:44:52 +00:00
llvm-symbolizer Sort the #include lines for tools/... 2012-12-04 10:44:52 +00:00
lto Aligned bundling support. Following the discussion here: 2012-12-20 19:05:53 +00:00
macho-dump Refactor data-in-code annotations. 2012-05-18 19:12:01 +00:00
opt llvm/tools: Add #include "llvm/TargetTransformInfo.h" 2012-12-11 05:53:37 +00:00
CMakeLists.txt Adding tests for the Intel JIT event listener's MCJIT support. 2012-11-21 20:38:26 +00:00
LLVMBuild.txt Adding tests for the Intel JIT event listener's MCJIT support. 2012-11-21 20:38:26 +00:00
Makefile Make building of llvm-jitlistener conditional on the USE_INTEL_JITEVENTS setting. 2012-11-27 01:24:25 +00:00