swift
053e30d4 - [region-isolation] Make sure not to run RegionAnalysis on functions that we do not support.

Commit
1 year ago
[region-isolation] Make sure not to run RegionAnalysis on functions that we do not support. Before this commit, this was done at the beginning of TransferNonSendable. I thought that those checks would be sufficient to ensure that RegionAnalysisFunctionInfo was not created for functions that we do not support. Turns out when we perform certain forms of verification, we force all function analyses to be created for all functions meaning that we would create a RegionAnalysisFunctionInfo for such an unsupported function causing us to hit asserts. In this commit, I move the check to whether or not we support a function into RegionAnalysisFunctionInfo itself and use that to determine if we should run TransferNonSendable. This additionally allows me to change RegionAnalysisFunctionInfo so that one can construct one for an unsupported function... as long as one doesn't actually touch any of its methods. If one does, I put in an assert so we will know that operator error has occured.
Author
Committer
Parents
Loading