[PATCH] D122482: [X86] combineADC - fold ADC(C1,C2,Carry) -> ADC(0,C1+C2,Carry)

David Zarzycki via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Mar 25 09:03:27 PDT 2022


davezarzycki added a comment.

This is a great improvement but a scenario is still missing. For example, from a build of LLVM with this change applied (i.e. self hosted):

000000000180e020 <_ZNK4llvm12X86InstrInfo30getFMA3OpcodeToCommuteOperandsERKNS_12MachineInstrEjjRKNS_17X86InstrFMA3GroupE>:
 180e020:       mov    0x10(%rsi),%rax
 180e024:       movzwl (%rax),%r9d
 180e028:       mov    0x10(%rax),%rsi
 180e02c:       cmp    %ecx,%edx
 180e02e:       mov    %ecx,%edi
 180e030:       cmova  %edx,%ecx
 180e033:       cmovb  %edx,%edi
 180e036:       xor    %eax,%eax
 180e038:       bt     $0x2a,%rsi
 180e03d:       mov    $0x0,%edx
 180e042:       adc    $0x2,%edx
 180e045:       cmp    $0x1,%edi


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D122482/new/

https://reviews.llvm.org/D122482



More information about the llvm-commits mailing list