llvm-6502/lib
David Majnemer dd5456bd01 InstCombine: Optimize GEP's involving ptrtoint better
We supported transforming:
(gep i8* X, -(ptrtoint Y))

to:
(inttoptr (sub (ptrtoint X), (ptrtoint Y)))

However, this only fired if 'X' had type i8*.  Generalize this to
support various types of different sizes.  This results in much better
CodeGen, especially for pointers to packed structs.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@216523 91177308-0d34-0410-b5e6-96231b3b80d8
2014-08-27 05:16:04 +00:00
..
Analysis InstSimplify: Fold gep X, (sub 0, ptrtoint(X)) to null 2014-08-26 07:08:03 +00:00
AsmParser Pass a MemoryBufferRef when we can avoid taking ownership. 2014-08-26 21:49:01 +00:00
Bitcode Pass a std::unique_ptr<MemoryBuffer>& to getLazyBitcodeModule. 2014-08-26 22:00:09 +00:00
CodeGen Remove type unit skeletons. GDB no longer needs them & this saves a heap of space. 2014-08-27 05:04:14 +00:00
DebugInfo Don't own the buffer in object::Binary. 2014-08-19 18:44:46 +00:00
ExecutionEngine Give ExecutionEngine of top level buffers. 2014-08-26 21:04:04 +00:00
IR Pass a MemoryBufferRef when we can avoid taking ownership. 2014-08-26 21:49:01 +00:00
IRReader Pass a std::unique_ptr<MemoryBuffer>& to getLazyBitcodeModule. 2014-08-26 22:00:09 +00:00
LineEditor
Linker Set comdats when lazily linking functions. 2014-08-15 20:17:08 +00:00
LTO Pass a MemoryBufferRef when we can avoid taking ownership. 2014-08-26 21:49:01 +00:00
MC Convert MC command line option for fatal assembler warnings into a 2014-08-26 18:39:50 +00:00
Object Pass a std::unique_ptr<MemoryBuffer>& to getLazyBitcodeModule. 2014-08-26 22:00:09 +00:00
Option Fix PR17239 by changing the semantics of the RemainingArgsClass Option kind 2014-08-22 19:29:17 +00:00
ProfileData llvm-cov: add code coverage tool that's based on coverage mapping format and clang's pgo. 2014-08-22 22:56:03 +00:00
Support Pass a MemoryBufferRef when we can avoid taking ownership. 2014-08-26 21:49:01 +00:00
TableGen Modernize raw_fd_ostream's constructor a bit. 2014-08-25 18:16:47 +00:00
Target [FastISel][AArch64] Fix address simplification. 2014-08-27 00:58:30 +00:00
Transforms InstCombine: Optimize GEP's involving ptrtoint better 2014-08-27 05:16:04 +00:00
CMakeLists.txt
LLVMBuild.txt
Makefile