Skip to content
Snippets Groups Projects
Commit c210bf30 authored by Jan de Mooij's avatar Jan de Mooij
Browse files

Bug 1825014 part 2 - Implement ArgumentsLength() and GetArgument(i) intrinsics. r=iain

These can be used to replace uses of `arguments.length` and `arguments[i]` in
self-hosted code.

The frontend emits specialized bytecode ops for those instructions that access
the frame directly. This means we no longer have to allocate an arguments object in
the interpreter and Baseline for self-hosted functions. This speeds up many
perf-sensitive builtins such as `ArrayMap`.

Later patches convert all `arguments` uses in self-hosted code and add assertions to
ensure we never create an arguments object for any self-hosted function.

Differential Revision: https://phabricator.services.mozilla.com/D173952
parent 1e10b13e
No related branches found
No related tags found
No related merge requests found
Showing
with 215 additions and 11 deletions
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment