summaryrefslogtreecommitdiffstats
path: root/lldb/packages/Python/lldbsuite/test
diff options
context:
space:
mode:
authorVedant Kumar <vsk@apple.com>2017-02-25 02:30:03 +0000
committerVedant Kumar <vsk@apple.com>2017-02-25 02:30:03 +0000
commitc416e99d423ac8c96254985ef8f154d74240235c (patch)
treeedfe947c1d2d045ce938e904b9ecd3e762227b68 /lldb/packages/Python/lldbsuite/test
parent47926abfa651956b65433a71635a22389b5a298d (diff)
downloadbcm5719-llvm-c416e99d423ac8c96254985ef8f154d74240235c.tar.gz
bcm5719-llvm-c416e99d423ac8c96254985ef8f154d74240235c.zip
[profiling] Fix profile counter increment when emitting selects (PR32019)
Clang has logic to lower certain conditional expressions directly into llvm select instructions. However, it does not emit the correct profile counter increment as it does this: it emits an unconditional increment of the counter for the 'then branch', even if the value selected is from the 'else branch' (this is PR32019). That means, given the following snippet, we would report that "0" is selected twice, and that "1" is never selected: int f1(int x) { return x ? 0 : 1; ^2 ^0 } f1(0); f1(1); Fix the problem by using the instrprof_increment_step intrinsic to do the proper increment. llvm-svn: 296231
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud