llvm-6502/test/CodeGen
Benjamin Kramer 444dccecfc X86: Promote i8 cmov when both operands are coming from truncates of the same width.
X86 doesn't have i8 cmovs so isel would emit a branch. Emitting branches at this
level is often not a good idea because it's too late for many optimizations to
kick in. This solution doesn't add any extensions (truncs are free) and tries
to avoid introducing partial register stalls by filtering direct copyfromregs.

I'm seeing a ~10% speedup on reading a random .png file with libpng15 via
graphicsmagick on x86_64/westmere, but YMMV depending on the microarchitecture.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165868 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-13 10:39:49 +00:00
..
ARM ARM: tail-call inside a function where part of a byval argument is on caller's 2012-10-12 23:39:43 +00:00
CellSPU Fix broken tests. 2012-10-02 15:49:34 +00:00
CPP
Generic BranchProb: modify the definition of an edge in BranchProbabilityInfo to handle 2012-08-24 18:14:27 +00:00
Hexagon
MBlaze
Mips Div, Rem int/unsigned int 2012-10-12 02:01:09 +00:00
MSP430
NVPTX
PowerPC llvm/test/CodeGen/PowerPC/2012-10-12-bitcast.ll: Try to fix failure on non-ppc hosts, to add -mattr=+altivec. 2012-10-12 16:01:08 +00:00
SPARC Fix broken tests. 2012-10-02 15:49:34 +00:00
Thumb
Thumb2 Add LLVM support for Swift. 2012-09-29 21:43:49 +00:00
X86 X86: Promote i8 cmov when both operands are coming from truncates of the same width. 2012-10-13 10:39:49 +00:00
XCore