- 11 Jan, 2017 9 commits
-
-
clemensh authored
and rename WasmFrame to WasmCompiledFrame. The WasmToInterpreterFrames are not used yet; this will follow in a follow-up CL (see tracking bug for the overall picture). Those frames will represent frames for WASM_TO_INTERPRETER stubs, which call from wasm code to the wasm interpreter, implemented in C++. They will support the Summarize method to inspect the stack frames in the wasm interpreter. R=yangguo@chromium.org, titzer@chromium.org BUG=v8:5822 Review-Url: https://codereview.chromium.org/2623773004 Cr-Commit-Position: refs/heads/master@{#42213}
-
jkummerow authored
Revert of Internalize strings in-place (patchset #17 id:320001 of https://codereview.chromium.org/2549773002/ ) Reason for revert: blocks roll, see: https://codereview.chromium.org/2628733002/ Debug mode runs into an Abort("External string expected, but not found"). Original issue's description: > Internalize strings in-place (reland) > > using newly introduced ThinStrings, which store a pointer to the actual, > internalized string they represent. > > BUG=v8:4520 > > (Previously landed as #42168 / af51befe. > > Review-Url: https://codereview.chromium.org/2549773002 > Cr-Commit-Position: refs/heads/master@{#42193} > Committed: https://chromium.googlesource.com/v8/v8/+/4c699e349a4986b28574b3a51e8780e3a3d067b1 TBR=ishell@chromium.org,hpayer@chromium.org,bmeurer@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4520 Review-Url: https://codereview.chromium.org/2625073002 Cr-Commit-Position: refs/heads/master@{#42212}
-
machenbach authored
BUG=chromium:679957 NOTRY=true TBR=jarin@chromium.org,bmeurer@chromium.org Review-Url: https://codereview.chromium.org/2628813002 Cr-Commit-Position: refs/heads/master@{#42211}
-
franzih authored
Lower StoreDataPropertyInLiteral() when storing computed property names in object literals. Add a new AccessMode, kStoreInLiteral. It is similar to AccessMode::kStore but does not look up properties on the prototype chain. 99% of all literal definitions with computed property names end up with generic access_info because of how we count properties. Once we fix https://bugs.chromium.org/p/v8/issues/detail?id=5625, they'll get lowered as well. BUG=v8:5624 Review-Url: https://codereview.chromium.org/2619773002 Cr-Commit-Position: refs/heads/master@{#42210}
-
v8-autoroll authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/da5025b..91344e6 Rolling v8/third_party/catapult: https://chromium.googlesource.com/external/github.com/catapult-project/catapult/+log/886ff59..8b10e78 TBR=machenbach@chromium.org,vogelheim@chromium.org,hablich@chromium.org Review-Url: https://codereview.chromium.org/2622133002 Cr-Commit-Position: refs/heads/master@{#42209}
-
zhengxing.li authored
port 0c4b8ff4 (r42192) original commit message: - Refactor Dispatch tables to have separate function, signature tables - New Relocation type for WasmFunctionTableReference, assembler, compiler support. - RelocInfo helper functions for Wasm references BUG= Review-Url: https://codereview.chromium.org/2623133002 Cr-Commit-Position: refs/heads/master@{#42208}
-
aseemgarg authored
R=bradnelson@chromium.org BUG=v8:5809 Review-Url: https://codereview.chromium.org/2625853003 Cr-Commit-Position: refs/heads/master@{#42207}
-
mtrofin authored
BUG=v8:5816 Review-Url: https://codereview.chromium.org/2626693002 Cr-Commit-Position: refs/heads/master@{#42206}
-
mtrofin authored
Also ensuring it is validation error to specify more than one memory import. BUG=v8:5824 Review-Url: https://codereview.chromium.org/2624853002 Cr-Commit-Position: refs/heads/master@{#42205}
-
- 10 Jan, 2017 31 commits
-
-
bradnelson authored
Asm.js warnings / info is non-canonical. It may be useful to suppress it in golden file tests (for instance LayoutTests). BUG=v8:4203 R=mtrofin@chromium.org Review-Url: https://codereview.chromium.org/2625833003 Cr-Commit-Position: refs/heads/master@{#42204}
-
adamk authored
It shipped with Chrome 55 stable. R=littledan@chromium.org Review-Url: https://codereview.chromium.org/2621173002 Cr-Commit-Position: refs/heads/master@{#42203}
-
bjaideep authored
Port 4c699e34 Original Commit Message: using newly introduced ThinStrings, which store a pointer to the actual, internalized string they represent. (Previously landed as #42168 / af51befe. R=jkummerow@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG=v8:4520 LOG=N Review-Url: https://codereview.chromium.org/2628643002 Cr-Commit-Position: refs/heads/master@{#42202}
-
bjaideep authored
Port 0c4b8ff4 Original Commit Message: - Refactor Dispatch tables to have separate function, signature tables - New Relocation type for WasmFunctionTableReference, assembler, compiler support. - RelocInfo helper functions for Wasm references R=gdeepti@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Review-Url: https://codereview.chromium.org/2625683004 Cr-Commit-Position: refs/heads/master@{#42201}
-
machenbach authored
Revert of [wasm][asm.js] Enable --validate-asm by default. (patchset #1 id:1 of https://codereview.chromium.org/2624813002/ ) Reason for revert: Breaks layout tests: https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/12554 See also: https://github.com/v8/v8/wiki/Blink%20layout%20tests Original issue's description: > [wasm][asm.js] Enable --validate-asm by default. > > This directs all asm.js traffic via the Wasm backend. > > R=titzer@chromium.org,aseemgarg@chromium.org > BUG=v8:4203 > > Review-Url: https://codereview.chromium.org/2624813002 > Cr-Commit-Position: refs/heads/master@{#42194} > Committed: https://chromium.googlesource.com/v8/v8/+/946cc371ed4b34d1a9f5cc615b14c41b652562ad TBR=aseemgarg@chromium.org,titzer@chromium.org,bradnelson@google.com,bradnelson@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4203 Review-Url: https://codereview.chromium.org/2622023002 Cr-Commit-Position: refs/heads/master@{#42200}
-
machenbach authored
Revert of [wasm] Enable WASM by default (--expose-wasm=true). (patchset #2 id:20001 of https://codereview.chromium.org/2623743003/ ) Reason for revert: arm64 gc stress: https://build.chromium.org/p/client.v8.ports/builders/V8%20Linux%20-%20arm64%20-%20sim%20-%20gc%20stress/builds/4424 Original issue's description: > [wasm] Enable WASM by default (--expose-wasm=true). > > BUG=chromium:575167 > R=rossberg@chromium.org,ahaas@chromium.org,clemensh@chromium.org,bradnelson@chromium.org > > Review-Url: https://codereview.chromium.org/2623743003 > Cr-Commit-Position: refs/heads/master@{#42197} > Committed: https://chromium.googlesource.com/v8/v8/+/34b63f050b1a247bb64ddc91c967501ce04e011f TBR=clemensh@chromium.org,ahaas@chromium.org,bradnelson@chromium.org,rossberg@chromium.org,bradnelson@google.com,titzer@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:575167 Review-Url: https://codereview.chromium.org/2626763002 Cr-Commit-Position: refs/heads/master@{#42199}
-
adamk authored
TBR=bmeurer@chromium.org NOTRY=true NOTREECHECKS=true Review-Url: https://codereview.chromium.org/2621123002 Cr-Commit-Position: refs/heads/master@{#42198}
-
titzer authored
BUG=chromium:575167 R=rossberg@chromium.org,ahaas@chromium.org,clemensh@chromium.org,bradnelson@chromium.org Review-Url: https://codereview.chromium.org/2623743003 Cr-Commit-Position: refs/heads/master@{#42197}
-
adamk authored
This is a follow-up on 45c11887, which removed hole checks from full-codegen. Variables requiring hole checks always go through Ignition. R=bmeurer@chromium.org Review-Url: https://codereview.chromium.org/2622783002 Cr-Commit-Position: refs/heads/master@{#42196}
-
titzer authored
BUG= R=clemensh@chromium.org,verwaest@chromium.org Review-Url: https://codereview.chromium.org/2627453006 Cr-Commit-Position: refs/heads/master@{#42195}
-
bradnelson authored
This directs all asm.js traffic via the Wasm backend. R=titzer@chromium.org,aseemgarg@chromium.org BUG=v8:4203 Review-Url: https://codereview.chromium.org/2624813002 Cr-Commit-Position: refs/heads/master@{#42194}
-
jkummerow authored
using newly introduced ThinStrings, which store a pointer to the actual, internalized string they represent. BUG=v8:4520 (Previously landed as #42168 / af51befe. Review-Url: https://codereview.chromium.org/2549773002 Cr-Commit-Position: refs/heads/master@{#42193}
-
gdeepti authored
- Refactor Dispatch tables to have separate function, signature tables - New Relocation type for WasmFunctionTableReference, assembler, compiler support. - RelocInfo helper functions for Wasm references Review-Url: https://codereview.chromium.org/2627543003 Cr-Commit-Position: refs/heads/master@{#42192}
-
bradnelson authored
Asm.js modules missing exports fail to run the last phase of validation. Adding an explicit check for this. BUG=676573 R=titzer@chromium.org,aseemgarg@chromium.org Review-Url: https://codereview.chromium.org/2620893002 Cr-Commit-Position: refs/heads/master@{#42191}
-
bradnelson authored
BUG=641885 R=titzer@chromium.org,rossberg@chromium.org Review-Url: https://codereview.chromium.org/2620953002 Cr-Commit-Position: refs/heads/master@{#42190}
-
machenbach authored
Revert of [foozzie] Pass startup test (patchset #1 id:1 of https://codereview.chromium.org/2623743004/ ) Reason for revert: Setting the BAD_BUILDS_CHECK env variable should be enough. Lets revert this as the code doesn't look particularly good. There must be another problem still that needs investigation. Original issue's description: > [foozzie] Pass startup test > > This makes sure the harness passes when called without test case. > > BUG=chromium:673246 > NOTRY=true > TBR=tandrii@chromium.org,mbarbella@chromium.org > > Review-Url: https://codereview.chromium.org/2623743004 > Cr-Commit-Position: refs/heads/master@{#42183} > Committed: https://chromium.googlesource.com/v8/v8/+/ede2fc1ff04ff97a466029b0ad52d3ec94780407 TBR=tandrii@chromium.org,mbarbella@chromium.org,mmoroz@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:673246 Review-Url: https://codereview.chromium.org/2628493003 Cr-Commit-Position: refs/heads/master@{#42189}
-
titzer authored
R=verwaest@chromium.org BUG= Review-Url: https://codereview.chromium.org/2627543004 Cr-Commit-Position: refs/heads/master@{#42188}
-
marja authored
Including a fix: object-macros.h needs to be the last include: otherwise we'll have a problem when a file does this: #include "object-macros.h" #include "x.h" // x.h also includes object-macros.h BUG=v8:5402 Review-Url: https://codereview.chromium.org/2623573003 Cr-Commit-Position: refs/heads/master@{#42187}
-
epertoso authored
BUG= Review-Url: https://codereview.chromium.org/2626603002 Cr-Commit-Position: refs/heads/master@{#42186}
-
ishell authored
... and reshuffle it a bit. BUG=v8:5495 Review-Url: https://codereview.chromium.org/2619823005 Cr-Commit-Position: refs/heads/master@{#42185}
-
rossberg authored
R=titzer@chromium.org BUG=v8:5817 Review-Url: https://codereview.chromium.org/2620783005 Cr-Commit-Position: refs/heads/master@{#42184}
-
machenbach authored
This makes sure the harness passes when called without test case. BUG=chromium:673246 NOTRY=true TBR=tandrii@chromium.org,mbarbella@chromium.org Review-Url: https://codereview.chromium.org/2623743004 Cr-Commit-Position: refs/heads/master@{#42183}
-
hablich authored
Revert of [build] Introduce an embedder version string (patchset #2 id:20001 of https://codereview.chromium.org/2619213002/ ) Reason for revert: Seems to break the Chromium build: https://codereview.chromium.org/2619193005/ Message: [1832/9671] CXX obj/v8/v8_base/version.o FAILED: obj/v8/v8_base/version.o /b/c/cipd/goma/gomacc ../../third_party/llvm-build/Release+Asserts/bin/clang++ -MMD -MF obj/v8/v8_base/version.o.d -DV8_DEPRECATION_WARNINGS -DDCHECK_ALWAYS_ON=1 -DUSE_UDEV -DUI_COMPOSITOR_IMAGE_TRANSPORT -DUSE_AURA=1 -DUSE_PANGO=1 -DUSE_CAIRO=1 -DUSE_GLIB=1 -DUSE_NSS_CERTS=1 -DUSE_X11=1 -DUSE_PROPRIETARY_CODECS -DFULL_SAFE_BROWSING -DSAFE_BROWSING_CSD -DSAFE_BROWSING_DB_LOCAL -DCHROMIUM_BUILD -DENABLE_MEDIA_ROUTER=1 -DFIELDTRIAL_TESTING_ENABLED -DCR_CLANG_REVISION=289944-2 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -DV8_I18N_SUPPORT -DENABLE_HANDLE_ZAPPING -DV8_USE_EXTERNAL_STARTUP_DATA -DV8_TARGET_ARCH_X64 -DDEBUG -DU_USING_ICU_NAMESPACE=0 -DU_ENABLE_DYLOAD=0 -DU_STATIC_IMPLEMENTATION -DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_FILE -I../.. -Igen -I../../v8 -I../../v8/include -I../../third_party/icu/source/common -I../../third_party/icu/source/i18n -fno-strict-aliasing --param=ssp-buffer-size=4 -fstack-protector -funwind-tables -fPIC -pipe -B../../third_party/binutils/Linux_x64/Release/bin -fcolor-diagnostics -fdebug-prefix-map=/b/c/b/linux/src=. -m64 -march=x86-64 -pthread -g1 --sysroot=../../build/linux/debian_wheezy_amd64-sysroot -fvisibility=hidden -Xclang -load -Xclang ../../third_party/llvm-build/Release+Asserts/lib/libFindBadConstructs.so -Xclang -add-plugin -Xclang find-bad-constructs -Xclang -plugin-arg-find-bad-constructs -Xclang check-ipc -Wheader-hygiene -Wstring-conversion -Wtautological-overlap-compare -Werror -Wall -Wno-unused-variable -Wno-missing-field-initializers -Wno-unused-parameter -Wno-c++11-narrowing -Wno-covered-switch-default -Wno-deprecated-register -Wno-unneeded-internal-declaration -Wno-inconsistent-missing-override -Wno-shift-negative-value -Wno-undefined-var-template -Wno-nonportable-include-path -Wno-address-of-packed-member -Wsign-compare -Winconsistent-missing-override -Wshorten-64-to-32 -O3 -fno-ident -fdata-sections -ffunction-sections -fno-threadsafe-statics -fvisibility-inlines-hidden -std=gnu++11 -fno-rtti -fno-exceptions -Wno-deprecated -c ../../v8/src/version.cc -o obj/v8/v8_base/version.o ../../v8/src/version.cc:42:34: error: use of undeclared identifier 'V8_EMBEDDER_STRING' const char* Version::embedder_ = V8_EMBEDDER_STRING; ^ 1 error generated. Original issue's description: > [build] Introduce an embedder version string > > Sometimes, the embedder might want to merge a fix to an abandoned branch > or to a supported branch but the fix is not relevant to Chromium. > This adds a new version string that the embedder can set on compile time > and that will be appended to the official V8 version. > The separator must be provided in the string. For instance, to have a > full version string like "5.5.372.37.custom.1", the embedder must set > V8_EMBEDDER_STRING to ".custom.1". > > Related Node.js issue: https://github.com/nodejs/node/pull/9754 > > BUG=v8:5740 > R=machenbach@chromium.org,hablich@chromium.com,ofrobots@google.com > > Review-Url: https://codereview.chromium.org/2619213002 > Cr-Commit-Position: refs/heads/master@{#42175} > Committed: https://chromium.googlesource.com/v8/v8/+/fc86d4329b253bf21c1dd85469f1ef4b6e5ba01a TBR=hablich@chromium.com,machenbach@chromium.org,ofrobots@google.com,mic.besace@gmail.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:5740 Review-Url: https://codereview.chromium.org/2621033002 Cr-Commit-Position: refs/heads/master@{#42182}
-
ahaas authored
Please take a special look at the code I generate to call the runtime function for the traps. The correct handling of csp vs jssp seems to be quite tricky. Original commit message: [wasm] Introduce the TrapIf and TrapUnless operators to generate trap code. Some instructions in WebAssembly trap for some inputs, which means that the execution is terminated and (at least at the moment) a JavaScript exception is thrown. Examples for traps are out-of-bounds memory accesses, or integer divisions by zero. Without the TrapIf and TrapUnless operators trap check in WebAssembly introduces 5 TurboFan nodes (branch, if_true, if_false, trap-reason constant, trap-position constant), in addition to the trap condition itself. Additionally, each WebAssembly function has four TurboFan nodes (merge, effect_phi, 2 phis) whose number of inputs is linear to the number of trap checks in the function. Especially for functions with high numbers of trap checks we observe a significant slowdown in compilation time, down to 0.22 MiB/s in the sqlite benchmark instead of the average of 3 MiB/s in other benchmarks. By introducing a TrapIf common operator only a single node is necessary per trap check, in addition to the trap condition. Also the nodes which are shared between trap checks (merge, effect_phi, 2 phis) would disappear. First measurements suggest a speedup of 30-50% on average. This CL only implements TrapIf and TrapUnless on x64. The implementation is also hidden behind the --wasm-trap-if flag. Please take a special look at how the source position is transfered from the instruction selector to the code generator, and at the context that is used for the runtime call. R=titzer@chromium.org, georgia.kouveli@arm.com, v8-arm-ports@googlegroups.com Review-Url: https://codereview.chromium.org/2619203005 Cr-Commit-Position: refs/heads/master@{#42181}
-
jochen authored
R=verwaest@chromium.org,epertoso@chromium.org BUG= Review-Url: https://codereview.chromium.org/2620713003 Cr-Commit-Position: refs/heads/master@{#42180}
-
leszeks authored
Node::InputCount() and ::InputAt() have to check for inline/out-of-line inputs every time they are called. The compiler doesn't seem to be very good at caching the result of this check, meaning that it (and all its jumps) would happen for every node access. Previously we would get around this sometimes, by using Node::inputs(), which returned a Node::Inputs iterable over node inputs. However, sometimes node access is more convenient using an index, or we also want to access the count. This patch adds an index accessor and 'count' method to Node::Inputs, and replaces several uses of InputCount and InputAt with this accessor. Review-Url: https://codereview.chromium.org/2617123002 Cr-Commit-Position: refs/heads/master@{#42179}
-
kozyatinskiy authored
... which were done after the promise has been resolved. Goal of this CL - change promise instrumentation to support better callbacks, chained after promise resolution and prepare instrumentation for adding new asyncTaskCreated instrumentation. Instrumentation changes: - asyncTaskScheduled(recurring) when promise is fulfilled or rejected, - asyncTaskCancelled when promise is collected (since [1] we can be sure that promise will survive scheduled microtasks). Minor changes: - async task type in inspector <-> debugger API transferred by enum instead of string, - Debug manages async task ids based on promise objects. More details: https://docs.google.com/document/d/1u19N45f1gSF7M39mGsycJEK3IPyJgIXCBnWyiPeuJFE [1] https://codereview.chromium.org/2581503003/ BUG=chromium:632829,v8:5738 R=dgozman@chromium.org,yangguo@chromium.org,gsathya@chromium.org Review-Url: https://codereview.chromium.org/2578923002 Cr-Commit-Position: refs/heads/master@{#42178}
-
ishell authored
... including property reconfiguring, elements kind change and migration of a map to an up-to-date non-deprecated version. BUG=v8:5495 Review-Url: https://codereview.chromium.org/2601643002 Cr-Commit-Position: refs/heads/master@{#42177}
-
bbudge authored
- Disassembler, simulator support too. LOG=N BUG=v8:4124 Review-Url: https://codereview.chromium.org/2600153002 Cr-Commit-Position: refs/heads/master@{#42176}
-
mic.besace authored
Sometimes, the embedder might want to merge a fix to an abandoned branch or to a supported branch but the fix is not relevant to Chromium. This adds a new version string that the embedder can set on compile time and that will be appended to the official V8 version. The separator must be provided in the string. For instance, to have a full version string like "5.5.372.37.custom.1", the embedder must set V8_EMBEDDER_STRING to ".custom.1". Related Node.js issue: https://github.com/nodejs/node/pull/9754 BUG=v8:5740 R=machenbach@chromium.org,hablich@chromium.com,ofrobots@google.com Review-Url: https://codereview.chromium.org/2619213002 Cr-Commit-Position: refs/heads/master@{#42175}
-
marja authored
Now we have declarations too, so it doesn't matter whether preparser produces the same unresolved variables as the parser. BUG=v8:5501, v8:5516 R=verwaest@chromium.org Review-Url: https://codereview.chromium.org/2623583004 Cr-Commit-Position: refs/heads/master@{#42174}
-