mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-11-04 06:09:05 +00:00
2c7c54c86c
In order to enable the preservation of noalias function parameter information after inlining, and the representation of block-level __restrict__ pointer information (etc.), additional kinds of aliasing metadata will be introduced. This metadata needs to be carried around in AliasAnalysis::Location objects (and MMOs at the SDAG level), and so we need to generalize the current scheme (which is hard-coded to just one TBAA MDNode*). This commit introduces only the necessary refactoring to allow for the introduction of other aliasing metadata types, but does not actually introduce any (that will come in a follow-up commit). What it does introduce is a new AAMDNodes structure to hold all of the aliasing metadata nodes associated with a particular memory-accessing instruction, and uses that structure instead of the raw MDNode* in AliasAnalysis::Location, etc. No functionality change intended. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@213859 91177308-0d34-0410-b5e6-96231b3b80d8 |
||
---|---|---|
.. | ||
ARCRuntimeEntryPoints.h | ||
CMakeLists.txt | ||
DependencyAnalysis.cpp | ||
DependencyAnalysis.h | ||
LLVMBuild.txt | ||
Makefile | ||
ObjCARC.cpp | ||
ObjCARC.h | ||
ObjCARCAliasAnalysis.cpp | ||
ObjCARCAliasAnalysis.h | ||
ObjCARCAPElim.cpp | ||
ObjCARCContract.cpp | ||
ObjCARCExpand.cpp | ||
ObjCARCOpts.cpp | ||
ObjCARCUtil.cpp | ||
ProvenanceAnalysis.cpp | ||
ProvenanceAnalysis.h |