[PATCH] D66660: [ARM][ParallelDSP] Change search for muls

Sam Parker via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Aug 23 08:43:39 PDT 2019


samparker created this revision.
samparker added reviewers: efriedma, SjoerdMeijer, dmgreen, hans, thakis.
Herald added subscribers: kristof.beyls, javed.absar.

rL369567 <https://reviews.llvm.org/rL369567> reverted a couple of recent changes made to ARMParallelDSP because of a miscompilation error: PR43073. The issue stemmed from an underlying bug that was caused by adding muls into a reduction before it was proved that they could be executed in parallel with another mul. Most of the changes here are from the previously reverted commits. The additional changes have been made area:

1. The Search function now doesn't insert any muls into the Reduction object. That now happens once the search has successfully finished.
2. For any muls added into the reduction but that wasn't paired, we accumulate the value as an input into the smlad.


https://reviews.llvm.org/D66660

Files:
  lib/Target/ARM/ARMParallelDSP.cpp
  test/CodeGen/ARM/O3-pipeline.ll
  test/CodeGen/ARM/ParallelDSP/blocks.ll
  test/CodeGen/ARM/ParallelDSP/exchange.ll
  test/CodeGen/ARM/ParallelDSP/overlapping.ll
  test/CodeGen/ARM/ParallelDSP/pr42729.ll
  test/CodeGen/ARM/ParallelDSP/pr43073.ll
  test/CodeGen/ARM/ParallelDSP/smlad11.ll
  test/CodeGen/ARM/ParallelDSP/smlad12.ll
  test/CodeGen/ARM/ParallelDSP/smlaldx-2.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D66660.216864.patch
Type: text/x-patch
Size: 52228 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190823/05b073f1/attachment.bin>


More information about the llvm-commits mailing list