Commits

Andrew Trick committed e19987d0773
Do not treat unchecked_addr_cast result as RC-identical to its input. This is needed to generalize unchecked_addr_cast to cover all cases of casting address that unchecked_bitwise_cast handles for values. UnsafePointer can be used to case types that are not RC identical. I do not believe this change can interfere with ARC opts, and none of the regressions I chased turned out to be real. (I also don't have a test case where this impacts ARC opts.) We can easily get the original functionality back by adding an unchecked_ref_cast_addr instruction. This new instruction would be generated by new unsafeCastReference builtin. This builtin could be used in the stdlib whenever both sides are RC identical. Swift SVN r29611