diff options
Diffstat (limited to 'llvm/unittests/DebugInfo/DWARF')
-rw-r--r-- | llvm/unittests/DebugInfo/DWARF/DWARFDebugInfoTest.cpp | 24 | ||||
-rw-r--r-- | llvm/unittests/DebugInfo/DWARF/DWARFDebugLineTest.cpp | 7 | ||||
-rw-r--r-- | llvm/unittests/DebugInfo/DWARF/DwarfUtils.cpp | 16 | ||||
-rw-r--r-- | llvm/unittests/DebugInfo/DWARF/DwarfUtils.h | 3 |
4 files changed, 32 insertions, 18 deletions
diff --git a/llvm/unittests/DebugInfo/DWARF/DWARFDebugInfoTest.cpp b/llvm/unittests/DebugInfo/DWARF/DWARFDebugInfoTest.cpp index ef51ce0fbff..e2631afb007 100644 --- a/llvm/unittests/DebugInfo/DWARF/DWARFDebugInfoTest.cpp +++ b/llvm/unittests/DebugInfo/DWARF/DWARFDebugInfoTest.cpp @@ -41,7 +41,7 @@ namespace { template <uint16_t Version, class AddrType, class RefAddrType> void TestAllForms() { - Triple Triple = getHostTripleForAddrSize(sizeof(AddrType)); + Triple Triple = getDefaultTargetTripleForAddrSize(sizeof(AddrType)); if (!isConfigurationSupported(Triple)) return; @@ -455,7 +455,7 @@ TEST(DWARFDebugInfo, TestDWARF32Version5Addr8AllForms) { } template <uint16_t Version, class AddrType> void TestChildren() { - Triple Triple = getHostTripleForAddrSize(sizeof(AddrType)); + Triple Triple = getDefaultTargetTripleForAddrSize(sizeof(AddrType)); if (!isConfigurationSupported(Triple)) return; @@ -585,7 +585,7 @@ TEST(DWARFDebugInfo, TestDWARF32Version4Addr8Children) { } template <uint16_t Version, class AddrType> void TestReferences() { - Triple Triple = getHostTripleForAddrSize(sizeof(AddrType)); + Triple Triple = getDefaultTargetTripleForAddrSize(sizeof(AddrType)); if (!isConfigurationSupported(Triple)) return; @@ -835,7 +835,7 @@ TEST(DWARFDebugInfo, TestDWARF32Version4Addr8References) { } template <uint16_t Version, class AddrType> void TestAddresses() { - Triple Triple = getHostTripleForAddrSize(sizeof(AddrType)); + Triple Triple = getDefaultTargetTripleForAddrSize(sizeof(AddrType)); if (!isConfigurationSupported(Triple)) return; @@ -1007,7 +1007,7 @@ TEST(DWARFDebugInfo, TestDWARF32Version4Addr8Addresses) { } TEST(DWARFDebugInfo, TestStringOffsets) { - Triple Triple = getHostTripleForAddrSize(sizeof(void *)); + Triple Triple = getNormalizedDefaultTargetTriple(); if (!isConfigurationSupported(Triple)) return; @@ -1071,7 +1071,7 @@ TEST(DWARFDebugInfo, TestStringOffsets) { } TEST(DWARFDebugInfo, TestEmptyStringOffsets) { - Triple Triple = getHostTripleForAddrSize(sizeof(void *)); + Triple Triple = getNormalizedDefaultTargetTriple(); if (!isConfigurationSupported(Triple)) return; @@ -1100,7 +1100,7 @@ TEST(DWARFDebugInfo, TestEmptyStringOffsets) { } TEST(DWARFDebugInfo, TestRelations) { - Triple Triple = getHostTripleForAddrSize(sizeof(void *)); + Triple Triple = getNormalizedDefaultTargetTriple(); if (!isConfigurationSupported(Triple)) return; @@ -1287,7 +1287,7 @@ TEST(DWARFDebugInfo, TestDWARFDie) { } TEST(DWARFDebugInfo, TestChildIterators) { - Triple Triple = getHostTripleForAddrSize(sizeof(void *)); + Triple Triple = getNormalizedDefaultTargetTriple(); if (!isConfigurationSupported(Triple)) return; @@ -1401,7 +1401,7 @@ TEST(DWARFDebugInfo, TestEmptyChildren) { } TEST(DWARFDebugInfo, TestAttributeIterators) { - Triple Triple = getHostTripleForAddrSize(sizeof(void *)); + Triple Triple = getNormalizedDefaultTargetTriple(); if (!isConfigurationSupported(Triple)) return; @@ -1463,7 +1463,7 @@ TEST(DWARFDebugInfo, TestAttributeIterators) { } TEST(DWARFDebugInfo, TestFindRecurse) { - Triple Triple = getHostTripleForAddrSize(sizeof(void *)); + Triple Triple = getNormalizedDefaultTargetTriple(); if (!isConfigurationSupported(Triple)) return; @@ -1677,7 +1677,7 @@ TEST(DWARFDebugInfo, TestDwarfToFunctions) { } TEST(DWARFDebugInfo, TestFindAttrs) { - Triple Triple = getHostTripleForAddrSize(sizeof(void *)); + Triple Triple = getNormalizedDefaultTargetTriple(); if (!isConfigurationSupported(Triple)) return; @@ -1740,7 +1740,7 @@ TEST(DWARFDebugInfo, TestFindAttrs) { } TEST(DWARFDebugInfo, TestImplicitConstAbbrevs) { - Triple Triple = getHostTripleForAddrSize(sizeof(void *)); + Triple Triple = getNormalizedDefaultTargetTriple(); if (!isConfigurationSupported(Triple)) return; diff --git a/llvm/unittests/DebugInfo/DWARF/DWARFDebugLineTest.cpp b/llvm/unittests/DebugInfo/DWARF/DWARFDebugLineTest.cpp index d016a946b1a..fef8dc50fb4 100644 --- a/llvm/unittests/DebugInfo/DWARF/DWARFDebugLineTest.cpp +++ b/llvm/unittests/DebugInfo/DWARF/DWARFDebugLineTest.cpp @@ -37,7 +37,7 @@ struct CommonFixture { } bool setupGenerator(uint16_t Version = 4) { - Triple T = getHostTripleForAddrSize(8); + Triple T = getDefaultTargetTripleForAddrSize(8); if (!isConfigurationSupported(T)) return false; auto ExpectedGenerator = Generator::create(T, Version); @@ -50,8 +50,9 @@ struct CommonFixture { Context = createContext(); assert(Context != nullptr && "test state is not valid"); const DWARFObject &Obj = Context->getDWARFObj(); - LineData = DWARFDataExtractor(Obj, Obj.getLineSection(), - sys::IsLittleEndianHost, 8); + LineData = DWARFDataExtractor( + Obj, Obj.getLineSection(), + getDefaultTargetTripleForAddrSize(8).isLittleEndian(), 8); } std::unique_ptr<DWARFContext> createContext() { diff --git a/llvm/unittests/DebugInfo/DWARF/DwarfUtils.cpp b/llvm/unittests/DebugInfo/DWARF/DwarfUtils.cpp index fe0cebd75b0..249cfb42271 100644 --- a/llvm/unittests/DebugInfo/DWARF/DwarfUtils.cpp +++ b/llvm/unittests/DebugInfo/DWARF/DwarfUtils.cpp @@ -9,6 +9,7 @@ #include "DwarfUtils.h" #include "llvm/ADT/Triple.h" #include "llvm/Config/llvm-config.h" +#include "llvm/Support/Host.h" #include "llvm/Support/TargetRegistry.h" #include "llvm/Support/TargetSelect.h" @@ -25,9 +26,20 @@ static void initLLVMIfNeeded() { } } -Triple llvm::dwarf::utils::getHostTripleForAddrSize(uint8_t AddrSize) { - Triple T(Triple::normalize(LLVM_HOST_TRIPLE)); +Triple llvm::dwarf::utils::getNormalizedDefaultTargetTriple() { + Triple T(Triple::normalize(sys::getDefaultTargetTriple())); + return T; +} + +Triple llvm::dwarf::utils::getDefaultTargetTripleForAddrSize(uint8_t AddrSize) { + Triple T = getNormalizedDefaultTargetTriple(); + + assert((AddrSize == 4 || AddrSize == 8) && + "Only 32-bit/64-bit address size variants are supported"); + + // If a 32-bit/64-bit address size was specified, try to convert the triple + // if it is for the wrong variant. if (AddrSize == 8 && T.isArch32Bit()) return T.get64BitArchVariant(); if (AddrSize == 4 && T.isArch64Bit()) diff --git a/llvm/unittests/DebugInfo/DWARF/DwarfUtils.h b/llvm/unittests/DebugInfo/DWARF/DwarfUtils.h index e96b2b94479..036071e0b56 100644 --- a/llvm/unittests/DebugInfo/DWARF/DwarfUtils.h +++ b/llvm/unittests/DebugInfo/DWARF/DwarfUtils.h @@ -18,7 +18,8 @@ class Triple; namespace dwarf { namespace utils { -Triple getHostTripleForAddrSize(uint8_t AddrSize); +Triple getDefaultTargetTripleForAddrSize(uint8_t AddrSize); +Triple getNormalizedDefaultTargetTriple(); bool isConfigurationSupported(Triple &T); } // end namespace utils |