private int pathHashCode(@NotNull String path) {
    String relativePath = myRelativizer.toRelative(path);
    // On case-insensitive OS hash calculated from path converted to lower case
    if (ProjectStamps.PORTABLE_CACHES) {
      return StringUtil.isEmpty(relativePath) ? 0 : FileUtil.toCanonicalPath(relativePath).hashCode();
    }
    return FileUtil.pathHashCode(relativePath); // todo: better hash function?
  }
private int pathHashCode(@NotNull String path)