mirror of
https://github.com/encounter/llvm-project.git
synced 2026-03-30 11:27:19 -07:00
dbbdda4d23c514b7a1f1817d246d58fba0cad783
The IR builder can constant-fold null checks if the pointer operand points to a constant. If the "is-non-null" check is folded away to "true", don't emit the null check + branch. Testing: check-clang, check-ubsan. This slightly 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 | 25251 | | patched, -O0 | 23925 | (-5.3%) ------------------------------------- llvm-svn: 300509
Description
No description provided
Languages
C++
46.8%
LLVM
31.2%
C
10.7%
Assembly
7.2%
Python
1.4%
Other
2.3%