llvm-6502/test/CodeGen
Sanjay Patel 3cf9267d4e Fix program crashes due to alignment exceptions generated for SSE memop instructions (PR22371).
r224330 introduced a bug by misinterpreting the "FeatureVectorUAMem" bit.
The commit log says that change did not affect anything, but that's not correct.
That change allowed SSE instructions to have unaligned mem operands folded into
math ops, and that's not allowed in the default specification for any SSE variant. 

The bug is exposed when compiling for an AVX-capable CPU that had this feature
flag but without enabling AVX codegen. Another mistake in r224330 was not adding
the feature flag to all AVX CPUs; the AMD chips were excluded.

This is part of the fix for PR22371 ( http://llvm.org/bugs/show_bug.cgi?id=22371 ).

This feature bit is SSE-specific, so I've renamed it to "FeatureSSEUnalignedMem".
Changed the existing test case for the feature bit to reflect the new name and
renamed the test file itself to better reflect the feature.
Added runs to fold-vex.ll to check for the failing codegen.

Note that the feature bit is not set by default on any CPU because it may require a
configuration register setting to enable the enhanced unaligned behavior.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@227983 91177308-0d34-0410-b5e6-96231b3b80d8
2015-02-03 17:13:04 +00:00
..
AArch64 [AArch64] Prefer DUP/MOV ("CPY") to INS for vector_extract. 2015-02-02 17:55:57 +00:00
ARM Fix ARM peephole optimizeCompare to avoid optimizing unsigned cmp to 0. 2015-02-02 16:56:50 +00:00
BPF bpf: add missing lit.local.cfg 2015-01-24 18:20:52 +00:00
CPP
Generic overloaded-intrinsic-name: exercise anyptr on struct 2015-01-27 20:03:08 +00:00
Hexagon [Hexagon] Deleting old variants of intrinsics and adding missing tests. 2015-01-29 17:26:56 +00:00
Inputs
Mips Move the Mips target to storing the ABI in the TargetMachine rather 2015-01-26 17:33:46 +00:00
MSP430
NVPTX [NVPTX] Emit .pragma "nounroll" for loops marked with nounroll 2015-02-01 02:27:45 +00:00
PowerPC Disable 32-bit tests in tls-pic.ll until they can be repaired 2015-02-03 16:57:38 +00:00
R600 R600/SI: 64-bit and larger memory access must be at least 4-byte aligned 2015-02-02 18:02:28 +00:00
SPARC
SystemZ
Thumb
Thumb2
X86 Fix program crashes due to alignment exceptions generated for SSE memop instructions (PR22371). 2015-02-03 17:13:04 +00:00
XCore