diff options
author | Cong Hou <congh@google.com> | 2015-08-05 22:01:20 +0000 |
---|---|---|
committer | Cong Hou <congh@google.com> | 2015-08-05 22:01:20 +0000 |
commit | 36e7e52aa4f8d79c898d74f93711c4a0c78e253f (patch) | |
tree | 2adf8ae761c69bf9271220f2371bf51410f463f5 /llvm/lib/IR/Module.cpp | |
parent | 758f3f542af978ec48745a01c998ccbbc7a7a077 (diff) | |
download | llvm-36e7e52aa4f8d79c898d74f93711c4a0c78e253f.zip llvm-36e7e52aa4f8d79c898d74f93711c4a0c78e253f.tar.gz llvm-36e7e52aa4f8d79c898d74f93711c4a0c78e253f.tar.bz2 |
Record whether the weights on out-edges from a MBB are normalized.
1. Create a utility function normalizeEdgeWeights() in MachineBranchProbabilityInfo that normalizes a list of edge weights so that the sum of then can fit in uint32_t.
2. Provide an interface in MachineBasicBlock to normalize its successors' weights.
3. Add a flag in MachineBasicBlock that tracks whether its successors' weights are normalized.
4. Provide an overload of getSumForBlock that accepts a non-const pointer to a MBB so that it can force normalizing this MBB's successors' weights.
5. Update several uses of getSumForBlock() by eliminating the once needed weight scale.
Differential Revision: http://reviews.llvm.org/D11442
llvm-svn: 244154
Diffstat (limited to 'llvm/lib/IR/Module.cpp')
0 files changed, 0 insertions, 0 deletions