diff options
Diffstat (limited to 'llvm/unittests/Transforms/Utils/SpecialCaseList.cpp')
-rw-r--r-- | llvm/unittests/Transforms/Utils/SpecialCaseList.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/llvm/unittests/Transforms/Utils/SpecialCaseList.cpp b/llvm/unittests/Transforms/Utils/SpecialCaseList.cpp index d87dab00db9..9deee3c1e9d 100644 --- a/llvm/unittests/Transforms/Utils/SpecialCaseList.cpp +++ b/llvm/unittests/Transforms/Utils/SpecialCaseList.cpp @@ -139,4 +139,20 @@ TEST_F(SpecialCaseListTest, GlobalIsIn) { EXPECT_TRUE(SCL->isIn(*Bar, "init")); } +TEST_F(SpecialCaseListTest, Substring) { + Module M("othello", Ctx); + Function *F = makeFunction("tomfoolery", M); + GlobalVariable *GV = makeGlobal("bartender", "t", M); + + OwningPtr<SpecialCaseList> SCL(makeSpecialCaseList("src:hello\n" + "fun:foo\n" + "global:bar\n")); + EXPECT_FALSE(SCL->isIn(M)); + EXPECT_FALSE(SCL->isIn(*F)); + EXPECT_FALSE(SCL->isIn(*GV)); + + SCL.reset(makeSpecialCaseList("fun:*foo*\n")); + EXPECT_TRUE(SCL->isIn(*F)); +} + } |