llvm-6502/include/llvm
Hal Finkel bf301d5670 Add a CFL Alias Analysis implementation
This provides an implementation of CFL alias analysis (including some
supporting data structures). Currently, we don't have any extremely fancy
features, sans some interprocedural analysis (i.e. no field sensitivity, etc.),
and we do best sitting behind BasicAA + TBAA. In such a configuration, we take
~0.6-0.8% of total compile time, and give ~7-8% NoAlias responses to queries
TBAA and BasicAA couldn't answer when bootstrapping LLVM. In testing this on
other projects, we've seen up to 10.5% of queries dropped by BasicAA+TBAA
answered with NoAlias by this algorithm.

Patch by George Burgess IV (with minor modifications by me -- mostly adapting
some BasicAA tests), thanks!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@216970 91177308-0d34-0410-b5e6-96231b3b80d8
2014-09-02 21:43:13 +00:00
..
ADT Add missing const to StringRef.copy() 2014-08-30 02:29:49 +00:00
Analysis Add a CFL Alias Analysis implementation 2014-09-02 21:43:13 +00:00
AsmParser Pass a MemoryBufferRef when we can avoid taking ownership. 2014-08-26 21:49:01 +00:00
Bitcode Teach llvm-bcanalyzer to use one stream's BLOCKINFO to read another stream. 2014-08-30 17:07:55 +00:00
CodeGen [FastISel] Provide the option to skip target-independent instruction selection. NFC. 2014-09-02 21:07:44 +00:00
Config Regenerate autoconf, previous updates to the configury haven't 2014-07-28 22:00:44 +00:00
DebugInfo Use a reference instead of a pointer. 2014-07-31 20:19:36 +00:00
ExecutionEngine Return a std::unique_ptr when creating a new MemoryBuffer. 2014-08-27 20:03:13 +00:00
IR Fix a logic bug when copying fast-math flags. 2014-09-02 20:03:00 +00:00
IRReader Pass a MemoryBufferRef when we can avoid taking ownership. 2014-08-26 21:49:01 +00:00
LineEditor [C++11] Replace OwningPtr with std::unique_ptr in places where it doesn't break the API. 2014-04-21 09:34:48 +00:00
Linker IR: Add COMDATs to the IR 2014-06-27 18:19:56 +00:00
LTO unique_ptrify LTOCodeGenerator::NativeObjectFile 2014-09-02 18:21:06 +00:00
MC MCSchedule.h: fix VS2012 build after r216919 2014-09-02 18:00:00 +00:00
Object Object/llvm-objdump: allow dumping of mach-o exports trie 2014-08-30 00:20:14 +00:00
Option Option: Propagate flags from groups to options in each group 2014-07-12 00:18:58 +00:00
ProfileData Coverage Mapping: add function's hash to coverage function records. 2014-08-21 19:23:25 +00:00
Support unique_ptrify the result of SpecialCaseList::create 2014-09-02 18:13:54 +00:00
TableGen TableGen: unique_ptr-ify RecordKeeper 2014-08-24 19:10:57 +00:00
Target Change MCSchedModel to be a struct of statically initialized data. 2014-09-02 17:43:54 +00:00
Transforms Feed AA to the inliner and use AA->getModRefBehavior in AddAliasScopeMetadata 2014-09-01 09:01:39 +00:00
CMakeLists.txt Remove llvm_headers_do_not_build for the benefit of XCode and Visual Studio users. 2014-08-14 00:51:47 +00:00
InitializePasses.h Add a CFL Alias Analysis implementation 2014-09-02 21:43:13 +00:00
LinkAllIR.h [cleanup] Move the Dominators.h and Verifier.h headers into the IR 2014-01-13 09:26:24 +00:00
LinkAllPasses.h Add a CFL Alias Analysis implementation 2014-09-02 21:43:13 +00:00
module.modulemap [modules] Update module map workaround to cope with the problematic file having 2014-08-07 20:27:08 +00:00
module.modulemap.build [modules] Add module maps for LLVM. These are not quite ready for prime-time 2014-05-21 02:46:14 +00:00
Pass.h Revert "[PM] Add pass run listeners to the pass manager." 2014-05-15 17:49:20 +00:00
PassAnalysisSupport.h [C++11] More 'nullptr' conversion. In some cases just using a boolean check instead of comparing to nullptr. 2014-04-14 00:51:57 +00:00
PassInfo.h Remove pimpl class from PassRegistry. 2014-06-12 16:06:51 +00:00
PassManager.h Move the old pass manager infrastructure into a legacy namespace and 2013-11-09 12:26:54 +00:00
PassRegistry.h Remove pimpl class from PassRegistry. 2014-06-12 16:06:51 +00:00
PassSupport.h Move GlobalMerge from Transform to CodeGen. 2014-06-13 22:57:59 +00:00