[PATCH] D115166: [AArch64][SVE] Fix fptrunc store for fixed len vector

Paul Walker via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Dec 6 10:31:33 PST 2021


paulwalker-arm added inline comments.


================
Comment at: llvm/test/CodeGen/AArch64/sve-fpext-load.ll:88-89
+; Fixed length vector regression test.
+define <2 x double> @ext_v2f32_v2f64(<2 x float>* %ptr) {
+; CHECK-LABEL: ext_v2f32_v2f64:
+; CHECK:       // %bb.0:
----------------
`sve-fixed-length-fp-extend-trunc.ll` looks like a better home for this and the test below.  In fact I believe we already have the makings of the required tests. See `fcvt_v2f32_v2f64 and fcvt_v2f64_v2f32` within that file.

In general we don't use memory for the fixed length tests when the vector types are NEON sized.  However, within `sve-fixed-length-fp-extend-trunc.ll` I think that is a mistake because these tests now validate multiple things, namely operation legalisation as well as the DAGCombines required for good code generation.  This is likely how this bug has slipped through so for this patch can you instead update the tests within `sve-fixed-length-fp-extend-trunc.ll` so they all go through memory (it looks like there only 16 of them)?


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D115166



More information about the llvm-commits mailing list