Open
Description
Previous ID | SR-1111 |
Radar | None |
Original Reporter | @belkadan |
Type | Improvement |
Additional Detail from JIRA
Votes | 0 |
Component/s | Compiler |
Labels | Improvement, IRGen, NotOptimizedOnly, StarterBug |
Assignee | None |
Priority | Medium |
md5: ee5fa37243b2596a51a6125675863696
Issue Description:
In this code:
import Foundation
func test() -> Bool {
let a = RunLoop.current
let b = RunLoop.main
return a === b
}
We're smart enough to avoid emitting two references to the metadata for NSRunLoop, but not smart enough (in -Onone builds) to avoid emitting the conversion to an ObjC Class
twice, which involves a branch. We should be able to reuse the value from the first thick_to_objc_metatype
conversion.