llvm-6502/lib/Transforms
Benjamin Kramer 4c332fa5a5 InstCombine: Canonicalize (gep i8* X, -(ptrtoint Y)) to (sub (ptrtoint X), (ptrtoint Y))
The GEP pattern is what SCEV expander emits for "ugly geps". The latter is what
you get for pointer subtraction in C code. The rest of instcombine already
knows how to deal with that so just canonicalize on that.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191090 91177308-0d34-0410-b5e6-96231b3b80d8
2013-09-20 14:38:44 +00:00
..
Hello Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
InstCombine InstCombine: Canonicalize (gep i8* X, -(ptrtoint Y)) to (sub (ptrtoint X), (ptrtoint Y)) 2013-09-20 14:38:44 +00:00
Instrumentation [msan] Wrap indirect functions. 2013-09-19 15:22:35 +00:00
IPO Bugfix for PR17099: 2013-09-17 09:36:11 +00:00
ObjCARC Revert "Give internal classes hidden visibility." 2013-09-11 18:05:11 +00:00
Scalar GVN proceeds in the presence of dead code. 2013-09-19 17:22:51 +00:00
Utils Replace some unnecessary vector copies with references. 2013-09-15 22:04:42 +00:00
Vectorize Prevent LoopVectorizer and SLPVectorizer running if the target has no vector registers. 2013-09-18 12:43:35 +00:00
CMakeLists.txt Extracted ObjCARC.cpp into its own library libLLVMObjCARCOpts in preparation for refactoring the ARC Optimizer. 2013-01-28 01:35:51 +00:00
LLVMBuild.txt Extracted ObjCARC.cpp into its own library libLLVMObjCARCOpts in preparation for refactoring the ARC Optimizer. 2013-01-28 01:35:51 +00:00
Makefile Extracted ObjCARC.cpp into its own library libLLVMObjCARCOpts in preparation for refactoring the ARC Optimizer. 2013-01-28 01:35:51 +00:00