1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 03:33:20 +01:00
llvm-mirror/lib
David Majnemer a21386b571 X86: Bad peephole interaction between adc, MOV32r0
The peephole tries to reorder MOV32r0 instructions such that they are
before the instruction that modifies EFLAGS.

The problem is that the peephole does not consider the case where the
instruction that modifies EFLAGS also depends on the previous state of
EFLAGS.

Instead, walk backwards until we find an instruction that has a def for
EFLAGS but does not have a use.
If we find such an instruction, insert the MOV32r0 before it.
If it cannot find such an instruction, skip the optimization.

llvm-svn: 182184
2013-05-18 01:02:03 +00:00
..
Analysis Respect the 'nobuiltin' attribute when determining if a call is to a memory builtin. 2013-05-16 04:12:04 +00:00
Archive
AsmParser Add ArrayRef constructor from None, and do the cleanups that this constructor enables 2013-05-05 00:40:33 +00:00
Bitcode Micro-optimization: don't shift an entire bitcode record over to get the code. 2013-05-10 22:17:10 +00:00
CodeGen Add LLVMContext argument to getSetCCResultType 2013-05-18 00:21:46 +00:00
DebugInfo libDebugInfo depends on libObject nowadays. 2013-05-09 13:48:26 +00:00
ExecutionEngine r182085 introduced a change that triggered an assertion on ARM. This is an immediate fix 2013-05-17 14:31:59 +00:00
IR Remove duplicated comment 2013-05-18 00:24:09 +00:00
IRReader
Linker Fix a performance bug in the Linker. 2013-05-04 05:05:18 +00:00
MC Cleanup relocation sorting for ELF. 2013-05-15 18:22:01 +00:00
Object Convert obj2yaml to use yamlio. 2013-05-17 22:58:42 +00:00
Option
Support Fix build on Windows 2013-05-15 09:00:30 +00:00
TableGen
Target X86: Bad peephole interaction between adc, MOV32r0 2013-05-18 01:02:03 +00:00
Transforms Add missing -*- C++ -*- to headers 2013-05-17 21:43:39 +00:00
CMakeLists.txt
LLVMBuild.txt
Makefile