Michael Gottesman
bb9197c7ff
[semantic-arc] Move the Ownership Model Eliminator and management of SILFunction::hasQualifiedOwnership in front of SILOptions::EnableSILOwnership.
...
This is a NFC change, since verification still will be behind the flag. But this
will allow me to move copy_value, destroy_value in front of the
EnableSILOwnership flag and verify via SILGen that we are always using those
instructions.
rdar://28851920
2016-10-23 18:30:43 -07:00
Michael Gottesman
813facfcff
[gardening] Refactor out setting Insertion Point and Debug Scope from each visitor to beforeVisit in the OwnershipModelEliminator.
2016-10-22 22:26:07 -07:00
Michael Gottesman
271e3909df
[semantic-arc] Implement OwnershipModelEliminator support for copy_value, destroy_value.
...
rdar://28851920
2016-10-22 22:26:06 -07:00
Michael Gottesman
b0539a9a15
[semantic-arc] Only run the ownership model eliminator on functions with qualified ownership and make it after running change such functions to have unqualified ownership.
...
rdar://28685236
2016-10-21 17:42:39 -07:00
Michael Gottesman
85269c767a
[semantic-arc] Implement eliminating end_borrow and load_borrow from the OwnershipModelEliminator.
...
rdar://28685236
2016-10-20 12:30:18 -07:00
Michael Gottesman
abaed64e20
[semantic-arc] Refactor the ownership model eliminator to use a visitor type.
...
rdar://28685236
2016-10-20 12:24:15 -07:00
practicalswift
265a4605a0
[gardening] Fix typos.
2016-10-16 12:53:49 +02:00
practicalswift
5d7bf22381
[gardening] Improve header consistency
2016-10-16 12:41:09 +02:00
Michael Gottesman
e48e7b7fca
[semantic-arc] Add a new pass called the OwnershipModelEliminator that eliminates SILOwnership from the IR.
...
It currently just breaks up qualified loads/stores into their unqualified
constituant parts.
rdar://28685236
2016-10-15 21:35:34 -07:00