add unpredictable metadata type for control flow
authorSanjay Patel <spatel@rotateright.com>
Wed, 2 Sep 2015 19:06:43 +0000 (19:06 +0000)
committerSanjay Patel <spatel@rotateright.com>
Wed, 2 Sep 2015 19:06:43 +0000 (19:06 +0000)
This patch defines 'unpredictable' metadata. This metadata can be used to signal to the optimizer
or backend that a branch or switch is unpredictable, and therefore, it's probably better to not
split a compound predicate into multiple branches such as in CodeGenPrepare::splitBranchCondition().

This was discussed in:
https://llvm.org/bugs/show_bug.cgi?id=23827

Dependent patches to alter codegen and expose this in clang to follow.

Differential Revision; http://reviews.llvm.org/D12341

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@246688 91177308-0d34-0410-b5e6-96231b3b80d8


No differences found