PerformanceInliner: tweak the inlining heuristic for callees which return an allocated object
PerformanceInliner: tweak the inlining heuristic for callees which return an allocated object

There are examples of such functions, which were previously captured by `isPureCall` in the inliner. But the implementation of `isPureCall` was wrong.
With the new (and correct) side effect analysis we need to correctly handle such functions in the inlining heuristic.

apple/swift,apple/swift,apple/swift,apple/swift,apple/swift,apple/swift