[PATCH] D20162: [MSP430] PR27500 CodeGen: Rework branch-select pass
Vadzim Dambrouski via llvm-commits
llvm-commits at lists.llvm.org
Wed May 11 06:10:55 PDT 2016
pftbest created this revision.
pftbest added a reviewer: asl.
pftbest added a subscriber: llvm-commits.
Branch instructions created during this pass now have a machine basic block as a target instead of a fixed offset. If there is no layout successor, the current MBB is split to create one. This fixes 27500.
Branch distance should be checked in words instead of a bytes, according to documentation. This prevents branch expansion from triggering too early.
Vector of block offsets is now used to calculate distances between blocks, this is more efficient when branch expansion is not needed, which is a common case.
http://reviews.llvm.org/D20162
Files:
lib/Target/MSP430/MSP430BranchSelector.cpp
test/CodeGen/MSP430/BranchSelector.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D20162.56882.patch
Type: text/x-patch
Size: 38273 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160511/330184a8/attachment-0001.bin>
More information about the llvm-commits
mailing list