SILGenPattern: Refactor clause matrix specialization to filter pattern set by each pattern.
SILGenPattern: Refactor clause matrix specialization to filter pattern set by each pattern.

No intended functionality change yet. For now this gives a slightly better constant factor to the O(n^2) linear scan for subsumed pattern nodes. Later on, for nominal type patterns, this will also give us an opportunity to collect the properties from all the equivalent patterns into one NominalTypePattern specialization.

Swift SVN r9297

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