static int getGistStamp(@NotNull VirtualFile file) {
    AtomicInteger invalidationCount = file.getUserData(GIST_INVALIDATION_COUNT_KEY);
    int reindexCount = ((GistManagerImpl)getInstance()).getReindexCount();
    long fileModificationCount = file.getModificationCount();
    //mix the bits in all 4 components so that there is little chance change in one counter
    //  'compensate' change in another, and the resulting stamp happens to be the same:
    return mixBits(
      mixBits(Long.hashCode(fileModificationCount), reindexCount),
      mixBits(invalidationCount != null ? invalidationCount.get() : 0, INTERNAL_VERSION)
    );
  }
static int getGistStamp(@NotNull VirtualFile file)