[PATCH] D28583: CodeGen: Allow small copyable blocks to "break" the CFG.

Kyle Butt via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jan 11 15:07:48 PST 2017


iteratee created this revision.
iteratee added a reviewer: davidxl.
iteratee added subscribers: echristo, timshen, chandlerc, llvm-commits.
iteratee set the repository for this revision to rL LLVM.
Herald added subscribers: nhaehnle, nemanjai, jyknight, dschuff, jfb.
Herald added a reviewer: tstellarAMD.

When choosing the best successor for a block, ordinarily we would have preferred
a block that preserves the CFG unless there is a strong probability the other
direction. For small blocks that can be duplicated we now skip that requirement
as well.


Repository:
  rL LLVM

https://reviews.llvm.org/D28583

Files:
  lib/CodeGen/MachineBlockPlacement.cpp
  test/CodeGen/AArch64/addsub.ll
  test/CodeGen/AArch64/arm64-atomic.ll
  test/CodeGen/AArch64/arm64-ccmp.ll
  test/CodeGen/AArch64/arm64-shrink-wrapping.ll
  test/CodeGen/AArch64/compare-branch.ll
  test/CodeGen/AArch64/logical_shifted_reg.ll
  test/CodeGen/AArch64/tbz-tbnz.ll
  test/CodeGen/AMDGPU/branch-relaxation.ll
  test/CodeGen/AMDGPU/si-annotate-cf-noloop.ll
  test/CodeGen/AMDGPU/uniform-cfg.ll
  test/CodeGen/ARM/arm-and-tst-peephole.ll
  test/CodeGen/ARM/atomic-op.ll
  test/CodeGen/ARM/atomic-ops-v8.ll
  test/CodeGen/ARM/cmpxchg-weak.ll
  test/CodeGen/ARM/machine-cse-cmp.ll
  test/CodeGen/Mips/brconeq.ll
  test/CodeGen/Mips/brconeqk.ll
  test/CodeGen/Mips/brcongt.ll
  test/CodeGen/Mips/brconlt.ll
  test/CodeGen/Mips/brconnez.ll
  test/CodeGen/Mips/llvm-ir/ashr.ll
  test/CodeGen/Mips/micromips-compact-branches.ll
  test/CodeGen/PowerPC/misched-inorder-latency.ll
  test/CodeGen/PowerPC/tail-dup-break-cfg.ll
  test/CodeGen/PowerPC/tail-dup-layout.ll
  test/CodeGen/SPARC/sjlj.ll
  test/CodeGen/SystemZ/asm-18.ll
  test/CodeGen/SystemZ/cond-store-01.ll
  test/CodeGen/SystemZ/cond-store-02.ll
  test/CodeGen/SystemZ/cond-store-03.ll
  test/CodeGen/SystemZ/cond-store-04.ll
  test/CodeGen/SystemZ/cond-store-05.ll
  test/CodeGen/SystemZ/cond-store-06.ll
  test/CodeGen/SystemZ/int-cmp-37.ll
  test/CodeGen/SystemZ/int-cmp-40.ll
  test/CodeGen/SystemZ/int-cmp-44.ll
  test/CodeGen/SystemZ/int-cmp-48.ll
  test/CodeGen/SystemZ/tdc-06.ll
  test/CodeGen/Thumb/thumb-shrink-wrapping.ll
  test/CodeGen/Thumb2/cbnz.ll
  test/CodeGen/Thumb2/ifcvt-compare.ll
  test/CodeGen/Thumb2/v8_IT_4.ll
  test/CodeGen/WebAssembly/phi.ll
  test/CodeGen/X86/2008-11-29-ULT-Sign.ll
  test/CodeGen/X86/add.ll
  test/CodeGen/X86/avx-splat.ll
  test/CodeGen/X86/avx512-cmp.ll
  test/CodeGen/X86/bt.ll
  test/CodeGen/X86/critical-edge-split-2.ll
  test/CodeGen/X86/fp-une-cmp.ll
  test/CodeGen/X86/jump_sign.ll
  test/CodeGen/X86/machine-cse.ll
  test/CodeGen/X86/shift-double.ll
  test/CodeGen/X86/sink-hoist.ll
  test/CodeGen/X86/sse-scalar-fp-arith.ll
  test/CodeGen/X86/testb-je-fusion.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D28583.84034.patch
Type: text/x-patch
Size: 66276 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170111/399b3288/attachment.bin>


More information about the llvm-commits mailing list