[all-commits] [llvm/llvm-project] 52cd00: [BOLT] Ignore functions accessing false positive j...
Huan Nguyen via All-commits
all-commits at lists.llvm.org
Thu Jul 28 23:22:30 PDT 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 52cd00cabf479aa7eb6dbb063b7ba41ea57bce9e
https://github.com/llvm/llvm-project/commit/52cd00cabf479aa7eb6dbb063b7ba41ea57bce9e
Author: Huan Nguyen <nhuhuan at yahoo.com>
Date: 2022-07-28 (Thu, 28 Jul 2022)
Changed paths:
M bolt/lib/Core/BinaryContext.cpp
A bolt/test/X86/fake_jump_table.s
Log Message:
-----------
[BOLT] Ignore functions accessing false positive jump tables
Disassembly and branch target analysis are not decoupled, so any
analysis that depends on disassembly may not operate properly.
In specific, analyzeJumpTable uses instruction bounds check property.
A jump table was analyzed twice: (a) during disassembly, and (b) after
disassembly, so there are potentially some mismatched results.
In this update, functions that access JTs which fail the second check
will be marked as ignored.
Test Plan:
```
ninja check-bolt
```
Reviewed By: Amir
Differential Revision: https://reviews.llvm.org/D130431
More information about the All-commits
mailing list