Commits

Joe Groff committed 7a1009fc9fa
IRGen: Remove value witnesses from protocol witness tables. The value witnesses are always available through type metadata (through an extra indirection). Saving that indirection costs 16 words (and growing!) in every witness table, and when we start instantiating conformances for generic instances, would require us to instantiate practically every generic witness table. Removing the value witnesses from the protocol witness table means we will only need to instantiate witness tables when associated types are dependent on the conforming type's type variables. This is an ABI break, but should have no user-visible functional change. Swift SVN r6651