2012-06-21 09:51:26 +00:00
|
|
|
set(LLVM_LINK_COMPONENTS
|
|
|
|
Support
|
|
|
|
)
|
|
|
|
|
|
|
|
add_llvm_unittest(SupportTests
|
|
|
|
AlignOfTest.cpp
|
|
|
|
AllocatorTest.cpp
|
2017-01-18 13:52:12 +00:00
|
|
|
ARMAttributeParser.cpp
|
2013-01-05 00:57:11 +00:00
|
|
|
ArrayRecyclerTest.cpp
|
2017-03-02 20:52:51 +00:00
|
|
|
BinaryStreamTest.cpp
|
2012-06-21 09:51:26 +00:00
|
|
|
BlockFrequencyTest.cpp
|
2014-04-29 16:12:13 +00:00
|
|
|
BranchProbabilityTest.cpp
|
2017-03-16 03:42:00 +00:00
|
|
|
CachePruningTest.cpp
|
2012-06-21 09:51:26 +00:00
|
|
|
Casting.cpp
|
2016-10-20 12:05:50 +00:00
|
|
|
Chrono.cpp
|
2012-06-21 09:51:26 +00:00
|
|
|
CommandLineTest.cpp
|
2013-04-23 08:28:39 +00:00
|
|
|
CompressionTest.cpp
|
2013-07-16 17:14:33 +00:00
|
|
|
ConvertUTFTest.cpp
|
2012-06-21 09:51:26 +00:00
|
|
|
DataExtractorTest.cpp
|
2016-12-27 09:31:20 +00:00
|
|
|
DebugTest.cpp
|
2015-02-03 21:08:33 +00:00
|
|
|
DwarfTest.cpp
|
2015-02-05 03:30:08 +00:00
|
|
|
EndianStreamTest.cpp
|
2012-06-21 09:51:26 +00:00
|
|
|
EndianTest.cpp
|
2013-01-20 20:32:30 +00:00
|
|
|
ErrorOrTest.cpp
|
2016-12-20 23:09:09 +00:00
|
|
|
ErrorTest.cpp
|
2012-08-01 02:29:50 +00:00
|
|
|
FileOutputBufferTest.cpp
|
2016-11-11 23:57:40 +00:00
|
|
|
FormatVariadicTest.cpp
|
2016-12-20 23:09:09 +00:00
|
|
|
GlobPatternTest.cpp
|
2016-10-13 17:43:20 +00:00
|
|
|
Host.cpp
|
2014-02-22 14:00:39 +00:00
|
|
|
LEB128Test.cpp
|
2013-12-27 04:28:57 +00:00
|
|
|
LineIteratorTest.cpp
|
2013-08-07 01:22:04 +00:00
|
|
|
LockFileManagerTest.cpp
|
2014-04-24 03:31:23 +00:00
|
|
|
MD5Test.cpp
|
2012-06-21 09:51:26 +00:00
|
|
|
ManagedStatic.cpp
|
|
|
|
MathExtrasTest.cpp
|
2012-10-04 20:29:44 +00:00
|
|
|
MemoryBufferTest.cpp
|
2012-09-19 20:46:12 +00:00
|
|
|
MemoryTest.cpp
|
2016-10-29 00:27:22 +00:00
|
|
|
NativeFormatTests.cpp
|
2012-06-21 09:51:26 +00:00
|
|
|
Path.cpp
|
2012-12-31 11:17:50 +00:00
|
|
|
ProcessTest.cpp
|
2013-04-22 19:03:55 +00:00
|
|
|
ProgramTest.cpp
|
2012-06-21 09:51:26 +00:00
|
|
|
RegexTest.cpp
|
2015-10-12 15:11:47 +00:00
|
|
|
ReplaceFileTest.cpp
|
2014-06-20 01:30:43 +00:00
|
|
|
ScaledNumberTest.cpp
|
2013-09-27 21:09:25 +00:00
|
|
|
SourceMgrTest.cpp
|
2014-07-09 19:40:08 +00:00
|
|
|
SpecialCaseListTest.cpp
|
2014-06-19 00:26:49 +00:00
|
|
|
StringPool.cpp
|
2012-06-21 09:51:26 +00:00
|
|
|
SwapByteOrderTest.cpp
|
2017-01-09 22:55:00 +00:00
|
|
|
TarWriterTest.cpp
|
2016-03-06 04:50:55 +00:00
|
|
|
TargetParserTest.cpp
|
2013-12-19 20:32:44 +00:00
|
|
|
ThreadLocalTest.cpp
|
2015-12-15 00:59:19 +00:00
|
|
|
ThreadPool.cpp
|
2017-01-09 22:55:00 +00:00
|
|
|
Threading.cpp
|
2015-12-22 17:36:17 +00:00
|
|
|
TimerTest.cpp
|
2016-02-25 03:58:21 +00:00
|
|
|
TypeNameTest.cpp
|
2015-08-05 22:57:34 +00:00
|
|
|
TrailingObjectsTest.cpp
|
Use trigrams to speed up SpecialCaseList.
Summary:
it's often the case when the rules in the SpecialCaseList
are of the form hel.o*bar. That gives us a chance to build
trigram index to quickly discard 99% of inputs without
running a full regex. A similar idea was used in Google Code Search
as described in the blog post:
https://swtch.com/~rsc/regexp/regexp4.html
The check is defeated, if there's at least one regex
more complicated than that. In this case, all inputs
will go through the regex. That said, the real-world
rules are often simple or can be simplied. That considerably
speeds up compiling Chromium with CFI and UBSan.
As measured on Chromium's content_message_generator.cc:
before, CFI: 44 s
after, CFI: 23 s
after, CFI, no blacklist: 23 s (~1% slower, but 3 runs were unable to show the difference)
after, regular compilation to bitcode: 23 s
Reviewers: pcc
Subscribers: mgorny, llvm-commits
Differential Revision: https://reviews.llvm.org/D27188
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@288303 91177308-0d34-0410-b5e6-96231b3b80d8
2016-12-01 02:54:54 +00:00
|
|
|
TrigramIndexTest.cpp
|
2013-09-04 16:00:12 +00:00
|
|
|
UnicodeTest.cpp
|
2012-12-12 20:46:15 +00:00
|
|
|
YAMLIOTest.cpp
|
2012-06-21 09:51:26 +00:00
|
|
|
YAMLParserTest.cpp
|
2012-09-14 23:36:56 +00:00
|
|
|
formatted_raw_ostream_test.cpp
|
2012-09-14 23:15:56 +00:00
|
|
|
raw_ostream_test.cpp
|
2015-04-14 15:00:34 +00:00
|
|
|
raw_pwrite_stream_test.cpp
|
2016-04-01 04:30:16 +00:00
|
|
|
raw_sha1_ostream_test.cpp
|
2016-09-27 15:45:57 +00:00
|
|
|
xxhashTest.cpp
|
2012-06-21 09:51:26 +00:00
|
|
|
)
|
2014-11-07 16:08:19 +00:00
|
|
|
|
|
|
|
# ManagedStatic.cpp uses <pthread>.
|
2017-02-10 01:59:20 +00:00
|
|
|
target_link_libraries(SupportTests ${LLVM_PTHREAD_LIB})
|