@@ -829,11 +829,14 @@ class SILBuilder {
829
829
return createLoadBorrow (loc, v);
830
830
}
831
831
832
- SILValue emitBeginBorrowOperation (SILLocation loc, SILValue v) {
832
+ SILValue emitBeginBorrowOperation (SILLocation loc, SILValue v,
833
+ bool isLexical = false ,
834
+ bool hasPointerEscape = false ,
835
+ bool fromVarDecl = false ) {
833
836
if (!hasOwnership () ||
834
837
v->getOwnershipKind ().isCompatibleWith (OwnershipKind::Guaranteed))
835
838
return v;
836
- return createBeginBorrow (loc, v);
839
+ return createBeginBorrow (loc, v, isLexical, hasPointerEscape, fromVarDecl );
837
840
}
838
841
839
842
void emitEndBorrowOperation (SILLocation loc, SILValue v) {
@@ -2817,13 +2820,16 @@ class SILBuilder {
2817
2820
2818
2821
// / Convenience function that is a no-op for trivial values and inserts a
2819
2822
// / move_value on non-trivial instructions.
2820
- SILValue emitMoveValueOperation (SILLocation Loc, SILValue v) {
2823
+ SILValue emitMoveValueOperation (SILLocation Loc, SILValue v,
2824
+ bool isLexical = false ,
2825
+ bool hasPointerEscape = false ,
2826
+ bool fromVarDecl = false ) {
2821
2827
assert (!v->getType ().isAddress ());
2822
2828
if (v->getType ().isTrivial (*getInsertionBB ()->getParent ()))
2823
2829
return v;
2824
2830
assert (v->getOwnershipKind () == OwnershipKind::Owned &&
2825
2831
" move_value consumes its argument" );
2826
- return createMoveValue (Loc, v);
2832
+ return createMoveValue (Loc, v, isLexical, hasPointerEscape, fromVarDecl );
2827
2833
}
2828
2834
2829
2835
SILValue emitTupleExtract (SILLocation Loc, SILValue Operand, unsigned FieldNo,
0 commit comments