mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
SIL: Add unchecked_{trivial,ref}_bit_cast instructions.
These instructions do a bitcast operation without stack traffic (at the SIL level). unchecked_trivial_bit_cast represents a conversion from a potentially nontrivial type to a trivial type, such as from a class reference to Int. unchecked_ref_bit_cast represents a conversion between types for which retain_value and release_value has equivalent effects when applied on the input or output values. Swift SVN r19053
This commit is contained in:
@@ -117,6 +117,8 @@ static bool isTransitiveEscapeInst(SILInstruction *Inst) {
|
||||
case ValueKind::ObjCToThickMetatypeInst:
|
||||
case ValueKind::UncheckedRefCastInst:
|
||||
case ValueKind::UncheckedAddrCastInst:
|
||||
case ValueKind::UncheckedTrivialBitCastInst:
|
||||
case ValueKind::UncheckedRefBitCastInst:
|
||||
case ValueKind::OpenExistentialInst:
|
||||
case ValueKind::OpenExistentialRefInst:
|
||||
case ValueKind::PartialApplyInst:
|
||||
|
||||
Reference in New Issue
Block a user