diff options
author | Evandro Menezes <e.menezes@samsung.com> | 2019-01-11 18:54:25 +0000 |
---|---|---|
committer | Evandro Menezes <e.menezes@samsung.com> | 2019-01-11 18:54:25 +0000 |
commit | 0674762112312636db7172e4dbdc8c80b44e4fd1 (patch) | |
tree | e37cad45f24eb1fcd297b8265be84ee1c2f1aa54 /llvm/unittests | |
parent | a61edd501832d90f868b1a8ec3940abaf7ba6bf7 (diff) | |
download | bcm5719-llvm-0674762112312636db7172e4dbdc8c80b44e4fd1.tar.gz bcm5719-llvm-0674762112312636db7172e4dbdc8c80b44e4fd1.zip |
[AArch64] Create feature set for Exynos M4
Complete the feature set for Exynos M4 and update test cases.
llvm-svn: 350953
Diffstat (limited to 'llvm/unittests')
-rw-r--r-- | llvm/unittests/Support/TargetParserTest.cpp | 25 |
1 files changed, 18 insertions, 7 deletions
diff --git a/llvm/unittests/Support/TargetParserTest.cpp b/llvm/unittests/Support/TargetParserTest.cpp index 28e995eae6b..18bbb6a2103 100644 --- a/llvm/unittests/Support/TargetParserTest.cpp +++ b/llvm/unittests/Support/TargetParserTest.cpp @@ -265,11 +265,12 @@ TEST(TargetParserTest, testARMCPU) { ARM::AEK_VIRT | ARM::AEK_HWDIVARM | ARM::AEK_HWDIVTHUMB | ARM::AEK_DSP, "8-A")); - EXPECT_TRUE(testARMCPU("exynos-m4", "armv8-a", "crypto-neon-fp-armv8", + EXPECT_TRUE(testARMCPU("exynos-m4", "armv8.2-a", "crypto-neon-fp-armv8", ARM::AEK_CRC | ARM::AEK_SEC | ARM::AEK_MP | ARM::AEK_VIRT | ARM::AEK_HWDIVARM | - ARM::AEK_HWDIVTHUMB | ARM::AEK_DSP, - "8-A")); + ARM::AEK_HWDIVTHUMB | ARM::AEK_DSP | ARM::AEK_DOTPROD | + ARM::AEK_FP16 | ARM::AEK_RAS, + "8.2-A")); EXPECT_TRUE(testARMCPU("cortex-m23", "armv8-m.base", "none", ARM::AEK_HWDIVTHUMB, "8-M.Baseline")); EXPECT_TRUE(testARMCPU("cortex-m33", "armv8-m.main", "fpv5-sp-d16", @@ -759,9 +760,11 @@ TEST(TargetParserTest, testAArch64CPU) { AArch64::AEK_CRC | AArch64::AEK_CRYPTO | AArch64::AEK_FP | AArch64::AEK_SIMD, "8-A")); EXPECT_TRUE(testAArch64CPU( - "exynos-m4", "armv8-a", "crypto-neon-fp-armv8", - AArch64::AEK_CRC | AArch64::AEK_CRYPTO | AArch64::AEK_FP | - AArch64::AEK_SIMD, "8-A")); + "exynos-m4", "armv8.2-a", "crypto-neon-fp-armv8", + AArch64::AEK_CRC | AArch64::AEK_CRYPTO | + AArch64::AEK_DOTPROD | AArch64::AEK_FP | AArch64::AEK_FP16 | + AArch64::AEK_LSE | AArch64::AEK_RAS | AArch64::AEK_RDM | + AArch64::AEK_SIMD, "8.2-A")); EXPECT_TRUE(testAArch64CPU( "falkor", "armv8-a", "crypto-neon-fp-armv8", AArch64::AEK_CRC | AArch64::AEK_CRYPTO | AArch64::AEK_FP | @@ -870,8 +873,16 @@ TEST(TargetParserTest, testAArch64Extension) { AArch64::ArchKind::INVALID, "ras")); EXPECT_FALSE(testAArch64Extension("exynos-m3", AArch64::ArchKind::INVALID, "ras")); + EXPECT_TRUE(testAArch64Extension("exynos-m4", + AArch64::ArchKind::INVALID, "lse")); + EXPECT_TRUE(testAArch64Extension("exynos-m4", + AArch64::ArchKind::INVALID, "rdm")); + EXPECT_TRUE(testAArch64Extension("exynos-m4", + AArch64::ArchKind::INVALID, "ras")); EXPECT_FALSE(testAArch64Extension("exynos-m4", - AArch64::ArchKind::INVALID, "ras")); + AArch64::ArchKind::INVALID, "fullfp16")); + EXPECT_TRUE(testAArch64Extension("exynos-m4", + AArch64::ArchKind::INVALID, "dotprod")); EXPECT_TRUE(testAArch64Extension("falkor", AArch64::ArchKind::INVALID, "rdm")); EXPECT_FALSE(testAArch64Extension("kryo", |