summaryrefslogtreecommitdiffstats
path: root/llvm/tools/llvm-bcanalyzer
diff options
context:
space:
mode:
authorPeter Collingbourne <peter@pcc.me.uk>2017-02-10 22:29:38 +0000
committerPeter Collingbourne <peter@pcc.me.uk>2017-02-10 22:29:38 +0000
commitbe9ffaacfa1bca11df24c1c6621bede0cab92d64 (patch)
treeac253acbb2c422228b80978595c7f18b4fb6f881 /llvm/tools/llvm-bcanalyzer
parent03ab8a366e46b2c85a63f6561335a129eea8251c (diff)
downloadbcm5719-llvm-be9ffaacfa1bca11df24c1c6621bede0cab92d64.tar.gz
bcm5719-llvm-be9ffaacfa1bca11df24c1c6621bede0cab92d64.zip
IR: Function summary extensions for whole-program devirtualization pass.
The summary information includes all uses of llvm.type.test and llvm.type.checked.load intrinsics that can be used to devirtualize calls, including any constant arguments for virtual constant propagation. Differential Revision: https://reviews.llvm.org/D29734 llvm-svn: 294795
Diffstat (limited to 'llvm/tools/llvm-bcanalyzer')
-rw-r--r--llvm/tools/llvm-bcanalyzer/llvm-bcanalyzer.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/tools/llvm-bcanalyzer/llvm-bcanalyzer.cpp b/llvm/tools/llvm-bcanalyzer/llvm-bcanalyzer.cpp
index b84c4a83dee..6f144213521 100644
--- a/llvm/tools/llvm-bcanalyzer/llvm-bcanalyzer.cpp
+++ b/llvm/tools/llvm-bcanalyzer/llvm-bcanalyzer.cpp
@@ -312,6 +312,10 @@ static const char *GetCodeName(unsigned CodeID, unsigned BlockID,
STRINGIFY_CODE(FS, COMBINED_ORIGINAL_NAME)
STRINGIFY_CODE(FS, VERSION)
STRINGIFY_CODE(FS, TYPE_TESTS)
+ STRINGIFY_CODE(FS, TYPE_TEST_ASSUME_VCALLS)
+ STRINGIFY_CODE(FS, TYPE_CHECKED_LOAD_VCALLS)
+ STRINGIFY_CODE(FS, TYPE_TEST_ASSUME_CONST_VCALL)
+ STRINGIFY_CODE(FS, TYPE_CHECKED_LOAD_CONST_VCALL)
}
case bitc::METADATA_ATTACHMENT_ID:
switch(CodeID) {
OpenPOWER on IntegriCloud