mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
In low level LLVMARCOptimizer, during canonicalization we don't rauw the result of RT_Retain with its arg similarly to RT_ObjCRetain and RT_BridgeRetain. And during performLocalReleaseMotion, we assert that we have canonicalized RT_Retain. In a release compiler, if we optimize such an RT_Retain with a RT_Release, then this can result in a compiler crash Similarly not rauw'ing, can cause a crash due to performLocalRetainMotion Fixes rdar://79238115