DescriptionRevert "[turbofan] Avoid going through ArgumentsAdaptorTrampoline for CSA/C++ builtins."
This reverts commit 9df5674bd53b4a262e72f45263df9e886842c269 because it
is not compatible with the way that Array.prototype.reduceRight and
Array.prototype.reduce deal with optional parameters at this point (i.e.
parameters where the behavior is different depending on whether the
parameter was skipped or undefined was passed).
In general, it might be better to not adapt arguments for builtins with
optional paramters, that are likely skipped, for example as in
Object.create or Array.prototype.reduce. Since that will require
arguments adaptor frames for normal calls, especially from baseline
code. Instead it might make sense to use the variadic arguments support
in the CodeStubAssembler instead to avoid the arguments adaptor in all
cases (not only when called from TurboFan optimized code).
BUG=v8:5267, chromium:709782, chromium:707992, chromium:708282, chromium:708599, chromium:709173, chromium:709747, chromium:707065, chromium:710417
TBR=danno@chromium.org
Review-Url: https://codereview.chromium.org/2817653002
Cr-Commit-Position: refs/heads/master@{#44593}
Committed: https://chromium.googlesource.com/v8/v8/+/d98dfd8b9b68635c3b974e1d91be414304dec35c
Patch Set 1 #
Messages
Total messages: 13 (7 generated)
|