[PATCH] D48877: [X86][BtVer2][MCA] Recognize CMPEQ one-idioms

Andrea Di Biagio via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jul 4 06:11:47 PDT 2018


andreadb added a comment.

In https://reviews.llvm.org/D48877#1152117, @lebedev.ri wrote:

> In https://reviews.llvm.org/D48877#1152115, @andreadb wrote:
>
> > In https://reviews.llvm.org/D48877#1152098, @RKSimon wrote:
> >
> > > > Ok, well, i guess what i was trying to ask/understand is, is that already properly represented https://godbolt.org/g/9rYPYA, or not?
> > >
> > > No, we don't properly model dependency breaking instructions yet - zero-idioms are making use of a special case of llvm-mca that assumes dependency breaking if no resources are used - IMO that's something that should be removed and we come up with a better way to model this.
> >
> >
> > Simon is right on this.
> >  We still don't model dependency breaking instructions. There is already a plan to teach llvm-mca how to identify those instructions, and that is next on my TODO list. Once we have that system in place, we can remove the "zero-latency implies dependency-breaking" hack in llvm-mca.
> >
> > This patch doesn't do the right thing. The timeline clearly shows how dependencies are not broken.
>
>
> Ok, that is actually good, i was starting to question my [rudimentary] understanding of all this.
>
> > -Andrea
>
> Then, back to square one, are https://reviews.llvm.org/D48876 tests of any use? :)


You can commit those tests to show that we don't correctly model dependency breaking packed compare instructions on BtVer2. However, I would remove the `padd` from the tests.


Repository:
  rL LLVM

https://reviews.llvm.org/D48877





More information about the llvm-commits mailing list