-
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: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#50561}
bb7138f6