swift
85965ed2 - [semantic-arc] Optimize more lifetime joining when a copy_value, destroy_value are in the same block.

Commit
5 years ago
[semantic-arc] Optimize more lifetime joining when a copy_value, destroy_value are in the same block. Specifically the optimization that is being performed here is the elimination of lifetimes that hand off ownership in between two regions of code. Example: ``` %1 = copy_value %0 ... destroy_value %0 ... apply %consumingUser(%1) ``` We really want to handle this case since it is a natural thing that comes up in programs and will let me eliminate the *evil* usage of emitDestroyValueOperation in TypeLowering without needing to modify huge amounts of tests.
Author
Committer
Parents
Loading