[PATCH] D96700: [llvm][Aarch64][SVE] Remove extra fmov instruction with certain literals

Paul Walker via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Feb 15 06:18:40 PST 2021


paulwalker-arm added inline comments.


================
Comment at: llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td:560
+  // Duplicate immediate FP into all vector elements.
+  def : Pat<(nxv2f32 (AArch64dup (f32 fpimm:$val))),
+            (DUP_ZR_S (MOVi32imm (bitcast_fpimm_to_i32 f32:$val)))>;
----------------
david-arm wrote:
> It looks like this probably needs a 
> `let AddedComplexity = 2`
> like the patterns below. Also, should we be also adding patterns for `half` and `double` too?
@david-arm : What have you spotted to say this?  The tests suggest AddedComplexity is not required?


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D96700



More information about the llvm-commits mailing list