================ @@ -44,23 +44,19 @@ MDNode *LoopInfo::createPipeliningMetadata(const LoopAttributes &Attrs, else if (Attrs.PipelineInitiationInterval != 0) Enabled = true; + SmallVector<Metadata *, 4> Args; + Args.append(LoopProperties.begin(), LoopProperties.end()); + if (Enabled != true) { - SmallVector<Metadata *, 4> NewLoopProperties; if (Enabled == false) { - NewLoopProperties.append(LoopProperties.begin(), LoopProperties.end()); ---------------- Meinersbur wrote:
I think this is due to the regex `.*` being too greedy, so e.g. `![[ISVECTORIZED:.*]]` consumes multiple metadata nodes. A better one would be `[_a-zA-Z0-9.]+`. In principle `![[ISVECTORIZED]] = {!"llvm.loop.isvectorized"}` (or `UNROLL_8`) should be verified somewhere, which would then fail if it matched more than one node. IMHO there are lots of problems with FileCheck on LLVM-IR, and this is just one of them. Another one is that by default `CHECK: car sale` will match `carpet sale`. https://github.com/llvm/llvm-project/pull/131985 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits