[PATCH] D76680: [SveEmitter] Add immediate checks for lanes and complex imms

Sander de Smalen via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Tue Mar 24 02:07:56 PDT 2020


sdesmalen created this revision.
sdesmalen added reviewers: efriedma, SjoerdMeijer, rovka.
Herald added a subscriber: tschuett.
Herald added a project: clang.
sdesmalen added a parent revision: D76679: [SveEmitter] Add more immediate operand checks..

Adds another bunch of of intrinsics that take immediates with
varying ranges based, some being a complex rotation immediate
which are a set of allowed immediates rather than a range.

  svmla_lane:   lane immediate ranging 0..(128/(1*sizeinbits(elt)) - 1)
  svcmla_lane:  lane immediate ranging 0..(128/(2*sizeinbits(elt)) - 1)
  svdot_lane:   lane immediate ranging 0..(128/(4*sizeinbits(elt)) - 1)
  svcadd:       complex rotate immediate [90, 270]
  svcmla:
  svcmla_lane:  complex rotate immediate [0, 90, 180, 270]


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D76680

Files:
  clang/include/clang/Basic/DiagnosticSemaKinds.td
  clang/include/clang/Basic/arm_sve.td
  clang/lib/Sema/SemaChecking.cpp
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_cmla.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_cmla_shortform.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_dot.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_dot_shortform.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_mla.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_mla_shortform.c
  clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_qdech_shortform.c
  clang/test/CodeGen/aarch64-sve-intrinsics/negative/acle_sve_cmla.c
  clang/test/CodeGen/aarch64-sve-intrinsics/negative/acle_sve_dot.c
  clang/test/CodeGen/aarch64-sve-intrinsics/negative/acle_sve_mla.c
  clang/utils/TableGen/SveEmitter.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D76680.252247.patch
Type: text/x-patch
Size: 53131 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20200324/0b4b3228/attachment-0001.bin>


More information about the cfe-commits mailing list