mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
[sil] Eliminate end_borrow_argument now that end_borrow has a single operand.
I changed all of the places that used end_borrow_argument to use end_borrow. NOTE: I discovered in the process of this patch that we are not verifying guaranteed block arguments completely. I disabled the tests here that show this bad behavior and am going to re-enable them with more tests in a separate PR. This has not been a problem since SILGen does not emit any such arguments as guaranteed today. But once I do the SILGenPattern work this will change. rdar://33440767
This commit is contained in:
@@ -3221,18 +3221,6 @@ public:
|
||||
}
|
||||
};
|
||||
|
||||
/// Represents the end of a borrow scope for an argument. The reason why this is
|
||||
/// separate from end_borrow is that an argument is not borrowed from a
|
||||
/// specific SSA value. Instead it is borrowed from potentially many different
|
||||
/// incoming values.
|
||||
class EndBorrowArgumentInst
|
||||
: public UnaryInstructionBase<SILInstructionKind::EndBorrowArgumentInst,
|
||||
NonValueInstruction> {
|
||||
friend class SILBuilder;
|
||||
|
||||
EndBorrowArgumentInst(SILDebugLocation DebugLoc, SILArgument *Arg);
|
||||
};
|
||||
|
||||
/// Different kinds of access.
|
||||
enum class SILAccessKind : uint8_t {
|
||||
/// An access which takes uninitialized memory and initializes it.
|
||||
|
||||
Reference in New Issue
Block a user