SILGen: Only specialize 'is' patterns one type at a time.
SILGen: Only specialize 'is' patterns one type at a time.

This simplifies the cleanup juggling we have to do, making it easier to get to the fix for rdar://problem/21087371. NFC yet (since emitting casts one at a time is equivalent to pretending we emit them simultaneously like we were).

Swift SVN r29277

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