summaryrefslogtreecommitdiffstats
path: root/lld/lib/ReaderWriter/ELF/Mips/MipsSectionChunks.h
diff options
context:
space:
mode:
authorSimon Atanasyan <simon@atanasyan.com>2015-04-21 17:02:35 +0000
committerSimon Atanasyan <simon@atanasyan.com>2015-04-21 17:02:35 +0000
commitfcb19e19d0412f7986d158578b13d11858cf253c (patch)
tree4e58259ca2ef140cee25639500bab4ce9a6012e2 /lld/lib/ReaderWriter/ELF/Mips/MipsSectionChunks.h
parentd64f8a5188d953a50f1153ed26631030e7d75bf5 (diff)
downloadbcm5719-llvm-fcb19e19d0412f7986d158578b13d11858cf253c.tar.gz
bcm5719-llvm-fcb19e19d0412f7986d158578b13d11858cf253c.zip
[Mips] Write .reginfo section into the separate PT_MIPS_REGINFO segment
llvm-svn: 235391
Diffstat (limited to 'lld/lib/ReaderWriter/ELF/Mips/MipsSectionChunks.h')
-rw-r--r--lld/lib/ReaderWriter/ELF/Mips/MipsSectionChunks.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/lld/lib/ReaderWriter/ELF/Mips/MipsSectionChunks.h b/lld/lib/ReaderWriter/ELF/Mips/MipsSectionChunks.h
index cb5d612fed6..9d3040701f7 100644
--- a/lld/lib/ReaderWriter/ELF/Mips/MipsSectionChunks.h
+++ b/lld/lib/ReaderWriter/ELF/Mips/MipsSectionChunks.h
@@ -26,7 +26,7 @@ public:
const MipsReginfo &reginfo)
: Section<ELFT>(ctx, ".reginfo", "MipsReginfo"),
_targetLayout(targetLayout) {
- this->setOrder(MipsTargetLayout<ELFT>::ORDER_RO_NOTE);
+ this->setOrder(MipsTargetLayout<ELFT>::ORDER_MIPS_REGINFO);
this->_entSize = sizeof(Elf_RegInfo);
this->_fsize = sizeof(Elf_RegInfo);
this->_msize = sizeof(Elf_RegInfo);
@@ -42,6 +42,10 @@ public:
_reginfo.ri_cprmask[3] = reginfo._cpRegMask[3];
}
+ StringRef segmentKindToStr() const override { return "REGINFO"; }
+
+ bool hasOutputSegment() const override { return true; }
+
void write(ELFWriter *writer, TargetLayout<ELFT> &layout,
llvm::FileOutputBuffer &buffer) override {
uint8_t *dest = buffer.getBufferStart() + this->fileOffset();
OpenPOWER on IntegriCloud