diff options
author | Andrea Di Biagio <Andrea_DiBiagio@sn.scee.net> | 2017-04-11 19:07:30 +0000 |
---|---|---|
committer | Andrea Di Biagio <Andrea_DiBiagio@sn.scee.net> | 2017-04-11 19:07:30 +0000 |
commit | 8e26936bfd722a74e5b1fcc8506c0ef9f93b2f4f (patch) | |
tree | ad86acf8862cf7884c288c0db5af6cec7345f439 /lldb/packages/Python/lldbsuite/test/expression_command/call-function/main.cpp | |
parent | 9eac2717c65864f60b0da53d20a4912b557e8188 (diff) | |
download | bcm5719-llvm-8e26936bfd722a74e5b1fcc8506c0ef9f93b2f4f.tar.gz bcm5719-llvm-8e26936bfd722a74e5b1fcc8506c0ef9f93b2f4f.zip |
[AddDiscriminators] Assign discriminators to MemIntrinsic calls.
Before this patch, pass AddDiscriminators always avoided to assign
discriminators to intrinsic calls. This was done mainly for two reasons:
1) We wanted to minimize the number of based discriminators used.
2) We wanted to avoid non-deterministic discriminator assignment for
different debug levels.
Unfortunately, that approach was problematic for MemIntrinsic calls.
MemIntrinsic calls can be split by SROA into loads and stores, and each new
load/store instruction would obtain the debug location from the original
intrinsic call.
If we don't assign a discriminator to MemIntrinsic calls, then we cannot
correctly set the discriminator for the newly created loads and stores.
This may have a negative impact on the basic block weight computation
performed by the SampleLoader.
This patch fixes the issue by letting MemIntrinsic calls have a discriminator.
Differential Revision: https://reviews.llvm.org/D31900
llvm-svn: 299972
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/expression_command/call-function/main.cpp')
0 files changed, 0 insertions, 0 deletions