aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Object/XCOFFObjectFile.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/lib/Object/XCOFFObjectFile.cpp')
-rw-r--r--llvm/lib/Object/XCOFFObjectFile.cpp21
1 files changed, 18 insertions, 3 deletions
diff --git a/llvm/lib/Object/XCOFFObjectFile.cpp b/llvm/lib/Object/XCOFFObjectFile.cpp
index a16a458..74b10fa 100644
--- a/llvm/lib/Object/XCOFFObjectFile.cpp
+++ b/llvm/lib/Object/XCOFFObjectFile.cpp
@@ -11,6 +11,7 @@
//===----------------------------------------------------------------------===//
#include "llvm/Object/XCOFFObjectFile.h"
+#include "llvm/ADT/StringSwitch.h"
#include "llvm/MC/SubtargetFeature.h"
#include "llvm/Support/DataExtractor.h"
#include <cstddef>
@@ -296,9 +297,7 @@ uint64_t XCOFFObjectFile::getSectionAlignment(DataRefImpl Sec) const {
}
bool XCOFFObjectFile::isSectionCompressed(DataRefImpl Sec) const {
- bool Result = false;
- llvm_unreachable("Not yet implemented!");
- return Result;
+ return false;
}
bool XCOFFObjectFile::isSectionText(DataRefImpl Sec) const {
@@ -458,6 +457,22 @@ Expected<uint64_t> XCOFFObjectFile::getStartAddress() const {
return 0;
}
+StringRef XCOFFObjectFile::mapDebugSectionName(StringRef Name) const {
+ return StringSwitch<StringRef>(Name)
+ .Case("dwinfo", "debug_info")
+ .Case("dwline", "debug_line")
+ .Case("dwpbnms", "debug_pubnames")
+ .Case("dwpbtyp", "debug_pubtypes")
+ .Case("dwarnge", "debug_aranges")
+ .Case("dwabrev", "debug_abbrev")
+ .Case("dwstr", "debug_str")
+ .Case("dwrnges", "debug_ranges")
+ .Case("dwloc", "debug_loc")
+ .Case("dwframe", "debug_frame")
+ .Case("dwmac", "debug_macinfo")
+ .Default(Name);
+}
+
size_t XCOFFObjectFile::getFileHeaderSize() const {
return is64Bit() ? sizeof(XCOFFFileHeader64) : sizeof(XCOFFFileHeader32);
}