IRGen: Use correct archetype conformance code path for opaque associated types.
The code here was not correct in a situation where an opaque type had constraints that were
refinements of the protocol requirements of an associated type, as in:
```
protocol ParentProtocol {}
protocol SubProtocol: ParentProtocol {}
protocol P {
associatedtype A: ParentProtocol
func foo() -> A
}
struct S: P {
func foo() -> some SubProtocol
}
```
because it assumed that the conformance could be found directly on the opaque type instead of
potentially via an arbitrary MetadataPath. Falling through to the code that already correctly
handles archetype conformances right below the removed code does the right thing. Fixes
rdar://problem/53081207.