• Michael Achenbach's avatar
    Revert "Simplify FunctionKind, saving 4 bits in SharedFunctionInfo" · bb7138f6
    Michael Achenbach authored
    This reverts commit 42667bab.
    
    Reason for revert: Breaks msvc compile:
    https://build.chromium.org/p/client.v8/builders/V8%20Win64%20-%20msvc/builds/908
    
    Original change's description:
    > Simplify FunctionKind, saving 4 bits in SharedFunctionInfo
    > 
    > Since we only need to store 18 different function kinds,
    > the bitfield approach was wasting space (requiring 11 bits).
    > 
    > This patch replaces the bitfield with a regular enum, and
    > updates all the FunctionKind predicates to use comparisons
    > instead of bitwise ops.
    > 
    > For the small amount of builtin code that depended upon being
    > able to do masking to determine whether something is a class
    > constructor, we still store two extra bits on FunctionKind,
    > which are computed when the SFI is initialized.
    > 
    > If this approach causes performance regressions (i.e., if it
    > turns out that other code was implicitly depending on masking
    > for fast checks), we can revert this or address it in
    > other ways (e.g., by doing similar caching of repeated checks
    > in the caller).
    > 
    > Change-Id: Iebb3214f564ea8bd7b21e78fda33517d63247124
    > Reviewed-on: https://chromium-review.googlesource.com/860896
    > Commit-Queue: Adam Klein <adamk@chromium.org>
    > Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org>
    > Cr-Commit-Position: refs/heads/master@{#50559}
    
    TBR=adamk@chromium.org,gsathya@chromium.org
    
    Change-Id: I8e1faa0ca6213d1e70a00fcb417b1bfa35ebd643
    No-Presubmit: true
    No-Tree-Checks: true
    No-Try: true
    Reviewed-on: https://chromium-review.googlesource.com/866310Reviewed-by: 's avatarMichael Achenbach <machenbach@chromium.org>
    Commit-Queue: Michael Achenbach <machenbach@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#50561}
    bb7138f6
Name
Last commit
Last update
..
arguments-inl.h Loading commit data...
arguments.h Loading commit data...
bigint.cc Loading commit data...
bigint.h Loading commit data...
code-inl.h Loading commit data...
code.h Loading commit data...
compilation-cache-inl.h Loading commit data...
compilation-cache.h Loading commit data...
data-handler-inl.h Loading commit data...
data-handler.h Loading commit data...
debug-objects-inl.h Loading commit data...
debug-objects.cc Loading commit data...
debug-objects.h Loading commit data...
descriptor-array.h Loading commit data...
dictionary.h Loading commit data...
fixed-array-inl.h Loading commit data...
fixed-array.h Loading commit data...
frame-array-inl.h Loading commit data...
frame-array.h Loading commit data...
hash-table-inl.h Loading commit data...
hash-table.h Loading commit data...
intl-objects.cc Loading commit data...
intl-objects.h Loading commit data...
js-array-inl.h Loading commit data...
js-array.h Loading commit data...
js-collection-inl.h Loading commit data...
js-collection.h Loading commit data...
js-regexp-inl.h Loading commit data...
js-regexp.h Loading commit data...
literal-objects-inl.h Loading commit data...
literal-objects.cc Loading commit data...
literal-objects.h Loading commit data...
map-inl.h Loading commit data...
map.h Loading commit data...
module-inl.h Loading commit data...
module.cc Loading commit data...
module.h Loading commit data...
name-inl.h Loading commit data...
name.h Loading commit data...
object-macros-undef.h Loading commit data...
object-macros.h Loading commit data...
property-descriptor-object-inl.h Loading commit data...
property-descriptor-object.h Loading commit data...
regexp-match-info.h Loading commit data...
scope-info.cc Loading commit data...
scope-info.h Loading commit data...
script-inl.h Loading commit data...
script.h Loading commit data...
shared-function-info-inl.h Loading commit data...
shared-function-info.h Loading commit data...
string-inl.h Loading commit data...
string-table.h Loading commit data...
string.h Loading commit data...
template-objects.cc Loading commit data...
template-objects.h Loading commit data...