llvm/lib/AsmParser
Peter Collingbourne ca668e1942 IR: Introduce inrange attribute on getelementptr indices.
If the inrange keyword is present before any index, loading from or
storing to any pointer derived from the getelementptr has undefined
behavior if the load or store would access memory outside of the bounds of
the element selected by the index marked as inrange.

This can be used, e.g. for alias analysis or to split globals at element
boundaries where beneficial.

As previously proposed on llvm-dev:
http://lists.llvm.org/pipermail/llvm-dev/2016-July/102472.html

Differential Revision: https://reviews.llvm.org/D22793

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@286514 91177308-0d34-0410-b5e6-96231b3b80d8
2016-11-10 22:34:55 +00:00
..
CMakeLists.txt modules: Add explicit dependency on intrinsics_gen 2015-06-16 00:44:12 +00:00
LLLexer.cpp IR: Introduce inrange attribute on getelementptr indices. 2016-11-10 22:34:55 +00:00
LLLexer.h Remove empty non-virtual destructors or mark them =default when non-public 2015-04-11 15:32:26 +00:00
LLParser.cpp IR: Introduce inrange attribute on getelementptr indices. 2016-11-10 22:34:55 +00:00
LLParser.h IR: Introduce inrange attribute on getelementptr indices. 2016-11-10 22:34:55 +00:00
LLToken.h IR: Introduce inrange attribute on getelementptr indices. 2016-11-10 22:34:55 +00:00
LLVMBuild.txt LLVMBuild: Remove trailing newline, which irked me. 2011-12-12 19:48:00 +00:00
Parser.cpp [AsmParser] Expose an API to parse a string starting with a type. 2016-03-08 00:37:07 +00:00