Reapply 239795 - [InstCombine] Propagate non-null facts to call parameters
authorPhilip Reames <listmail@philipreames.com>
Tue, 16 Jun 2015 20:24:25 +0000 (20:24 +0000)
committerPhilip Reames <listmail@philipreames.com>
Tue, 16 Jun 2015 20:24:25 +0000 (20:24 +0000)
commitc25df116145603433049b4ab69997499bd34b306
tree0bb5b178fbdf4d55edc9dc822c4b88edbb1da971
parentc758ca3c5c51e534e702c9bb90eeeaef0cb3f729
Reapply 239795 - [InstCombine] Propagate non-null facts to call parameters

The original change broke clang side tests.  I will be submitting those momentarily.  This change includes post commit feedback on the original change from from Pete Cooper.

Original Submission comments:
If a parameter to a function is known non-null, use the existing parameter attributes to record that fact at the call site. This has no optimization benefit by itself - that I know of - but is an enabling change for http://reviews.llvm.org/D9129.

Differential Revision: http://reviews.llvm.org/D9132

llvm-svn: 239849
llvm/include/llvm/IR/CallSite.h
llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
llvm/test/CodeGen/NVPTX/intrin-nocapture.ll
llvm/test/Transforms/Inline/byval-tail-call.ll
llvm/test/Transforms/InstCombine/select.ll