• Benedikt Meurer's avatar
    [cleanup] Unify enum cache handling. · 562663d5
    Benedikt Meurer authored
    Introduce a proper empty_descriptor_array, which has the proper layout
    (length is 2 and the two fields are set properly). Also add a special
    EnumCache class and a matching empty_enum_cache. The contract now is
    that we only need to check the EnumLength on the map to know whether we
    are allowed to use the enum cache. This greatly simplifies the handling
    of the enum cache (and also the descriptor arrays), especially for the
    future work on optimizing keyed access via the enum cache indices.
    
    Bug: v8:6702
    Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
    Change-Id: I5ef517a3041163cd65ef003f691139ea52233e83
    Reviewed-on: https://chromium-review.googlesource.com/641030
    Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
    Reviewed-by: 's avatarBenedikt Meurer <bmeurer@chromium.org>
    Reviewed-by: 's avatarMichael Lippautz <mlippautz@chromium.org>
    Reviewed-by: 's avatarCamillo Bruni <cbruni@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#47697}
    562663d5
builtins-forin-gen.cc 7.14 KB