llvm-6502/lib
Hal Finkel a739834446 Allow isDereferenceablePointer to look through some bitcasts
isDereferenceablePointer should not give up upon encountering any bitcast. If
we're casting from a pointer to a larger type to a pointer to a small type, we
can continue by examining the bitcast's operand. This missing capability
was noted in a comment in the function.

In order for this to work, isDereferenceablePointer now takes an optional
DataLayout pointer (essentially all callers already had such a pointer
available). Most code uses isDereferenceablePointer though
isSafeToSpeculativelyExecute (which already took an optional DataLayout
pointer), and to enable the LICM test case, LICM needs to actually provide its DL
pointer to isSafeToSpeculativelyExecute (which it was not doing previously).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@212686 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-10 05:27:53 +00:00
..
Analysis Allow isDereferenceablePointer to look through some bitcasts 2014-07-10 05:27:53 +00:00
AsmParser Update the MemoryBuffer API to use ErrorOr. 2014-07-06 17:43:13 +00:00
Bitcode
CodeGen [AArch64]Fix an assertion failure in DAG Combiner about concating 2 build_vector. 2014-07-10 03:41:50 +00:00
DebugInfo
ExecutionEngine
IR Allow isDereferenceablePointer to look through some bitcasts 2014-07-10 05:27:53 +00:00
IRReader Update the MemoryBuffer API to use ErrorOr. 2014-07-06 17:43:13 +00:00
LineEditor
Linker
LTO Update the MemoryBuffer API to use ErrorOr. 2014-07-06 17:43:13 +00:00
MC MC: modernise for loop 2014-07-10 04:50:09 +00:00
Object Add support for BSD format Archive map symbols (aka the table of contents 2014-07-08 22:10:02 +00:00
Option Generic: add range-adapter for option parsing. 2014-07-09 13:03:37 +00:00
ProfileData Update the MemoryBuffer API to use ErrorOr. 2014-07-06 17:43:13 +00:00
Support Remove move assignment operator to appease older GCCs. 2014-07-10 04:39:40 +00:00
TableGen Update the MemoryBuffer API to use ErrorOr. 2014-07-06 17:43:13 +00:00
Target [x86] Initial improvements to the new shuffle lowering for v16i8 2014-07-10 04:34:06 +00:00
Transforms Allow isDereferenceablePointer to look through some bitcasts 2014-07-10 05:27:53 +00:00
CMakeLists.txt
LLVMBuild.txt
Makefile