It's the same difference as in these sentences:
There was nowhere that a rock that size could have come from.
There was nowhere that a rock that size could come from.
With 'have' there is more focus on the past. The rock already came from somewhere.
Without 'have' the meaning can be the same, but in this case it can also refer to something in the future. The rock has not come from anywhere yet.
CJ