1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-19 02:52:53 +02:00
llvm-mirror/unittests/Support
Cong Hou 07a3f21d1f Update the branch weight metadata in JumpThreading pass.
Currently in JumpThreading pass, the branch weight metadata is not updated after CFG modification. Consider the jump threading on PredBB, BB, and SuccBB. After jump threading, the weight on BB->SuccBB should be adjusted as some of it is contributed by the edge PredBB->BB, which doesn't exist anymore. This patch tries to update the edge weight in metadata on BB->SuccBB by scaling it by 1 - Freq(PredBB->BB) / Freq(BB->SuccBB).

This is the third attempt to submit this patch, while the first two led to failures in some FDO tests. After investigation, it is the edge weight normalization that caused those failures. In this patch the edge weight normalization is fixed so that there is no zero weight in the output and the sum of all weights can fit in 32-bit integer. Several unit tests are added.

Differential revision: http://reviews.llvm.org/D10979

llvm-svn: 250345
2015-10-14 23:14:17 +00:00
..
AlignOfTest.cpp Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
AllocatorTest.cpp Fix "the the" in comments. 2015-06-19 01:53:21 +00:00
ArrayRecyclerTest.cpp
BlockFrequencyTest.cpp Add - and -= operators to BlockFrequency using saturating arithmetic. 2015-10-12 18:34:00 +00:00
BranchProbabilityTest.cpp Update the branch weight metadata in JumpThreading pass. 2015-10-14 23:14:17 +00:00
Casting.cpp Removing LLVM_EXPLICIT, as MSVC 2012 was the last reason for requiring the macro. NFC; LLVM edition. 2015-02-15 22:00:20 +00:00
CMakeLists.txt Fix rename() sometimes failing if another process uses openFileForRead() 2015-10-12 15:11:47 +00:00
CommandLineTest.cpp There is only one saver of strings. 2015-08-13 01:07:02 +00:00
CompressionTest.cpp [cleanup] Re-sort all the #include lines in LLVM using 2015-01-14 11:23:27 +00:00
ConvertUTFTest.cpp Fix unsigned/signed comparison warning. 2015-01-27 01:01:39 +00:00
DataExtractorTest.cpp [C++11] Use 'nullptr'. 2014-06-08 22:29:17 +00:00
DwarfTest.cpp Support: Add dwarf::getOperationEncoding() 2015-02-13 01:05:00 +00:00
EndianStreamTest.cpp Add support for double / float to EndianStream 2015-02-05 03:30:08 +00:00
EndianTest.cpp Fix another UBSan test error from r248897 and follow on fix r249689 2015-10-08 20:52:23 +00:00
ErrorOrTest.cpp Don't use std::errc. 2015-06-13 17:23:04 +00:00
FileOutputBufferTest.cpp Return ErrorOr from FileOutputBuffer::create. NFC. 2015-08-13 00:31:39 +00:00
formatted_raw_ostream_test.cpp
IteratorTest.cpp [ADT] Generalize pointee_iterator to smart pointers by using decltype. 2014-04-24 21:10:35 +00:00
LEB128Test.cpp [Support] add decodeSLEB128() 2014-09-15 21:51:49 +00:00
LineIteratorTest.cpp LineIterator: Provide a variant that keeps blank lines 2014-09-17 15:43:01 +00:00
LockFileManagerTest.cpp Asserting that the call to chdir succeeds in this test. Fixes some -Wunused-result warnings. 2014-08-13 11:17:41 +00:00
Makefile Unbreak build: Makefile must have the same change as CMakeLists.txt 2015-05-08 16:39:59 +00:00
ManagedStatic.cpp Re-apply r211287: Remove support for LLVM runtime multi-threading. 2014-06-27 15:13:01 +00:00
MathExtrasTest.cpp HHVM calling conventions. 2015-09-29 22:09:16 +00:00
MD5Test.cpp Simplify creation of a bunch of ArrayRefs by using None, makeArrayRef or just letting them be implicitly created. 2014-08-27 05:25:25 +00:00
MemoryBufferTest.cpp Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
MemoryTest.cpp Remove dead code. NFC. 2014-12-04 16:59:36 +00:00
Path.cpp Make test resilient against windows path separators. 2015-10-05 14:15:13 +00:00
ProcessTest.cpp Remove dead code. NFC. 2014-12-04 16:59:36 +00:00
ProgramTest.cpp More long path name support on Windows, this time in program execution. 2014-11-24 18:05:29 +00:00
raw_ostream_test.cpp Teach raw_ostream to support hex formatting without a prefix '0x'. 2015-01-26 18:21:33 +00:00
raw_pwrite_stream_test.cpp Disable failing TestDevNull test on Windows 2015-04-29 16:54:11 +00:00
RegexTest.cpp [C++11] Remove uses of LLVM_HAS_RVALUE_REFERENCES from the unittests. 2014-03-01 09:36:06 +00:00
ReplaceFileTest.cpp Fix rename() sometimes failing if another process uses openFileForRead() 2015-10-12 15:11:47 +00:00
ScaledNumberTest.cpp Fix infinite recursion in ScaledNumber::toInt. 2015-05-01 17:59:15 +00:00
SourceMgrTest.cpp Return a std::unique_ptr when creating a new MemoryBuffer. 2014-08-27 20:03:13 +00:00
SpecialCaseListTest.cpp SpecialCaseList: Add support for parsing multiple input files. 2015-02-04 17:39:48 +00:00
StreamingMemoryObject.cpp Use std::unique_ptr to manage the DataStreamer in bitcode parsing. 2015-06-16 23:29:49 +00:00
StringPool.cpp StringPool: Cleanup typos in unittest comments 2014-12-15 01:04:49 +00:00
SwapByteOrderTest.cpp Unit tests for the getSwappedBytes(double) fix from r237673. 2015-05-20 14:57:43 +00:00
TargetRegistry.cpp Readdress r236990, use of static members on a non-static variable. 2015-05-11 22:20:48 +00:00
ThreadLocalTest.cpp ThreadLocal: Return a mutable pointer if templated with a non-const type 2014-12-15 01:04:45 +00:00
TimeValueTest.cpp [C++11] Use 'nullptr'. 2014-06-08 22:29:17 +00:00
TrailingObjectsTest.cpp Fix Visual C++ error C2248: 2015-08-06 07:59:26 +00:00
UnicodeTest.cpp
YAMLIOTest.cpp Revert r239972 (YAML: Assign a value returned by the default constructor to the value in an optional mapping). 2015-06-17 23:48:06 +00:00
YAMLParserTest.cpp YAML: Null terminate block scalar's value. 2015-05-21 19:45:02 +00:00