[PATCH] D140645: Add tests for atomic bittest with register/memory operands

Noah Goldstein via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Dec 23 21:33:26 PST 2022


goldstein.w.n added a comment.

In D140645#4015865 <https://reviews.llvm.org/D140645#4015865>, @pengfei wrote:

> The test is so large! Are we over testing for this feature?

Up to you but they are all distinct cases.

It tests:
[uint16_t, uint32_t, uint64_t] X [Constant, non-Constant] X [Return Value, Return SetZ(Value), Return SetNZ(Value), BrZ(Value), BrNZ(Value)] X [4-7 distinct cases changing how the powers of 2 are generated]

So it turns into ALOT of tests. If you want to drop some I would guess SetZ/SetNZ and BrZ/BrNZ are the
most redundant. Also the Constant tests are a bit unrelated although there are gaps in the current
impl that I hope to address in future patches so was trying to make this an all inclusive test
that could be incrementally filled in.

I think all but the `shl1_neq_*` tests should be able to lower to `bt{r|c|s}` and all the
other `cmpxchg` cases are because of various issues with the impl.

> Beside, split the test to another patch and only lieve diff here.

Its in two commits. You prefer an entirely seperate patch?


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D140645



More information about the llvm-commits mailing list