[PATCH] D153316: [AArch64][SelectionDAG] fix infinite loop caused by legalizing & combining CONCAT_VECTORS

Simon Pilgrim via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jun 20 02:13:07 PDT 2023


RKSimon added a comment.

Please regenerate the diff with context



================
Comment at: llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp:23176
+    // AArch64TargetLowering::LowerCONCAT_VECTORS() and only when LegalDAG is
+    // true. The corresponding combining happens here.
+    //
----------------
We don't usually refer to issue# in code - we add that to the tests instead. The description here should be more generic


================
Comment at: llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp:23180
+    // make sure targets which does not support SVE are not affected by this
+    // change.
+    if (In.getOpcode() == ISD::CONCAT_VECTORS && In.hasOneUse() &&
----------------
The comment doesn't appear to match the code - the code just prevents folding scalable vectors after LegalDAG.


================
Comment at: llvm/test/CodeGen/AArch64/aarch64-sve-concat_vectors.ll:2
+; RUN: llc -O3 -mcpu=neoverse-n2 < %s | FileCheck %s
+; CHECK: @allocno_reload_assign
+
----------------
Better to use the update_llc_test_checks script


================
Comment at: llvm/test/CodeGen/AArch64/aarch64-sve-concat_vectors.ll:18
+
+attributes #0 = { nocallback nofree nosync nounwind willreturn writeonly }
----------------
remove the unnecessary metadata etc.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D153316



More information about the llvm-commits mailing list