llvm-6502/lib
Diego Novillo 26e46f2283 Allow 0-weight branches in BranchProbabilityInfo.
Summary:
When computing branch weights in BPI, we used to disallow branches with
weight 0. This is a minor nuisance, because a branch with weight 0 is
different to "don't have information". In the context of
instrumentation, it may mean "never executed", in the context of
sampling, it means "never or seldom executed".

In allowing 0 weight branches, I ran into issues with the switch
expansion code in selection DAG. It is currently hardwired to not handle
branches with weight 0. To maintain the current behaviour, I changed it
to use 1 when it finds 0, but perhaps the algorithm needs changes to
tolerate branches with weight zero.

Reviewers: hansw

Subscribers: llvm-commits

Differential Revision: http://reviews.llvm.org/D9533

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@236617 91177308-0d34-0410-b5e6-96231b3b80d8
2015-05-06 17:55:11 +00:00
..
Analysis Allow 0-weight branches in BranchProbabilityInfo. 2015-05-06 17:55:11 +00:00
AsmParser
Bitcode
CodeGen Allow 0-weight branches in BranchProbabilityInfo. 2015-05-06 17:55:11 +00:00
DebugInfo
ExecutionEngine
Fuzzer
IR Add missing dereferenceable_or_null getters 2015-05-06 17:41:54 +00:00
IRReader
LineEditor
Linker
LTO
MC
Object
Option
Passes
ProfileData InstrProf: Strip filename prefixes from the names we display for coverage 2015-05-05 23:44:48 +00:00
Support
TableGen
Target [X86] Disable loop unrolling in loop vectorization pass when VF is 1. 2015-05-06 17:12:25 +00:00
Transforms [X86] Disable loop unrolling in loop vectorization pass when VF is 1. 2015-05-06 17:12:25 +00:00
CMakeLists.txt
LLVMBuild.txt
Makefile