22.12
```sql
SELECT cityHash64(toIPv4('1.2.3.4'))
--
5715546585361069049
```

22.13
```sql
SELECT cityHash64(toIPv4('1.2.3.4'))
--
3462390757903342180
```

I found it accidentally. It seems it's only with cityHash64 and IPv4. 
It seems it's OK with other hash functions (sipHash / xxHash32) and IPv6.
May be it's only issue with MacOs build.

If it's the real issue, probably it's worth to check all hash functions.

{
        return x;
    }
    template <typename T, typename std::enable_if<!std::is_same_v<T, int8_t>
                                                      && !std::is_same_v<T, int16_t>
                                                      && !std::is_same_v<T, int32_t>
                                                      && !std::is_same_v<T, int64_t>, T>::type * = nullptr>
    static ReturnType apply(T x)
    {
        if (std::is_unsigned_v<T>)
            throw Exception("Unsigned types are not supported", ErrorCodes::NOT_IMPLEMENTED);
        const size_t size = sizeof(T);
        const char * data = reinterpret_cast<const char *>(&x);
        return apply(data, size);
    }
    static ReturnType apply(const char * data, const size_t size)
    {
        UInt32 h = 0;
        for (size_t i = 0; i < size; ++i)
            h = 31 * h + static_cast<UInt32>(static_cast<Int8>(data[i]));
        return static_cast<Int32>(h);
    }
    static ReturnType combineHashes(Int32, Int32)