Граф коммитов

181 Коммитов

Автор SHA1 Сообщение Дата
Dzmitry Malyshau 45898087b9 Bug 1629851 - Avoid WebGPU buffer flush on reads r=jgilbert
Differential Revision: https://phabricator.services.mozilla.com/D70866

--HG--
extra : moz-landing-system : lando
2020-04-14 21:26:45 +00:00
Dzmitry Malyshau 97d1fb315e Bug 1630054 - Properly free WebGPU swapchain buffers r=jgilbert
The unassigned buffers aren't associated with `wgpu-server` objects, they are just IDs allocated on the content side. So to free them, we just need to send an appropriate message.

Differential Revision: https://phabricator.services.mozilla.com/D70945

--HG--
extra : moz-landing-system : lando
2020-04-14 21:59:13 +00:00
Dzmitry Malyshau 6823350719 Bug 1629896 - Fix WebGPU vertex attribute pointers r=jgilbert
the pointer wasn't advanced properly

Differential Revision: https://phabricator.services.mozilla.com/D70871

--HG--
extra : moz-landing-system : lando
2020-04-14 22:40:15 +00:00
Dzmitry Malyshau 8238a62e51 Bug 1629955 - Don't fail WebGPU Instance creation r=jgilbert
we can't fail at Navigator.gpu
Instead, we reject the promise of requestAdapter

Differential Revision: https://phabricator.services.mozilla.com/D70903

--HG--
extra : moz-landing-system : lando
2020-04-14 21:11:10 +00:00
Dzmitry Malyshau 15435c2bf5 Bug 1622846 - Update WebGPU TextureDescriptor API r=jgilbert,webidl,smaug
Differential Revision: https://phabricator.services.mozilla.com/D70762

--HG--
extra : moz-landing-system : lando
2020-04-14 12:52:03 +00:00
Dzmitry Malyshau d652ce10bb Bug 1602888 - WebGPU copy operations r=jgilbert,webidl,smaug
Differential Revision: https://phabricator.services.mozilla.com/D70637

--HG--
extra : moz-landing-system : lando
2020-04-13 13:59:24 +00:00
Dzmitry Malyshau e8a60d2eab Bug 1624174 - Update wgpu to get the coordinate spaces right r=jgilbert
The updated wgpu has the coordinate space fixes.
Depends on

  - https://phabricator.services.mozilla.com/D70421
  - https://phabricator.services.mozilla.com/D70432
  - https://phabricator.services.mozilla.com/D70646

Differential Revision: https://phabricator.services.mozilla.com/D70140

--HG--
rename : third_party/rust/rendy-descriptor/Cargo.toml => third_party/rust/gfx-descriptor/Cargo.toml
rename : third_party/rust/rendy-memory/Cargo.toml => third_party/rust/gfx-memory/Cargo.toml
rename : third_party/rust/rendy-memory/src/allocator/dynamic.rs => third_party/rust/gfx-memory/src/allocator/general.rs
rename : third_party/rust/rendy-memory/src/heaps/heap.rs => third_party/rust/gfx-memory/src/heaps/heap.rs
rename : third_party/rust/rendy-memory/src/utilization.rs => third_party/rust/gfx-memory/src/stats.rs
extra : moz-landing-system : lando
2020-04-13 13:42:15 +00:00
Dzmitry Malyshau 266fb28b6c Bug 1629024 - Run WebGPU tests on nightly only r=jgilbert
follow-up to D70435

Differential Revision: https://phabricator.services.mozilla.com/D70611

--HG--
extra : moz-landing-system : lando
2020-04-13 14:00:57 +00:00
Dzmitry Malyshau 30ebe67957 Bug 1622846 - Fix WebGPU AttributeSet r=webidl,smaug
Differential Revision: https://phabricator.services.mozilla.com/D70635

--HG--
extra : moz-landing-system : lando
2020-04-12 22:48:09 +00:00
Dzmitry Malyshau dd19cf7ac2 Bug 1602133 - Fix WebGPU canvas map population r=jgilbert
Differential Revision: https://phabricator.services.mozilla.com/D70081

--HG--
extra : moz-landing-system : lando
2020-04-07 18:53:34 +00:00
Dzmitry Malyshau 3021defc28 Bug 1602133 - WebGPU presentation r=jgilbert,webidl,smaug,aosmond
This change adds support for CanvasContext presenting WebGPU via CPU readback.
The presentation is handled mostly on GPU process side by managing a list of staging buffers
and copying the contents into a WR external image (backed by an external buffer).

Differential Revision: https://phabricator.services.mozilla.com/D68032

--HG--
extra : moz-landing-system : lando
2020-04-06 22:29:18 +00:00
Cosmin Sabou 2f4d9af7d3 Backed out changeset bc6b2b003c6e (bug 1602133) for causing build bustages on CanvasRenderingContextHelper.cpp.
--HG--
extra : histedit_source : 917f3627a3e3f8dab0d806b69fc716bfd9f1d483
2020-04-06 23:46:51 +03:00
Dzmitry Malyshau 5004affc0e Bug 1602133 - WebGPU presentation r=jgilbert,webidl,smaug,aosmond
This change adds support for CanvasContext presenting WebGPU via CPU readback.
The presentation is handled mostly on GPU process side by managing a list of staging buffers
and copying the contents into a WR external image (backed by an external buffer).

Differential Revision: https://phabricator.services.mozilla.com/D68032

--HG--
extra : moz-landing-system : lando
2020-04-06 20:10:03 +00:00
Bogdan Tara 7f7cc68c64 Backed out changeset 377a757c583d (bug 1602133) for webgpu related bustages CLOSED TREE 2020-04-06 21:59:57 +03:00
Dzmitry Malyshau 4c3a924336 Bug 1602133 - WebGPU presentation r=jgilbert,webidl,smaug,aosmond
This change adds support for CanvasContext presenting WebGPU via CPU readback.
The presentation is handled mostly on GPU process side by managing a list of staging buffers
and copying the contents into a WR external image (backed by an external buffer).

Differential Revision: https://phabricator.services.mozilla.com/D68032

--HG--
extra : moz-landing-system : lando
2020-04-02 19:55:01 +00:00
Dzmitry Malyshau dcf75e7f03 Bug 1622261 - Refactor the ID recycling to always cycle through the GPU process
Previously, we kept the object IDs managed on content side only.
The GPU side would work with given indices.
When an object is destroyed, we'd free the ID on the content side and signal the GPU to delete the object.
Problem is that on the GPU process the object may still be kept alive for as long as any dependants are alive.

What this change is doing - hooking up the callbacks to the *actual* freeing of IDs on the GPU side.
These callbacks end up in messages from WebGPUParent to WebGPUChild, and only then the IDs are freed
on the content side and able to be reused.

Differential Revision: https://phabricator.services.mozilla.com/D67211

--HG--
extra : moz-landing-system : lando
2020-03-23 07:54:08 +00:00
Dzmitry Malyshau 8ce137c6f3 Bug 1617086 - Include WebGPU pass dependencies into CC r=jgilbert
follow-up to D65319

Differential Revision: https://phabricator.services.mozilla.com/D67212

--HG--
extra : moz-landing-system : lando
2020-03-18 17:29:51 +00:00
Dzmitry Malyshau 80b79d4414 Bug 1622846 - WebGPU bindings update to the spec r=jgilbert,webidl,smaug
Updates `wgpu` code as well as our WebIDL bindings.

The `wgpu-types` is a new component crate that has public types available to
Rust applications that target the Web directly.

Differential Revision: https://phabricator.services.mozilla.com/D67013

--HG--
extra : moz-landing-system : lando
2020-03-16 21:32:37 +00:00
Boris Zbarsky c878a8bb26 Bug 1619112 part 2. Pass char literals instead of char16_t literals into ErrorResult throwing methods. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D65538

