c61902e072
Reason for revert: Seems to break arm64 sim debug and blocks roll: https://build.chromium.org/p/client.v8.ports/builders/V8%20Linux%20-%20arm64%20-%20sim%20-%20debug/builds/3294 Original issue's description: > [turbofan] Support variable size argument removal in TF-generated functions > > This is preparation for using TF to create builtins that handle variable number of > arguments and have to remove these arguments dynamically from the stack upon > return. > > The gist of the changes: > - Added a second argument to the Return node which specifies the number of stack > slots to pop upon return in addition to those specified by the Linkage of the > compiled function. > - Removed Tail -> Non-Tail fallback in the instruction selector. Since TF now should > handles all tail-call cases except where the return value type differs, this fallback > was not really useful and in fact caused unexpected behavior with variable > sized argument popping, since it wasn't possible to materialize a Return node > with the right pop count from the TailCall without additional context. > - Modified existing Return generation to pass a constant zero as the additional > pop argument since the variable pop functionality > > LOG=N TBR=bmeurer@chromium.org,mstarzinger@chromium.org,epertoso@chromium.org,danno@chromium.org # Not skipping CQ checks because original CL landed more than 1 days ago. NOPRESUBMIT=true Review-Url: https://codereview.chromium.org/2473643002 Cr-Commit-Position: refs/heads/master@{#40691} |
||
---|---|---|
.. | ||
c-signature.h | ||
call-tester.h | ||
code-assembler-tester.h | ||
codegen-tester.cc | ||
codegen-tester.h | ||
function-tester.cc | ||
function-tester.h | ||
graph-builder-tester.h | ||
test-basic-block-profiler.cc | ||
test-branch-combine.cc | ||
test-code-assembler.cc | ||
test-gap-resolver.cc | ||
test-graph-visualizer.cc | ||
test-instruction.cc | ||
test-js-constant-cache.cc | ||
test-js-context-specialization.cc | ||
test-js-typed-lowering.cc | ||
test-jump-threading.cc | ||
test-linkage.cc | ||
test-loop-analysis.cc | ||
test-loop-assignment-analysis.cc | ||
test-machine-operator-reducer.cc | ||
test-multiple-return.cc | ||
test-node.cc | ||
test-operator.cc | ||
test-representation-change.cc | ||
test-run-bytecode-graph-builder.cc | ||
test-run-calls-to-external-references.cc | ||
test-run-deopt.cc | ||
test-run-inlining.cc | ||
test-run-intrinsics.cc | ||
test-run-jsbranches.cc | ||
test-run-jscalls.cc | ||
test-run-jsexceptions.cc | ||
test-run-jsobjects.cc | ||
test-run-jsops.cc | ||
test-run-load-store.cc | ||
test-run-machops.cc | ||
test-run-native-calls.cc | ||
test-run-stackcheck.cc | ||
test-run-stubs.cc | ||
test-run-unwinding-info.cc | ||
test-run-variables.cc | ||
test-run-wasm-machops.cc | ||
value-helper.h |