[PATCH] D132080: RegisterClassInfo: Fix CSR cache invalidation

Nigel Perks via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Aug 24 01:51:52 PDT 2022


nigelp-xmos added a comment.

@MatzeB Do you agree with the problem in the logic of this diff, that I reported above? The code:

  if (CSR[I] == 0 || I >= LastSize) {
      CSRChanged = I != LastSize;
      break;
    }

is wrong in the case CSR[I] != 0 && I == LastSize, i.e. when an entry in the new list is beyond the length of the old list (all previous entries having matched). In that case, the lists are different, and code should set CSRChanged = true. But the committed code sets CSRChanged false.

This means that incorrect expected test results have now been committed in scavenging.ll.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D132080



More information about the llvm-commits mailing list