--HG--
extra : moz-landing-system : lando
2020-03-06 21:04:58 +00:00
Dzmitry Malyshau 7eb1434fa4 Bug 1617086 - Keep WebGPU pass dependencies alive while recording r=jgilbert
Since we switched to "software" pass recording,
`wgpu` no longer keeps references to the objects used when recording a pass.
This means Gecko needs to keep them alive up until the encoding is done.

Differential Revision: https://phabricator.services.mozilla.com/D65319

--HG--
extra : moz-landing-system : lando
2020-03-05 03:30:41 +00:00
Dzmitry Malyshau 1b1bc98a76 Bug 1614703 - WebGPU render pipeline creation r=jgilbert,webidl,baku
Differential Revision: https://phabricator.services.mozilla.com/D64833

--HG--
extra : moz-landing-system : lando
2020-03-03 16:37:02 +00:00
Mihai Alexandru Michis 1e6afc5e96 Backed out changeset f1c86e7d23cd (bug 1614703) for causing bustages in WebGPUParent.cpp
CLOSED TREE
2020-03-03 17:23:55 +02:00
Dzmitry Malyshau 53a10a49a5 Bug 1614703 - WebGPU render pipeline creation r=jgilbert,webidl,baku
Differential Revision: https://phabricator.services.mozilla.com/D64833

--HG--
extra : moz-landing-system : lando
2020-03-03 15:08:24 +00:00
Tooru Fujisawa 9939f785e0 Bug 1612515 - Part 4: Move RunCBindgen.py to /build. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D64541

--HG--
rename : layout/style/RunCbindgen.py => build/RunCbindgen.py
extra : moz-landing-system : lando
2020-02-28 14:07:15 +00:00
Dzmitry Malyshau 5437a922a7 Bug 1614702 - WebGPU textures, texture views, and samplers r=jgilbert,webidl,smaug
this change adds an ability to create WebGPU textures, views, and samplers

Differential Revision: https://phabricator.services.mozilla.com/D63595

--HG--
extra : source : 8f51a5fac21cb52e2ddb647f0b99a9bfccb41f6a
2020-02-24 20:12:16 +00:00
Dorel Luca 0d23881940 Backed out changeset 8f51a5fac21c (bug 1614702) for build-notarization failures. CLOSED TREE 2020-02-25 00:54:54 +02:00
Dzmitry Malyshau 757896954c Bug 1614702 - WebGPU textures, texture views, and samplers r=jgilbert,webidl,smaug
this change adds an ability to create WebGPU textures, views, and samplers

Differential Revision: https://phabricator.services.mozilla.com/D63595

--HG--
extra : moz-landing-system : lando
2020-02-24 20:12:16 +00:00
Sylvestre Ledru ca6530131a Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan,kvark
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D63787

--HG--
extra : moz-landing-system : lando
2020-02-24 15:33:38 +00:00
Mike Shal c8abdd68c2 Bug 1616630 - Use py3_action for GENERATED_FILES that already support it; r=firefox-build-system-reviewers,kvark,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D63438

--HG--
extra : moz-landing-system : lando
2020-02-21 00:05:17 +00:00
Csoregi Natalia 6360b24e80 Backed out 2 changesets (bug 1616630) for Android bustage. CLOSED TREE
Backed out changeset 15016546c954 (bug 1616630)
Backed out changeset dcb7dc51633b (bug 1616630)
2020-02-20 21:24:11 +02:00
Mike Shal 39492660f4 Bug 1616630 - Use py3_action for GENERATED_FILES that already support it; r=firefox-build-system-reviewers,kvark,rstewart
Depends on D63437

Differential Revision: https://phabricator.services.mozilla.com/D63438

