- 17 Aug, 2017 10 commits
-
-
Ross McIlroy authored
Removes the Compiler::CompileDebugCode and Compiler::EnsureBytecode functions and replaces them with a Compiler::Compile(Handle<SharedFunctionInfo> shared) function. The code in compiler.cc is refactored to use this function to compile the SharedFunctionInfo when compiling a JSFunction. Also does some other cleanup: - Removes CompileUnoptimizedFunction and inlines into new Compiler function - Moves code to create top level SharedFunctionInfo into CompilerTopLevel and out of FinalizeUnoptimizedCompile. BUG=v8:6409 Change-Id: Ic54afcd8eb005c17f3ae6b2355060846e3091ca3 Reviewed-on: https://chromium-review.googlesource.com/613760 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#47394}
-
Igor Sheludko authored
'9. Let targetName be ? Get(Target, "name").' didn't produce required side effects. Bug: v8:6712 Change-Id: Iebf007b4e93ebbf9c6c85c9729d972a8c1a7b129 Reviewed-on: https://chromium-review.googlesource.com/616727Reviewed-by: Camillo Bruni <cbruni@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#47393}
-
Yang Guo authored
R=cbruni@chromium.org Bug: v8:6726 Change-Id: If56ce1a0b00b98ede2bb101cb9697ec516d19e81 Reviewed-on: https://chromium-review.googlesource.com/616641Reviewed-by: Camillo Bruni <cbruni@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#47392}
-
Predrag Rudic authored
This CL solves recent clang compilation error: "src/wasm/function-body-decoder.cc:1418:18: error: comparison of two values with different enumeration types in switch statement ('v8::internal::wasm::ControlKind' and 'ControlKind')" Bug: Change-Id: I6cb32bb3d42256a80d6f9222f5450ee93ce1021a Reviewed-on: https://chromium-review.googlesource.com/615247Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#47391}
-
Marja Hölttä authored
Here the token cannot be Token::INIT since it's coming from the Scanner. Scanner never returns Token::INIT, and Token::INIT is only used internally in the AST. Bug: Change-Id: I185e6d3330651b7ee784b916908e7d8d803b63b9 Reviewed-on: https://chromium-review.googlesource.com/616282 Commit-Queue: Marja Hölttä <marja@chromium.org> Reviewed-by: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#47390}
-
Leszek Swirski authored
In graph building, use liveness information to only create Phis for live registers when merging two environments, or when preparing a loop header. Similarly, only create loop exit value nodes for live registers when exiting a loop. Bug: v8:6701 Change-Id: Id6ac6a5518e6f1762530d871e92a46f42397928b Reviewed-on: https://chromium-review.googlesource.com/615173 Commit-Queue: Jaroslav Sevcik <jarin@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#47389}
-
Leszek Swirski authored
The accumulator should never be alive when jumping back to a loop header, or jumping out of a loop. This means that as far as far as TurboFan is concerned, we never need to create Phis or LoopExitValues for the accumulator, as its value should not escape the loop. For safety, this also augments the IsLivenessValid DCHECK in the liveness analysis to check that the accumulator is not live in these cases, and amends the bytecode analysis tests to kill the accumulator where necessary to ensure this. As a drive-by, added some comments to the more complex bytecode analysis tests, since figuring out what they were for and how to fix them took a non-trivial amount of time. Change-Id: Idecf76a36681d724134c59768650c23cc6b0e9ef Reviewed-on: https://chromium-review.googlesource.com/615168 Commit-Queue: Jaroslav Sevcik <jarin@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#47388}
-
Yang Guo authored
R=rmcilroy@chromium.org Bug: v8:6409 Change-Id: I8205ca3e9587f4cb1d35d7edc1aa320814020ac4 Reviewed-on: https://chromium-review.googlesource.com/616665Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#47387}
-
v8-autoroll authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/179cd37..bee933a Rolling v8/third_party/catapult: https://chromium.googlesource.com/external/github.com/catapult-project/catapult/+log/b153f21..cd8447f Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/5bad4f2..874d630 TBR=machenbach@chromium.org,hablich@chromium.org Change-Id: I6ad7178725c0eb5ab3420796d42ca6ca1dfdf286 Reviewed-on: https://chromium-review.googlesource.com/618488Reviewed-by: v8 autoroll <v8-autoroll@chromium.org> Commit-Queue: v8 autoroll <v8-autoroll@chromium.org> Cr-Commit-Position: refs/heads/master@{#47386}
-
jing.bao authored
I32x4 Neg, Eq/Ne/GtS/GeS/GtU/GeU Reconstruct ro/RRO macro instructions with AVX_OP3_WITH_TYPE Bug: Change-Id: I3e391f489717db3456b884c6df0b1756497a1846 Reviewed-on: https://chromium-review.googlesource.com/616463Reviewed-by: Bill Budge <bbudge@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Jing Bao <jing.bao@intel.com> Cr-Commit-Position: refs/heads/master@{#47385}
-
- 16 Aug, 2017 23 commits
-
-
Caitlin Potter authored
Bug: v8:5855 Change-Id: Ie783318b2297f85a9f102e1266dfc1fac406435a Reviewed-on: https://chromium-review.googlesource.com/466107 Commit-Queue: Caitlin Potter <caitp@igalia.com> Reviewed-by: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#47384}
-
Franziska Hinkelmann authored
This reverts commit a50b6751. Reason for revert: Regression Original change's description: > [runtime] Port TypedArraySetFormArrayLike to C++ > > Bug: v8:6704 > Change-Id: I316f085801f4fb6a792124f9a6f80a16e6d43162 > Reviewed-on: https://chromium-review.googlesource.com/616721 > Commit-Queue: Franziska Hinkelmann <franzih@chromium.org> > Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> > Cr-Commit-Position: refs/heads/master@{#47369} TBR=franzih@chromium.org,bmeurer@chromium.org Change-Id: Ibafeae41c85b6d7848b26dac7468057e1cea4769 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:6704 Reviewed-on: https://chromium-review.googlesource.com/617480Reviewed-by: Franziska Hinkelmann <franzih@chromium.org> Commit-Queue: Franziska Hinkelmann <franzih@chromium.org> Cr-Commit-Position: refs/heads/master@{#47383}
-
Adam Klein authored
This patch simplifies and reduces code duplication & dead branches in PatternRewriter, especially relating to handling of destructuring assignments. It also adds additional DCHECKs to capture invariants. It should have no change in behavior. Change-Id: I02bc6c30a1cae8a60c4c5e9033b90953d136212e Reviewed-on: https://chromium-review.googlesource.com/612511 Commit-Queue: Adam Klein <adamk@chromium.org> Reviewed-by: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#47382}
-
Ali Ijaz Sheikh authored
R=mlippautz@chromium.org Bug: Change-Id: I0df355cdfcf77a1462948b82479f2626d94ca5cc Reviewed-on: https://chromium-review.googlesource.com/614623Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Ali Ijaz Sheikh <ofrobots@google.com> Cr-Commit-Position: refs/heads/master@{#47381}
-
Adam Klein authored
This saves one pointer in Assignment for non-compound assignment expressions. Change-Id: I7ec32c1d378917c81ab55c42733b6af450ce65db Reviewed-on: https://chromium-review.googlesource.com/612673 Commit-Queue: Adam Klein <adamk@chromium.org> Reviewed-by: Marja Hölttä <marja@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#47380}
-
Ulan Degenbaev authored
TBR: mlippautz@chromium.org Change-Id: I1d0c3c84e4483287aa599c7d3a0c0d1c5a4d154a Reviewed-on: https://chromium-review.googlesource.com/612177 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#47379}
-
Ulan Degenbaev authored
This patch ensures that all code path of the external memory pressure handler pass the kGCCallbackFlagCollectAllExternalMemory flag to the embedder. This is necessary to force Oilpan GC. Bug: chromium:733655 Change-Id: I2e680d1e7f9087d1930d56ead39ef7cf1bc93e56 Reviewed-on: https://chromium-review.googlesource.com/616149Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#47378}
-
Adam Klein authored
This is a very minor cleanup noticed when reading this code. It's simply a slight reduction in Parser/AST size. Change-Id: Ice81253d1624723ef124a19442b0dcf4b77f4345 Reviewed-on: https://chromium-review.googlesource.com/614585Reviewed-by: Georg Neis <neis@chromium.org> Commit-Queue: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#47377}
-
Adam Klein authored
This removes brittle Scope walking in FinalizeForOfStatement() by making ParserBase call InitializeForEachStatement() while in the proper Scope. Bug: v8:6724 Change-Id: I6e828ccb3a5e4d98633a95a2bfb8d255ad0fc0eb Reviewed-on: https://chromium-review.googlesource.com/614654Reviewed-by: Marja Hölttä <marja@chromium.org> Commit-Queue: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#47376}
-
Adam Klein authored
This loop doesn't itself have a source position, so I wouldn't think block coverage of it would make any sense (and all tests continue to pass). Removing this argument will make some refactoring I'm working on easier. Bug: v8:6724 Change-Id: I4d6b734e077d9e61ad9362d07e57f155ec556221 Reviewed-on: https://chromium-review.googlesource.com/615385Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#47375}
-
Michael Achenbach authored
NOTRY=true TBR=yangguo@chromium.org Bug: chromium:726584 Change-Id: Ie094a57105ad5c5098b0b133c9ca3661576f09a8 Reviewed-on: https://chromium-review.googlesource.com/616682 Commit-Queue: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#47374}
-
Ben L. Titzer authored
R=alph@chromium.org Bug: Change-Id: Ie9088cd189fcf3af08b06f3021ff4ff1641b7791 Reviewed-on: https://chromium-review.googlesource.com/601928 Commit-Queue: Ben Titzer <titzer@chromium.org> Reviewed-by: Alexei Filippov <alph@chromium.org> Cr-Commit-Position: refs/heads/master@{#47373}
-
Maya Lekova authored
Bug: v8:6664, v8:6557 Change-Id: Ib2180e38c8b07cda102ccb160dfd44197d828be0 Reviewed-on: https://chromium-review.googlesource.com/602229 Commit-Queue: Maya Lekova <mslekova@google.com> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#47372}
-
Pierre Langlois authored
FPRegister <-> FPRegister moves and swaps were implemented using the FMOV instruction, whatever the size of the register. However, FMOV only supports Float and Double moves, it cannot move a whole 128bit register. Instead, use the vector MOV instruction: - Simd128 move: mov vd.16b, vn.16b - Float/Double move: mov vd.8b, vn.8b Bug: Change-Id: Ie793078baf3fb816e4047062285bbdaf35483949 Reviewed-on: https://chromium-review.googlesource.com/591308Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Martyn Capewell <martyn.capewell@arm.com> Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Pierre Langlois <pierre.langlois@arm.com> Cr-Commit-Position: refs/heads/master@{#47371}
-
Pierre Langlois authored
The code generator uses `ip` as a scratch register directly to assemble a "Constant -> Float stack slot" move. However, the assembler may also use it to compute the address. If we try to assemble such a move and the stack slot is out of range of a store we get the following: ~~~ movw ip, #52429 movt ip, #15820 movw ip, #59328 ; Use ip to compute the address! movt ip, #65535 str ip, [fp, +ip] ~~~ Bug: Change-Id: I97a7b606e3f1d53ed44cc7787e49109cf7a7ab16 Reviewed-on: https://chromium-review.googlesource.com/602230Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Pierre Langlois <pierre.langlois@arm.com> Cr-Commit-Position: refs/heads/master@{#47370}
-
Franziska Hinkelmann authored
Bug: v8:6704 Change-Id: I316f085801f4fb6a792124f9a6f80a16e6d43162 Reviewed-on: https://chromium-review.googlesource.com/616721 Commit-Queue: Franziska Hinkelmann <franzih@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#47369}
-
Yang Guo authored
R=petermarshall@chromium.org Bug: chromium:617892 Change-Id: I4077ae567297d18edd6c6748f9f64bbdafb34896 Reviewed-on: https://chromium-review.googlesource.com/616561 Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by: Peter Marshall <petermarshall@chromium.org> Cr-Commit-Position: refs/heads/master@{#47368}
-
Leszek Swirski authored
Now that OSR is done during graph building, we no longer have to special-case OSR loops in the loop assignment analysis, as we no longer have the restriction that registers are 'assigned' an OSRValue inside the loop. Bug: v8:6518 Change-Id: Ib4fa139091d77efa16246ddc6e63a10cbb877ee4 Reviewed-on: https://chromium-review.googlesource.com/615167Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#47367}
-
Marja Hölttä authored
Makes ClusterFuzz start fuzzing with the flag on. BUG=v8:5516 Change-Id: Ia80f7d22f12fe25efb226102a896e8b0e3537947 Reviewed-on: https://chromium-review.googlesource.com/610000 Commit-Queue: Marja Hölttä <marja@chromium.org> Reviewed-by: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#47366}
-
Georg Neis authored
Allowing GetModuleNamespace on a not-yet-evaluated module does not make a lot of sense because accessing the namespace object before evaluation can lead to surprising behavior. R=adamk@chromium.org Bug: v8:1569 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: I3e3feb344f6399bf92b3dabc97c571a61b38bd41 Reviewed-on: https://chromium-review.googlesource.com/613268Reviewed-by: Adam Klein <adamk@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#47365}
-
Yang Guo authored
This removes: - CodeBreakIterator for FCG code. - RelocModes for debug breaks. - Code generator for debug break slots. - GC support for debug break slots. - Code flag to indicate code with debug break slots. - Builtin type DBG. - Mechanisms to replace FCG code in the debugger and LiveEdit. - Runtime entry to the debugger from debug break slots. R=bmeurer@chromium.org, rmcilroy@chromium.org, ulan@chromium.org Bug: v8:6409 Change-Id: I5662c8800e3ef1b1584ad107bfe0aae26c9d8abb Reviewed-on: https://chromium-review.googlesource.com/613263Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#47364}
-
v8-autoroll authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/2fe6f54..179cd37 Rolling v8/buildtools: https://chromium.googlesource.com/chromium/buildtools/+log/ceb0504..f90f6a5 Rolling v8/third_party/catapult: https://chromium.googlesource.com/external/github.com/catapult-project/catapult/+log/2ebc30b..b153f21 Rolling v8/third_party/icu: https://chromium.googlesource.com/chromium/deps/icu/+log/98218d1..08cb956 TBR=machenbach@chromium.org,hablich@chromium.org Change-Id: Ia5af304723428636c982e1c1e675f63e7c467dbb Reviewed-on: https://chromium-review.googlesource.com/616447Reviewed-by: v8 autoroll <v8-autoroll@chromium.org> Commit-Queue: v8 autoroll <v8-autoroll@chromium.org> Cr-Commit-Position: refs/heads/master@{#47363}
-
Jaideep Bajwa authored
On 64bit BE, build fails with error "error: left shift count >= width of type" casting the variable to uintptr_t which will set the size correctly. R=predrag.rudic@imgtec.com, jkummerow@chromium.org, ivica.bogosavljevic@imgtec.com, hablich@chromium.org LOG=N Bug: Change-Id: I8e466bd2c17b9976171ffd88725dce548153108e Reviewed-on: https://chromium-review.googlesource.com/616010Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Jaideep Bajwa <bjaideep@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#47362}
-
- 15 Aug, 2017 7 commits
-
-
Tom Anderson authored
BUG=v8:6565 R=machenbach@chromium.org Change-Id: I2bd9b65fd7f991899e365354e262e62e78d1e852 Reviewed-on: https://chromium-review.googlesource.com/568679Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Thomas Anderson <thomasanderson@chromium.org> Cr-Commit-Position: refs/heads/master@{#47361}
-
Jaideep Bajwa authored
Port 4b397e6c Original Commit Message: The way we access wasm addresses or sizes is the same, on a platform. We have 2 size parameters - memory and table - and 2 addresses - globals and memory. The CL also renames for generality the address setting API. R=mtrofin@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: Ic6c398e0eeb6c9344aca3f92223d8b99a9e518ef Reviewed-on: https://chromium-review.googlesource.com/615012Reviewed-by: Joran Siu <joransiu@ca.ibm.com> Commit-Queue: Jaideep Bajwa <bjaideep@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#47360}
-
Martyn Capewell authored
Small improvements to code generated on arm and arm64. Bug: v8:6644 Change-Id: Id3d9be87f6a071e949985a1b6b62a43d9195a104 Reviewed-on: https://chromium-review.googlesource.com/615300Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Martyn Capewell <martyn.capewell@arm.com> Cr-Commit-Position: refs/heads/master@{#47359}
-
Alexandre Talon authored
Simple typo fixed. Bug: Change-Id: I958e384490db02008765408bc825345d350586b2 Reviewed-on: https://chromium-review.googlesource.com/614340Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Alexandre Talon <alexandret@google.com> Cr-Commit-Position: refs/heads/master@{#47358}
-
Martyn Capewell authored
No longer needed. Bug: v8:6409 Change-Id: Iea0afcb7ced24d10223db5e01f66813e97fc4134 Reviewed-on: https://chromium-review.googlesource.com/613761 Commit-Queue: Martyn Capewell <martyn.capewell@arm.com> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#47357}
-
Predrag Rudic authored
This CL doesn't add static initializer Fix d4c157ee commit On big endian platforms wrong byte is initialized for "parameter_count" field of the union. Bug: Change-Id: I1c4b1d7f5fb3bd29077fdaa158560c380fba1875 Reviewed-on: https://chromium-review.googlesource.com/613266Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Ivica Bogosavljevic <ivica.bogosavljevic@imgtec.com> Cr-Commit-Position: refs/heads/master@{#47356}
-
v8-autoroll authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/876f9d1..2fe6f54 Rolling v8/buildtools: https://chromium.googlesource.com/chromium/buildtools/+log/f4bcb07..ceb0504 Rolling v8/third_party/catapult: https://chromium.googlesource.com/external/github.com/catapult-project/catapult/+log/5db5135..2ebc30b TBR=machenbach@chromium.org,hablich@chromium.org Change-Id: I728e0948c9af65fab07a79b6c415dde5f08e6681 Reviewed-on: https://chromium-review.googlesource.com/615140Reviewed-by: v8 autoroll <v8-autoroll@chromium.org> Commit-Queue: v8 autoroll <v8-autoroll@chromium.org> Cr-Commit-Position: refs/heads/master@{#47355}
-