forked from OSchip/llvm-project
9d94397859
Summary: Previously we had a notion of convergent functions but not of convergent calls. This is insufficient to correctly analyze calls where the target is unknown, e.g. indirect calls. Now a call is convergent if it targets a known-convergent function, or if it's explicitly marked as convergent. As usual, we can remove convergent where we can prove that no convergent operations are performed in the call. Originally landed as r261544, then reverted in r261544 for (incidental) build breakage. Re-landed here with no changes. Reviewers: chandlerc, jingyue Subscribers: llvm-commits, tra, jhen, hfinkel Differential Revision: http://reviews.llvm.org/D17739 llvm-svn: 263481 |
||
---|---|---|
.. | ||
2008-09-03-Mutual.ll | ||
2008-09-03-ReadNone.ll | ||
2008-09-03-ReadOnly.ll | ||
2008-09-13-VolatileRead.ll | ||
2008-12-29-Constant.ll | ||
2009-01-02-LocalStores.ll | ||
2010-10-30-volatile.ll | ||
atomic.ll | ||
convergent.ll | ||
nocapture.ll | ||
nonnull.ll | ||
norecurse.ll | ||
noreturn.ll | ||
operand-bundles-scc.ll | ||
optnone-simple.ll | ||
optnone.ll | ||
out-of-bounds-iterator-bug.ll | ||
readattrs.ll | ||
readnone.ll |