--HG--
extra : moz-landing-system : lando
2020-02-20 16:21:55 +00:00
Dzmitry Malyshau 199a362906 Bug 1602131 - WebGPU render passes r=jgilbert,webidl,smaug
Adds support for recording render passes in WebGPU.
The `wgpu` logo is also added to the repository ("gfx/wgpu/logo.png") under [CC-BY-SA](https://creativecommons.org/licenses/by-sa/3.0/) license.

Differential Revision: https://phabricator.services.mozilla.com/D62461

--HG--
extra : moz-landing-system : lando
2020-02-19 19:25:30 +00:00
Mike Shal d8e4653d19 Bug 1611326 - Default to py3_action, and add a py2 attribute to GENERATED_FILES; r=firefox-build-system-reviewers,rstewart
GENERATED_FILES now defaults to python3 unless py2=True is specified as
an argument. All existing GENERATED_FILES scripts and GeneratedFile
templates have the py2=True attribute added, so this patch should
effectively be a no-op.

Going forward, individual scripts can be converted to python3 and their
corresponding py2=True attribute can be deleted. In effect, this patch
will be backed out in pieces until all scripts run in python3, at which
point the py2 attribute itself can be removed.

Differential Revision: https://phabricator.services.mozilla.com/D60919

--HG--
extra : moz-landing-system : lando
2020-02-14 13:22:46 +00:00
Boris Zbarsky 6c66fa85a4 Bug 1615022 part 2. Require an rvalue reference to reject a Promise with an ErrorResult. r=farre,kvark
The rejection process consumes the ErrorResult, so an rvalue reference is the honest thing here.

Differential Revision: https://phabricator.services.mozilla.com/D62632

--HG--
extra : moz-landing-system : lando
2020-02-14 15:42:30 +00:00
Cosmin Sabou ff39f9206d Backed out 2 changesets (bug 1613263, bug 1611326) for presummably causing l10n langpack bustages. a=backout
Backed out changeset 77e54e76848a (bug 1611326)
Backed out changeset 36ba18ac3a68 (bug 1613263)
2020-02-14 15:02:21 +02:00
Mike Shal ad0c283ab2 Bug 1611326 - Default to py3_action, and add a py2 attribute to GENERATED_FILES; r=firefox-build-system-reviewers,rstewart
GENERATED_FILES now defaults to python3 unless py2=True is specified as
an argument. All existing GENERATED_FILES scripts and GeneratedFile
templates have the py2=True attribute added, so this patch should
effectively be a no-op.

Going forward, individual scripts can be converted to python3 and their
corresponding py2=True attribute can be deleted. In effect, this patch
will be backed out in pieces until all scripts run in python3, at which
point the py2 attribute itself can be removed.

Differential Revision: https://phabricator.services.mozilla.com/D60919

--HG--
extra : moz-landing-system : lando
2020-02-13 23:07:04 +00:00
Brindusan Cristian e2fb6b8344 Backed out changeset 7fefed11f117 (bug 1611326) for build bustages at update-1.xpi.stub. CLOSED TREE 2020-02-13 23:33:34 +02:00
Mike Shal e6464dd404 Bug 1611326 - Default to py3_action, and add a py2 attribute to GENERATED_FILES; r=firefox-build-system-reviewers,rstewart
GENERATED_FILES now defaults to python3 unless py2=True is specified as
an argument. All existing GENERATED_FILES scripts and GeneratedFile
templates have the py2=True attribute added, so this patch should
effectively be a no-op.

Going forward, individual scripts can be converted to python3 and their
corresponding py2=True attribute can be deleted. In effect, this patch
will be backed out in pieces until all scripts run in python3, at which
point the py2 attribute itself can be removed.

Differential Revision: https://phabricator.services.mozilla.com/D60919

--HG--
extra : moz-landing-system : lando
2020-02-13 20:31:50 +00:00
Dzmitry Malyshau bf6b5347b2 Bug 1611024 - Turn WebGPU programmable passes into interface mixins r=jgilbert,webidl,bzbarsky
this makes us closer to the upstream spec and removes a bunch of useless code

Differential Revision: https://phabricator.services.mozilla.com/D62377

--HG--
extra : moz-landing-system : lando
2020-02-11 03:03:47 +00:00
Boris Zbarsky 9b0b56bfc7 Bug 1612213 part 3. Switch Promise::RejectWithDOMException consumers to new convenience methods. r=smaug,jgilbert
Differential Revision: https://phabricator.services.mozilla.com/D61269

--HG--
extra : moz-landing-system : lando
2020-02-03 20:37:32 +00:00
Boris Zbarsky b88d5ac5a8 Bug 1612213 part 1. Switch most consumers of ThrowDOMException to the new methods. r=smaug,jgilbert
Differential Revision: https://phabricator.services.mozilla.com/D61267

--HG--
extra : moz-landing-system : lando
2020-02-03 20:19:11 +00:00
Dzmitry Malyshau be7fae486d Bug 1609175 - WebGPU bind groups and compute pipelines r=jgilbert,webidl,smaug,bzbarsky
Adds support for bind groups and compute pipelines
The end goal of this PR is to run the compute example.

Differential Revision: https://phabricator.services.mozilla.com/D60746

--HG--
extra : moz-landing-system : lando
2020-01-24 16:27:09 +00:00
Noemi Erli 835cec6cf9 Backed out changeset 136b3044f6a6 (bug 1609175) for causing build bustages in WebGPUChild.cpp CLOSED TREE 2020-01-24 17:20:31 +02:00
Dzmitry Malyshau 73eff15f2c Bug 1609175 - WebGPU bind groups and compute pipelines r=jgilbert,webidl,smaug,bzbarsky
Adds support for bind groups and compute pipelines
The end goal of this PR is to run the compute example.

Differential Revision: https://phabricator.services.mozilla.com/D60746

--HG--
extra : moz-landing-system : lando
2020-01-24 05:05:34 +00:00
Dzmitry Malyshau df4fc33667 Bug 1596128 - WebGPU compute passes r=jgilbert,webidl,bzbarsky
Update third party dependencies
WebGPU command encoder creation
WebGPU CommandBuffer creation and submission
WebGPU Compute pass recording

Differential Revision: https://phabricator.services.mozilla.com/D59896

--HG--
rename : gfx/wgpu/wgpu-core/src/device.rs => gfx/wgpu/wgpu-core/src/device/mod.rs
extra : moz-landing-system : lando
2020-01-22 07:31:51 +00:00
Jeff Gilbert dfde69a462 Bug 1585683 - Add mochitest-webgpu jobs, add subsuite = webgpu. r=jmaher,kvark
Differential Revision: https://phabricator.services.mozilla.com/D58892

--HG--
extra : moz-landing-system : lando
2020-01-07 22:42:07 +00:00
Bogdan Tara c0e1f5a876 Backed out changeset 33ccfb45bb3f (bug 1585683) on jgilbert's request 2020-01-07 23:21:45 +02:00
Jeff Gilbert 4d2067b9ca Bug 1585683 - Add mochitest-webgpu jobs, add subsuite = webgpu. r=jmaher,kvark
Differential Revision: https://phabricator.services.mozilla.com/D58892

--HG--
extra : moz-landing-system : lando
2020-01-07 20:58:37 +00:00
Nathan Froyd 2cc18dcb1f Bug 1604550 - use GeneratedFile template in dom/webgpu/; r=kvark
The template is slightly nicer and slighty more modern.

Differential Revision: https://phabricator.services.mozilla.com/D57486

--HG--
extra : moz-landing-system : lando
2019-12-17 17:39:29 +00:00
Dzmitry Malyshau dc8a21948c Bug 1602880 - Rename dom.webgpu.enable pref and restrict the CTS r=jgilbert,bzbarsky
addresses 1600364

Differential Revision: https://phabricator.services.mozilla.com/D56603

--HG--
extra : moz-landing-system : lando
2019-12-12 03:09:30 +00:00
Dzmitry Malyshau 69c53e713c Bug 1600929 - WebGPU buffer creation and mapping r=jgilbert,bzbarsky
This is the basic functionality needed to work with buffers.
What it doesn't have:
  - ability to re-map the buffer for writing
  - async writing map
  - most of the validation

Differential Revision: https://phabricator.services.mozilla.com/D55656

--HG--
extra : moz-landing-system : lando
2019-12-10 17:07:18 +00:00
Razvan Maries c59654e8be Backed out changeset 2968e233f172 (bug 1600929) for hazzard bustages on Device.cpp. CLOSED TREE 2019-12-10 01:26:09 +02:00
Dzmitry Malyshau b3d867ca6e Bug 1600929 - WebGPU buffer creation and mapping r=jgilbert,bzbarsky
This is the basic functionality needed to work with buffers.
What it doesn't have:
  - ability to re-map the buffer for writing
  - async writing map
  - most of the validation

Differential Revision: https://phabricator.services.mozilla.com/D55656

--HG--
extra : moz-landing-system : lando
2019-12-09 21:43:13 +00:00
Emilio Cobos Álvarez b84e83a317 Bug 1600454 - Fix build with --disable-accessibility. r=MarcoZ
The change to moz.build unveiled a couple unified build issues that I also had
to fix.

Depends on D55365

Differential Revision: https://phabricator.services.mozilla.com/D55366

--HG--
extra : moz-landing-system : lando
2019-12-02 06:25:40 +00:00
Sylvestre Ledru 8d2f0d1b1f Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D54686

--HG--
extra : moz-landing-system : lando
2019-11-26 14:35:02 +00:00
Dzmitry Malyshau 8524264806 Bug 1594182 - Move wgpu stuff under gfx/wgpu r=jgilbert,remote-protocol-reviewers
This change moves wgpu mirror into a dedicated folder and also
registers it in a few metadata files for proper treating.

Differential Revision: https://phabricator.services.mozilla.com/D51921

--HG--
rename : dom/webgpu/wgpu-native/Cargo.toml => gfx/wgpu/wgpu-native/Cargo.toml
rename : dom/webgpu/wgpu-remote/cbindgen.toml => gfx/wgpu/wgpu-native/cbindgen.toml
rename : dom/webgpu/wgpu-native/src/binding_model.rs => gfx/wgpu/wgpu-native/src/binding_model.rs
rename : dom/webgpu/wgpu-native/src/command/allocator.rs => gfx/wgpu/wgpu-native/src/command/allocator.rs
rename : dom/webgpu/wgpu-native/src/command/bind.rs => gfx/wgpu/wgpu-native/src/command/bind.rs
rename : dom/webgpu/wgpu-native/src/command/compute.rs => gfx/wgpu/wgpu-native/src/command/compute.rs
rename : dom/webgpu/wgpu-native/src/command/mod.rs => gfx/wgpu/wgpu-native/src/command/mod.rs
rename : dom/webgpu/wgpu-native/src/command/render.rs => gfx/wgpu/wgpu-native/src/command/render.rs
rename : dom/webgpu/wgpu-native/src/command/transfer.rs => gfx/wgpu/wgpu-native/src/command/transfer.rs
rename : dom/webgpu/wgpu-native/src/conv.rs => gfx/wgpu/wgpu-native/src/conv.rs
rename : dom/webgpu/wgpu-native/src/device.rs => gfx/wgpu/wgpu-native/src/device.rs
rename : dom/webgpu/wgpu-native/src/hub.rs => gfx/wgpu/wgpu-native/src/hub.rs
rename : dom/webgpu/wgpu-native/src/id.rs => gfx/wgpu/wgpu-native/src/id.rs
rename : dom/webgpu/wgpu-native/src/instance.rs => gfx/wgpu/wgpu-native/src/instance.rs
rename : dom/webgpu/wgpu-native/src/lib.rs => gfx/wgpu/wgpu-native/src/lib.rs
rename : dom/webgpu/wgpu-native/src/pipeline.rs => gfx/wgpu/wgpu-native/src/pipeline.rs
rename : dom/webgpu/wgpu-native/src/resource.rs => gfx/wgpu/wgpu-native/src/resource.rs
rename : dom/webgpu/wgpu-native/src/swap_chain.rs => gfx/wgpu/wgpu-native/src/swap_chain.rs
rename : dom/webgpu/wgpu-native/src/track/buffer.rs => gfx/wgpu/wgpu-native/src/track/buffer.rs
rename : dom/webgpu/wgpu-native/src/track/mod.rs => gfx/wgpu/wgpu-native/src/track/mod.rs
rename : dom/webgpu/wgpu-native/src/track/range.rs => gfx/wgpu/wgpu-native/src/track/range.rs
rename : dom/webgpu/wgpu-native/src/track/texture.rs => gfx/wgpu/wgpu-native/src/track/texture.rs
rename : dom/webgpu/wgpu-remote/Cargo.toml => gfx/wgpu/wgpu-remote/Cargo.toml
rename : dom/webgpu/wgpu-remote/cbindgen.toml => gfx/wgpu/wgpu-remote/cbindgen.toml
rename : dom/webgpu/wgpu-remote/src/lib.rs => gfx/wgpu/wgpu-remote/src/lib.rs
rename : dom/webgpu/wgpu-remote/src/server.rs => gfx/wgpu/wgpu-remote/src/server.rs
extra : moz-landing-system : lando
2019-11-15 00:29:53 +00:00
Dzmitry Malyshau 1554e99669 Bug 1596245 - Fix WebGPU device destruction r=jgilbert
Differential Revision: https://phabricator.services.mozilla.com/D53081

--HG--
extra : moz-landing-system : lando
2019-11-14 21:22:56 +00:00
Dzmitry Malyshau 1c5b01ed15 Bug 1575008 - WebGPU implementation basis r=baku,bzbarsky
This change vendors `wgpu` library in-tree and hooks up the initialization bits. It implements adapter and device initialization and adds a simple test.
Complementary ecosystem tracker - https://github.com/gfx-rs/wgpu/issues/374

Current status:
  - [x] General
    - [x] figure out the IPC story
    - [ ] move wgpu crates into a dedicated folder (postponed as https://bugzilla.mozilla.org/show_bug.cgi?id=1594182)
    - [x] neko rebasing disaster
  - [x] Linux
    - [x] avoid depending on spirv_cross
  - [x] macOS
    - [x] due to cross-compiling shaders
    - [x] need the dependency update
    - [x] stop using gcc
    - [x] unexpected SSL header collision - https://phabricator.services.mozilla.com/D51148
    - [x] undefined Metal symbols
    - [x] missing webrtc headers for IPDL magic - https://phabricator.services.mozilla.com/D51558
    - [x] spirv-cross linking failure in ASAN - https://phabricator.services.mozilla.com/D52688
  - [x] Windows
    - [x] due to "ipc-channel" not supporting Windows yet
    - [x] due to some exceptional stuff
    - [x] undefined symbol: `D3D12CreateDevice`
    - [x] d3d12.dll is not found, dxgi1_4 doesn't present
    - [x] d3d11.dll and dxgi.dll need to be explicitly loaded on win32 mingw
    - [x] libbacktrace fails to link on win32 mingw
    - [x] cc mislinking C++ standard library
  - [x] Android
    - [x] spirv-cross fails to build due to exceptions

Update-1:
We decided to go with IPDL mechanism instead of Rust based ipc-channel (or any alternatives), which unblocks Windows build.

Update-2:
It appears that WebGPUThreading isn't needed any more as the child thread (and its event loop) is now managed by IPDL infrastructure. This PR removes it 🎉 .

Update-3:
InstanceProvider is also removed.

Update-4:
All set, the try is green, waiting for dependent changes to go in.

Differential Revision: https://phabricator.services.mozilla.com/D49458

--HG--
rename : dom/webgpu/Adapter.cpp => dom/webgpu/ipc/WebGPUTypes.h
rename : third_party/rust/blake2b_simd/Cargo.toml => third_party/rust/ash/Cargo.toml
rename : third_party/rust/uluru/Cargo.toml => third_party/rust/atom/Cargo.toml
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/cocoa/Cargo.toml
rename : third_party/rust/crossbeam-deque/LICENSE-MIT => third_party/rust/cocoa/LICENSE-MIT
rename : third_party/rust/core-graphics/src/lib.rs => third_party/rust/cocoa/src/lib.rs
rename : third_party/rust/uluru/Cargo.toml => third_party/rust/colorful/Cargo.toml
rename : third_party/rust/uluru/Cargo.toml => third_party/rust/copyless/Cargo.toml
rename : third_party/rust/crossbeam-utils/.cargo-checksum.json => third_party/rust/crossbeam-utils-0.6.5/.cargo-checksum.json
rename : third_party/rust/crossbeam-utils/CHANGELOG.md => third_party/rust/crossbeam-utils-0.6.5/CHANGELOG.md
rename : third_party/rust/crossbeam-utils/Cargo.toml => third_party/rust/crossbeam-utils-0.6.5/Cargo.toml
rename : third_party/rust/crossbeam-deque/LICENSE-MIT => third_party/rust/crossbeam-utils-0.6.5/LICENSE-MIT
rename : third_party/rust/crossbeam-utils/README.md => third_party/rust/crossbeam-utils-0.6.5/README.md
rename : third_party/rust/crossbeam-utils/benches/atomic_cell.rs => third_party/rust/crossbeam-utils-0.6.5/benches/atomic_cell.rs
rename : third_party/rust/crossbeam-utils/src/atomic/atomic_cell.rs => third_party/rust/crossbeam-utils-0.6.5/src/atomic/atomic_cell.rs
rename : third_party/rust/crossbeam-utils/src/atomic/mod.rs => third_party/rust/crossbeam-utils-0.6.5/src/atomic/mod.rs
rename : third_party/rust/crossbeam-utils/src/backoff.rs => third_party/rust/crossbeam-utils-0.6.5/src/backoff.rs
rename : third_party/rust/crossbeam-utils/src/cache_padded.rs => third_party/rust/crossbeam-utils-0.6.5/src/cache_padded.rs
rename : third_party/rust/crossbeam-utils/src/lib.rs => third_party/rust/crossbeam-utils-0.6.5/src/lib.rs
rename : third_party/rust/crossbeam-utils/src/thread.rs => third_party/rust/crossbeam-utils-0.6.5/src/thread.rs
rename : third_party/rust/crossbeam-utils/tests/atomic_cell.rs => third_party/rust/crossbeam-utils-0.6.5/tests/atomic_cell.rs
rename : third_party/rust/crossbeam-utils/tests/parker.rs => third_party/rust/crossbeam-utils-0.6.5/tests/parker.rs
rename : third_party/rust/crossbeam-utils/tests/sharded_lock.rs => third_party/rust/crossbeam-utils-0.6.5/tests/sharded_lock.rs
rename : third_party/rust/crossbeam-utils/tests/thread.rs => third_party/rust/crossbeam-utils-0.6.5/tests/thread.rs
rename : third_party/rust/blake2b_simd/Cargo.toml => third_party/rust/gfx-auxil/Cargo.toml
rename : third_party/rust/blake2b_simd/Cargo.toml => third_party/rust/gfx-backend-empty/Cargo.toml
rename : third_party/rust/blake2b_simd/Cargo.toml => third_party/rust/hibitset/Cargo.toml
rename : third_party/rust/crossbeam-deque/LICENSE-MIT => third_party/rust/hibitset/LICENSE-MIT
rename : third_party/rust/crossbeam-deque/LICENSE-MIT => third_party/rust/metal/LICENSE-MIT
rename : third_party/rust/uluru/Cargo.toml => third_party/rust/range-alloc/Cargo.toml
rename : third_party/rust/blake2b_simd/Cargo.toml => third_party/rust/raw-window-handle/Cargo.toml
rename : third_party/rust/blake2b_simd/Cargo.toml => third_party/rust/relevant/Cargo.toml
rename : third_party/rust/crossbeam-deque/LICENSE-MIT => third_party/rust/relevant/LICENSE-MIT
rename : third_party/rust/blake2b_simd/Cargo.toml => third_party/rust/rendy-descriptor/Cargo.toml
rename : third_party/rust/uluru/Cargo.toml => third_party/rust/shared_library/Cargo.toml
rename : third_party/rust/crossbeam-deque/LICENSE-MIT => third_party/rust/shared_library/LICENSE-MIT
rename : third_party/rust/blake2b_simd/Cargo.toml => third_party/rust/storage-map/Cargo.toml
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/x11/Cargo.toml
extra : moz-landing-system : lando
2019-11-14 04:59:56 +00:00
Gurzau Raul 1e2ebb9f42 Backed out 2 changesets (bug 1590167, bug 1575008) for lints failures at mapped_hyph.h on a CLOSED TREE.
Backed out changeset 4d16c3d62cfc (bug 1575008)
Backed out changeset 97b8c3759aae (bug 1590167)
2019-11-13 21:38:23 +02:00
Dzmitry Malyshau b074f1cf4e Bug 1575008 - WebGPU implementation basis r=baku,bzbarsky
This change vendors `wgpu` library in-tree and hooks up the initialization bits. It implements adapter and device initialization and adds a simple test.
Complementary ecosystem tracker - https://github.com/gfx-rs/wgpu/issues/374

Current status:
  - [x] Architecture
    - [x] figure out the IPC story
    - [ ] move wgpu crates into a dedicated folder (postponed as https://bugzilla.mozilla.org/show_bug.cgi?id=1594182)
  - [x] Linux
    - [x] avoid depending on spirv_cross
  - [x] macOS
    - [x] due to cross-compiling shaders
    - [x] need the dependency update
    - [x] stop using gcc
    - [x] unexpected SSL header collision - https://phabricator.services.mozilla.com/D51148
    - [x] undefined Metal symbols
    - [x] missing webrtc headers for IPDL magic - https://phabricator.services.mozilla.com/D51558
    - [x] spirv-cross linking failure in ASAN - https://phabricator.services.mozilla.com/D52688
  - [x] Windows
    - [x] due to "ipc-channel" not supporting Windows yet
    - [x] due to some exceptional stuff
    - [x] undefined symbol: `D3D12CreateDevice`
    - [x] d3d12.dll is not found, dxgi1_4 doesn't present
    - [x] d3d11.dll and dxgi.dll need to be explicitly loaded on win32 mingw
    - [x] libbacktrace fails to link on win32 mingw
    - [x] cc mislinking C++ standard library
  - [x] Android
    - [x] spirv-cross fails to build due to exceptions

Update-1:
We decided to go with IPDL mechanism instead of Rust based ipc-channel (or any alternatives), which unblocks Windows build.

Update-2:
It appears that WebGPUThreading isn't needed any more as the child thread (and its event loop) is now managed by IPDL infrastructure. This PR removes it 🎉 .

Update-3:
InstanceProvider is also removed.

Update-4:
All set, the try is green, waiting for dependent changes to go in.

Differential Revision: https://phabricator.services.mozilla.com/D49458

--HG--
rename : dom/webgpu/Adapter.cpp => dom/webgpu/ipc/WebGPUTypes.h
rename : third_party/rust/blake2b_simd/Cargo.toml => third_party/rust/ash/Cargo.toml
rename : third_party/rust/uluru/Cargo.toml => third_party/rust/atom/Cargo.toml
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/cocoa/Cargo.toml
rename : third_party/rust/crossbeam-deque/LICENSE-MIT => third_party/rust/cocoa/LICENSE-MIT
rename : third_party/rust/core-graphics/src/lib.rs => third_party/rust/cocoa/src/lib.rs
rename : third_party/rust/uluru/Cargo.toml => third_party/rust/colorful/Cargo.toml
rename : third_party/rust/uluru/Cargo.toml => third_party/rust/copyless/Cargo.toml
rename : third_party/rust/crossbeam-utils/.cargo-checksum.json => third_party/rust/crossbeam-utils-0.6.5/.cargo-checksum.json
rename : third_party/rust/crossbeam-utils/CHANGELOG.md => third_party/rust/crossbeam-utils-0.6.5/CHANGELOG.md
rename : third_party/rust/crossbeam-utils/Cargo.toml => third_party/rust/crossbeam-utils-0.6.5/Cargo.toml
rename : third_party/rust/crossbeam-deque/LICENSE-MIT => third_party/rust/crossbeam-utils-0.6.5/LICENSE-MIT
rename : third_party/rust/crossbeam-utils/README.md => third_party/rust/crossbeam-utils-0.6.5/README.md
rename : third_party/rust/crossbeam-utils/benches/atomic_cell.rs => third_party/rust/crossbeam-utils-0.6.5/benches/atomic_cell.rs
rename : third_party/rust/crossbeam-utils/src/atomic/atomic_cell.rs => third_party/rust/crossbeam-utils-0.6.5/src/atomic/atomic_cell.rs
rename : third_party/rust/crossbeam-utils/src/atomic/mod.rs => third_party/rust/crossbeam-utils-0.6.5/src/atomic/mod.rs
rename : third_party/rust/crossbeam-utils/src/backoff.rs => third_party/rust/crossbeam-utils-0.6.5/src/backoff.rs
rename : third_party/rust/crossbeam-utils/src/cache_padded.rs => third_party/rust/crossbeam-utils-0.6.5/src/cache_padded.rs
rename : third_party/rust/crossbeam-utils/src/lib.rs => third_party/rust/crossbeam-utils-0.6.5/src/lib.rs
rename : third_party/rust/crossbeam-utils/src/thread.rs => third_party/rust/crossbeam-utils-0.6.5/src/thread.rs
rename : third_party/rust/crossbeam-utils/tests/atomic_cell.rs => third_party/rust/crossbeam-utils-0.6.5/tests/atomic_cell.rs
rename : third_party/rust/crossbeam-utils/tests/parker.rs => third_party/rust/crossbeam-utils-0.6.5/tests/parker.rs
rename : third_party/rust/crossbeam-utils/tests/sharded_lock.rs => third_party/rust/crossbeam-utils-0.6.5/tests/sharded_lock.rs
rename : third_party/rust/crossbeam-utils/tests/thread.rs => third_party/rust/crossbeam-utils-0.6.5/tests/thread.rs
rename : third_party/rust/blake2b_simd/Cargo.toml => third_party/rust/gfx-auxil/Cargo.toml
rename : third_party/rust/blake2b_simd/Cargo.toml => third_party/rust/gfx-backend-empty/Cargo.toml
rename : third_party/rust/blake2b_simd/Cargo.toml => third_party/rust/hibitset/Cargo.toml
rename : third_party/rust/crossbeam-deque/LICENSE-MIT => third_party/rust/hibitset/LICENSE-MIT
rename : third_party/rust/crossbeam-deque/LICENSE-MIT => third_party/rust/metal/LICENSE-MIT
rename : third_party/rust/uluru/Cargo.toml => third_party/rust/range-alloc/Cargo.toml
rename : third_party/rust/blake2b_simd/Cargo.toml => third_party/rust/raw-window-handle/Cargo.toml
rename : third_party/rust/blake2b_simd/Cargo.toml => third_party/rust/relevant/Cargo.toml
rename : third_party/rust/crossbeam-deque/LICENSE-MIT => third_party/rust/relevant/LICENSE-MIT
rename : third_party/rust/blake2b_simd/Cargo.toml => third_party/rust/rendy-descriptor/Cargo.toml
rename : third_party/rust/uluru/Cargo.toml => third_party/rust/shared_library/Cargo.toml
rename : third_party/rust/crossbeam-deque/LICENSE-MIT => third_party/rust/shared_library/LICENSE-MIT
rename : third_party/rust/blake2b_simd/Cargo.toml => third_party/rust/storage-map/Cargo.toml
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/x11/Cargo.toml
extra : moz-landing-system : lando
2019-11-13 12:48:33 +00:00
Narcis Beleuzu 45a3b83fc8 Backed out changeset cbec8a55a1bb (bug 1575008) for build bustages (Bof). CLOSED TREE
--HG--
rename : third_party/rust/arrayvec-0.4.11/build.rs => third_party/rust/arrayvec/build.rs
rename : third_party/rust/arrayvec-0.4.11/src/maybe_uninit_nodrop.rs => third_party/rust/arrayvec/src/maybe_uninit_nodrop.rs
rename : third_party/rust/arrayvec-0.4.11/src/maybe_uninit_stable.rs => third_party/rust/arrayvec/src/maybe_uninit_stable.rs
rename : third_party/rust/arrayvec-0.4.11/src/range.rs => third_party/rust/arrayvec/src/range.rs
2019-11-05 23:22:40 +02:00
Dzmitry Malyshau 9ac41ecccf Bug 1575008 - WebGPU implementation basis r=webidl,baku
This change vendors `wgpu` library in-tree and hooks up the initialization bits. It implements adapter and device initialization and adds a simple test.

Current status:
  - [x] Architecture
    - [x] figure out the IPC story
    - [ ] move wgpu crates into a dedicated folder (let's follow up with this)
  - [x] Review
    - [x] WebIDL changes by DOM peers
  - [x] Linux
    - [x] avoid depending on spirv_cross - https://github.com/gfx-rs/wgpu/pull/371
  - [x] macOS
    - [x] due to cross-compiling shaders - https://github.com/gfx-rs/gfx/pull/3047
    - [x] need the dependency update
    - [x] stop using gcc - https://github.com/SSheldon/rust-objc-exception/pull/5
    - [x] unexpected SSL header collision - https://phabricator.services.mozilla.com/D51148
    - [x] undefined Metal symbols
    - [x] missing webrtc headers for IPDL magic - https://phabricator.services.mozilla.com/D51558
  - [x] Windows
    - [x] due to "ipc-channel" not supporting Windows yet - https://github.com/servo/ipc-channel/pull/233~~
    - [x] due to some exceptional stuff - https://github.com/grovesNL/spirv_cross/issues/121
    - [x] undefined symbol: `D3D12CreateDevice`
    - [x] d3d12.dll is not found, dxgi1_4 doesn't present
    - [x] d3d11.dll and dxgi.dll need to be explicitly loaded on win32 mingw - https://github.com/gfx-rs/gfx/pull/3076
    - [x] libbacktrace fails to link on win32 mingw
    - [x] cc mislinking C++ standard library - https://github.com/alexcrichton/cc-rs/pull/455
  - [x] Android
    - [x] spirv-cross fails to build - https://github.com/KhronosGroup/SPIRV-Cross/pull/1193

Update-1:
We decided to go with IPDL mechanism instead of Rust based ipc-channel (or any alternatives), which unblocks Windows build.

Update-2:
It appears that WebGPUThreading isn't needed any more as the child thread (and its event loop) is now managed by IPDL infrastructure. This PR removes it 🎉 .

Update-3:
InstanceProvider is also removed.

Update-4:
All set, the try is green, waiting for dependent changes to go in.

Differential Revision: https://phabricator.services.mozilla.com/D49458

--HG--
rename : dom/webgpu/Adapter.cpp => dom/webgpu/ipc/WebGPUTypes.h
rename : third_party/rust/arrayvec/.cargo-checksum.json => third_party/rust/arrayvec-0.4.11/.cargo-checksum.json
rename : third_party/rust/arrayvec/Cargo.toml => third_party/rust/arrayvec-0.4.11/Cargo.toml
rename : third_party/rust/arrayvec/README.rst => third_party/rust/arrayvec-0.4.11/README.rst
rename : third_party/rust/arrayvec/benches/extend.rs => third_party/rust/arrayvec-0.4.11/benches/extend.rs
rename : third_party/rust/arrayvec/build.rs => third_party/rust/arrayvec-0.4.11/build.rs
rename : third_party/rust/arrayvec/src/array.rs => third_party/rust/arrayvec-0.4.11/src/array.rs
rename : third_party/rust/arrayvec/src/array_string.rs => third_party/rust/arrayvec-0.4.11/src/array_string.rs
rename : third_party/rust/arrayvec/src/char.rs => third_party/rust/arrayvec-0.4.11/src/char.rs
rename : third_party/rust/arrayvec/src/lib.rs => third_party/rust/arrayvec-0.4.11/src/lib.rs
rename : third_party/rust/arrayvec/src/maybe_uninit.rs => third_party/rust/arrayvec-0.4.11/src/maybe_uninit.rs
rename : third_party/rust/arrayvec/src/maybe_uninit_nodrop.rs => third_party/rust/arrayvec-0.4.11/src/maybe_uninit_nodrop.rs
rename : third_party/rust/arrayvec/src/maybe_uninit_stable.rs => third_party/rust/arrayvec-0.4.11/src/maybe_uninit_stable.rs
rename : third_party/rust/arrayvec/src/range.rs => third_party/rust/arrayvec-0.4.11/src/range.rs
rename : third_party/rust/arrayvec/tests/serde.rs => third_party/rust/arrayvec-0.4.11/tests/serde.rs
rename : third_party/rust/arrayvec/tests/tests.rs => third_party/rust/arrayvec-0.4.11/tests/tests.rs
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/atom/Cargo.toml
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/cocoa/Cargo.toml
rename : third_party/rust/core-graphics/src/lib.rs => third_party/rust/cocoa/src/lib.rs
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/colorful/Cargo.toml
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/range-alloc/Cargo.toml
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/shared_library/Cargo.toml
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/x11/Cargo.toml
extra : moz-landing-system : lando
2019-11-05 19:51:15 +00:00
Noemi Erli 207e5af698 Backed out changeset ef59d327a1a4 (bug 1575008) for causing build bustages CLOSED TREE
--HG--
rename : third_party/rust/arrayvec-0.4.11/build.rs => third_party/rust/arrayvec/build.rs
rename : third_party/rust/arrayvec-0.4.11/src/maybe_uninit_nodrop.rs => third_party/rust/arrayvec/src/maybe_uninit_nodrop.rs
rename : third_party/rust/arrayvec-0.4.11/src/maybe_uninit_stable.rs => third_party/rust/arrayvec/src/maybe_uninit_stable.rs
rename : third_party/rust/arrayvec-0.4.11/src/range.rs => third_party/rust/arrayvec/src/range.rs
2019-11-05 08:19:10 +02:00
Dzmitry Malyshau 6376282a47 Bug 1575008 - WebGPU implementation basis r=webidl,baku
This change vendors `wgpu` library in-tree and hooks up the initialization bits. It implements adapter and device initialization and adds a simple test.

Current status:
  - [x] Architecture
    - [x] figure out the IPC story
    - [ ] move wgpu crates into a dedicated folder (let's follow up with this)
  - [x] Review
    - [x] WebIDL changes by DOM peers
  - [x] Linux
    - [x] avoid depending on spirv_cross - https://github.com/gfx-rs/wgpu/pull/371
  - [x] macOS
    - [x] due to cross-compiling shaders - https://github.com/gfx-rs/gfx/pull/3047
    - [x] need the dependency update
    - [x] stop using gcc - https://github.com/SSheldon/rust-objc-exception/pull/5
    - [x] unexpected SSL header collision - https://bugzilla.mozilla.org/show_bug.cgi?id=1592398
    - [x] undefined Metal symbols
  - [x] Windows
    - [x] due to "ipc-channel" not supporting Windows yet - https://github.com/servo/ipc-channel/pull/233~~
    - [x] due to some exceptional stuff - https://github.com/grovesNL/spirv_cross/issues/121
    - [x] undefined symbol: `D3D12CreateDevice`
    - [x] d3d12.dll is not found, dxgi1_4 doesn't present
    - [x] d3d11.dll and dxgi.dll need to be explicitly loaded on win32 mingw - https://github.com/gfx-rs/gfx/pull/3076
    - [x] libbacktrace fails to link on win32 mingw
  - [x] Android
    - [x] spirv-cross fails to build - https://github.com/KhronosGroup/SPIRV-Cross/pull/1193

Update-1:
We decided to go with IPDL mechanism instead of Rust based ipc-channel (or any alternatives), which unblocks Windows build.

Update-2:
It appears that WebGPUThreading isn't needed any more as the child thread (and its event loop) is now managed by IPDL infrastructure. This PR removes it 🎉 .

Update-3:
InstanceProvider is also removed.

Update-4:
All set, the try is green, waiting for dependent changes to go in.

Differential Revision: https://phabricator.services.mozilla.com/D49458

--HG--
rename : dom/webgpu/Adapter.cpp => dom/webgpu/ipc/WebGPUTypes.h
rename : third_party/rust/arrayvec/.cargo-checksum.json => third_party/rust/arrayvec-0.4.11/.cargo-checksum.json
rename : third_party/rust/arrayvec/Cargo.toml => third_party/rust/arrayvec-0.4.11/Cargo.toml
rename : third_party/rust/arrayvec/README.rst => third_party/rust/arrayvec-0.4.11/README.rst
rename : third_party/rust/arrayvec/benches/extend.rs => third_party/rust/arrayvec-0.4.11/benches/extend.rs
rename : third_party/rust/arrayvec/build.rs => third_party/rust/arrayvec-0.4.11/build.rs
rename : third_party/rust/arrayvec/src/array.rs => third_party/rust/arrayvec-0.4.11/src/array.rs
rename : third_party/rust/arrayvec/src/array_string.rs => third_party/rust/arrayvec-0.4.11/src/array_string.rs
rename : third_party/rust/arrayvec/src/char.rs => third_party/rust/arrayvec-0.4.11/src/char.rs
rename : third_party/rust/arrayvec/src/lib.rs => third_party/rust/arrayvec-0.4.11/src/lib.rs
rename : third_party/rust/arrayvec/src/maybe_uninit.rs => third_party/rust/arrayvec-0.4.11/src/maybe_uninit.rs
rename : third_party/rust/arrayvec/src/maybe_uninit_nodrop.rs => third_party/rust/arrayvec-0.4.11/src/maybe_uninit_nodrop.rs
rename : third_party/rust/arrayvec/src/maybe_uninit_stable.rs => third_party/rust/arrayvec-0.4.11/src/maybe_uninit_stable.rs
rename : third_party/rust/arrayvec/src/range.rs => third_party/rust/arrayvec-0.4.11/src/range.rs
rename : third_party/rust/arrayvec/tests/serde.rs => third_party/rust/arrayvec-0.4.11/tests/serde.rs
rename : third_party/rust/arrayvec/tests/tests.rs => third_party/rust/arrayvec-0.4.11/tests/tests.rs
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/atom/Cargo.toml
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/cocoa/Cargo.toml
rename : third_party/rust/core-graphics/src/lib.rs => third_party/rust/cocoa/src/lib.rs
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/colorful/Cargo.toml
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/range-alloc/Cargo.toml
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/shared_library/Cargo.toml
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/x11/Cargo.toml
extra : moz-landing-system : lando
2019-11-05 05:08:13 +00:00
Csoregi Natalia 1e1d192ff3 Backed out changeset 9c05fa3c0fcc (bug 1575008) for bustages on WebrtcIPCTraits.h. CLOSED TREE
--HG--
rename : third_party/rust/arrayvec-0.4.11/build.rs => third_party/rust/arrayvec/build.rs
rename : third_party/rust/arrayvec-0.4.11/src/maybe_uninit_nodrop.rs => third_party/rust/arrayvec/src/maybe_uninit_nodrop.rs
rename : third_party/rust/arrayvec-0.4.11/src/maybe_uninit_stable.rs => third_party/rust/arrayvec/src/maybe_uninit_stable.rs
rename : third_party/rust/arrayvec-0.4.11/src/range.rs => third_party/rust/arrayvec/src/range.rs
2019-11-05 06:44:15 +02:00
Dzmitry Malyshau 5f694cac96 Bug 1575008 - WebGPU implementation basis r=webidl,baku
This change vendors `wgpu` library in-tree and hooks up the initialization bits. It implements adapter and device initialization and adds a simple test.

Current status:
  - [x] Architecture
    - [x] figure out the IPC story
    - [ ] move wgpu crates into a dedicated folder (let's follow up with this)
  - [x] Review
    - [x] WebIDL changes by DOM peers
  - [x] Linux
    - [x] avoid depending on spirv_cross - https://github.com/gfx-rs/wgpu/pull/371
  - [x] macOS
    - [x] due to cross-compiling shaders - https://github.com/gfx-rs/gfx/pull/3047
    - [x] need the dependency update
    - [x] stop using gcc - https://github.com/SSheldon/rust-objc-exception/pull/5
    - [x] unexpected SSL header collision - https://bugzilla.mozilla.org/show_bug.cgi?id=1592398
    - [x] undefined Metal symbols
  - [x] Windows
    - [x] due to "ipc-channel" not supporting Windows yet - https://github.com/servo/ipc-channel/pull/233~~
    - [x] due to some exceptional stuff - https://github.com/grovesNL/spirv_cross/issues/121
    - [x] undefined symbol: `D3D12CreateDevice`
    - [x] d3d12.dll is not found, dxgi1_4 doesn't present
    - [x] d3d11.dll and dxgi.dll need to be explicitly loaded on win32 mingw - https://github.com/gfx-rs/gfx/pull/3076
    - [x] libbacktrace fails to link on win32 mingw
  - [x] Android
    - [x] spirv-cross fails to build - https://github.com/KhronosGroup/SPIRV-Cross/pull/1193

Update-1:
We decided to go with IPDL mechanism instead of Rust based ipc-channel (or any alternatives), which unblocks Windows build.

Update-2:
It appears that WebGPUThreading isn't needed any more as the child thread (and its event loop) is now managed by IPDL infrastructure. This PR removes it 🎉 .

Update-3:
InstanceProvider is also removed.

Update-4:
All set, the try is green, waiting for dependent changes to go in.

Differential Revision: https://phabricator.services.mozilla.com/D49458

--HG--
rename : dom/webgpu/Adapter.cpp => dom/webgpu/ipc/WebGPUTypes.h
rename : third_party/rust/arrayvec/.cargo-checksum.json => third_party/rust/arrayvec-0.4.11/.cargo-checksum.json
rename : third_party/rust/arrayvec/Cargo.toml => third_party/rust/arrayvec-0.4.11/Cargo.toml
rename : third_party/rust/arrayvec/README.rst => third_party/rust/arrayvec-0.4.11/README.rst
rename : third_party/rust/arrayvec/benches/extend.rs => third_party/rust/arrayvec-0.4.11/benches/extend.rs
rename : third_party/rust/arrayvec/build.rs => third_party/rust/arrayvec-0.4.11/build.rs
rename : third_party/rust/arrayvec/src/array.rs => third_party/rust/arrayvec-0.4.11/src/array.rs
rename : third_party/rust/arrayvec/src/array_string.rs => third_party/rust/arrayvec-0.4.11/src/array_string.rs
rename : third_party/rust/arrayvec/src/char.rs => third_party/rust/arrayvec-0.4.11/src/char.rs
rename : third_party/rust/arrayvec/src/lib.rs => third_party/rust/arrayvec-0.4.11/src/lib.rs
rename : third_party/rust/arrayvec/src/maybe_uninit.rs => third_party/rust/arrayvec-0.4.11/src/maybe_uninit.rs
rename : third_party/rust/arrayvec/src/maybe_uninit_nodrop.rs => third_party/rust/arrayvec-0.4.11/src/maybe_uninit_nodrop.rs
rename : third_party/rust/arrayvec/src/maybe_uninit_stable.rs => third_party/rust/arrayvec-0.4.11/src/maybe_uninit_stable.rs
rename : third_party/rust/arrayvec/src/range.rs => third_party/rust/arrayvec-0.4.11/src/range.rs
rename : third_party/rust/arrayvec/tests/serde.rs => third_party/rust/arrayvec-0.4.11/tests/serde.rs
rename : third_party/rust/arrayvec/tests/tests.rs => third_party/rust/arrayvec-0.4.11/tests/tests.rs
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/atom/Cargo.toml
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/cocoa/Cargo.toml
rename : third_party/rust/core-graphics/src/lib.rs => third_party/rust/cocoa/src/lib.rs
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/colorful/Cargo.toml
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/range-alloc/Cargo.toml
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/shared_library/Cargo.toml
rename : third_party/rust/core-graphics/Cargo.toml => third_party/rust/x11/Cargo.toml
extra : moz-landing-system : lando
2019-11-05 04:09:23 +00:00
Dzmitry Malyshau 727e68fef6 Bug 1586396 - Formatting fixes in WebGPUThreading
follow-up to D48229

Differential Revision: https://phabricator.services.mozilla.com/D49367

--HG--
extra : rebase_source : a8d4a2c6a797c8b930edc61f87768731a5fba9ae
extra : source : 71d5a7f29d054c17bd35868be6463353626a3869
2019-10-16 02:53:07 +00:00
Cosmin Sabou 76d4c77ef9 Backed out changeset 71d5a7f29d05 (bug 1586396) for breaking the wpts. CLOSED TREE 2019-10-16 08:12:32 +03:00
Dzmitry Malyshau e3328f020c Bug 1586396 - Formatting fixes in WebGPUThreading
follow-up to D48229

Differential Revision: https://phabricator.services.mozilla.com/D49367

--HG--
extra : moz-landing-system : lando
2019-10-16 02:53:07 +00:00
Dzmitry Malyshau f072f15267 Bug 1586396 - Add WebGPUThreading mock r=jgilbert
Differential Revision: https://phabricator.services.mozilla.com/D48229

--HG--
extra : moz-landing-system : lando
2019-10-15 21:57:37 +00:00
Dzmitry Malyshau b91906eeac Bug 1581710 - Update WebGPU IDL bindings r=jgilbert,bzbarsky
This mostly updates the bindings to the current state.
No actual logic backing them yet.

*Note*: the IDL does *not* need to be checked for matching the upstream spec precisely at this stage. The upstream is evolving, we just need to update in order to start integrating the implementation. What needs to be checked is - how C++ represents the IDL, esp with regards to derived classes, events, and hierarchies.

The trickiest points, arguably, are:
  - WebGPU -> GPU prefix change
  - the goop for interfaces that are not final

Differential Revision: https://phabricator.services.mozilla.com/D46166

--HG--
rename : dom/webgpu/InputState.cpp => dom/webgpu/DeviceLostInfo.cpp
rename : dom/webgpu/Fence.h => dom/webgpu/DeviceLostInfo.h
rename : dom/webgpu/BlendState.cpp => dom/webgpu/OutOfMemoryError.cpp
rename : dom/webgpu/LogEntry.h => dom/webgpu/OutOfMemoryError.h
rename : dom/webgpu/BindGroup.h => dom/webgpu/ProgrammablePassEncoder.cpp
rename : dom/webgpu/BlendState.cpp => dom/webgpu/RenderBundle.cpp
rename : dom/webgpu/BlendState.h => dom/webgpu/RenderBundle.h
rename : dom/webgpu/AttachmentState.cpp => dom/webgpu/ValidationError.cpp
rename : dom/webgpu/AttachmentState.h => dom/webgpu/ValidationError.h
extra : moz-landing-system : lando
2019-10-02 16:46:03 +00:00
Brindusan Cristian 8416452282 Backed out changeset 1ca9b7056c58 (bug 1581710) for mochitest failures at test_enabled.html. CLOSED TREE
--HG--
rename : dom/webgpu/ValidationError.cpp => dom/webgpu/AttachmentState.cpp
rename : dom/webgpu/ValidationError.h => dom/webgpu/AttachmentState.h
rename : dom/webgpu/RenderBundle.cpp => dom/webgpu/BlendState.cpp
rename : dom/webgpu/RenderBundle.h => dom/webgpu/BlendState.h
rename : dom/webgpu/DeviceLostInfo.cpp => dom/webgpu/InputState.cpp
rename : dom/webgpu/OutOfMemoryError.h => dom/webgpu/LogEntry.h
2019-10-02 06:04:25 +03:00
Dzmitry Malyshau 068927599a Bug 1581710 - Update WebGPU IDL bindings r=jgilbert,bzbarsky
This mostly updates the bindings to the current state.
No actual logic backing them yet.

*Note*: the IDL does *not* need to be checked for matching the upstream spec precisely at this stage. The upstream is evolving, we just need to update in order to start integrating the implementation. What needs to be checked is - how C++ represents the IDL, esp with regards to derived classes, events, and hierarchies.

The trickiest points, arguably, are:
  - WebGPU -> GPU prefix change
  - the goop for interfaces that are not final

Differential Revision: https://phabricator.services.mozilla.com/D46166

--HG--
rename : dom/webgpu/InputState.cpp => dom/webgpu/DeviceLostInfo.cpp
rename : dom/webgpu/Fence.h => dom/webgpu/DeviceLostInfo.h
rename : dom/webgpu/BlendState.cpp => dom/webgpu/OutOfMemoryError.cpp
rename : dom/webgpu/LogEntry.h => dom/webgpu/OutOfMemoryError.h
rename : dom/webgpu/BindGroup.h => dom/webgpu/ProgrammablePassEncoder.cpp
rename : dom/webgpu/BlendState.cpp => dom/webgpu/RenderBundle.cpp
rename : dom/webgpu/BlendState.h => dom/webgpu/RenderBundle.h
rename : dom/webgpu/AttachmentState.cpp => dom/webgpu/ValidationError.cpp
rename : dom/webgpu/AttachmentState.h => dom/webgpu/ValidationError.h
extra : moz-landing-system : lando
2019-10-02 01:42:07 +00:00
Mark Banner dba6983e75 Bug 1415265 - Remove now unnecessary .eslintrc.js files or entries. r=mossop
Differential Revision: https://phabricator.services.mozilla.com/D23850

--HG--
extra : moz-landing-system : lando
2019-03-28 09:38:14 +00:00
Ryan Hunt 00e98538aa Bug 1523969 part 6 - Move method definition inline comments to new line in 'dom/'. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D21106

--HG--
extra : rebase_source : ea3f51c2c11247114deccbc86e90fb02b8a97257
2019-02-25 16:05:29 -06:00
Mark Banner 8c00ef3f30 Bug 1512052 - Add more .eslintrc.js files for test directories. r=mossop
Differential Revision: https://phabricator.services.mozilla.com/D13746

--HG--
extra : moz-landing-system : lando
2018-12-11 13:15:08 +00:00
Ciure Andrei ed617be144 Backed out 2 changesets (bug 1512052)for causing build bustages CLOSED TREE
Backed out changeset 4773a3f46c22 (bug 1512052)
Backed out changeset 2f48c5afbe57 (bug 1512052)

--HG--
rename : browser/components/attribution/test/xpcshell/.eslintrc.js => browser/components/attribution/test/.eslintrc.js
2018-12-05 05:47:39 +02:00
Mark Banner 8256078237 Bug 1512052 - Add more .eslintrc.js files for test directories. r=mossop
Depends on D13745

Differential Revision: https://phabricator.services.mozilla.com/D13746

--HG--
extra : moz-landing-system : lando
2018-12-04 22:27:35 +00:00
Tooru Fujisawa 7983faeb5d Bug 1511393 - Use c-basic-offset: 2 in Emacs mode line for C/C++ code. r=nbp 2018-12-01 04:52:05 +09:00
Sylvestre Ledru 265e672179 Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
# ignore-this-changeset

--HG--
extra : amend_source : 4d301d3b0b8711c4692392aa76088ba7fd7d1022
2018-11-30 11:46:48 +01:00
Jeff Gilbert a574f2ae1f Bug 1469376 - Initial stubs for WebGPU sketch API. - r=kvark,qdot
MozReview-Commit-ID: 3MZLQDNpHBk

--HG--
extra : rebase_source : 4495aae52f283286ecafcc3217811d306097b9b6
2018-06-13 10:43:48 -07:00