Introduce a ptr_provenance member to MemoryLocation.
Note: in the full restrict patches, the ptr_provenance was tracked through the AAMDNodes. For this extraction of the feature, I feel that the MemoryLocation is a more logical place for it. (aka, the provenance is associated to a location, not to the Alias Analysis Metadata).
clang-format: please reformat the code