Commits

Mark Lacey committed 05950693e39
Do not inline based on @transparent in the performance inliner. We used to do this because the mandatory inliner couldn't deal with generics, and we were marking some things in the stdlib as @transparent for performance reasons. In comparing performance before/after this change, I saw noise at -Onone and -O, and a couple differences at -Ounchecked that could be real (but are on benchmarks that tend to be very noisy so it's hard to tell for certain). This change is important because I am going to commit another change that marks protocol witness thunks as @transparent in the lead-up to making the mandatory inliner devirtualize. I don't want that change to generate a bunch of performance diffs and/or size diffs, which might happen if we were to force inline *all* of those protocol witness thunks (as opposed to the ones that will eventually be inlined by the mandatory inliner because we're able to devirtualize the calls). Swift SVN r26386