[ext-code-space] Introduce RelocInfo::target_object(PtrComprCageBase)
... as a result of merging RelocInfo::target_object() with RelocInfo::target_object_no_host(PtrComprCageBase), where the cage base is used for accessing compressed embedded pointers. There are two reasons for this change: 1) the parameterless version used to compute the cage base value from the host Code object, however, when external code space is enabled such a base value will not work for non-Code objects, since they require different cage base for decompressing, 2) when external code space is enabled, there must be no need to embed compressed Code objects at all because CodeDataContainers must be used instead. In addition this CL introduces DCHECKs to enforce (2). Bug: v8:11880 Change-Id: I5b504f91dea87c2bcaa1165d2dbfaada70cba7be Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3211998Reviewed-by: Camillo Bruni <cbruni@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#77361}
Showing
Please
register
or
sign in
to comment