Revert "[sil-arc-opts] {Class, Super, Peer, Protocol}MethodInsts can't use reference counted values if their operand is of metatype type."
Revert "[sil-arc-opts] {Class, Super, Peer, Protocol}MethodInsts can't use reference counted values if their operand is of metatype type."

This reverts commit r12695.

I will need more analysis to do this.

Swift SVN r12696

kusl/swift,emilstahl/swift,gmilos/swift,shahmishal/swift,kperryua/swift,danielmartin/swift,mightydeveloper/swift,ben-ng/swift,lorentey/swift,djwbrown/swift,return/swift,shajrawi/swift,parkera/swift,dduan/swift,airspeedswift/swift,emilstahl/swift,zisko/swift,sschiau/swift,JaSpa/swift,xedin/swift,JGiola/swift,jopamer/swift,rudkx/swift,khizkhiz/swift,nathawes/swift,gmilos/swift,felix91gr/swift,calebd/swift,gottesmm/swift,practicalswift/swift,aschwaighofer/swift,felix91gr/swift,jmgc/swift,devincoughlin/swift,khizkhiz/swift,alblue/swift,calebd/swift,cbrentharris/swift,Jnosh/swift,cbrentharris/swift,adrfer/swift,frootloops/swift,gregomni/swift,zisko/swift,LeoShimonaka/swift,jtbandes/swift,jckarter/swift,apple/swift,uasys/swift,alblue/swift,lorentey/swift,manavgabhawala/swift,kusl/swift,parkera/swift,arvedviehweger/swift,JaSpa/swift,LeoShimonaka/swift,rudkx/swift,airspeedswift/swift,natecook1000/swift,frootloops/swift,zisko/swift,djwbrown/swift,mightydeveloper/swift,kstaring/swift,therealbnut/swift,allevato/swift,aschwaighofer/swift,MukeshKumarS/Swift,rudkx/swift,swiftix/swift,ahoppen/swift,allevato/swift,swiftix/swift.old,Ivacker/swift,huonw/swift,KrishMunot/swift,Jnosh/swift,slavapestov/swift,swiftix/swift.old,kusl/swift,benlangmuir/swift,SwiftAndroid/swift,slavapestov/swift,therealbnut/swift,lorentey/swift,kstaring/swift,practicalswift/swift,apple/swift,jckarter/swift,ahoppen/swift,swiftix/swift.old,codestergit/swift,tjw/swift,gmilos/swift,milseman/swift,tjw/swift,codestergit/swift,khizkhiz/swift,brentdax/swift,gregomni/swift,benlangmuir/swift,glessard/swift,swiftix/swift,milseman/swift,danielmartin/swift,tardieu/swift,lorentey/swift,johnno1962d/swift,huonw/swift,uasys/swift,xedin/swift,harlanhaskins/swift,tjw/swift,parkera/swift,gribozavr/swift,KrishMunot/swift,jopamer/swift,jopamer/swift,sschiau/swift,airspeedswift/swift,mightydeveloper/swift,IngmarStein/swift,khizkhiz/swift,slavapestov/swift,JaSpa/swift,JaSpa/swift,sschiau/swift,stephentyrone/swift,mightydeveloper/swift,KrishMunot/swift,jmgc/swift,sschiau/swift,karwa/swift,ahoppen/swift,arvedviehweger/swift,practicalswift/swift,gribozavr/swift,zisko/swift,nathawes/swift,jmgc/swift,karwa/swift,kentya6/swift,JaSpa/swift,dduan/swift,Ivacker/swift,khizkhiz/swift,brentdax/swift,SwiftAndroid/swift,danielmartin/swift,hooman/swift,manavgabhawala/swift,benlangmuir/swift,johnno1962d/swift,djwbrown/swift,CodaFi/swift,adrfer/swift,adrfer/swift,OscarSwanros/swift,tardieu/swift,emilstahl/swift,CodaFi/swift,natecook1000/swift,tardieu/swift,kstaring/swift,stephentyrone/swift,therealbnut/swift,arvedviehweger/swift,ken0nek/swift,alblue/swift,practicalswift/swift,swiftix/swift.old,tkremenek/swift,cbrentharris/swift,bitjammer/swift,austinzheng/swift,kentya6/swift,kusl/swift,roambotics/swift,JaSpa/swift,swiftix/swift.old,cbrentharris/swift,nathawes/swift,deyton/swift,harlanhaskins/swift,kperryua/swift,JaSpa/swift,glessard/swift,deyton/swift,apple/swift,dduan/swift,jckarter/swift,milseman/swift,russbishop/swift,devincoughlin/swift,manavgabhawala/swift,aschwaighofer/swift,kentya6/swift,OscarSwanros/swift,return/swift,kentya6/swift,rudkx/swift,hughbe/swift,airspeedswift/swift,practicalswift/swift,austinzheng/swift,slavapestov/swift,nathawes/swift,swiftix/swift.old,karwa/swift,devincoughlin/swift,johnno1962d/swift,tinysun212/swift-windows,uasys/swift,aschwaighofer/swift,hooman/swift,KrishMunot/swift,amraboelela/swift,jtbandes/swift,harlanhaskins/swift,natecook1000/swift,bitjammer/swift,emilstahl/swift,roambotics/swift,kperryua/swift,airspeedswift/swift,shahmishal/swift,jmgc/swift,roambotics/swift,xwu/swift,allevato/swift,benlangmuir/swift,xwu/swift,russbishop/swift,xedin/swift,swiftix/swift,jtbandes/swift,tkremenek/swift,jmgc/swift,dduan/swift,jtbandes/swift,bitjammer/swift,gribozavr/swift,swiftix/swift,deyton/swift,stephentyrone/swift,bitjammer/swift,Jnosh/swift,OscarSwanros/swift,tkremenek/swift,russbishop/swift,tardieu/swift,huonw/swift,atrick/swift,atrick/swift,rudkx/swift,tjw/swift,ben-ng/swift,CodaFi/swift,tinysun212/swift-windows,kusl/swift,LeoShimonaka/swift,ken0nek/swift,jopamer/swift,tjw/swift,tjw/swift,kentya6/swift,LeoShimonaka/swift,lorentey/swift,kstaring/swift,aschwaighofer/swift,milseman/swift,amraboelela/swift,swiftix/swift.old,shajrawi/swift,MukeshKumarS/Swift,LeoShimonaka/swift,cbrentharris/swift,jtbandes/swift,amraboelela/swift,shajrawi/swift,brentdax/swift,kperryua/swift,sdulal/swift,therealbnut/swift,return/swift,jopamer/swift,russbishop/swift,kstaring/swift,sschiau/swift,swiftix/swift,atrick/swift,hughbe/swift,airspeedswift/swift,therealbnut/swift,dduan/swift,adrfer/swift,ben-ng/swift,jmgc/swift,tinysun212/swift-windows,austinzheng/swift,sschiau/swift,kperryua/swift,jopamer/swift,russbishop/swift,Jnosh/swift,brentdax/swift,JGiola/swift,jmgc/swift,roambotics/swift,glessard/swift,felix91gr/swift,emilstahl/swift,atrick/swift,sdulal/swift,adrfer/swift,SwiftAndroid/swift,uasys/swift,natecook1000/swift,gottesmm/swift,amraboelela/swift,arvedviehweger/swift,xwu/swift,ken0nek/swift,slavapestov/swift,parkera/swift,gmilos/swift,karwa/swift,frootloops/swift,milseman/swift,xedin/swift,kperryua/swift,devincoughlin/swift,felix91gr/swift,kusl/swift,MukeshKumarS/Swift,codestergit/swift,alblue/swift,dreamsxin/swift,adrfer/swift,OscarSwanros/swift,Ivacker/swift,tkremenek/swift,djwbrown/swift,return/swift,jckarter/swift,Jnosh/swift,gottesmm/swift,xedin/swift,tinysun212/swift-windows,nathawes/swift,hughbe/swift,JGiola/swift,alblue/swift,calebd/swift,return/swift,JGiola/swift,CodaFi/swift,tjw/swift,cbrentharris/swift,stephentyrone/swift,gottesmm/swift,gregomni/swift,harlanhaskins/swift,djwbrown/swift,tinysun212/swift-windows,ahoppen/swift,KrishMunot/swift,adrfer/swift,practicalswift/swift,russbishop/swift,amraboelela/swift,xedin/swift,LeoShimonaka/swift,slavapestov/swift,Ivacker/swift,kusl/swift,swiftix/swift,mightydeveloper/swift,shajrawi/swift,aschwaighofer/swift,frootloops/swift,tardieu/swift,brentdax/swift,sschiau/swift,hooman/swift,IngmarStein/swift,harlanhaskins/swift,manavgabhawala/swift,austinzheng/swift,gmilos/swift,jtbandes/swift,dduan/swift,huonw/swift,nathawes/swift,gottesmm/swift,jopamer/swift,therealbnut/swift,JGiola/swift,kentya6/swift,KrishMunot/swift,sdulal/swift,brentdax/swift,tardieu/swift,sdulal/swift,gribozavr/swift,frootloops/swift,gribozavr/swift,kentya6/swift,KrishMunot/swift,hooman/swift,stephentyrone/swift,shahmishal/swift,danielmartin/swift,IngmarStein/swift,khizkhiz/swift,CodaFi/swift,parkera/swift,tkremenek/swift,gmilos/swift,modocache/swift,SwiftAndroid/swift,glessard/swift,shajrawi/swift,IngmarStein/swift,frootloops/swift,huonw/swift,natecook1000/swift,sschiau/swift,LeoShimonaka/swift,cbrentharris/swift,shahmishal/swift,kperryua/swift,gmilos/swift,airspeedswift/swift,karwa/swift,hughbe/swift,modocache/swift,xwu/swift,devincoughlin/swift,glessard/swift,rudkx/swift,arvedviehweger/swift,ken0nek/swift,manavgabhawala/swift,apple/swift,felix91gr/swift,atrick/swift,amraboelela/swift,mightydeveloper/swift,hughbe/swift,hooman/swift,ahoppen/swift,milseman/swift,karwa/swift,amraboelela/swift,jckarter/swift,uasys/swift,aschwaighofer/swift,return/swift,austinzheng/swift,harlanhaskins/swift,danielmartin/swift,uasys/swift,SwiftAndroid/swift,modocache/swift,deyton/swift,austinzheng/swift,allevato/swift,jckarter/swift,allevato/swift,IngmarStein/swift,jckarter/swift,nathawes/swift,allevato/swift,devincoughlin/swift,ken0nek/swift,devincoughlin/swift,roambotics/swift,khizkhiz/swift,zisko/swift,lorentey/swift,codestergit/swift,calebd/swift,huonw/swift,MukeshKumarS/Swift,modocache/swift,shahmishal/swift,apple/swift,swiftix/swift.old,ben-ng/swift,austinzheng/swift,jtbandes/swift,shahmishal/swift,slavapestov/swift,shahmishal/swift,therealbnut/swift,sdulal/swift,johnno1962d/swift,manavgabhawala/swift,sdulal/swift,lorentey/swift,stephentyrone/swift,shajrawi/swift,Jnosh/swift,danielmartin/swift,frootloops/swift,danielmartin/swift,return/swift,gribozavr/swift,swiftix/swift,deyton/swift,IngmarStein/swift,gribozavr/swift,bitjammer/swift,apple/swift,SwiftAndroid/swift,practicalswift/swift,tinysun212/swift-windows,karwa/swift,gribozavr/swift,atrick/swift,gregomni/swift,calebd/swift,CodaFi/swift,russbishop/swift,mightydeveloper/swift,dduan/swift,bitjammer/swift,MukeshKumarS/Swift,kentya6/swift,CodaFi/swift,zisko/swift,tkremenek/swift,zisko/swift,gregomni/swift,uasys/swift,practicalswift/swift,tkremenek/swift,deyton/swift,glessard/swift,gottesmm/swift,JGiola/swift,codestergit/swift,codestergit/swift,gottesmm/swift,Ivacker/swift,codestergit/swift,johnno1962d/swift,xwu/swift,Ivacker/swift,xwu/swift,parkera/swift,calebd/swift,Jnosh/swift,gregomni/swift,hughbe/swift,mightydeveloper/swift,cbrentharris/swift,johnno1962d/swift,djwbrown/swift,natecook1000/swift,benlangmuir/swift,emilstahl/swift,tardieu/swift,felix91gr/swift,alblue/swift,brentdax/swift,MukeshKumarS/Swift,manavgabhawala/swift,hooman/swift,karwa/swift,deyton/swift,alblue/swift,johnno1962d/swift,natecook1000/swift,ahoppen/swift,ben-ng/swift,dreamsxin/swift,felix91gr/swift,Ivacker/swift,stephentyrone/swift,hooman/swift,xwu/swift,lorentey/swift,modocache/swift,sdulal/swift,IngmarStein/swift,roambotics/swift,tinysun212/swift-windows,ben-ng/swift,milseman/swift,kstaring/swift,modocache/swift,ben-ng/swift,OscarSwanros/swift,LeoShimonaka/swift,parkera/swift,modocache/swift,xedin/swift,sdulal/swift,harlanhaskins/swift,arvedviehweger/swift,arvedviehweger/swift,shajrawi/swift,calebd/swift,kusl/swift,bitjammer/swift,shahmishal/swift,shajrawi/swift,benlangmuir/swift,allevato/swift,xedin/swift,emilstahl/swift,djwbrown/swift,ken0nek/swift,OscarSwanros/swift,devincoughlin/swift,huonw/swift,parkera/swift,ken0nek/swift,hughbe/swift,MukeshKumarS/Swift,SwiftAndroid/swift,Ivacker/swift,OscarSwanros/swift,kstaring/swift,emilstahl/swift