[PATCH] [X86] Use ADD/SUB instead of INC/DEC for Silvermont

Alexey Volkov avolkov.intel at gmail.com
Mon Jun 2 07:28:31 PDT 2014


Hi nadav,

According to Intel Software Optimization Manual on Silvermont INC or DEC instructions 
require an additional uop to merge the flags. As a result, a branch instruction depending on an INC or a DEC 
instruction incurs a 1 cycle penalty.
This patch disables INC/DEC patterns for Silvermont under new feature flag "slow-incdec".

http://reviews.llvm.org/D3990

Files:
  lib/Target/X86/X86.td
  lib/Target/X86/X86ISelLowering.cpp
  lib/Target/X86/X86InstrCompiler.td
  lib/Target/X86/X86InstrInfo.td
  lib/Target/X86/X86Subtarget.cpp
  lib/Target/X86/X86Subtarget.h
  test/CodeGen/X86/slow-incdec.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D3990.10015.patch
Type: text/x-patch
Size: 9855 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140602/a7eaea0a/attachment.bin>


More information about the llvm-commits mailing list