diff options
author | Saleem Abdulrasool <compnerd@compnerd.org> | 2014-03-31 16:34:41 +0000 |
---|---|---|
committer | Saleem Abdulrasool <compnerd@compnerd.org> | 2014-03-31 16:34:41 +0000 |
commit | 28b82bc39ef076527c07718724913f70b5d60b69 (patch) | |
tree | 3f9a60d2957076f11d17d293b7dc04d0536d4235 /llvm/unittests/ADT/TripleTest.cpp | |
parent | 7b4f7d220684b5fff1142003461de689e2dc4f52 (diff) | |
download | bcm5719-llvm-28b82bc39ef076527c07718724913f70b5d60b69.tar.gz bcm5719-llvm-28b82bc39ef076527c07718724913f70b5d60b69.zip |
Support: generalise object type handling for Windows
This generalises the object file type parsing to all Windows environments. This
is used by cygwin as well as MSVC environments for MCJIT. This also makes the
triple more similar to Chandler's suggestion of a separate field for the object
file format.
llvm-svn: 205219
Diffstat (limited to 'llvm/unittests/ADT/TripleTest.cpp')
-rw-r--r-- | llvm/unittests/ADT/TripleTest.cpp | 22 |
1 files changed, 17 insertions, 5 deletions
diff --git a/llvm/unittests/ADT/TripleTest.cpp b/llvm/unittests/ADT/TripleTest.cpp index 7beddb93c77..2e9d585b5dc 100644 --- a/llvm/unittests/ADT/TripleTest.cpp +++ b/llvm/unittests/ADT/TripleTest.cpp @@ -510,11 +510,19 @@ TEST(TripleTest, FileFormat) { EXPECT_EQ(Triple::COFF, Triple("i686--win32").getObjectFormat()); EXPECT_EQ(Triple::ELF, Triple("i686-pc-windows-msvc-elf").getObjectFormat()); + EXPECT_EQ(Triple::ELF, Triple("i686-pc-cygwin-elf").getObjectFormat()); - { - Triple Normalized(Triple::normalize("i686-pc-windows-msvc-elf")); - EXPECT_EQ(Triple::ELF, Normalized.getObjectFormat()); - } + Triple MSVCNormalized(Triple::normalize("i686-pc-windows-msvc-elf")); + EXPECT_EQ(Triple::ELF, MSVCNormalized.getObjectFormat()); + + Triple GNUWindowsNormalized(Triple::normalize("i686-pc-windows-gnu-elf")); + EXPECT_EQ(Triple::ELF, GNUWindowsNormalized.getObjectFormat()); + + Triple CygnusNormalised(Triple::normalize("i686-pc-windows-cygnus-elf")); + EXPECT_EQ(Triple::ELF, CygnusNormalised.getObjectFormat()); + + Triple CygwinNormalized(Triple::normalize("i686-pc-cygwin-elf")); + EXPECT_EQ(Triple::ELF, CygwinNormalized.getObjectFormat()); Triple T = Triple(""); T.setObjectFormat(Triple::ELF); @@ -548,8 +556,12 @@ TEST(TripleTest, NormalizeWindows) { EXPECT_EQ("x86_64-pc-windows-macho", Triple::normalize("x86_64-pc-win32-macho")); EXPECT_EQ("x86_64--windows-macho", Triple::normalize("x86_64-win32-macho")); + EXPECT_EQ("i686-pc-windows-cygnus", + Triple::normalize("i686-pc-windows-cygnus")); + EXPECT_EQ("i686-pc-windows-gnu", Triple::normalize("i686-pc-windows-gnu")); EXPECT_EQ("i686-pc-windows-itanium", Triple::normalize("i686-pc-windows-itanium")); - EXPECT_EQ("i686-pc-windows-msvc", Triple::normalize("i686-pc-windows-msvc")); + + EXPECT_EQ("i686-pc-windows-elf", Triple::normalize("i686-pc-windows-elf-elf")); } } |