[PATCH] D110235: [LoopVectorize] Support reductions that store intermediary result
David Sherwood via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Feb 3 07:11:59 PST 2022
david-arm added a comment.
Hi @igor.kirillov, the patch looks good now! I just had one question about an odd-looking CHECK line in one of the test files.
================
Comment at: llvm/test/Transforms/LoopVectorize/reduction-with-invariant-store.ll:341
+; CHECK: exit:
+; CHECK: %[[PHI:[a-zA-Z.0-9]+]] = phi i32 {{.*}}
+; CHECK: %[[ADDR:[a-zA-Z.0-9]+]] = getelementptr inbounds i32, i32* %dst, i64 43
----------------
nit: I think it's fine (and cleaner) to just do
%[[PHI:%.*]] =
%[[ADDR:%.*]] =
here. Also, can you add the incoming value to the phi just to make sure it's the correct value? I think it should just be
phi i32 {{ [[TMP]], %middle.block }}
================
Comment at: llvm/test/Transforms/LoopVectorize/reduction-with-invariant-store.ll:369
+; Make sure any check-not directives are not triggered by function declarations.
+; CHECK: declare
----------------
This looks a bit odd. I'm not sure why it's needed? If there is a CHECK-LABEL for every function I don't think this should happen.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D110235/new/
https://reviews.llvm.org/D110235
More information about the llvm-commits
mailing list