mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-07-25 13:24:46 +00:00
Stub out a new updating interface to AliasAnalysis, allowing stateful analyses to be informed when
a pointer value has potentially become escaping. Implementations can choose to either fall back to conservative responses for that value, or may recompute their analysis to accomodate the change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122777 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -469,6 +469,17 @@ public:
|
||||
///
|
||||
virtual void copyValue(Value *From, Value *To);
|
||||
|
||||
/// addEscapingUse - This method should be used whenever an escaping use is
|
||||
/// added to a pointer value. Analysis implementations may either return
|
||||
/// conservative responses for that value in the future, or may recompute
|
||||
/// some or all internal state to continue providing precise responses.
|
||||
///
|
||||
/// Escaping uses are considered by anything _except_ the following:
|
||||
/// - GEPs or bitcasts of the pointer
|
||||
/// - Loads through the pointer
|
||||
/// - Stores through (but not of) the pointer
|
||||
virtual void addEscapingUse(Use &U);
|
||||
|
||||
/// replaceWithNewValue - This method is the obvious combination of the two
|
||||
/// above, and it provided as a helper to simplify client code.
|
||||
///
|
||||
|
Reference in New Issue
Block a user