1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-22 04:22:57 +02:00
llvm-mirror/test/Transforms/FunctionAttrs
Chandler Carruth 8beb86a806 [attrs] Extract the pure inference of function attributes into
a standalone pass.

There is no call graph or even interesting analysis for this part of
function attributes -- it is literally inferring attributes based on the
target library identification. As such, we can do it using a much
simpler module pass that just walks the declarations. This can also
happen much earlier in the pass pipeline which has benefits for any
number of other passes.

In the process, I've cleaned up one particular aspect of the logic which
was necessary in order to separate the two passes cleanly. It now counts
inferred attributes independently rather than just counting all the
inferred attributes as one, and the counts are more clearly explained.

The two test cases we had for this code path are both ... woefully
inadequate and copies of each other. I've kept the superset test and
updated it. We need more testing here, but I had to pick somewhere to
stop fixing everything broken I saw here.

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

llvm-svn: 256466
2015-12-27 08:41:34 +00:00
..
2008-09-03-Mutual.ll
2008-09-03-ReadNone.ll Revert "Revert "[FunctionAttrs] Identify norecurse functions"" 2015-11-12 10:55:20 +00:00
2008-09-03-ReadOnly.ll Modify the LLVM assembly output so that it uses references to represent function attributes. 2013-02-20 07:21:42 +00:00
2008-09-13-VolatileRead.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
2008-12-29-Constant.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
2009-01-02-LocalStores.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
2010-10-30-volatile.ll Revert "Revert "[FunctionAttrs] Identify norecurse functions"" 2015-11-12 10:55:20 +00:00
atomic.ll Revert "Revert "[FunctionAttrs] Identify norecurse functions"" 2015-11-12 10:55:20 +00:00
nocapture.ll Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
nonnull.ll [FunctionAttr] Infer nonnull attributes on returns 2015-08-31 19:44:38 +00:00
norecurse.ll Revert "Revert "[FunctionAttrs] Identify norecurse functions"" 2015-11-12 10:55:20 +00:00
noreturn.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
optnone-simple.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
optnone.ll Revert "Revert "[FunctionAttrs] Identify norecurse functions"" 2015-11-12 10:55:20 +00:00
out-of-bounds-iterator-bug.ll [FunctionAttrs] Fix an iterator wraparound bug 2015-11-07 01:55:53 +00:00
readattrs.ll Vector of pointers in function attributes calculation 2015-11-17 19:30:51 +00:00
readnone.ll Remove conflicting attributes before adding deduced readonly/readnone 2015-05-25 19:46:38 +00:00