llvm-mirror/include/llvm
Shuxin Yang 048b100cc5 Memory Dependence Analysis (not mem-dep test) take advantage of "invariant.load" metadata.
The "invariant.load" metadata indicates the memory unit being accessed is immutable.
A load annotated with this metadata can be moved across any store.

As I am not sure if it is legal to move such loads across barrier/fence, this
change dose not allow such transformation.

rdar://11311484

Thank Arnold for code review.

llvm-svn: 176562
2013-03-06 17:48:48 +00:00
..
ADT Switching -1ULL to UINT64_MAX to fix MSVC warnings. Patch thanks to Peng Cheng! 2013-02-27 18:38:33 +00:00
Analysis Memory Dependence Analysis (not mem-dep test) take advantage of "invariant.load" metadata. 2013-03-06 17:48:48 +00:00
Assembly Enable *BasicBlockPass::createPrinterPass() 2013-02-08 23:37:41 +00:00
Bitcode use memcpy instead of dubious union to type pun two values, 2013-02-13 04:53:40 +00:00
CodeGen Fix PR10475 2013-03-01 18:40:30 +00:00
Config Fix MSan annotations inclusion guard. 2013-02-13 10:40:01 +00:00
DebugInfo Add support for the pubnames section to llvm-dwarfdump. 2013-02-12 16:20:28 +00:00
ExecutionEngine Add support for applying in-memory relocations to the .debug_line section and, in the case of ELF files, using symbol addresses when available for relocations to the .debug_info section. Also extending the llvm-rtdyld tool to add the ability to dump line number information for testing purposes. 2013-01-25 22:50:58 +00:00
IR Memory Dependence Analysis (not mem-dep test) take advantage of "invariant.load" metadata. 2013-03-06 17:48:48 +00:00
MC MCParser: Update method names per coding guidelines. 2013-02-20 22:21:35 +00:00
Object [llvm-readobj] Add ELF .dynamic table dumping. 2013-02-20 02:37:12 +00:00
Option Use LLVM_DELETED_FUNCTION rather than '// do not implement' comments. 2013-02-18 23:11:17 +00:00
Support [Support][ErrorOr] Add support for implicit conversion from error code/condition enums. 2013-02-28 01:44:26 +00:00
TableGen Fix comment formatting 2013-02-05 16:40:22 +00:00
Target Add more functions to the TLI. 2013-03-05 21:47:40 +00:00
Transforms In GCC 4.7, function names are now forbidden from .gcda files. Support this by 2013-02-27 06:22:56 +00:00
AutoUpgrade.h remove autoupgrade support for really old-style debug info intrinsics. 2011-11-27 06:18:33 +00:00
CMakeLists.txt Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
DebugInfo.h Add a field to the compile unit of where we plan on splitting out 2013-02-22 23:50:04 +00:00
DIBuilder.h DIBuilder: support structs with vtable pointers in the same way as classes 2013-02-25 01:07:18 +00:00
GVMaterializer.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00
InitializePasses.h GCInfoDeleter code cleanup after r175528 2013-03-01 11:40:32 +00:00
InstVisitor.h Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
LinkAllIR.h Rename LinkAllVMCore.h to LinkAllIR.h since VMCore directory was renamed to IR. 2013-01-10 21:55:02 +00:00
LinkAllPasses.h Enable *BasicBlockPass::createPrinterPass() 2013-02-08 23:37:41 +00:00
Linker.h [Linker] Zap a dead typedef. 2013-01-18 20:08:09 +00:00
Pass.h moves doInitialization and doFinalization to the Pass class and removes some unreachable code in MachineModuleInfo 2012-12-03 21:56:57 +00:00
PassAnalysisSupport.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00
PassManager.h One more step towards making doInitialization and doFinalization useful for 2012-11-29 17:47:05 +00:00
PassManagers.h Use a DenseMap instead of a std::map for AnalysisID -> Pass* maps. This reduces the pass-manager overhead from FPPassManager::runOnFunction() by about 10%. 2013-02-26 01:31:59 +00:00
PassRegistry.h Attempt to fix valgrind complaining about (benign) leaks in pass registration by having PassRegistry 2010-10-20 22:22:30 +00:00
PassSupport.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00