- 04 Oct, 2017 1 commit
-
-
Georgia Kouveli authored
Bug: v8:6644 Change-Id: I5cd713465563f2dc803b175684bf04a05559e653 Reviewed-on: https://chromium-review.googlesource.com/693239 Commit-Queue: Georgia Kouveli <georgia.kouveli@arm.com> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#48285}
-
- 29 Sep, 2017 1 commit
-
-
Georgia Kouveli authored
This reverts commit 1cc93be0. Reason for revert: http://crbug.com/769976 Original change's description: > [arm64] Add slot copier to masm and use in builtins > > Abstract some stack slot copies through a macro assembler function. This > eliminates some non-paired stack operations. > > Bug: v8:6644 > Change-Id: Icaa3ebb1bec42587ad461bd548a4225c7b4e5d15 > Reviewed-on: https://chromium-review.googlesource.com/685238 > Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> > Commit-Queue: Martyn Capewell <martyn.capewell@arm.com> > Cr-Commit-Position: refs/heads/master@{#48177} TBR=rmcilroy@chromium.org,martyn.capewell@arm.com,bmeurer@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: v8:6644 Change-Id: I9044df7c2be028748d85b7007008331a2aa8173f Reviewed-on: https://chromium-review.googlesource.com/691874 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#48234}
-
- 28 Sep, 2017 1 commit
-
-
Martyn Capewell authored
Pair some stack ops so that they deal with an even numbers of registers, add padding around profile entry calls, and delete some unused macro assembler code. Bug: v8:6644 Change-Id: I5a5529f04738ba2a2fdb1b0d4ee93c567a3c504e Reviewed-on: https://chromium-review.googlesource.com/686823Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Martyn Capewell <martyn.capewell@arm.com> Cr-Commit-Position: refs/heads/master@{#48205}
-
- 27 Sep, 2017 2 commits
-
-
Georgia Kouveli authored
Bug: v8:6644 Change-Id: I601b78ba681925521005acabed1ee6e91df98ed0 Reviewed-on: https://chromium-review.googlesource.com/686762Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Georgia Kouveli <georgia.kouveli@arm.com> Cr-Commit-Position: refs/heads/master@{#48189}
-
Martyn Capewell authored
Abstract some stack slot copies through a macro assembler function. This eliminates some non-paired stack operations. Bug: v8:6644 Change-Id: Icaa3ebb1bec42587ad461bd548a4225c7b4e5d15 Reviewed-on: https://chromium-review.googlesource.com/685238Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Martyn Capewell <martyn.capewell@arm.com> Cr-Commit-Position: refs/heads/master@{#48177}
-
- 25 Sep, 2017 1 commit
-
-
Benedikt Meurer authored
When inlining based on SharedFunctionInfo rather than based on concrete JSFunction, we weren't able to properly optimize array, object and regexp literals inside the inlinee, because we didn't know the concrete FeedbackVector for the inlinee inside JSCreateLowering. This was because JSCreateLowering wasn't properly updated after the literals moved to the FeedbackVector. Now with this CL we also have the VectorSlotPair on the literal creation operators, just like we do for property accesses and calls, and are thus able to always access the appropriate FeedbackVector and optimize the literal creation. The impact is illustrated by the micro-benchmark on the tracking bug, which goes from createEmptyArrayLiteral: 1846 ms. createShallowArrayLiteral: 1868 ms. createShallowObjectLiteral: 2246 ms. to createEmptyArrayLiteral: 1175 ms. createShallowArrayLiteral: 1187 ms. createShallowObjectLiteral: 1195 ms. with this CL, so up to 2x faster now. Drive-by-fix: Also remove the unused CreateEmptyObjectLiteral builtin and cleanup the names of the other builtins to be consistent with the names of the TurboFan operators and Ignition bytecodes. Bug: v8:6856 Change-Id: I453828d019b27c9aa1344edac0dd84e91a457097 Reviewed-on: https://chromium-review.googlesource.com/680656 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#48140}
-
- 22 Sep, 2017 2 commits
-
-
Albert Mingkun Yang authored
TurboAssembler::CallRecordWriteStub contains info that could be used to conditionally skip generational write barrier or skip saving float-point registers. This commits uses those info in RecordWrite stub. Bug: chromium:749486 Change-Id: I41c9a593473e1f8863a09887fd2ce917f1d4fb3b Reviewed-on: https://chromium-review.googlesource.com/672527Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Albert Mingkun Yang <albertnetymk@google.com> Cr-Commit-Position: refs/heads/master@{#48123}
-
Georgia Kouveli authored
Add padding for the interpreter registers when needed, to make the interpreter frame a multiple of 16 bytes. The padding needs to be added in the InterpreterEntryTrampoline and when generating an interpreter frame in the deoptimizer. It also needs to be considered when calculating the size of the interpreter frame during OSR and stack unwinding. Bug: v8:6644 Change-Id: Icfec94079cf0785fc8a2506ff555b5f9e89e3d13 Reviewed-on: https://chromium-review.googlesource.com/664563 Commit-Queue: Georgia Kouveli <georgia.kouveli@arm.com> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#48121}
-
- 21 Sep, 2017 1 commit
-
-
Martyn Capewell authored
This is mainly about clarifying the frame contents for each call type, though assertions on the even length of Push/PopRegList() are also added. Bug: v8:6644 Change-Id: I4dfe6ac2603e2bab895758e85d8dfe06770d8987 Reviewed-on: https://chromium-review.googlesource.com/672844Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Martyn Capewell <martyn.capewell@arm.com> Cr-Commit-Position: refs/heads/master@{#48116}
-
- 14 Sep, 2017 2 commits
-
-
Sigurdur Asgeirsson authored
Bug: chromium:763010 Change-Id: Iafed5a0e8087f415cd2c11a0b1326c04bd01ef80 Reviewed-on: https://chromium-review.googlesource.com/665351Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Sigurður Ásgeirsson <siggi@chromium.org> Cr-Commit-Position: refs/heads/master@{#48018}
-
Albert Mingkun Yang authored
There are two places where RecordWrite code stub is called, OutOfLineRecordWrite and RecordWriteField. With this commit, if `v8_enable_csa_write_barrier` flag is turned on, no instances of the old RecordWrite stub appear in the snapshot. Bug: chromium:749486 Change-Id: I2bc3fa38c8831736303b46d153a79c034a450f16 Reviewed-on: https://chromium-review.googlesource.com/648983 Commit-Queue: Albert Mingkun Yang <albertnetymk@google.com> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#48004}
-
- 13 Sep, 2017 2 commits
-
-
Mostyn Bramley-Moore authored
Previously instructions-arm64.h was alternatively defining or declaring some constants based on whether or not ARM64_DEFINE_FP_STATICS was defined, and it was assumed that exactly one file would include this header with the macro defined. In jumbo builds, the header guards in instructions-arm64.h meant that the resulting state of the header file would be whichever of the two cases that appeared first in the compilation unit. This would cause multiple definitions in some cases and no definitions in some other cases (or if you were really lucky, it would work out ok). Let's move these constants to a separate source file temporarily, to be excluded from jumbo compilation units. This code should eventually be replaced with a cleaner solution. Bug: chromium:746958 Change-Id: I7edb1821ef408afd50c6b236d63d3c07f955b58f Reviewed-on: https://chromium-review.googlesource.com/663898 Commit-Queue: Mostyn Bramley-Moore <mostynb@opera.com> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#48003}
-
Michael Starzinger authored
R=clemensh@chromium.org Cq-Include-Trybots: master.tryserver.v8:v8_linux_noi18n_rel_ng Change-Id: I3df5d50f81909188ee0cb31d0f479aadeeabe20f Reviewed-on: https://chromium-review.googlesource.com/662780Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#47991}
-
- 12 Sep, 2017 1 commit
-
-
Martyn Capewell authored
Merge some stack operations to work on an even number of registers, adding a padding register where necessary. Some lightly-used macro assembler functions are inlined, to make pairing registers easier. Not all merges create an even number of register arguments yet. This is a step towards aligning the stack pointer to 16-bytes. Bug: v8:6644 Change-Id: I995510cf91fa1f7af659a8d9b83acf7857787100 Reviewed-on: https://chromium-review.googlesource.com/654607 Commit-Queue: Martyn Capewell <martyn.capewell@arm.com> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#47975}
-
- 08 Sep, 2017 1 commit
-
-
Yuki Shiino authored
Map::kBitFieldOffset should be loaded as a byte data. This patch fixes the loading instruction of Map::kBitFieldOffset in lazy accessors. Bug: v8:6795, v8:6156 Change-Id: I8fbc88ed44fb43a24335fc81f75b7199ca80212c Reviewed-on: https://chromium-review.googlesource.com/656862 Commit-Queue: Yuki Shiino <yukishiino@chromium.org> Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#47918}
-
- 06 Sep, 2017 1 commit
-
-
Clemens Hammacher authored
Up to now, each architecture defined all Register types as structs, with lots of redundancy. An often found comment noted that they cannot be classes due to initialization order problems. As these problems are gone with C++11 constexpr constants, I now tried making Registers classes again. All register types now inherit from RegisterBase, which provides a default set of methods and named constructors (like ::from_code, code(), bit(), is_valid(), ...). This design allows to guarantee an interesting property: Each register is either valid, or it's the no_reg register. There are no other invalid registers. This is guaranteed statically by the constexpr constructor, and dynamically by ::from_code. I decided to disallow the default constructor completely, so instead of "Register reg;" you now need "Register reg = no_reg;". This makes explicit how the Register is initialized. I did this change to the x64, ia32, arm, arm64, mips and mips64 ports. Overall, code got much more compact and more safe. In theory, it should also increase performance (since the is_valid() check is simpler), but this is probably not measurable. R=mstarzinger@chromium.org Change-Id: I5ccfa4050daf4e146a557970e9d37fd3d2788d4a Reviewed-on: https://chromium-review.googlesource.com/650927Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#47847}
-
- 05 Sep, 2017 2 commits
-
-
Ross McIlroy authored
Always return to the InterpreterEntryTrampoline rather than calling the InterpreterExitTrampoline from the Return bytecode handler. This fixes a regression which occured if we upset the call/return stack by skipping the return to the InterpreterEntryTrampoline from the return bytecode handler. BUG=chromium:759390,chromium:753705 Change-Id: Ib625654a4a5072ac6c8d8e9611d1b9c0bbced4ca Reviewed-on: https://chromium-review.googlesource.com/649517 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#47826}
-
Mostyn Bramley-Moore authored
Bug: chromium:746958 Change-Id: I4e23608995952efd0f0bd73d9bf4f9a3fc84d478 Reviewed-on: https://chromium-review.googlesource.com/650256Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Mostyn Bramley-Moore <mostynb@opera.com> Cr-Commit-Position: refs/heads/master@{#47825}
-
- 04 Sep, 2017 2 commits
-
-
Albert Mingkun Yang authored
In kArchSaveCallerRegisters, PushCallerSaved alone alters stack pointer without informing `frame_access_state`. This commit compensate the inconsistency by manually increasing the delta after pushing registers. This affects systems (currently only ARM64) using stack pointer for accessing variables stored on stack. Bug: chromium:749486 Change-Id: Ic6da3826323d4fb1c545ade3d4d2cd4d1fed1843 Reviewed-on: https://chromium-review.googlesource.com/633606 Commit-Queue: Albert Mingkun Yang <albertnetymk@google.com> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#47797}
-
Mostyn Bramley-Moore authored
Bug: chromium:746958 Change-Id: I5df144055d1918bf26acba648e07646150249d94 Reviewed-on: https://chromium-review.googlesource.com/647549Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Mostyn Bramley-Moore <mostynb@opera.com> Cr-Commit-Position: refs/heads/master@{#47782}
-
- 01 Sep, 2017 1 commit
-
-
Albert Mingkun Yang authored
Saving/restoring only registers in the restricted set before calling RecordWrite code stub, which prepares for turning on `v8_enable_csa_write_barrier` on all architectures. Bug: chromium:749486 Change-Id: I6c8ba0c1561513569218e80011673cf24c7d6127 Reviewed-on: https://chromium-review.googlesource.com/641531Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Albert Mingkun Yang <albertnetymk@google.com> Cr-Commit-Position: refs/heads/master@{#47770}
-
- 25 Aug, 2017 1 commit
-
-
Ross McIlroy authored
This change adapts the Call bytecode handlers such that they don't require a stack frame. It does this by modifying the call bytecode handler to tail-call the Call or InterpreterPushArgsAndCall builtins. As a result, the callee function will return to the InterpreterEntryTrampoline when it returns (since this is the return address on the interpreter frame), which is adapted to dispatch to the next bytecode handler. The return bytecode handler is modified to tail-call a new InterpreterExitTramoline instead of returning to the InterpreterEntryTrampoline. Overall this significanlty reduces the amount of stack space required for interpreter frames, increasing the maximum depth of recursive calls from around 6000 to around 12,500 on x64. BUG=chromium:753705 Change-Id: I23328e4cef878df3aca4db763b47d72a2cce664c Reviewed-on: https://chromium-review.googlesource.com/634364 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#47617}
-
- 24 Aug, 2017 3 commits
-
-
Michael Lippautz authored
Bug: chromium:738368 Change-Id: I4867b90c639d8d5315e0caa22285e7ddbdab44f9 Reviewed-on: https://chromium-review.googlesource.com/632682 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#47580}
-
Albert Mingkun Yang authored
This is useful for the RecordWrite stub that can now specify the set of allocatable registers in its call descriptor interface. During register allocation a custom register configuration is used to ensure that the register are allocated from the given set. This makes calling RecordWrite stub less expensive as we need to save/restore only the allocatable registers instead all registers. Bug: chromium:749486 Change-Id: If4d73f1fd525e480970ea92600fb811e63677eb5 Reviewed-on: https://chromium-review.googlesource.com/624734Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Albert Mingkun Yang <albertnetymk@google.com> Cr-Commit-Position: refs/heads/master@{#47577}
-
Yuki Shiino authored
In case of LAP(lazy accessor pair), the function's creation context must be equal to the accessor holder's creation context, so this CL changes the current context to the accessor holder's creation context. Note that this is the second attempt after https://crrev.com/2770003002 The change from the previous attempt is to skip looking for the object's constructor if the object itself is a function. Also some of Blink's LAP-context-sensitive tests got updated at https://crrev.com/c/597990 and the rest of the tests will get temporarily disabled at https://crrev.com/c/605408 . TBR=verwaest@chromium.org Bug: v8:6156 Change-Id: I09709a90995d82a03996d0347e5a1d8425b5db9c Reviewed-on: https://chromium-review.googlesource.com/563152 Commit-Queue: Yuki Shiino <yukishiino@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#47572}
-
- 23 Aug, 2017 2 commits
-
-
Ross McIlroy authored
> This reverts commit 42d3d36b. > > Original change's description: > > [Compiler] Remove code aging support. > > > > Code aging is no longer supported by any remaining compilers now > > that full codegen has been removed. This CL removes all vestiges of > > code aging. > > > > BUG=v8:6409 > > > > Change-Id: I945ebcc20c7c55120550c8ee36188bfa042ea65e > > Reviewed-on: https://chromium-review.googlesource.com/619153 > > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > > Reviewed-by: Yang Guo <yangguo@chromium.org> > > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > > Reviewed-by: Marja Hölttä <marja@chromium.org> > > Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#47501} > > TBR=ulan@chromium.org,rmcilroy@chromium.org,marja@chromium.org,yangguo@chromium.org,mstarzinger@chromium.org,rodolph.perfetta@arm.com > > Change-Id: I9d8b2985e2d472697908270d93a35eb7ef9c88a8 > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Bug: v8:6409 > Reviewed-on: https://chromium-review.googlesource.com/625998 > Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> > Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> > Cr-Commit-Position: refs/heads/master@{#47506} TBR=ulan@chromium.org,rmcilroy@chromium.org,marja@chromium.org,yangguo@chromium.org,mstarzinger@chromium.org,rodolph.perfetta@arm.com Change-Id: I68785c6be7686e874b3848103e3a34483eaeb519 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:6409 Reviewed-on: https://chromium-review.googlesource.com/625919Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#47535}
-
Michael Starzinger authored
R=ishell@chromium.org BUG=v8:6409 Change-Id: Ic01d4f1a8b251bb5480840d4943d9ebec713b9c1 Reviewed-on: https://chromium-review.googlesource.com/626016Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#47534}
-
- 22 Aug, 2017 4 commits
-
-
Juliana Franco authored
This CL: - removes the trampoline pc from deoptimization input data and deoptimization state. This is no longer needed given that we added this information to the safepoint table in https://chromium-review.googlesource.com/c/v8/v8/+/596027). This should also fixed the regression mentioned in https://bugs.chromium.org/p/chromium/issues/detail?id=752873 - searches for the exception handler in the safepoint table. - removes the code used for patching which is no longer needed. Bug: v8:6563 Change-Id: I6cedc18c371f5707b7e0e1a8da409375ce1ebe5e Reviewed-on: https://chromium-review.googlesource.com/595547 Commit-Queue: Juliana Patricia Vicente Franco <jupvfranco@google.com> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#47507}
-
Ross McIlroy authored
This reverts commit a205117c. Reason for revert: breaks Arm64 Original change's description: > [Compiler] Remove code aging support. > > Code aging is no longer supported by any remaining compilers now > that full codegen has been removed. This CL removes all vestiges of > code aging. > > BUG=v8:6409 > > Change-Id: I945ebcc20c7c55120550c8ee36188bfa042ea65e > Reviewed-on: https://chromium-review.googlesource.com/619153 > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Reviewed-by: Yang Guo <yangguo@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Reviewed-by: Marja Hölttä <marja@chromium.org> > Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> > Cr-Commit-Position: refs/heads/master@{#47501} TBR=ulan@chromium.org,rmcilroy@chromium.org,marja@chromium.org,yangguo@chromium.org,mstarzinger@chromium.org,rodolph.perfetta@arm.com Change-Id: I9d8b2985e2d472697908270d93a35eb7ef9c88a8 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:6409 Reviewed-on: https://chromium-review.googlesource.com/625998Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#47506}
-
Ross McIlroy authored
Code aging is no longer supported by any remaining compilers now that full codegen has been removed. This CL removes all vestiges of code aging. BUG=v8:6409 Change-Id: I945ebcc20c7c55120550c8ee36188bfa042ea65e Reviewed-on: https://chromium-review.googlesource.com/619153Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Marja Hölttä <marja@chromium.org> Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#47501}
-
Juliana Franco authored
There's no need for this code to be completely architecture specific. Bug: v8:6563 Change-Id: I90aa1aa76fa266a247d8f374459a6eb6469c8c75 Reviewed-on: https://chromium-review.googlesource.com/612340 Commit-Queue: Juliana Patricia Vicente Franco <jupvfranco@google.com> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#47493}
-
- 21 Aug, 2017 2 commits
-
-
Jakob Kummerow authored
Bug: v8:6409 Change-Id: I2902d9ad87bab3559c776593ca99d275eeaca8c0 Reviewed-on: https://chromium-review.googlesource.com/622411Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#47484}
-
Albert Mingkun Yang authored
The new node behave the same as its counterpart, CallCFunction, with the additional saving and restoring caller saved registers before and after the function call. Bug: chromium:749486 Change-Id: I0a1dfb2e4e55f7720541a00e6d16fd20220f39ed Reviewed-on: https://chromium-review.googlesource.com/620709 Commit-Queue: Albert Mingkun Yang <albertnetymk@google.com> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#47479}
-
- 17 Aug, 2017 1 commit
-
-
Albert Mingkun Yang authored
Make it consistent so that registers in all architecture have a member function called `bit()`. Bug: Change-Id: Ie6323f81d4ecab1557259a43a30100d8da8b35f1 Reviewed-on: https://chromium-review.googlesource.com/618872 Commit-Queue: Albert Mingkun Yang <albertnetymk@google.com> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#47401}
-
- 16 Aug, 2017 1 commit
-
-
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}
-
- 15 Aug, 2017 1 commit
-
-
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}
-
- 14 Aug, 2017 3 commits
-
-
Mircea Trofin authored
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. Bug: Change-Id: Ib66c3aff6a0ab4313391528cd2692749bb389559 Reviewed-on: https://chromium-review.googlesource.com/612597 Commit-Queue: Brad Nelson <bradnelson@chromium.org> Reviewed-by:
Brad Nelson <bradnelson@chromium.org> Cr-Commit-Position: refs/heads/master@{#47350}
-
Georg Neis authored
R=jarin@chromium.org Bug: Change-Id: I97c2d73ea4ac83802421be85da327e214939d5a1 Reviewed-on: https://chromium-review.googlesource.com/610006Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#47341}
-
Martyn Capewell authored
Delete StringCharCodeAtGenerator, as it's no longer used. Bug: Change-Id: I05294fac69671c0652742d120de9ea17e9031518 Reviewed-on: https://chromium-review.googlesource.com/613164Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Martyn Capewell <martyn.capewell@arm.com> Cr-Commit-Position: refs/heads/master@{#47339}
-
- 11 Aug, 2017 1 commit
-
-
Ross McIlroy authored
Removes the new.target slot from the interpreter's fixed frame. Instead adds a field to BytecodeArray to get the bytecode's incoming new.target or generator object register. The InterpreterEntryTrampoline then sets this register with the incoming new.target (or generator object) when the function is called. This register can be directly the new.target or generator object variable if they are LOCAL location, otherwise it is a temporary register which is then moved to the variable's location during the function prologue. This fixes a hack in the deoptimizer where we would set the new.target fixed slot to undefined in order to avoid extending it's lifetime through the optimized code - now it's just a standard register and can be optimized away as normal. Bug=v8:6644 Change-Id: Ieb8cc34cccefd9fb6634a90cbc77c6002a54f2ae Reviewed-on: https://chromium-review.googlesource.com/608966 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#47320}
-