diff options
author | Amir Ayupov <aaupov@fb.com> | 2022-09-08 15:50:25 -0700 |
---|---|---|
committer | Amir Ayupov <aaupov@fb.com> | 2022-09-08 15:50:40 -0700 |
commit | 31abde43d624aebaee90ac65ed7ca8cecf438e22 (patch) | |
tree | 7e53ececbde767db05d95b3601d17be7a3158b73 /clang/unittests/Tooling/CompilationDatabaseTest.cpp | |
parent | 873942e1783f09b407f8081264036458f7c17db3 (diff) | |
download | llvm-31abde43d624aebaee90ac65ed7ca8cecf438e22.zip llvm-31abde43d624aebaee90ac65ed7ca8cecf438e22.tar.gz llvm-31abde43d624aebaee90ac65ed7ca8cecf438e22.tar.bz2 |
[BOLT] Restrict ICP for functions with unknown control flow
ICP has two modes: jump table promotion and indirect call promotion.
The selection is based on whether an instruction has a jump table or not.
An instruction with unknown control flow doesn't have a jump table and will
fall under indirect call promotion policy which might be incorrect/unsafe
(if an instruction is not a tail call, i.e. has local jump targets).
Prevent ICP for functions containing instructions with unknown control flow.
Follow-up to https://reviews.llvm.org/D128870.
Reviewed By: maksfb
Differential Revision: https://reviews.llvm.org/D132882
Diffstat (limited to 'clang/unittests/Tooling/CompilationDatabaseTest.cpp')
0 files changed, 0 insertions, 0 deletions