> - s64 offset = (void *)v - (void *)location;> + uintptr_t offset = (void *)v - (void *)location;s64 is signed, uintptr is not, so this might change behavior and needsan explanation.