diff options
author | Vedant Kumar <vsk@apple.com> | 2017-04-17 22:26:07 +0000 |
---|---|---|
committer | Vedant Kumar <vsk@apple.com> | 2017-04-17 22:26:07 +0000 |
commit | 379d9c1dc6c019eacf851ba1acfaefe8e5f2a587 (patch) | |
tree | 1ee446c7120839bf43d407ab602b8f230107e082 /llvm/lib/Bitcode/Writer/BitcodeWriter.cpp | |
parent | 1ea8bd81096b42830bb4f20c891f5a34af385de6 (diff) | |
download | llvm-379d9c1dc6c019eacf851ba1acfaefe8e5f2a587.zip llvm-379d9c1dc6c019eacf851ba1acfaefe8e5f2a587.tar.gz llvm-379d9c1dc6c019eacf851ba1acfaefe8e5f2a587.tar.bz2 |
[ubsan] Skip null checks on pointers to the start of an alloca
Pointers to the start of an alloca are non-null, so we don't need to
emit runtime null checks for them.
Testing: check-clang, check-ubsan.
This significantly reduces the amount of null checks we emit when
compiling X86ISelLowering.cpp. Here are the numbers from patched /
unpatched clangs based on r300371.
-------------------------------------
| Setup | # of null checks |
-------------------------------------
| unpatched, -O0 | 45439 |
| patched, -O0 | 25251 | (-44.4%)
-------------------------------------
llvm-svn: 300508
Diffstat (limited to 'llvm/lib/Bitcode/Writer/BitcodeWriter.cpp')
0 files changed, 0 insertions, 0 deletions