llvm-6502/lib/IR
Jingyue Wu c77dec905a InstCombine: Canonicalize addrspacecast between different element types
addrspacecast X addrspace(M)* to Y addrspace(N)*

-->

bitcast X addrspace(M)* to Y addrspace(M)*
addrspacecast Y addrspace(M)* to Y addrspace(N)*

Updat all affected tests and add several new tests in addrspacecast.ll.

This patch is based on http://reviews.llvm.org/D2186 (authored by Matt
Arsenault) with fixes and more tests.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@210375 91177308-0d34-0410-b5e6-96231b3b80d8
2014-06-06 21:52:55 +00:00
..
AsmWriter.cpp Allow aliases to be unnamed_addr. 2014-06-06 01:20:28 +00:00
AsmWriter.h
AttributeImpl.h
Attributes.cpp Add a new attribute called 'jumptable' that creates jump-instruction tables for functions marked with this attribute. 2014-06-05 19:29:43 +00:00
AutoUpgrade.cpp [X86] Auto-upgrade AVX1 vbroadcast intrinsics 2014-05-29 23:35:33 +00:00
BasicBlock.cpp
CMakeLists.txt
ConstantFold.cpp
ConstantFold.h
ConstantRange.cpp
Constants.cpp [IR] Make {extract,insert}element accept an index of any integer type. 2014-05-01 22:12:39 +00:00
ConstantsContext.h Try to fix the msvc build. 2014-04-29 23:37:02 +00:00
Core.cpp Allow alias to point to an arbitrary ConstantExpr. 2014-06-03 02:41:57 +00:00
DataLayout.cpp
DebugInfo.cpp PR19598: Provide the ability to RAUW a declaration with itself, creating a non-temporary copy and using that to RAUW. 2014-05-06 03:41:57 +00:00
DebugLoc.cpp Add missing const specifier to a const method. 2014-06-05 14:32:15 +00:00
DiagnosticInfo.cpp Remove LLVMContextImpl::optimizationRemarkEnabledFor. 2014-05-22 17:19:01 +00:00
DiagnosticPrinter.cpp
DIBuilder.cpp DebugInfo: Add FIXME regarding DILexicalBlock uniquing fields. 2014-05-15 20:09:55 +00:00
Dominators.cpp
Function.cpp Add 'nonnull', a new parameter and return attribute which indicates that the pointer is not null. Instcombine will elide comparisons between these and null. Patch by Luqman Aden! 2014-05-20 01:23:40 +00:00
GCOV.cpp llvm-cov: Explicitly namespace llvm::make_unique to keep MSVC happy 2014-05-07 16:01:27 +00:00
Globals.cpp Fix gcc -Wparentheses warning. 2014-06-04 11:21:11 +00:00
GVMaterializer.cpp
InlineAsm.cpp
Instruction.cpp Instruction::isIdenticalToWhenDefined(): Check getNumOperands() in advance of std::equal(op) to appease MSVC Debug build. 2014-06-02 01:35:34 +00:00
Instructions.cpp InstCombine: Canonicalize addrspacecast between different element types 2014-06-06 21:52:55 +00:00
IntrinsicInst.cpp
IRBuilder.cpp
IRPrintingPasses.cpp Fix some misplaced spaces around 'override' 2014-05-24 20:19:40 +00:00
LeakDetector.cpp
LeaksContext.h [C++] Use 'nullptr'. 2014-04-28 04:05:08 +00:00
LegacyPassManager.cpp Add C API for thread yielding callback. 2014-05-16 02:33:15 +00:00
LLVMBuild.txt
LLVMContext.cpp Remove LLVMContextImpl::optimizationRemarkEnabledFor. 2014-05-22 17:19:01 +00:00
LLVMContextImpl.cpp Remove LLVMContextImpl::optimizationRemarkEnabledFor. 2014-05-22 17:19:01 +00:00
LLVMContextImpl.h Remove LLVMContextImpl::optimizationRemarkEnabledFor. 2014-05-22 17:19:01 +00:00
Makefile
Mangler.cpp
MDBuilder.cpp
Metadata.cpp
Module.cpp Use error_code() instead of error_code::succes() 2014-05-31 01:37:45 +00:00
module.modulemap [modules] Add module maps for LLVM. These are not quite ready for prime-time 2014-05-21 02:46:14 +00:00
Pass.cpp Revert "[PM] Add pass run listeners to the pass manager." 2014-05-15 17:49:20 +00:00
PassManager.cpp Add C API for thread yielding callback. 2014-05-16 02:33:15 +00:00
PassRegistry.cpp
SymbolTableListTraitsImpl.h [C++] Use 'nullptr'. 2014-04-28 04:05:08 +00:00
Type.cpp
TypeFinder.cpp
Use.cpp
User.cpp
Value.cpp Allow alias to point to an arbitrary ConstantExpr. 2014-06-03 02:41:57 +00:00
ValueSymbolTable.cpp
ValueTypes.cpp
Verifier.cpp Allow aliases to be unnamed_addr. 2014-06-06 01:20:28 +00:00