[PATCH] D140638: [Codegen][LegalizeIntegerTypes] New legalization strategy for scalar shifts: shift through stack

Eli Friedman via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jan 3 15:33:22 PST 2023


efriedma added a comment.

A few header changes seem to be missing? I can't find a definition of ShiftLegalizationStrategy.

It might be worth implementing a strategy that avoids unaligned loads (by splitting the shift amount by the native register width instead of CHAR_BIT).  On targets that don't have native unaligned loads, they're pretty expensive.  Even on targets that do have unaligned loads, an aligned load can reduce the cost of the store forwarding stall.  (But on targets with fast unaligned loads, they're probably worth using if the shift amount is known to be a multiple of CHAR_BIT.)


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D140638/new/

https://reviews.llvm.org/D140638



More information about the llvm-commits mailing list