Go to file
Andreas Haas d5b3d8e994 [wasm][arm][ia32] Push instance only twice in lazy-compile builtin
This change already landed for x64, now come arm and ia32. The code
already existed for arm64.

The wasm instance got pushed three times in the lazy-compile builtin:
1) as part of the parameters;
2) as a parameter for the runtime function;
3) to load the jump table address after the runtime function;

The third push can be avoided by loading the jump table address after
all parameters get loaded from the stack again.

R=clemensb@chromium.org

Bug: v8:13049, v8:12926
Change-Id: Ifdbe943520c031ec5c480798694bcacc490a64bc
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3764348
Reviewed-by: Clemens Backes <clemensb@chromium.org>
Commit-Queue: Andreas Haas <ahaas@chromium.org>
Cr-Commit-Position: refs/heads/main@{#81782}
2022-07-18 15:39:15 +00:00
.github
bazel [heap] Remove all leftover uses of v8_enable_atomic_marking_state 2022-06-07 10:30:57 +00:00
build_overrides
custom_deps
docs
gni [Fuchsia] Use optimize_max on Fuchsia 2022-07-13 16:29:04 +00:00
include [wasm] Assume positive stack offsets 2022-07-18 13:24:53 +00:00
infra [test] Skip slow tests 2022-07-14 07:56:25 +00:00
samples [sandbox] Initialize sandbox during V8::Initialize 2022-07-15 09:29:32 +00:00
src [wasm][arm][ia32] Push instance only twice in lazy-compile builtin 2022-07-18 15:39:15 +00:00
test [test] Remove some unused includes 2022-07-18 12:59:03 +00:00
testing [test] Migrate cctest/test-api-accessors.cc to unittests/ 2022-05-17 08:27:55 +00:00
third_party Roll inspector_protocol to 134539780e606a77d660d58bf95b5ab55875bc3c 2022-05-30 08:53:28 +00:00
tools [test] Refactor testrunner (4) 2022-07-18 09:52:24 +00:00
.bazelrc [bazel] Use v8_enable_handle_zapping only in debug builds. 2022-01-11 11:32:39 +00:00
.clang-format
.clang-tidy
.editorconfig
.flake8
.git-blame-ignore-revs
.gitattributes
.gitignore [infra] Fork test262-harness 2022-02-23 18:47:35 +00:00
.gn
.mailmap
.style.yapf [tools] Add basic pointer compression to grokdump 2022-02-04 14:35:26 +00:00
.vpython
.vpython3 [python3] Add missing python3 dependency 2022-06-07 14:55:36 +00:00
.ycm_extra_conf.py
AUTHORS Flush stdout after printing the d8 prompt 2022-07-11 11:35:13 +00:00
BUILD.bazel [pku] Move PKU support from Wasm to base/platform 2022-07-14 21:54:29 +00:00
BUILD.gn [build] Add build flag that enables pointer compression for 8GB heaps 2022-07-15 09:45:15 +00:00
CODE_OF_CONDUCT.md
codereview.settings
COMMON_OWNERS add tebbi@chromium.org to COMMON_OWNERS 2022-03-08 14:08:25 +00:00
DEPS Update google_benchmark 2022-07-18 07:44:53 +00:00
DIR_METADATA
ENG_REVIEW_OWNERS Adding vahl@ as owner to speed up merge handling 2022-07-01 08:06:14 +00:00
INFRA_OWNERS [infra] Add alexschulze@ as infra owner 2022-07-18 09:08:54 +00:00
INTL_OWNERS
LICENSE
LICENSE.fdlibm
LICENSE.strongtalk
LICENSE.v8
LOONG_OWNERS
MIPS_OWNERS
OWNERS Make infra own their owners file 2022-07-18 08:26:45 +00:00
PPC_OWNERS
PRESUBMIT.py [wasm] Limit module size in streaming decoder 2022-07-08 09:43:41 +00:00
README.md
RISCV_OWNERS
S390_OWNERS
WATCHLISTS Update WATCHLISTS 2022-02-24 11:37:36 +00:00
WORKSPACE [bazel] Cleanup style with Buildifier. 2022-01-11 10:00:36 +00:00

V8 JavaScript Engine

V8 is Google's open source JavaScript engine.

V8 implements ECMAScript as specified in ECMA-262.

V8 is written in C++ and is used in Google Chrome, the open source browser from Google.

V8 can run standalone, or can be embedded into any C++ application.

V8 Project page: https://v8.dev/docs

Getting the Code

Checkout depot tools, and run

    fetch v8

This will checkout V8 into the directory v8 and fetch all of its dependencies. To stay up to date, run

    git pull origin
    gclient sync

For fetching all branches, add the following into your remote configuration in .git/config:

    fetch = +refs/branch-heads/*:refs/remotes/branch-heads/*
    fetch = +refs/tags/*:refs/tags/*

Contributing

Please follow the instructions mentioned at v8.dev/docs/contribute.