[PATCH] D43977: [PowerPC] Do not emit record-form rotates when record-form andi suffices

Nemanja Ivanovic via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Mar 1 15:45:14 PST 2018


nemanjai created this revision.
nemanjai added reviewers: Carrot, echristo, hfinkel, power-llvm-team.
Herald added a subscriber: kbarton.

Up until Power9, the performance profile for `rlwinm.`, `rldicl.` and `andi.` looked more or less equivalent. However with Power9, the rotates are still 2-way cracked whereas the and-immediate is not.

This patch just ensures that we don't emit record-form rotates when an `andi.` is adequate.

As first pointed out by Carrot in https://bugs.llvm.org/show_bug.cgi?id=30833 (this patch is a fix for that PR).


Repository:
  rL LLVM

https://reviews.llvm.org/D43977

Files:
  lib/Target/PowerPC/PPCInstrInfo.cpp
  test/CodeGen/PowerPC/noPermuteFormasking.ll
  test/CodeGen/PowerPC/rlwinm-zero-ext.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D43977.136627.patch
Type: text/x-patch
Size: 4179 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180301/b502d5cf/attachment.bin>


More information about the llvm-commits mailing list