llvm-project/llvm/lib
Manman Ren c860887b2d ARM: peephole optimization to remove cmp instruction
This patch will optimize the following cases:
  sub r1, r3 | sub r1, imm
  cmp r3, r1 or cmp r1, r3 | cmp r1, imm
  bge L1

TO
  subs r1, r3
  bge  L1 or ble L1

If the branch instruction can use flag from "sub", then we can replace
"sub" with "subs" and eliminate the "cmp" instruction.

rdar: 10734411
llvm-svn: 156550
2012-05-10 16:48:21 +00:00
..
Analysis Rename the Region::block_iterator to Region::block_node_iterator, and 2012-05-04 20:55:23 +00:00
Archive Include cstdio in a few place that depended on getting it transitively through StringExtras.h 2012-03-23 11:35:30 +00:00
AsmParser Convert assert(0) to llvm_unreachable 2012-02-07 05:05:23 +00:00
Bitcode remove autoupgrade code for old function attributes format. 2012-05-08 17:07:35 +00:00
CodeGen ARM: peephole optimization to remove cmp instruction 2012-05-10 16:48:21 +00:00
DebugInfo Fix a C++11 UDL conflict. 2012-04-04 20:33:56 +00:00
ExecutionEngine ExecutionEngine: Check for NULL ErrorStr before using it. 2012-05-10 00:31:50 +00:00
Linker Supply a C interface to the "LinkModules" method. 2012-05-09 08:55:40 +00:00
MC Nuke a few dead remnants of the CBE. 2012-05-05 17:45:12 +00:00
Object Fix the implementation of MachOObjectFile::isSectionZeroInit so it follows the MachO spec. 2012-05-02 02:31:28 +00:00
Support Set the default iOS version to 3.0. 2012-05-09 18:23:00 +00:00
TableGen Move llvm-tblgen's StringMatcher into the TableGen library so it can 2012-05-02 17:32:48 +00:00
Target ARM: peephole optimization to remove cmp instruction 2012-05-10 16:48:21 +00:00
Transforms Fix the objc_storeStrong recognizer to stop before walking off the 2012-05-09 23:08:33 +00:00
VMCore Fix a problem with incomplete equality testing of PHINodes in 2012-05-10 15:59:41 +00:00
CMakeLists.txt Move TableGen's parser and entry point into a library 2011-10-01 16:41:13 +00:00
LLVMBuild.txt LLVMBuild: Introduce a common section which currently has a list of the 2011-12-12 22:45:54 +00:00
Makefile Remove more of llvmc and dependencies. 2011-09-20 00:34:27 +00:00