llvm-6502/lib
Chandler Carruth 908d4514f6 Fix a long-standing miscompile in the load analysis that was uncovered
by my refactoring of this code.

The method isSafeToLoadUnconditionally assumes that the load will
proceed with the preferred type alignment. Given that, it has to ensure
that the alloca or global is at least that aligned. It has always done
this historically when a datalayout is present, but has never checked it
when the datalayout is absent. When I refactored the code in r220156,
I exposed this path when datalayout was present and that turned the
latent bug into a patent bug.

This fixes the issue by just removing the special case which allows
folding things without datalayout. This isn't worth the complexity of
trying to tease apart when it is or isn't safe without actually knowing
the preferred alignment.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@220161 91177308-0d34-0410-b5e6-96231b3b80d8
2014-10-19 08:17:50 +00:00
..
Analysis Fix a long-standing miscompile in the load analysis that was uncovered 2014-10-19 08:17:50 +00:00
AsmParser
Bitcode correct const-ness with auto and dyn_cast 2014-10-15 17:45:13 +00:00
CodeGen [PBQP] Replace the interference-constraints algorithm with a faster version 2014-10-18 17:26:07 +00:00
DebugInfo
ExecutionEngine
IR [Stackmaps] Enable invoking the patchpoint intrinsic. 2014-10-17 17:39:00 +00:00
IRReader
LineEditor
Linker
LTO
MC Add back commits r219835 and a fixed version of r219829. 2014-10-17 01:48:58 +00:00
Object [llvm-objdump] Fix mach-o binding decompression error 2014-10-18 01:21:02 +00:00
Option
ProfileData
Support Introduce LLVMParseCommandLineOptions C API function. 2014-10-16 22:47:52 +00:00
TableGen
Target Use triple predicate functions instead of checking values directly. NFC. 2014-10-19 00:39:30 +00:00
Transforms Fix a long-standing miscompile in the load analysis that was uncovered 2014-10-19 08:17:50 +00:00
CMakeLists.txt
LLVMBuild.txt
Makefile