llvm-6502/lib/Transforms
Chandler Carruth f28c057c42 [SROA] Use NewOffsetBegin in the unsplit case for memset merely for
consistency with memcpy rewriting, and fix a latent bug in the alignment
management for memset.

The alignment issue is that getAdjustedAllocaPtr is computing the
*relative* offset into the new alloca, but the alignment isn't being set
to the relative offset, it was using the the absolute offset which is
into the old alloca.

I don't think its possible to write a test case that actually reaches
this code where the resulting alignment would be observably different,
but the intent was clearly to use the relative offset within the new
alloca.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@202229 91177308-0d34-0410-b5e6-96231b3b80d8
2014-02-26 04:45:24 +00:00
..
Hello Set LLVM_EXPORTED_SYMBOL_FILE in CMakeLists whose corresponding Makefiles do so. 2013-12-29 23:06:49 +00:00
InstCombine Make DataLayout a plain object, not a pass. 2014-02-25 17:30:31 +00:00
Instrumentation Make DataLayout a plain object, not a pass. 2014-02-25 17:30:31 +00:00
IPO Make DataLayout a plain object, not a pass. 2014-02-25 17:30:31 +00:00
ObjCARC Update optimization passes to handle inalloca arguments 2014-01-28 02:38:36 +00:00
Scalar [SROA] Use NewOffsetBegin in the unsplit case for memset merely for 2014-02-26 04:45:24 +00:00
Utils Make DataLayout a plain object, not a pass. 2014-02-25 17:30:31 +00:00
Vectorize Make DataLayout a plain object, not a pass. 2014-02-25 17:30:31 +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