[PATCH] D66297: [ARM] Select vmla

Dave Green via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Aug 19 01:37:52 PDT 2019


dmgreen added inline comments.


================
Comment at: llvm/lib/Target/ARM/ARMInstrMVE.td:3769
+let Predicates = [HasMVEInt] in {
+  def : Pat<(v4i32 (add (v4i32 QPR:$src1), (v4i32 (mul (v4i32 QPR:$src2), (v4i32 (ARMvdup (i32 tGPR:$x))))))),
+            (v4i32 (MVE_VMLA_qr_u32 $src1, $src2, $x))>;
----------------
MQPR :) Can you also try to format this line to be a little shorter.


================
Comment at: llvm/test/CodeGen/ARM/vmla-mve.ll:1
+; RUN: llc -mtriple=thumbv8.1m.main-arm-none-eabi -mattr=+mve.fp %s -o - | FileCheck %s
+
----------------
Can you move this to test/CodeGen/Thumb2/mve-vmla.ll


================
Comment at: llvm/test/CodeGen/ARM/vmla-mve.ll:11
+  %1 = shufflevector <4 x i32> %0, <4 x i32> undef, <4 x i32> zeroinitializer
+  %2 = mul nsw <4 x i32> %B, %1
+  %3 = add nsw <4 x i32> %A, %2
----------------
Do these still select if the operands are reversed? It may be worth adding a few tests to show that.


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

https://reviews.llvm.org/D66297





More information about the llvm-commits mailing list