- 16 May, 2018 7 commits
-
-
Miran.Karic authored
The problem occurs when getting an unused register causes spilling, but the generated code is not executed because of a branch, resulting in loss of data. BUG= TEST=cctest/test-run-wasm/RunWasmLiftoff_I64Sh* Change-Id: Icdb897df42059ed27bec57fcf91cc8338e4598f3 Reviewed-on: https://chromium-review.googlesource.com/1060213Reviewed-by: Ivica Bogosavljevic <ivica.bogosavljevic@mips.com> Commit-Queue: Ivica Bogosavljevic <ivica.bogosavljevic@mips.com> Cr-Commit-Position: refs/heads/master@{#53200}
-
Simon Zünd authored
This CL consolidates CopyFromPrototype and RemoveArrayHoles into a single runtime function. It also creates two small helper functions that are needed in both pre-processing steps. Additionally it removes the return value from CopyFromPrototype since it is no longer needed (it was previously used by a sort post- processing step that no longer exists). Bug: v8:7382 Change-Id: I7f9b00c1bc639d2118fdecef9c3b45c2cf010310 Reviewed-on: https://chromium-review.googlesource.com/1051887 Commit-Queue: Simon Zünd <szuend@google.com> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#53199}
-
ray glover authored
- I think d8's ability to load es6 modules is important enough to document through the CLI - I also tried to simplify the d8/shell CLI synopsis This is my first patch; I can't run the automated test suite. Change-Id: I6376542f57f11dd8ec53be9b53f3d17d46a86fed Reviewed-on: https://chromium-review.googlesource.com/1056530Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#53198}
-
Vaclav Brozek authored
Array.indexOf accepts an optional fromIndex argument. When non-negative, this argument restricts the searched indices to those starting at fromIndex: [1, 2, 1].indexOf(1,1) == 2 When negative, it is meant to be added to the array length to provide such initial index for the search: [1, 2, 1].indexOf(1, -2) == 2 This transformation has been done by the non-optimised builtin but not by the reducer. The CL adds this construction to the reducer. Bug: chromium:842612 Change-Id: I0ff089997f4ebb4dc3c2923e52c382a8a96cd711 Reviewed-on: https://chromium-review.googlesource.com/1059628Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Vaclav Brozek <vabr@chromium.org> Cr-Commit-Position: refs/heads/master@{#53197}
-
Dan Elphick authored
Adds Page::MakeHeaderRelocatable that clears pointers to objects outside the space. In this case relocatable means the entire page heading is position independent in memory, meaning it could be saved to disk and reloaded at a different memory location in a new process without there being any invalid pointers. Currently this only affects mutex_, locate_tracker_ and reservation_. Additionally makes VerifyHeap work when there's no mutex in a Page. This is just a stepping stone to making the Pages headers relocatable since heap_ and owner_ still point out of the Page. Also removes the empty ReadOnlySpace destructor. Bug: v8:7464 Change-Id: Ife3c06575fa73a5818c4991fb9bec30a5f43901d Reviewed-on: https://chromium-review.googlesource.com/1054879Reviewed-by: Hannes Payer <hpayer@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#53196}
-
Georg Neis authored
This function didn't account for addresses of api-provided external references, leading to out-of-bound reads on external_reference_table. (This happened to me when printing a code object in gdb, I'm not sure how to easily test it.) Also remove an unused method from the private Value class. R=jgruber@chromium.org Change-Id: Id14fed3fb3866df750bcad8f4a02c61748b07ad3 Reviewed-on: https://chromium-review.googlesource.com/1060035Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#53195}
-
jgruber authored
Code generation introduces indirections if a builder exists (and the serializer is active). These indirections are not necessary outside of embedded builtins (e.g. in bytecode handlers), so let's reduce its lifetime. Bug: v8:6666 Change-Id: I57207012997786f599f79f0982da61eea26f3e22 Reviewed-on: https://chromium-review.googlesource.com/1059114 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#53194}
-
- 15 May, 2018 24 commits
-
-
Nebojsa Ciric authored
https://github.com/tc39/proposal-intl-locale Rename locale property to baseName to better reflect the intented use case and the change in spec. TBR: bmeurer@chromium.org Bug: v8:7684 Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: I91b630b49ce73abcebd6040ec968c91d75cff879 Reviewed-on: https://chromium-review.googlesource.com/1014411 Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#53193}
-
Wez authored
ArrayBuffer memory allocated off-heap was previously tracked by a test- only retained_size() field on each LocalArrayBufferTracker. Changes in off-heap ArrayBuffer memory usage are now reported to the Space with which the ArrayBuffer is associated, so that the value is cheaply available to include in e.g. GC limit calculations, via a new getter, ExternalBackingStoreBytes(). Changes to external ArrayBuffer backing-store allocations are tracked in an AtomicNumber associated with each Space, to allow for ArrayBuffers being concurrently moved or freed from multiple Pages in the same Space during sweeps & compactions. Bug: chromium:837583 Change-Id: I8b1b6addd5cd05533d8da55ca813e134bc36e181 Reviewed-on: https://chromium-review.googlesource.com/1052347 Commit-Queue: Wez <wez@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#53192}
-
Clemens Hammacher authored
With the introduction of a jump table, call targets will not be {WasmCode} objects any more. Instead, we just call any {Address}. This CL does not change anything yet, but changes interfaces to accept an {Address} instead of {WasmCode*}. R=titzer@chromium.org Bug: v8:7758 Change-Id: Id299738bb7cc6a1891e4a03d7f67c24cde6d1699 Reviewed-on: https://chromium-review.googlesource.com/1058793 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#53191}
-
Clemens Hammacher authored
We were always using the instance we were currently building. If the start function is an exported wasm function of another instance, use the exporting instance instead. R=titzer@chromium.org Bug: chromium:843120 Change-Id: I141d272b947bef8e903be7208ddf6ce344e754c4 Reviewed-on: https://chromium-review.googlesource.com/1059620 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#53190}
-
jgruber authored
The (currently four, soon five) RelocIterator constructors contain basically identical logic. Refactor that into a basic version that all other constructors call. Bug: v8:6666 Change-Id: Ice7b4891d5e539ff6fe63337fc52d480d85dc270 Reviewed-on: https://chromium-review.googlesource.com/1059109 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#53189}
-
Igor Sheludko authored
In particular: * number of pointer fields * number embedder fields * number boxed fields * number of unboxed double field * number of raw data fields Bug: v8:7703 Change-Id: I22a310d941317a0f34f67536e55fbfab5f5354cd Reviewed-on: https://chromium-review.googlesource.com/1056532Reviewed-by: Camillo Bruni <cbruni@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#53188}
-
Clemens Hammacher authored
Since the code around that is quite fragile, and I plan to refactor it, just add some tests to ensure that everything is and keeps working as intended. R=mstarzinger@chromium.org Bug: v8:7758 Change-Id: Ib3814b93b465286d70b5669ed0161eecb9fc925a Reviewed-on: https://chromium-review.googlesource.com/1059616Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#53187}
-
Tobias Tebbi authored
The sysroot only contains headers for gcc6, not gcc4.8 which is the version installed on the coverage bots. Bug: chromium:837238 Change-Id: Ifd9b53dae510b969b4ef5ec8c1c2684eb92a94fa Reviewed-on: https://chromium-review.googlesource.com/1059150Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#53186}
-
Clemens Hammacher authored
{ImportedFunctionEntry} offers two {set} methods: One takes a {JSReceiver*}, the other one a {WasmInstanceObject*}. Since {WasmInstanceObject} inherits from {JSReceiver}, it's quite easy to confuse the two if the instance is hold as e.g. {JSObject}. Hence, rename the methods to remove this ambiguity. R=titzer@chromium.org Bug: v8:7758 Change-Id: I06617a565faa561d3afc70085e0df3b528c715bb Reviewed-on: https://chromium-review.googlesource.com/1059147Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#53185}
-
Clemens Hammacher authored
The interpreter entry was sometimes referred to as "interpreter stub" or "interpreter wrapper". Use the term "interpreter entry" consistently. R=titzer@chromium.org Bug: v8:7754 Change-Id: Ia06449c91300fca454c6afd5c82a789749d6b7d0 Reviewed-on: https://chromium-review.googlesource.com/1058794Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#53184}
-
Marja Hölttä authored
BUG=v8:7308 Change-Id: I12a38a6099f0ffd8718dc5cb77433baa75bc0411 Reviewed-on: https://chromium-review.googlesource.com/1059110 Commit-Queue: Marja Hölttä <marja@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#53183}
-
Clemens Hammacher authored
For generating the WasmCompileLazy builtin, we need to know the list of parameter registers in wasm. Instead of duplicating this, just use the existing array from wasm-linkage.h. R=titzer@chromium.org Change-Id: Ib552af7b6a3defbc9c8b48390244bf943306a4b7 Reviewed-on: https://chromium-review.googlesource.com/1057310Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#53182}
-
sreten.kovacevic authored
Since `at` register is used a lot in macro-assembler-mips, change usage of this register with `kScratchReg` and `kScratchReg2`. Also, remove TODO comments for unaligned memory access, since there is nothing that can be done about it. Change-Id: Ibf55c04a1f53521f34dfb483294de3010a0120c6 Reviewed-on: https://chromium-review.googlesource.com/1059347Reviewed-by: Ivica Bogosavljevic <ivica.bogosavljevic@mips.com> Commit-Queue: Ivica Bogosavljevic <ivica.bogosavljevic@mips.com> Cr-Commit-Position: refs/heads/master@{#53181}
-
Marja Hölttä authored
Moving asserts from helpers to the call sites, so the failure messages are more helpful. BUG=v8:7308 Change-Id: I1da491d408c2e2a1017b1d3fe484b7b3d877a2cf Reviewed-on: https://chromium-review.googlesource.com/1058802Reviewed-by: Igor Sheludko <ishell@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#53180}
-
Sergiy Byelozyorov authored
This is needed since depot_tools may not be in PATH on LUCI bots. Using the copy of depot_tools that contains the recipes is also incorrect as it is not guaranteed to contain binaries that do not have corresponding recipe API, which does not apply to script called from a recipe. This also protects our release scripts from breaking due to arbitrary changes to depot_tools. Chromium also pins depot_tools for similar reasons: https://cs.chromium.org/chromium/src/DEPS?l=525&rcl=f24fa931ae08b0e42aae2d13034229088179da7f R=machenbach@chromium.org Bug: chromium:831171 Change-Id: I393052b1c489d25e2e3fa173149635448e9bd2dc Reviewed-on: https://chromium-review.googlesource.com/1054676Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org> Cr-Commit-Position: refs/heads/master@{#53179}
-
Marja Hölttä authored
BUG=v8:7308 Change-Id: I7720dbc84ce3e614f025759224e2d8d7ffa7a952 Reviewed-on: https://chromium-review.googlesource.com/1052013 Commit-Queue: Marja Hölttä <marja@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#53178}
-
Théotime Grohens authored
and comparison with a JS implementation using TypedArray Change-Id: Ifec9c19f23e182db25ad3e54edc3f60c6e6048f4 Reviewed-on: https://chromium-review.googlesource.com/1057729Reviewed-by: Michael Stanton <mvstanton@chromium.org> Commit-Queue: Théotime Grohens <theotime@google.com> Cr-Commit-Position: refs/heads/master@{#53177}
-
Michael Achenbach authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/1fd2d08..b61b6b6 Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/3059fd7..e853531 Rolling v8/third_party/googletest/src: https://chromium.googlesource.com/external/github.com/google/googletest/+log/a6f06bf..045e7f9 Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/de94aab..51de78a Also added fixes for fuchsia-sdk and additional DEPS entry. TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org Bug: chromium:840669 Change-Id: Ic0370c56e98118780f02758e5ea057bb9026bacd Reviewed-on: https://chromium-review.googlesource.com/1049305 Commit-Queue: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Reviewed-by: v8 autoroll <v8-autoroll@chromium.org> Cr-Commit-Position: refs/heads/master@{#53176}
-
Kanghua Yu authored
Change-Id: I647a1c175fb1a4f6fa764cc68c7b9c94d3b65817 Reviewed-on: https://chromium-review.googlesource.com/1053688 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#53175}
-
Sergiy Byelozyorov authored
This will aid with quickly finding the needed builder and verifying whether a given test definition is already present or not. R=machenbach@chromium.org No-Try: true Change-Id: I5a9b74925fa2bfb27f29434bb43045394b20cf18 Reviewed-on: https://chromium-review.googlesource.com/1053772 Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#53174}
-
Simon Zünd authored
This CL changes the generated C++ code for LabeledStatementBlocks to only emit labels if they are used. Prior to this CL, when a label was only used on one path of an if constexpr expression, and not at all anywhere else, the try/label construct would BIND a label that was not used, causing a CSA verification error. R=tebbi@chromium.org Change-Id: Ia81a0cd081b84528c95bbdbdb98b9ab51928e13f Reviewed-on: https://chromium-review.googlesource.com/1057247Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Daniel Clifford <danno@chromium.org> Commit-Queue: Simon Zünd <szuend@google.com> Cr-Commit-Position: refs/heads/master@{#53173}
-
Michael Achenbach authored
NOTRY=true TBR=sergiyb@chromium.org Bug: chromium:837238 Change-Id: Ib10cb178b707eace50d77d20a732a106904167fb Reviewed-on: https://chromium-review.googlesource.com/1058790Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#53172}
-
Kanghua Yu authored
On IA architecture, arithmetic and shifting operations set the flags according to the computation result. subl rsi,0x1 REX.W movq rbx,[rbx+0x17] cmpl rsi, 0 <-- TO BE REDUCED jnz 0x3f54d2dcef0 ==> REX.W movq rbx,[rbx+0x17] subl rsi,0x1 jnz 0x3f54d2dcef0 & orl rdx,rbx cmpl rdx,0x0 <-- TO BE REDUCED jnz 0x3f54d22b0f5 ==> orl rdx,rbx jnz 0x3f54d22b0f5 Bug: chromium:842497, chromium:842501 Change-Id: I4e2c40861b76ac3f508b01ee27249e85eab3222f Reviewed-on: https://chromium-review.googlesource.com/1057351Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Kanghua Yu <kanghua.yu@intel.com> Cr-Commit-Position: refs/heads/master@{#53171}
-
Sathya Gunasekaran authored
Splitting out hash table into a separate file in b934607d caused a performance regression. This inlines GetHash and GetSimpleHash to fix the regression. Bug: chromium:840694, v8:6443 Change-Id: I0466fa017a179ef2375cec4ddec8f04dfba75921 Reviewed-on: https://chromium-review.googlesource.com/1058446 Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#53170}
-
- 14 May, 2018 9 commits
-
-
Sathya Gunasekaran authored
Bug: v8:7732 Change-Id: Id7f28e6975a4180573da3981e3e6de312e39f785 Reviewed-on: https://chromium-review.googlesource.com/1049485Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#53169}
-
Vasili Skurydzin authored
Change-Id: I05bd981c8050a6f59446be660d449320979ceaea Reviewed-on: https://chromium-review.googlesource.com/1053957Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#53168}
-
Junliang Yan authored
Port 5dfe23a4 Original Commit Message: When encountering a LoadStackPointer input to a comparison, generate a register LocationOperand that points to the stack pointer. This can avoid unnecessary spilling of the stack pointer. R=georgia.kouveli@arm.com, joransiu@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: Ie3fecf70f78c234fefad86fec74820a61f3d227b Reviewed-on: https://chromium-review.googlesource.com/1057965Reviewed-by: Joran Siu <joransiu@ca.ibm.com> Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#53167}
-
Sathya Gunasekaran authored
Bug: v8:6443, v8:7569 Change-Id: I61677e75f23c604ba7ad0ea110aa57578dcadb89 Reviewed-on: https://chromium-review.googlesource.com/1047957 Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#53166}
-
Vasili Skurydzin authored
Implement atomic compare exchange and atomic bin OPs for PPC and s390 Change-Id: I8f89a0ebb912082c4c1e6b9a3daf64f28c114010 Reviewed-on: https://chromium-review.googlesource.com/1013861Reviewed-by: Junliang Yan <jyan@ca.ibm.com> Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#53165}
-
Maya Lekova authored
Bug: chromium:842101 R=neis@chromium.org Change-Id: I4a142b28682ba73cbf3398e74c15614fa491ad40 Reviewed-on: https://chromium-review.googlesource.com/1057627 Commit-Queue: Maya Lekova <mslekova@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#53164}
-
Michael Starzinger authored
This makes the fact that {WasmSharedModuleData} is shared across instances explicit by hanging this {shared} reference off the module object instead of the instance-specific {WasmCompiledModule} object. R=titzer@chromium.org Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I99bf3d855d6283bdc48373f0f8e2df1990905d3f Reviewed-on: https://chromium-review.googlesource.com/1051909 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#53163}
-
Georg Neis authored
Bug: chromium:831822 Change-Id: I4d6fba6dd37a1a3f1d9b3ebcf2a88e2753d8dcf1 Reviewed-on: https://chromium-review.googlesource.com/1057269 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#53162}
-
Georgia Kouveli authored
When encountering a LoadStackPointer input to a comparison, generate a register LocationOperand that points to the stack pointer. This can avoid unnecessary spilling of the stack pointer. Change-Id: Ifd1a5aaf22c9c594e653cf4689ba46587811c4d0 Reviewed-on: https://chromium-review.googlesource.com/1055568Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#53161}
-