- 18 Sep, 2018 28 commits
-
-
Hannes Payer authored
Change-Id: I93726a98978b8b18a16a253f55fc698704d27be4 Reviewed-on: https://chromium-review.googlesource.com/1228376 Commit-Queue: Hannes Payer <hpayer@chromium.org> Reviewed-by: Hannes Payer <hpayer@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#56002}
-
Clemens Hammacher authored
The WasmMemoryTracker keeps track of reserved memory in order to avoid running out of virtual address space. So far, we were only tracking reservations for wasm memory, and not for code. This CL changes that to also include code reservations. Drive-by: Some cleanup around the allocation of the WasmCodeManager. R=titzer@chromium.org Bug: chromium:883639 Change-Id: I0c2586a742022ae00752132e048346d54e2a1a7c Reviewed-on: https://chromium-review.googlesource.com/1230134Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#56001}
-
Jakob Gruber authored
This CL is the first in a series of work that will remove ebx (the new kRootRegister) use from all ia32 ASM builtins and stubs. Bug: v8:6666 Change-Id: If417f1194a27ddae9e38d50e0a651dfc129e8b05 Reviewed-on: https://chromium-review.googlesource.com/1230095Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#56000}
-
Jakob Gruber authored
Indirect calls need a scratch register to load the target address. On ia32 there's no easily-available scratch register. This removes invalid code and documents a potential solution. But ideally, this will remain unreachable since all inter-builtin calls will be pc-relative. Bug: v8:6666 Change-Id: I19e0ac699ee4757e3d5ec130b3e34a67cd1f851c Reviewed-on: https://chromium-review.googlesource.com/1230096Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#55999}
-
Michael Starzinger authored
This fixes a race on the {WasmCodeManager::lookup_map} data structure when requesting more code memory on architectures for which we have the corresponding {kCanAllocateMoreMemory} flag set. Note that there is no TSAN coverage for these architectures. R=clemensh@chromium.org BUG=chromium:875189 Change-Id: I11a082359b4cb6cc69c3168a956c5152f1dcc833 Reviewed-on: https://chromium-review.googlesource.com/1230136 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#55998}
-
Georg Neis authored
This function was only used in one place and its name was confusing because it was fundamentally different from the other Serialize functions. Bug: v8:7790 Change-Id: I2af384e41ecc2d97e644e6797a4200e00e840b23 Reviewed-on: https://chromium-review.googlesource.com/1230099 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Reviewed-by: Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#55997}
-
Leszek Swirski authored
This reverts commit f4c14fd9. Reason for revert: Breaks noi18n build Original change's description: > [regexp] implement regexp property sequence proposal > > Also-By: mathias@chromium.org > Bug: v8:7467 > Change-Id: I9fd6e61f4da1097c2375f671b4801e9730f792c4 > Reviewed-on: https://chromium-review.googlesource.com/1227974 > Commit-Queue: Yang Guo <yangguo@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Mathias Bynens <mathias@chromium.org> > Cr-Commit-Position: refs/heads/master@{#55991} TBR=yangguo@chromium.org,jgruber@chromium.org,mathias@chromium.org Change-Id: I10c67ad3ade35af920d32a7eea8ae0297677fa07 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7467 Reviewed-on: https://chromium-review.googlesource.com/1230137Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#55996}
-
Sergiy Byelozyorov authored
It is moved to a recipe module as a resource in https://crrev.com/i/678188. R=machenbach@chromium.org Bug: chromium:880732 Change-Id: If64b349d92d5da8452b32474d9d0c22d18155bc8 Reviewed-on: https://chromium-review.googlesource.com/1222126Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org> Cr-Commit-Position: refs/heads/master@{#55995}
-
Georg Neis authored
This removes the last unconditional read accesses to the heap, but required a significant refactoring. - Remove HeapObjectRef::type(). - Change HeapObjectData::Is* testers to look at the instance type in HeapObjectData::map(). - Remove ObjectRef::oddball_type() - Add MapRef::oddball_type() - Add MapRef::is_undetectable(). - Add MapRef::is_callable(). - Remove JSHeapBroker::HeapObjectTypeFromMap() - Remove Type::For(JSHeapBroker*, Handle<Map>) - Add BitsetType::Lub(MapRef). - Add Type::For(MapRef). - Add Type::For(HeapObjectType). - Add HeapObjectRef::GetHeapObjectType(). THIS IS TEMPORARY. As the last item suggests, I couldn't actually remove the HeapObjectType class yet. See the explanation in the code. Bug: v8:7790 Change-Id: I508e4bd5337277b0050f2204392fc36f41032fe9 Reviewed-on: https://chromium-review.googlesource.com/1228033Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Reviewed-by: Maya Lekova <mslekova@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#55994}
-
Michael Achenbach authored
TBR=leszeks@chromium.org NOTRY=true Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Change-Id: Ic993310653d7e9351383253f8a1a65193d925b89 Reviewed-on: https://chromium-review.googlesource.com/1230101 Commit-Queue: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#55993}
-
Jakob Gruber authored
In the near future all ia32 ASM builtins must be audited & possibly refactored to ensure they do not address ebx (= kRootRegister). This CL adds mechanisms to verify ebx usage. SupportsRootRegisterScope marks regions that are root-register-ready (i.e. does not use ebx). AllowExplicitEbxAccessScope marks regions that are explicitly allowed to use ebx, e.g. because they spill and restore its value at all boundaries and do not contain any root-relative accesses. Consistency is verified by calling the new AssertIsAddressable function at strategic spots in the Assembler. All of this code is temporary and should be removed once ia32 fully supports the kRootRegister. Bug: v8:6666 Change-Id: I7c5514794db0da889bdae9e3c23bc0d54780879d Reviewed-on: https://chromium-review.googlesource.com/1226805Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#55992}
-
Yang Guo authored
Also-By: mathias@chromium.org Bug: v8:7467 Change-Id: I9fd6e61f4da1097c2375f671b4801e9730f792c4 Reviewed-on: https://chromium-review.googlesource.com/1227974 Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Mathias Bynens <mathias@chromium.org> Cr-Commit-Position: refs/heads/master@{#55991}
-
Florian Sattler authored
Fixing clang-tidy warning. Bug: v8:8015 Change-Id: I33858c6f6bb577f39f697a1d3094990a57044fca Reviewed-on: https://chromium-review.googlesource.com/1228065 Commit-Queue: Florian Sattler <sattlerf@google.com> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#55990}
-
Florian Sattler authored
Fixing clang-tidy warning. Bug: v8:8015 Change-Id: I9f76c7d530b22a030c9969dfee821e0896c358fb Reviewed-on: https://chromium-review.googlesource.com/1224171 Commit-Queue: Florian Sattler <sattlerf@google.com> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#55989}
-
Ross McIlroy authored
BUG=v8:8157 Change-Id: I66bac3897eaad640b5723cdd0ec900e40cce1214 Reviewed-on: https://chromium-review.googlesource.com/1226917 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Rodolph Perfetta <rodolph.perfetta@arm.com> Cr-Commit-Position: refs/heads/master@{#55988}
-
Jaroslav Sevcik authored
If type checks in simplified lowering produced dead value (i.e., of type Type::None()), we have only propagated deadness along value edges. With this CL, we also insert an Unreachable node after every effectful node that produces dead value. This is more consistent with dead code elimination, which also inserts unreachable nodes after effectful nodes with value output None. Bug: chromium:884052 Change-Id: Idcb168461f05f1811b2c9c16ab8ff179b259fbd3 Reviewed-on: https://chromium-review.googlesource.com/1228125Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#55987}
-
Florian Sattler authored
Fixing clang-tidy warning. Bug: v8:8015 Change-Id: I1fdd9210d92725701f413ff410e3a39d96bccf66 Reviewed-on: https://chromium-review.googlesource.com/1224111 Commit-Queue: Florian Sattler <sattlerf@google.com> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#55986}
-
Simon Zünd authored
R=tebbi@chromium.org Bug: v8:7793 Change-Id: I6690ae59743054e8171bffbf722eb486f468ac48 Reviewed-on: https://chromium-review.googlesource.com/1228062Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Simon Zünd <szuend@google.com> Cr-Commit-Position: refs/heads/master@{#55985}
-
Florian Sattler authored
Fixing clang-tidy warning. Bug: v8:8015 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;luci.chromium.try:linux_chromium_rel_ng;master.tryserver.blink:linux_trusty_blink_rel Change-Id: I78bdf30b54a75fd96de0ca3d9243e1b55e9988ef Reviewed-on: https://chromium-review.googlesource.com/1224090 Commit-Queue: Florian Sattler <sattlerf@google.com> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#55984}
-
Benedikt Meurer authored
Word8 and Word16 representation is treated like Word32 for the sake of TurboFan's representation selection, but this was missing from the Word64 conversions. Bug: chromium:884933, v8:4153, v8:7881, v8:8171, v8:8178 Change-Id: If7b69cdd02b12546d87bba0643e9ee9cb35cb299 Reviewed-on: https://chromium-review.googlesource.com/1229953Reviewed-by: Georg Neis <neis@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#55983}
-
Georg Neis authored
Bug: v8:7790 Change-Id: Ic48c7d869d98b64195f699c47b1a250ae6ad2440 Reviewed-on: https://chromium-review.googlesource.com/1227127Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Reviewed-by: Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#55982}
-
Georg Neis authored
I'm also changing the function signature to take the descriptor_index instead of the FieldIndex, because this lets me reuse the vector of property descriptors as storage. Bug: v8:7790 Change-Id: Ie9dadcba2204b6825e5791f9c630fc8b1079a930 Reviewed-on: https://chromium-review.googlesource.com/1227873 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Reviewed-by: Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#55981}
-
Florian Sattler authored
Fixing clang-tidy warning. Bug: v8:8015 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Change-Id: I82a169545724fca7757b2fce6b64b56d1b6264ba Reviewed-on: https://chromium-review.googlesource.com/1225794Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Florian Sattler <sattlerf@google.com> Cr-Commit-Position: refs/heads/master@{#55980}
-
Florian Sattler authored
Fixing clang-tidy warning. Bug: v8:8015 Change-Id: If912b9d43f577ca3e9f3b8b27acf957c49e269dc Reviewed-on: https://chromium-review.googlesource.com/1224113Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Florian Sattler <sattlerf@google.com> Cr-Commit-Position: refs/heads/master@{#55979}
-
Florian Sattler authored
Fixing clang-tidy warning. Bug: v8:8015 Change-Id: I46b96899f0a5973f2fbf8af94eb43d14955a3f45 Reviewed-on: https://chromium-review.googlesource.com/1227072Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Florian Sattler <sattlerf@google.com> Cr-Commit-Position: refs/heads/master@{#55978}
-
Florian Sattler authored
Fixing clang-tidy warning. Bug: v8:8015 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Change-Id: I641c72959470471747221f94da545a053dfcc0b0 Reviewed-on: https://chromium-review.googlesource.com/1228064Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Florian Sattler <sattlerf@google.com> Cr-Commit-Position: refs/heads/master@{#55977}
-
Florian Sattler authored
Fixing clang-tidy warning. Bug: v8:8015 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I2204967cff3e50d967a9c6f4685f0df5a6ba84af Reviewed-on: https://chromium-review.googlesource.com/1226793Reviewed-by: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Florian Sattler <sattlerf@google.com> Cr-Commit-Position: refs/heads/master@{#55976}
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/dc14f7b..c4b8ad9 Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/c9dc040..460fd88 Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/2174136..ea4301e Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/9bd40b2..b170cc8 TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org Change-Id: Ia2de587c342206cebb46cc65e72f378e2e1303c6 Reviewed-on: https://chromium-review.googlesource.com/1229616Reviewed-by: V8 Autoroller <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Commit-Queue: V8 Autoroller <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#55975}
-
- 17 Sep, 2018 12 commits
-
-
Sathya Gunasekaran authored
Add tests. Bug: v8:5367 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Change-Id: I2a4215a87ba1dae98c4b25547494165f534b4a66 Reviewed-on: https://chromium-review.googlesource.com/1218046 Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by: Adam Klein <adamk@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Reviewed-by: Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#55974}
-
Junliang Yan authored
R=joransiu@ca.ibm.com Change-Id: I975eb3eb0e896b4409e923638f5644dd404e8689 Reviewed-on: https://chromium-review.googlesource.com/1228640Reviewed-by: Joran Siu <joransiu@ca.ibm.com> Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#55973}
-
Bill Budge authored
- Removes ApiNativeType enum, using InstanceType instead. - Replaces switch with JSObject::GetInstanceSize call. Bug: v8:8015 Change-Id: I1c952792a068ec4f46a03ec47dce578d632e7cc3 Reviewed-on: https://chromium-review.googlesource.com/1199905Reviewed-by: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#55972}
-
Junliang Yan authored
Port 0c296cb2 Original Commit Message: This change introduces the necessary conversion operators to convert from Word64 to other representations (Tagged, Word32, Float64, etc.), and plugs in the Word64 representation for NumberAdd/NumberSubtract, such that TurboFan will go to Int64Add/Sub on 64-bit architectures when the inputs and the output of the operation is in safe integer range. This includes the necessary changes to the Deoptimizer to be able to rematerialize Int64 values as Smi/HeapNumber when going back to Ignition later. This change might affect performance, although measurements indicate that there should be no noticable performance impact. The goal is to have TurboFan support Word64 representation to a degree that changing the TypedArray length to an uint64_t (for 64-bit archs) becomes viable and doesn't have any negative performance implications. Independent of that we might get performance improvements in other areas such as for crypto code later. R=bmeurer@chromium.org, joransiu@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: I2119f156c4ddf942ea09ff8ed52e1c6cb32477f2 Reviewed-on: https://chromium-review.googlesource.com/1228634Reviewed-by: Joran Siu <joransiu@ca.ibm.com> Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#55971}
-
Junliang Yan authored
Port 6346cdb6 Original Commit Message: This adds support to TurboFan's representation selection for the Word64 representation, and makes use of that to handle indices for memory access and allocation instructions (i.e. LoadElement, StoreElement, Allocate, etc.). These instructions had previously used Word32 as representation for the indices / sizes, and then internally converted it to the correct representation (aka Word64 on 64-bit architectures) later on, but that was kind of brittle, and sometimes led to weird generated code. The change thus only adds support to convert integer values in the safe integer range from all kinds of representations to Word64 (on 64-bit architectures). We don't yet handle the opposite direction and none of the representation selection heuristics for the numeric operations were changed so far. This will be done in follow-up CLs. This CL itself is supposed to be neutral wrt. functionality, and only serves as a starting point, and a cleanup for the (weird) implicit Word64 index/size handling. R=bmeurer@chromium.org, joransiu@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: Ic7ea30639dea3c5f8a59e7100a15d5ed50073c20 Reviewed-on: https://chromium-review.googlesource.com/1228416Reviewed-by: Joran Siu <joransiu@ca.ibm.com> Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#55970}
-
Creddy authored
Temporarily disable one-shot optimization for debug-evaluate-no-side-effect-builtins-2 to fix the gc stress test. This issue will be fixed in the future CL (https://chromium-review.googlesource.com/c/v8/v8/+/1196725) that adds new bytecodes for loads and stores and one-shot optimizations will be enabled again. Change-Id: I6475557778da4553b5b6cbba1fda14c52d3dd91b Reviewed-on: https://chromium-review.googlesource.com/1228063Reviewed-by: Igor Sheludko <ishell@chromium.org> Commit-Queue: Chandan Reddy <chandanreddy@google.com> Cr-Commit-Position: refs/heads/master@{#55969}
-
Benedikt Meurer authored
On Intel platforms, the kX64Cmp32 and kX64Test32 operations in TurboFan's backend automatically truncate their inputs to Word32 (aka they don't look at the upper bits), so the instruction selection can silently ignore TruncateInt64ToInt32 on the inputs. Bug: v8:8178 Change-Id: Ia50a38cac927e5b2155f092a8885da255a3dddca Reviewed-on: https://chromium-review.googlesource.com/1227935Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#55968}
-
Alexei Filippov authored
Change-Id: I3d16a1e03a28a4ebd69b891cdb610e66230c9c3e Reviewed-on: https://chromium-review.googlesource.com/1227421Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Alexei Filippov <alph@chromium.org> Cr-Commit-Position: refs/heads/master@{#55967}
-
Alexei Filippov authored
Change-Id: Ib13782a8f5eea793b9a74d6f72c625a050069dc2 Reviewed-on: https://chromium-review.googlesource.com/1227681Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Alexei Filippov <alph@chromium.org> Cr-Commit-Position: refs/heads/master@{#55966}
-
Florian Sattler authored
Fixing clang-tidy warning. Bug: v8:8015 Change-Id: Ibdb4b81e1ba764d73bac6592eeef5783097076fc Reviewed-on: https://chromium-review.googlesource.com/1225896Reviewed-by: Hannes Payer <hpayer@chromium.org> Commit-Queue: Florian Sattler <sattlerf@google.com> Cr-Commit-Position: refs/heads/master@{#55965}
-
Adam Klein authored
Instead include it in the files that need to use it. Change-Id: I2321f423ddcc1c0e779332c2e7d1a372bfb4ebbb Reviewed-on: https://chromium-review.googlesource.com/1227305Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#55964}
-
Clemens Hammacher authored
R=ahaas@chromium.org Bug: v8:8158 Change-Id: Ifb00cd7b106f1ac5614acfb5ff7c2e8c0a9b0170 Reviewed-on: https://chromium-review.googlesource.com/1228055Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#55963}
-