1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-20 19:42:54 +02:00
llvm-mirror/test
Chandler Carruth aea541125e Fix the root cause of PR15348 by correctly handling alignment 0 on
memory intrinsics in the SDAG builder.

When alignment is zero, the lang ref says that *no* alignment
assumptions can be made. This is the exact opposite of the internal API
contracts of the DAG where alignment 0 indicates that the alignment can
be made to be anything desired.

There is another, more explicit alignment that is better suited for the
role of "no alignment at all": an alignment of 1. Map the intrinsic
alignment to this early so that we don't end up generating aligned DAGs.

It is really terrifying that we've never seen this before, but we
suddenly started generating a large number of alignment 0 memcpys due to
the new code to do memcpy-based copying of POD class members. That patch
contains a bug that rounds bitfield alignments down when they are the
first field. This can in turn produce zero alignments.

This fixes weird crashes I've seen in library users of LLVM on 32-bit
hosts, etc.

llvm-svn: 176022
2013-02-25 14:20:21 +00:00
..
Analysis Use references to attribute groups on the call/invoke instructions. 2013-02-22 09:09:42 +00:00
Archive
Assembler Modify the LLVM assembly output so that it uses references to represent function attributes. 2013-02-20 07:21:42 +00:00
Bindings/Ocaml Use the attribute group reference instead of the attribute directly. 2013-02-20 07:48:23 +00:00
Bitcode Modify the LLVM assembly output so that it uses references to represent function attributes. 2013-02-20 07:21:42 +00:00
BugPoint
CodeGen Fix the root cause of PR15348 by correctly handling alignment 0 on 2013-02-25 14:20:21 +00:00
DebugInfo Use getSplitDebugFilename when constructing the skeleton cu and 2013-02-22 23:50:08 +00:00
ExecutionEngine AArch64: adjust tests which rely on a default JIT 2013-02-18 11:08:37 +00:00
Feature Modify the LLVM assembly output so that it uses references to represent function attributes. 2013-02-20 07:21:42 +00:00
FileCheck Canonicalize line endings to Linux style also when the --strict-whitespace flag is in use. This flag is supposed to affect horizontal whitespaces only. 2013-02-06 20:40:38 +00:00
Instrumentation [asan] instrument invoke insns with noreturn attribute (as well as call insns) 2013-02-20 12:35:15 +00:00
Integer
JitListener Add support for source and line information to IntelJITEventListener for object emitted by MCJIT. 2013-01-28 19:52:37 +00:00
Linker Linker: correctly link in dbg.declare 2013-01-31 21:19:18 +00:00
MC ARM: Convenience aliases for 'srs*' instructions. 2013-02-23 00:52:09 +00:00
Object [llvm-readobj] Add ELF .dynamic table dumping. 2013-02-20 02:37:12 +00:00
Other Modify the LLVM assembly output so that it uses references to represent function attributes. 2013-02-20 07:21:42 +00:00
Scripts Set the +x bit on two batch scripts 2013-01-25 22:12:50 +00:00
TableGen FileCheck-ify some grep tests 2013-01-25 22:11:46 +00:00
tools
Transforms CVP: If we have a PHI with an incoming select, try to skip the select. 2013-02-24 15:34:43 +00:00
Unit
Verifier
YAMLParser
CMakeLists.txt llvm/test/CMakeLists.txt: Add a dependency to llvm-rtdyld in check-llvm. 2013-01-25 23:24:07 +00:00
lit.cfg
lit.site.cfg.in
Makefile build: add --with-python option 2013-01-30 04:07:37 +00:00
Makefile.tests
TestRunner.sh