diff options
author | Sanjoy Das <sanjoy@playingwithpointers.com> | 2015-07-09 20:13:25 +0000 |
---|---|---|
committer | Sanjoy Das <sanjoy@playingwithpointers.com> | 2015-07-09 20:13:25 +0000 |
commit | b771845461f6ccb81e90b8e0d2a3443f9d4dbd2d (patch) | |
tree | 0c6d263af76ade18502f81985b7c02f8ce7aeea5 /llvm/tools/llvm-readobj/llvm-readobj.cpp | |
parent | 2535ea0b836bc3f1fd48d420f3611d1f97ad461d (diff) | |
download | llvm-b771845461f6ccb81e90b8e0d2a3443f9d4dbd2d.zip llvm-b771845461f6ccb81e90b8e0d2a3443f9d4dbd2d.tar.gz llvm-b771845461f6ccb81e90b8e0d2a3443f9d4dbd2d.tar.bz2 |
[ImplicitNullChecks] Be smarter in picking the memory op.
Summary:
Before this change ImplicitNullChecks would only pick loads of the form:
```
test Reg, Reg
jz elsewhere
fallthrough:
movl 32(Reg), Reg2
```
but not (say)
```
test Reg, Reg
jz elsewhere
fallthrough:
inc Reg3
movl 32(Reg), Reg2
```
This change teaches ImplicitNullChecks to look through "unrelated"
instructions like `inc Reg3` when searching for a load instruction
to convert to a trapping load.
Reviewers: atrick, JosephTremoulet, reames
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D11044
llvm-svn: 241850
Diffstat (limited to 'llvm/tools/llvm-readobj/llvm-readobj.cpp')
0 files changed, 0 insertions, 0 deletions