- 07 May, 2018 27 commits
-
-
Ben L. Titzer authored
In preparation for cleaning up PipelineData to use a MachineGraph where appropriate, move the dead node up to MachineGraph. R=ahaas@chromium.org Bug: v8:7721 Change-Id: I3f9d456aef7cf4d80adbc93ae938636ffcc3712d Reviewed-on: https://chromium-review.googlesource.com/1046828 Commit-Queue: Ben Titzer <titzer@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#53037}
-
Clemens Hammacher authored
Retpolines were never used for off-heap wasm code. This CL adds them. R=titzer@chromium.org Bug: chromium:840376, chromium:798964 Change-Id: I9f1b2150cce484f831a83663d1fb06555e7eac82 Reviewed-on: https://chromium-review.googlesource.com/1047385 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#53036}
-
Ben L. Titzer authored
R=clemensh@chromium.org Change-Id: Ib1a0105e3347a5ccafdb72dadd9aa144ab77732c Reviewed-on: https://chromium-review.googlesource.com/1046970Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#53035}
-
Sathya Gunasekaran authored
Bug: v8:4247 Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: Ibf5e7dd39cb81ac47af871edbe079d73839f9c1c Reviewed-on: https://chromium-review.googlesource.com/1045184Reviewed-by: Michael Hablich <hablich@chromium.org> Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#53034}
-
Peter Marshall authored
Trying to reduce use of our self-baked data structures. Bug: v8:7570 Change-Id: I419a932b6b8904810844d40a5636e423df832197 Reviewed-on: https://chromium-review.googlesource.com/1032739 Commit-Queue: Peter Marshall <petermarshall@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#53033}
-
Marja Hölttä authored
The hard-coded timeout in the test is so near, that e.g., adding DCHECKs pushes the test over the limit. The test is ran with dcheck_always_on=true. We shouldn't do any performance testing with dcheck_always_on=true; this creates the wrong incentive to not add DCHECKs (or in this case, CLs which add more DCHECKs or cause more DCHECKs to be hit cannot land at all). Change-Id: Ia4d1b2b17ce5a5330b929f984253c89ba273f661 Reviewed-on: https://chromium-review.googlesource.com/1046548Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#53032}
-
Marja Hölttä authored
BUG=v8:7308 Change-Id: Ic69665c8a2606ec40ab06881e0501e33ee0621a0 Reviewed-on: https://chromium-review.googlesource.com/1046653Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#53031}
-
Erik Luo authored
The DCHECK was incorrect. This new API method can be called from any debug mode since the embedder does not know which mode we are in. It should only apply the side effect logic when the mode is kSideEffects. Bug: chromium:829571 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I11b0e5194b151a2b88171d6be21c3ccbba9cd408 Reviewed-on: https://chromium-review.googlesource.com/1046162Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Erik Luo <luoe@chromium.org> Cr-Commit-Position: refs/heads/master@{#53030}
-
Peter Marshall authored
Bug: chromium:840106 Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: I0090cdecaf9194f3ed2d716c6f5f698e33cbdf0d Reviewed-on: https://chromium-review.googlesource.com/1046827 Commit-Queue: Peter Marshall <petermarshall@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#53029}
-
Mike Stanton authored
Change-Id: If1aefb00299ac0c88bdc84b5b77b58582dd8b9b4 Reviewed-on: https://chromium-review.googlesource.com/1047105Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Michael Stanton <mvstanton@chromium.org> Cr-Commit-Position: refs/heads/master@{#53028}
-
jgruber authored
Stubs and builtins are very similar. The main differences are that stubs can be parameterized and may be generated at runtime, whereas builtins are generated at mksnapshot-time and shipped with the snapshot (or embedded into the binary). My main motivation for these conversions is that we can generate faster calls and jumps to (embedded) builtins callees from (embedded) builtin callers. Instead of going through the builtins constants table indirection, we can simply do a pc-relative call/jump. This also unlocks other refactorings, e.g. removal of CallRuntimeDelayed. TBR=mlippautz@chromium.org Bug: v8:6666 Change-Id: I4cd63477f19a330ec70bbf20e2af8a42fb05fabb Reviewed-on: https://chromium-review.googlesource.com/1044245Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#53027}
-
Daniel Clifford authored
In the process, rename Boolean constants (i.e. JavaScript constants), to 'True' and 'False'. This uncovered a bug in the internal handling of True/False labels was fixed (they shouldn't be Values and Torque shouldn't conflate Labels with other Declarables, throwing exceptions when they're improperly used in the wrong context). Furthermore, the internal labels used for True and False for if statements have been renamed so that they can't be aliased from user Torque code. Change-Id: I09dbd2241d2bc2f1daff53862dee1b601810060c Reviewed-on: https://chromium-review.googlesource.com/1044370Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#53026}
-
Hannes Payer authored
Bug: chromium:840329 Change-Id: If45a98c7f8a97f2482ac1bed7f7dda7d6e62b6b9 Reviewed-on: https://chromium-review.googlesource.com/1046658Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Hannes Payer <hpayer@chromium.org> Cr-Commit-Position: refs/heads/master@{#53025}
-
Clemens Hammacher authored
Define simple accessors in the header and give them lower case names. R=mstarzinger@chromium.org Bug: v8:7570 Change-Id: I2914013fdea2218189275bbaa9f98ea5de0ccd7c Reviewed-on: https://chromium-review.googlesource.com/1046546 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#53024}
-
jgruber authored
These tests can be unskipped now that off-heap trampolines are packed into the binary. Bug: v8:6666 Change-Id: Ib8d55064a42da3b12fd940441298e5273181c601 Reviewed-on: https://chromium-review.googlesource.com/1047165Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#53023}
-
Peter Marshall authored
Change-Id: Iccc86d0116f5d23f523e25ff02696a9fb8312223 Reviewed-on: https://chromium-review.googlesource.com/1044545 Commit-Queue: Peter Marshall <petermarshall@chromium.org> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#53022}
-
Kanghua Yu authored
This eliminates one instruction for following pattern: movl rX, rY // TruncateInt64ToInt32 subl rX, imm32 ==> leal rX, [rY - imm32] R=bmeurer@chromium.org Change-Id: I4164e1407f5953302051e905555da14d3ca6680a Reviewed-on: https://chromium-review.googlesource.com/1046381Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Kanghua Yu <kanghua.yu@intel.com> Cr-Commit-Position: refs/heads/master@{#53021}
-
Andreas Haas authored
R=clemensh@chromium.org CC=titzer@chromium.org Change-Id: I4951bf7ffc8baf51225e7bef60349186811b9f76 Reviewed-on: https://chromium-review.googlesource.com/1024037 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#53020}
-
Michael Achenbach authored
This reverts commit 96186c4f. Reason for revert: All gc stress bots time out: https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20gc%20stress/builds/16361 Original change's description: > [in-place weak refs] Fix: allow weak array types in large object space. > > BUG=v8:7308,chromium:839953 > > Change-Id: I3738dc8169730763a587a2452421a54aff11e38e > Reviewed-on: https://chromium-review.googlesource.com/1046645 > Commit-Queue: Marja Hölttä <marja@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Cr-Commit-Position: refs/heads/master@{#53016} TBR=ulan@chromium.org,marja@chromium.org Change-Id: I030638c27fd8990b9dab3d25a582039fb893bf78 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7308, chromium:839953 Reviewed-on: https://chromium-review.googlesource.com/1046549Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#53019}
-
Camillo Bruni authored
Bug: chromium:840220 Change-Id: I37404902e99a83d029aab36411b199fad60497b0 Reviewed-on: https://chromium-review.googlesource.com/1046066Reviewed-by: Peter Marshall <petermarshall@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#53018}
-
Michael Achenbach authored
This merges all test specs into one master-independent builders.pyl file, which will unblock deprecating the master name as a property on infra side. Bug: chromium:830557 Change-Id: I0592505e77ede725ed43a26cabfd057bb0b911bd Reviewed-on: https://chromium-review.googlesource.com/1046671Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#53017}
-
Marja Hölttä authored
BUG=v8:7308,chromium:839953 Change-Id: I3738dc8169730763a587a2452421a54aff11e38e Reviewed-on: https://chromium-review.googlesource.com/1046645 Commit-Queue: Marja Hölttä <marja@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#53016}
-
Yang Guo authored
R=verwaest@chromium.org Bug: v8:5773 Change-Id: Ifd29a1116ee8c86b8d8d24485bbfd19e260ab66b Reviewed-on: https://chromium-review.googlesource.com/1046088 Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#53015}
-
Peter Marshall authored
We can save a pointer of space for each CodeEntry by removing this field which we don't really need. Instead of concatenating the name string on demand, concatenate the prefix eagerly. Reduces sizeof(CodeEntry) from 136 to 128 on 64-bit. Bug: v8:7719 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: Id346a8f36794e337e8c886f8d1969431424539b0 Reviewed-on: https://chromium-review.googlesource.com/1039825Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Alexei Filippov <alph@chromium.org> Commit-Queue: Peter Marshall <petermarshall@chromium.org> Cr-Commit-Position: refs/heads/master@{#53014}
-
Camillo Bruni authored
Change-Id: I9d8b13df0af987d9fcacdf57f2cfd71ec21b3ff9 Reviewed-on: https://chromium-review.googlesource.com/1042708 Commit-Queue: Camillo Bruni <cbruni@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#53013}
-
Camillo Bruni authored
This CL fixes a bug where we would accidentally shrink to the same size of the StringTable causing repeated unecessary allocations. Bug: v8:5443, chromium:818642 Change-Id: I353b179616d5293f6d7143e7381ae6711343a835 Reviewed-on: https://chromium-review.googlesource.com/1044207Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#53012}
-
v8-autoroll authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/506800f..1fd2d08 TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org Change-Id: I1461e1e9c839a717d307eb51b79f49ecf4f45616 Reviewed-on: https://chromium-review.googlesource.com/1046246 Commit-Queue: v8 autoroll <v8-autoroll@chromium.org> Reviewed-by: v8 autoroll <v8-autoroll@chromium.org> Cr-Commit-Position: refs/heads/master@{#53011}
-
- 06 May, 2018 2 commits
-
-
Sathya Gunasekaran authored
TBR: hpayer@chromium.org Bug: v8:6443 Change-Id: I1750475084cbcd783551d9b7c65c8ccca9b63ea3 Reviewed-on: https://chromium-review.googlesource.com/1045615 Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#53010}
-
v8-autoroll authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/0a40aa9..506800f Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/39e3bc6..3059fd7 TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org Change-Id: I3cc068e21babbe30dd36eb715209a1b6c3214441 Reviewed-on: https://chromium-review.googlesource.com/1046127 Commit-Queue: v8 autoroll <v8-autoroll@chromium.org> Reviewed-by: v8 autoroll <v8-autoroll@chromium.org> Cr-Commit-Position: refs/heads/master@{#53009}
-
- 05 May, 2018 1 commit
-
-
v8-autoroll authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/55b398a..0a40aa9 Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/153134e..39e3bc6 TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org Change-Id: Ibba9fa7e267b5b8b92cdb3d43776e62ae32abb30 Reviewed-on: https://chromium-review.googlesource.com/1045792 Commit-Queue: v8 autoroll <v8-autoroll@chromium.org> Reviewed-by: v8 autoroll <v8-autoroll@chromium.org> Cr-Commit-Position: refs/heads/master@{#53008}
-
- 04 May, 2018 10 commits
-
-
Eric Holk authored
Change-Id: I19106adfd5407cbef05142fde3b7eb00ecd8ff52 Reviewed-on: https://chromium-review.googlesource.com/1043256Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Eric Holk <eholk@chromium.org> Cr-Commit-Position: refs/heads/master@{#53007}
-
Eric Holk (eholk) authored
In preparing for adding trap-based bounds checking to Windows, this change refactors the code to separate the platform-specific portions from that which can be shared between platforms. Internally, we've renamed `RegisterDefaultSignalHandler` to `RegisterDefaultTrapHandler` to more accurately represent the difference in terminology between Linux (signals) and Windows (exceptions). The external API is left the same so as not to break downstream clients. This CL is primarily to make room for Windows support. Future CLs will begin adding support for Windows. This is a reincarnation of https://crrev.com/c/626558. Bug: v8:6743 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: Iaa8bfd68c14cd1d17933b12c24cb8dd5ee8a21d6 Reviewed-on: https://chromium-review.googlesource.com/998829 Commit-Queue: Eric Holk <eholk@chromium.org> Reviewed-by: Brad Nelson <bradnelson@chromium.org> Cr-Commit-Position: refs/heads/master@{#53006}
-
Alexei Filippov authored
Change-Id: I450efa4916bd774265991f987f4be618ba2eb1d2 Reviewed-on: https://chromium-review.googlesource.com/1045168 Commit-Queue: Alexei Filippov <alph@chromium.org> Reviewed-by: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Cr-Commit-Position: refs/heads/master@{#53005}
-
Alexei Filippov authored
ProfilerListener which holds CodeEntries has been moved from Logger to CpuProfiler. This way we can clear entries when all the profiles produced by a particular CpuProfiler are deleted. BUG=v8:7719 Change-Id: I31d47dc7da44648c8fb8e87b47e2e6260d3dc5c3 Reviewed-on: https://chromium-review.googlesource.com/1043050Reviewed-by: Peter Marshall <petermarshall@chromium.org> Commit-Queue: Alexei Filippov <alph@chromium.org> Cr-Commit-Position: refs/heads/master@{#53004}
-
Erik Luo authored
Creating a new instance from a v8::Function will invoke its constructor. If it is an API callback that has not been marked as kHasNoSideEffect, this CL introduces a way to invoke it without throwing. Calls within the constructor are still checked for side effects. Bug: chromium:829571 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: Ia4e410d487e2847bc511cb96f0be30a3563991f6 Reviewed-on: https://chromium-review.googlesource.com/1034116 Commit-Queue: Erik Luo <luoe@chromium.org> Reviewed-by: Hannes Payer <hpayer@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#53003}
-
Michael Starzinger authored
This makes {Script} objects created for WebAssembly no longer reference a concrete instance object, but a module object instead. All uses of the field in question only require module-wide information and the script is meant to represent the set of all instances, not just one concrete instance. R=clemensh@chromium.org Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I751d4b75c8a970cffcb1a37b6c22ff69e9ee5489 Reviewed-on: https://chromium-review.googlesource.com/1043871Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#53002}
-
Daniel Clifford authored
Torque expressions of type constexpr are evaluated at compile-time rather than runtime. They are backed by C++ types rather than TNode<X> types, so the macro functions that are called by generated C++ code expect values to be computed when the snapshot is generated rather than by TurboFan-generated code. Specifically, "if" statements can have a constexpr modifier. With this modifier, a type of "constexpr bool" is expected rather than "bool", and in that case instead of generating a CSA BranchIf, it generates a C++ "if (<bool expression>)" that generates code for only the true or false path based on the bool value at torque-execution (compile time) rather than generating both paths (including inserting phi nodes for variables modified on either branch at the re-merge at the end of the if) and dynamically dispatching to the true or false path during d8/Chrome/node.js execution (runtime) using a CSA BranchIf. Change-Id: I8238e25aaadbfc618847e04556e96a3949ea5a8d Reviewed-on: https://chromium-review.googlesource.com/1042085 Commit-Queue: Daniel Clifford <danno@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#53001}
-
Clemens Hammacher authored
First untrusted code mitigation in Liftoff: Mask memory accesses (loads and stores) by the mask stored in the WasmInstanceObject. R=titzer@chromium.org Bug: v8:6600, chromium:798964 Change-Id: Iddf577977451444b51c42fbc2ad34430832a9e71 Reviewed-on: https://chromium-review.googlesource.com/1044215Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#53000}
-
Vincent Belliard authored
Bug: v8:6600 Change-Id: I1bd2db402d6e97ab468dc24cd4d12bef6523d784 Reviewed-on: https://chromium-review.googlesource.com/1043091 Commit-Queue: Vincent Belliard <vincent.belliard@arm.com> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#52999}
-
jgruber authored
This method is intended for use by code caching as follows: 1. The module is compiled (and perhaps instantiated). 2. The embedder fetches and stores the module's unbound script (i.e. the shared function info). 3. Module evaluation, maybe triggering lazy compilation. 4. Generated code for the module (which hangs off the shared function info) is inserted into the code cache. Subsequent module loads can load from the code cache prior to evaluation. Bug: v8:7685 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I80018cd921ab1a18323906a548b249e19d9f9509 Reviewed-on: https://chromium-review.googlesource.com/1041745 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#52998}
-