[PATCH] D45146: [x86] Introduce a pass to begin more systematically fixing PR36028 and similar issues.

Chandler Carruth via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Apr 2 20:41:11 PDT 2018


chandlerc updated this revision to Diff 140732.
chandlerc marked 6 inline comments as done.
chandlerc added a comment.

Major update. Addresses all but one code review comment. Also updates all tests
and adds my dedicated MIR test for this functionality.

The test updates are particularly great. Tons of removed code. Everything
consolidates on a common (good) codegen pattern.

I've also implemented various optimizations here such as scavenging existing
setCC instructions and looking for inverted conditions when its straightforward
to do so.


Repository:
  rL LLVM

https://reviews.llvm.org/D45146

Files:
  llvm/include/llvm/CodeGen/MachineBasicBlock.h
  llvm/lib/CodeGen/MachineBasicBlock.cpp
  llvm/lib/Target/X86/CMakeLists.txt
  llvm/lib/Target/X86/X86.h
  llvm/lib/Target/X86/X86FlagsCopyLowering.cpp
  llvm/lib/Target/X86/X86TargetMachine.cpp
  llvm/test/CodeGen/X86/O0-pipeline.ll
  llvm/test/CodeGen/X86/O3-pipeline.ll
  llvm/test/CodeGen/X86/cmpxchg-clobber-flags.ll
  llvm/test/CodeGen/X86/copy-eflags.ll
  llvm/test/CodeGen/X86/flags-copy-lowering.mir
  llvm/test/CodeGen/X86/mul-i1024.ll
  llvm/test/CodeGen/X86/peephole-na-phys-copy-folding.ll
  llvm/test/CodeGen/X86/win64_frame.ll
  llvm/test/CodeGen/X86/x86-repmov-copy-eflags.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D45146.140732.patch
Type: text/x-patch
Size: 469941 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180403/1611897e/attachment-0001.bin>


More information about the llvm-commits mailing list