This is an archive of the discontinued LLVM Phabricator instance.

[AArch64][SVE2] Asm: add various bitwise shift instructions
ClosedPublic

Authored by c-rhodes on May 20 2019, 7:07 AM.

Details

Summary

This patch adds support for the SVE2 saturating/rounding bitwise shift
left (predicated) group of instructions:

  • SRSHL, URSHL, SRSHLR, URSHLR, SQSHL, UQSHL, SQRSHL, UQRSHL, SQSHLR, UQSHLR, SQRSHLR, UQRSHLR

Immediate forms of the SQSHL and UQSHL instructions are also added to
the existing SVE bitwise shift by immediate (predicated) group, as well
as three new instructions SRSHR/URSHR/SQSHLU. The new instructions in
this group are encoded similarly and are implemented using the same
TableGen class with a minimal change (1 bit in encoding).

The specification can be found here:
https://developer.arm.com/docs/ddi0602/latest

Diff Detail