llvm-6502/test/CodeGen
Bob Wilson cc7052343e Avoid illegal integer promotion in fastisel
Stop folding constant adds into GEP when the type size doesn't match.
Otherwise, the adds' operands are effectively being promoted, changing the
conditions of an overflow.  Results are different when:

    sext(a) + sext(b) != sext(a + b)

Problem originally found on x86-64, but also fixed issues with ARM and PPC,
which used similar code.

<rdar://problem/15292280>

Patch by Duncan Exon Smith!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194840 91177308-0d34-0410-b5e6-96231b3b80d8
2013-11-15 19:09:27 +00:00
..
AArch64 Add test case for AArch64 NEON instruction set misc. 2013-11-14 06:45:17 +00:00
ARM Avoid illegal integer promotion in fastisel 2013-11-15 19:09:27 +00:00
CPP
Generic Error if we see an alias to a declaration. 2013-11-14 13:58:06 +00:00
Hexagon
Inputs
Mips [mips][msa] Merge basic_operations_little.ll into basic_operations.ll. 2013-11-15 17:24:41 +00:00
MSP430
NVPTX [NVPTX] Fix handling of indirect calls 2013-11-15 12:30:04 +00:00
PowerPC Avoid illegal integer promotion in fastisel 2013-11-15 19:09:27 +00:00
R600 R600/SI: Add VReg_96 register class to SIRegisterInfo::hasVGPRs() 2013-11-15 18:26:45 +00:00
SPARC [SparcV9] Handle i64 <-> float conversions in sparcv9 mode. 2013-11-03 12:28:40 +00:00
SystemZ [SystemZ] Automatically detect zEC12 and z196 hosts 2013-10-31 12:14:17 +00:00
Thumb
Thumb2 Enable generating legacy IT block for AArch32 2013-11-13 18:29:49 +00:00
X86 Avoid illegal integer promotion in fastisel 2013-11-15 19:09:27 +00:00
XCore Error if we see an alias to a declaration. 2013-11-14 13:58:06 +00:00