[PATCH] D139283: [llvm-exegesis] parallel snippet generator: avoid Read-After-Write pitfail for instrs w/ tied variables

Roman Lebedev via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Dec 5 14:00:20 PST 2022


lebedev.ri marked 2 inline comments as done.
lebedev.ri added a comment.

(@courbet waiting on you)



================
Comment at: llvm/tools/llvm-exegesis/lib/ParallelSnippetGenerator.cpp:158
+
+  if (Op.isUse()) {
+    switch (S) {
----------------
RKSimon wrote:
> lebedev.ri wrote:
> > RKSimon wrote:
> > > lebedev.ri wrote:
> > > > One thing i was thinking of, are there cases where we have
> > > > both defs with tied uses AND defs without tied uses?
> > > > If we have (which instruction is that?),
> > > > should we just always reuse the reg for defs without tied uses?
> > > The weirdest x86 instructions for that kind of thing are some of the CMPXCHG reg-reg instructions - maybe some of the MUL/IMUL and DIV/IDIV variants as well?
> > What i would like, is `--dry-run` option for exegesis,
> > to do everything, EXCEPT actually running the measurements.
> > It will help with test coverage, too.
> > If that option was present, i would have an easy way to check if there is such an opcode...
> +1 - the need to have to install libPFM for most of the test coverage is limiting.
Great, i can try to look into that later.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D139283



More information about the llvm-commits mailing list