Add a funciton 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 informing
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.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@170095 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Rafael Espindola
2012-12-13 04:07:18 +00:00
parent 99c86c72b2
commit e3ec87a6f7
4 changed files with 49 additions and 15 deletions

View File

@@ -44,6 +44,11 @@ public:
virtual unsigned getArch() const;
virtual StringRef getLoadName() const;
// In a MachO file, sections have a segment name. This is used in the .o
// files. They have a single segment, but this field specifies which segment
// a section should be put in in the final object.
error_code getSectionFinalSegmentName(DataRefImpl Sec, StringRef &Res) const;
MachOObject *getObject() { return MachOObj.get(); }
static inline bool classof(const Binary *v) {