[SubZero] Generate MIPS.abiflags section

The patch generates MIPS.abiflags section. This section contains a
versioned data structure with essential information required for
loader to determine the requirements of the application.

R=stichnot@chromium.org

Review URL: https://codereview.chromium.org/2471883005 .

Patch from Jaydeep Patil <jaydeep.patil@imgtec.com>.
diff --git a/src/IceELFObjectWriter.cpp b/src/IceELFObjectWriter.cpp
index 2b32e23..4663b71 100644
--- a/src/IceELFObjectWriter.cpp
+++ b/src/IceELFObjectWriter.cpp
@@ -301,6 +301,21 @@
 
 } // end of anonymous namespace
 
+void ELFObjectWriter::writeTargetRODataSection(const std::string &Name,
+                                               Elf64_Word ShType,
+                                               Elf64_Xword ShFlags,
+                                               Elf64_Xword ShAddralign,
+                                               Elf64_Xword ShEntsize,
+                                               const llvm::StringRef &SecData) {
+  TimerMarker Timer(TimerStack::TT_writeELF, &Ctx);
+  assert(!SectionNumbersAssigned);
+  ELFDataSection *Section = createSection<ELFDataSection>(
+      Name, ShType, ShFlags, ShAddralign, ShEntsize);
+  Section->setFileOffset(alignFileOffset(ShAddralign));
+  Section->appendData(Str, llvm::StringRef(SecData.data(), SecData.size()));
+  RODataSections.push_back(Section);
+}
+
 void ELFObjectWriter::writeDataSection(const VariableDeclarationList &Vars,
                                        FixupKind RelocationKind,
                                        const std::string &SectionSuffix,