- 09 Jun, 2020 1 commit
-
-
Santiago Aboy Solanes authored
Change-Id: Ic6130cee088d3bc12fdfb4a5f947138b34466456 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2232545 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#68249}
-
- 12 Mar, 2020 1 commit
-
-
Jakob Kummerow authored
In preparation for adding reference types, which need an additional parameter to indicate the referenced type. Bug: v8:7748 Change-Id: If4023f3d9c7f42ed603b69c43356d2e8b81a0daa Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2091471 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#66687}
-
- 16 Dec, 2019 1 commit
-
-
Clemens Backes authored
If you are not using them too often, their relationship and meaning is not totally obvious. Especially that {kTaggedSigned} means "uncompressed Smi" cannot be inferred from the name. R=neis@chromium.org Bug: v8:10021 Change-Id: If684b87ba24da0bbce846d4e35a790c2ee96116b No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1967374Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#65457}
-
- 14 Nov, 2019 1 commit
-
-
Clemens Backes authored
With C++14, we can make {ElementSizeLog2Of} constexpr and use it to compute the loaded or stored memory size instead of duplicating that information. The code does not get shorter this way, but more robust. R=ahaas@chromium.org Bug: v8:9810 Change-Id: Idb7e861f833798e181694cda0db21ef57804d3a2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1914215Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#64948}
-
- 11 Nov, 2019 1 commit
-
-
Santiago Aboy Solanes authored
Since smi-corrputing, TaggedSigned (aka known smis) only have the lower bits used. This renders CompressedSigned useless. Bug: v8:7703 Change-Id: Id59aaebc24d670ed32c483ceecf77fd194405ee4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1903445 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#64883}
-
- 07 Nov, 2019 1 commit
-
-
Santiago Aboy Solanes authored
Since the turbo_decompression_elimination flag is removed, there are several methods in machine-type.h that get simplified, e.g TypeCompressedTaggedPointer() can be replaced by just "TaggedPointer()". Also Removing the creation of Change to/from Compressed nodes. Removing these Change nodes' logic is left to a follow-up CL. Bug: v8:7703 Change-Id: Iff1f9aa8361189cf781a26317fd342b942fd5aa4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1897537 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#64834}
-
- 09 Oct, 2019 1 commit
-
-
Santiago Aboy Solanes authored
The plan is to eliminate the DecompressionElimination reducer as well as the Compressed representation. We are adding a flag to easily swap between the old system and the new one. Bug: v8:7703, v8:9206 Change-Id: I083fc7a835962eddfd60e9c403131587489f4632 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1815134 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#64185}
-
- 19 Sep, 2019 2 commits
-
-
Igor Sheludko authored
This is a reland of 6f9b2bd4 We must load JSTypedArray::base_pointer in TurboFan as tagged value otherwise this value may become stale pointer after GC. Original change's description: > [ptr-compr] Make on-heap JSTypedArrays smi-corrupting friendly > > On-heap typed arrays contain HeapObject value in |base_pointer| field > and an offset in |external_pointer| field. When pointer compression is > enabled we want to combine decompression with the offset addition. > In order to do that we add an isolate root to the external_pointer value > and therefore the data pointer computation can is a simple addition of > a (potentially sign-extended) |base_pointer| loaded as Tagged_t value > and an |external_pointer| value. > > Bug: v8:9706 > Change-Id: Id5c546c353c81fb25e3598921bc78165d10a9c44 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1807369 > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Reviewed-by: Georg Neis <neis@chromium.org> > Commit-Queue: Igor Sheludko <ishell@chromium.org> > Cr-Commit-Position: refs/heads/master@{#63874} Bug: v8:9706, chromium:1005599 Cq-Include-Trybots: luci.chromium.try:gpu-fyi-try-win10-nvidia-rel-64 Change-Id: I7bbd2a439306cdd11f2bb0dab5863498624d9740 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1813744Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#63898}
-
Clemens Hammacher authored
This reverts commit 6f9b2bd4. Reason for revert: Fails on nvidia bots, blocking LKGR: https://ci.chromium.org/p/v8/builders/ci/Win%20V8%20FYI%20Release%20(NVIDIA)/5005 Original change's description: > [ptr-compr] Make on-heap JSTypedArrays smi-corrupting friendly > > On-heap typed arrays contain HeapObject value in |base_pointer| field > and an offset in |external_pointer| field. When pointer compression is > enabled we want to combine decompression with the offset addition. > In order to do that we add an isolate root to the external_pointer value > and therefore the data pointer computation can is a simple addition of > a (potentially sign-extended) |base_pointer| loaded as Tagged_t value > and an |external_pointer| value. > > Bug: v8:9706 > Change-Id: Id5c546c353c81fb25e3598921bc78165d10a9c44 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1807369 > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Reviewed-by: Georg Neis <neis@chromium.org> > Commit-Queue: Igor Sheludko <ishell@chromium.org> > Cr-Commit-Position: refs/heads/master@{#63874} TBR=ulan@chromium.org,neis@chromium.org,jgruber@chromium.org,ishell@chromium.org,verwaest@chromium.org Change-Id: I901280dd191e78d02969600f775c4f0da796921f No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:9706 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1813027Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#63886}
-
- 18 Sep, 2019 1 commit
-
-
Igor Sheludko authored
On-heap typed arrays contain HeapObject value in |base_pointer| field and an offset in |external_pointer| field. When pointer compression is enabled we want to combine decompression with the offset addition. In order to do that we add an isolate root to the external_pointer value and therefore the data pointer computation can is a simple addition of a (potentially sign-extended) |base_pointer| loaded as Tagged_t value and an |external_pointer| value. Bug: v8:9706 Change-Id: Id5c546c353c81fb25e3598921bc78165d10a9c44 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1807369Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#63874}
-
- 24 May, 2019 1 commit
-
-
Yang Guo authored
TBR=mvstanton@chromium.org,neis@chromium.org,ahaas@chromium.org Bug: v8:9247 Change-Id: I5433c863a54f3412d73df0d38aba3fdbcfac7ebe Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1627973 Commit-Queue: Yang Guo <yangguo@chromium.org> Auto-Submit: Yang Guo <yangguo@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#61830}
-
- 21 May, 2019 1 commit
-
-
Yang Guo authored
Bug: v8:9247 TBR=bmeurer@chromium.org,neis@chromium.org NOPRESUBMIT=true Change-Id: Ia1e49d1aac09c4ff9e05d58fab9d08dd71198878 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1621931Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#61682}
-
- 09 May, 2019 1 commit
-
-
Santiago Aboy Solanes authored
Going back on https://chromium-review.googlesource.com/c/v8/v8/+/1480382 since now 'tagged' means 'full tagged' again. I am keeping the access builder since that seems useful to have (as opposed to building the access builder in the implementation). Cq-Include-Trybots: luci.v8.try:v8_linux64_pointer_compression_rel_ng Cq-Include-Trybots: luci.v8.try:v8_linux64_arm64_pointer_compression_rel_ng Bug: v8:8977, v8:7703, v8:9206 Change-Id: I7c38b090190aa1c3e91c5ab9f729588aeae2dc1b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1594439 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#61371}
-
- 07 May, 2019 1 commit
-
-
Santiago Aboy Solanes authored
This is the last string of CLs! We eliminated all Tagged loads and stores. That's why I also cleaned up that TODO in machine-type.h Cq-Include-Trybots: luci.v8.try:v8_linux64_pointer_compression_rel_ng Cq-Include-Trybots: luci.v8.try:v8_linux64_arm64_pointer_compression_rel_ng Bug: v8:8977, v8:7703 Change-Id: Icb23b396d0cbb6ee914637e34e26b52435f0000c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1593085 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Cr-Commit-Position: refs/heads/master@{#61300}
-
- 02 May, 2019 1 commit
-
-
Santiago Aboy Solanes authored
This is the first CL that aims to eliminate the straggler tagged loads and stores. Cq-Include-Trybots: luci.v8.try:v8_linux64_pointer_compression_rel_ng Cq-Include-Trybots: luci.v8.try:v8_linux64_arm64_pointer_compression_rel_ng Bug: v8:8977, v8:7703 Change-Id: If3782c0c7047d4c7d8669e12fb423cc0c74bc58a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1587392Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Cr-Commit-Position: refs/heads/master@{#61180}
-
- 29 Mar, 2019 1 commit
-
-
Jaroslav Sevcik authored
Bug: v8:8977 Change-Id: I3eed7db62e4b6fc8f8e51c5aca29c8b78439a400 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1545891Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#60526}
-
- 13 Mar, 2019 1 commit
-
-
Santiago Aboy Solanes authored
Bug: v8:8977 Change-Id: I3bf6606d9db2369f5d82c71c5f58f6cf0c34bc0d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1520712 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Auto-Submit: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Cr-Commit-Position: refs/heads/master@{#60220}
-
- 18 Jan, 2019 1 commit
-
-
Igor Sheludko authored
Bug: v8:8477, v8:8562 Change-Id: Ieb677e0989f77ed207567d468faec0bf92752967 Reviewed-on: https://chromium-review.googlesource.com/c/1388529Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#58922}
-
- 19 Dec, 2018 1 commit
-
-
Igor Sheludko authored
Bug: v8:8477, v8:8562 Change-Id: I0dab49a03b74abc68600885f4951c5cb727a3d73 Reviewed-on: https://chromium-review.googlesource.com/c/1366736Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#58364}
-
- 07 Nov, 2018 1 commit
-
-
Igor Sheludko authored
This is a reland of b8e8b0de Original change's description: > [ptr-compr] Fix incorrectly used machine types > > in TurboFan, CSA, Wasm and compiler tests. Tagged values decompression > logic will depend on the machine type of the value being loaded so it must > be correct. > > Bug: v8:7703 > Change-Id: Ia9e7cc1e273e5a458d9de8aaa4adb0c970413b8b > Reviewed-on: https://chromium-review.googlesource.com/c/1319573 > Commit-Queue: Igor Sheludko <ishell@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Cr-Commit-Position: refs/heads/master@{#57280} Bug: v8:7703 Change-Id: I2c740bab9a800520ebfb83334345bd5641b7e408 Reviewed-on: https://chromium-review.googlesource.com/c/1320850Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#57314}
-
- 06 Nov, 2018 2 commits
-
-
Michael Achenbach authored
This reverts commit b8e8b0de. Reason for revert: https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8%20Arm%20-%20debug/8276 Original change's description: > [ptr-compr] Fix incorrectly used machine types > > in TurboFan, CSA, Wasm and compiler tests. Tagged values decompression > logic will depend on the machine type of the value being loaded so it must > be correct. > > Bug: v8:7703 > Change-Id: Ia9e7cc1e273e5a458d9de8aaa4adb0c970413b8b > Reviewed-on: https://chromium-review.googlesource.com/c/1319573 > Commit-Queue: Igor Sheludko <ishell@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Cr-Commit-Position: refs/heads/master@{#57280} TBR=mstarzinger@chromium.org,ishell@chromium.org Change-Id: Ia97d5bfebf8d8fe1b2b7607f63024b60cf2c584f No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7703 Reviewed-on: https://chromium-review.googlesource.com/c/1320349Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#57294}
-
Igor Sheludko authored
in TurboFan, CSA, Wasm and compiler tests. Tagged values decompression logic will depend on the machine type of the value being loaded so it must be correct. Bug: v8:7703 Change-Id: Ia9e7cc1e273e5a458d9de8aaa4adb0c970413b8b Reviewed-on: https://chromium-review.googlesource.com/c/1319573 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#57280}
-
- 30 Aug, 2018 1 commit
-
-
Bill Budge authored
- Cleans up existing code that tests for representations using a bitmask. - Bypass FP register allocation for sequences without FP vregs. Change-Id: I5ff32e80e0c33848ba83ee17f786b01e37821aa2 Reviewed-on: https://chromium-review.googlesource.com/1195528 Commit-Queue: Bill Budge <bbudge@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#55535}
-
- 07 May, 2018 1 commit
-
-
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}
-
- 03 May, 2018 1 commit
-
-
Marja Hölttä authored
Restores some sensemaking properties, such as making src/machine-type.h (lower level header) independent of src/zone/zone.h (higher level header). BUG=v8:7490 Change-Id: Ibc6e5c7a75e4aaf917d086cf70267abc7ee9a9b0 Reviewed-on: https://chromium-review.googlesource.com/1039586Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#52941}
-
- 12 Jan, 2018 1 commit
-
-
Andreas Haas authored
This CL makes a fuzzer out of the cctest test-multiple-return/ReturnMultipleRandom. The fuzzer creates a CallDescriptor with input parameters and returns, and a function which maps input parameters to returns. The fuzzer then calls this function with a wrapper which checks that the correct mapping happened. R=clemensh@chromium.org Change-Id: Ib89c4063638baae69540a44486d7b2e9d13f8c1f Reviewed-on: https://chromium-review.googlesource.com/859768Reviewed-by:
Ben Titzer <titzer@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#50532}
-
- 23 Oct, 2017 1 commit
-
-
Clemens Hammacher authored
This CL adds a first implementation of Liftoff, the new wasm baseline compiler, for x64 and ia32. It currently supports the most important i32 instructions and control instructions. Whenever it encounters an instruction it does not support yet, it aborts. In a subsequent CL, Liftoff will be called from the WasmCompilationUnit, falling back to Turbofan compilation if the baseline compiler bails out. R=titzer@chromium.org Bug: v8:6600 Change-Id: Ifa78fb9d546dce72c241ff01a251dfa13cb31c1d Reviewed-on: https://chromium-review.googlesource.com/716480 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#48832}
-
- 20 Oct, 2017 1 commit
-
-
Tobias Tebbi authored
- Introduce the new union type UnionType<T1,T2>, used for Number and Numeric. Similarly, PairType<T1,T2> is used for a Turbofan operation with two results. Further details in the design doc: https://docs.google.com/document/d/10foP3m7SDWyFfbda96iEJ_XYOLQdd32AeoP8SD1cTcs/edit#heading=h.bghdno28mr7u - Allow to derive the MachineType from a static type. This allows to select the right MachineType when performing a load/store. - Disallow casts (UncheckedCast() or CAST()) when the target and origin type have no overlap. New cast ReinterpretCast() is an UncheckedCast without this check. - Caveat of this CL: Checked casts (CAST()) are not possible for UnionType<T1,T2> with the exception of Number (due to the existence of Number in OBJECT_TYPE_LIST and the existence of an IsNumber() function in the runtime). Bug: v8:6949 Change-Id: I21a683d1341f69cebd8a347f545b454b463c52ad Reviewed-on: https://chromium-review.googlesource.com/723320 Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#48796}
-
- 21 Aug, 2017 1 commit
-
-
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}
-
- 04 Aug, 2017 1 commit
-
-
Tobias Tebbi authored
Bug: Cq-Include-Trybots: master.tryserver.v8:v8_linux_noi18n_rel_ng Change-Id: I2e1b36303f8b9ad4a3dc4e488123e6e4ce8b02ec Reviewed-on: https://chromium-review.googlesource.com/533033 Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#47149}
-
- 08 Jun, 2017 1 commit
-
-
bbudge authored
- Eliminates b1x4, b1x8, and b1x16 as distinct WASM types. - All vector comparisons return v128 type. - Eliminates b1xN and, or, xor, not. - Selects take a v128 mask vector and are now bit-wise. - Adds a new test for Select, where mask is non-canonical (not 0's and -1's). LOG=N BUG=v8:6020 Review-Url: https://codereview.chromium.org/2919203002 Cr-Commit-Position: refs/heads/master@{#45795}
-
- 22 May, 2017 1 commit
-
-
Wiktor Garbacz authored
Change-Id: I20ed35a7fb5104a9cc66bb54fa8966589c43d7f9 Reviewed-on: https://chromium-review.googlesource.com/507287Reviewed-by:
Andreas Haas <ahaas@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Daniel Clifford <danno@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Marja Hölttä <marja@chromium.org> Reviewed-by:
Jochen Eisinger <jochen@chromium.org> Commit-Queue: Wiktor Garbacz <wiktorg@google.com> Cr-Commit-Position: refs/heads/master@{#45458}
-
- 21 Feb, 2017 1 commit
-
-
bbudge authored
- Adds new machine types SimdBool4/8/16 for the different boolean vector types. - Adds a kSimdMaskRegisters flag for each platform. These are all false for now. - Removes Create, ExtractLane, ReplaceLane, Equal, NotEqual, Swizzle and Shuffle opcodes from the Boolean types. These are unlikely to be well supported natively, and can be synthesized using Select. - Changes the signature of Relational opcodes to return boolean vectors. - Changes the signature of Select opcodes to take boolean vectors. - Updates the ARM implementation of Relational and Select opcodes. LOG=N BUG=v8:4124 Review-Url: https://codereview.chromium.org/2700813002 Cr-Commit-Position: refs/heads/master@{#43348}
-
- 10 Feb, 2017 1 commit
-
-
ulan authored
This works around a compiler bug that leads to incorrect masking of the semantic_ field in TruncatingUseInfoFromRepresentation. Patch from bulach@google.com BUG= Review-Url: https://codereview.chromium.org/2669113003 Cr-Original-Commit-Position: refs/heads/master@{#42925} Committed: https://chromium.googlesource.com/v8/v8/+/8c7fc377fd5c03e30cbf767cd22aba59178e0143 Review-Url: https://codereview.chromium.org/2669113003 Cr-Commit-Position: refs/heads/master@{#43099}
-
- 03 Feb, 2017 2 commits
-
-
jarin authored
Revert of Removes uint8_t from MachineRepresentation and MachineSemantic enums. (patchset #1 id:1 of https://codereview.chromium.org/2669113003/ ) Reason for revert: Breaks bunch Wasm tests on Win64 (e.g., cctest/test-run-wasm/RunWasmCompiled_CallIndirect_EmptyTable). Original issue's description: > Removes uint8_t from MachineRepresentation and MachineSemantic enums. > > This works around a compiler bug that leads to incorrect masking of > the semantic_ field in TruncatingUseInfoFromRepresentation. > > Patch from bulach@google.com > > BUG= > > Review-Url: https://codereview.chromium.org/2669113003 > Cr-Commit-Position: refs/heads/master@{#42925} > Committed: https://chromium.googlesource.com/v8/v8/+/8c7fc377fd5c03e30cbf767cd22aba59178e0143 TBR=bulach@google.com,bmeurer@chromium.org,ulan@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= Review-Url: https://codereview.chromium.org/2669213006 Cr-Commit-Position: refs/heads/master@{#42927}
-
ulan authored
This works around a compiler bug that leads to incorrect masking of the semantic_ field in TruncatingUseInfoFromRepresentation. Patch from bulach@google.com BUG= Review-Url: https://codereview.chromium.org/2669113003 Cr-Commit-Position: refs/heads/master@{#42925}
-
- 16 Dec, 2016 1 commit
-
-
cbruni authored
Many websites use simple calls to String.prototype.indexOf with either a one character ASCII needle or needles bigger than the search string. This CL adds a TFJ builtin for these simple cases, giving up to factor 5 speedup. Drive-by-fix: Add default Object type to Arguments.at BUG= Review-Url: https://codereview.chromium.org/2539093002 Cr-Commit-Position: refs/heads/master@{#41760}
-
- 09 Nov, 2016 1 commit
-
-
bbudge authored
- Track representations of virtual registers in InstructionSequence. - Skip extra aliasing work when no floats or SIMD registers are used. LOG=N BUG=v8:4124 Review-Url: https://codereview.chromium.org/2468233004 Cr-Commit-Position: refs/heads/master@{#40870}
-
- 03 Nov, 2016 1 commit
-
-
bmeurer authored
For lowering CheckHeapObject, always report TaggedPointer representation and let the RepresentationChanger come up with a reasonable conversion from whatever input representation to TaggedPointer. This way we no longer insert the useless ChangeSomethingToTagged and then check the result for HeapObject, i.e. mostly reduces the amount of useless code being generated. Note there are now two operators ChangeFloat64ToTaggedPointer and the old ChangeFloat64ToTagged, because their semantics different wrt. the strength reduction in the SimplifiedOperatorReducer. Also set the output MachineRepresentation::kTaggedPointer properly in SimplifiedLowering whenever we know that we produce a HeapObject. R=jarin@chromium.org BUG=v8:5267 Review-Url: https://codereview.chromium.org/2476593002 Cr-Commit-Position: refs/heads/master@{#40725}
-
- 26 Oct, 2016 1 commit
-
-
bbudge authored
- Modifies RegisterConfiguration to specify complex aliasing on ARM 32. - Modifies RegisterAllocator to consider aliasing. - Modifies ParallelMove::PrepareInsertAfter to handle aliasing. - Modifies GapResolver to split wider register moves when interference with smaller moves is detected. - Modifies MoveOptimizer to handle aliasing. - Adds ARM 32 macro-assembler pseudo move instructions to handle cases where split moves don't correspond to actual s-registers. - Modifies CodeGenerator::AssembleMove and AssembleSwap to handle moves of different widths, and moves involving pseudo-s-registers. - Adds unit tests for FP operand interference checking and PrepareInsertAfter. - Adds more tests of FP for the move optimizer and register allocator. LOG=N BUG=v8:4124 Review-Url: https://codereview.chromium.org/2410673002 Cr-Commit-Position: refs/heads/master@{#40597}
-