Commit Graph

3255 Commits

Author SHA1 Message Date
Austin Eng 5ad5557667 Remove special-casing of device reference/release in the wire
The wire's device is externally owned so reference/release were no-ops.
To unify the code paths, remove the special casing and instead
take an extra ref on the device the wire server is created with. This
is functionally equivalent and will allow both the current wire code,
and the incoming change to allow multiple device/adapter creation to
both work.

This CL also makes it possible for the client to destroy the device
before child objects.
A follow-up CL will mitigate this on the server side.

Bug: dawn:384
Change-Id: Ic5427074469012dccf8689ec95a848e6ba2c1fc2
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/37001
Commit-Queue: Austin Eng <enga@chromium.org>
Reviewed-by: Jiawei Shao <jiawei.shao@intel.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-01-13 19:23:48 +00:00
Austin Eng f0d7cc4f5a dawn_wire: Make all objects owned by the client
This removes the logic where the Client owns the Device and the
Device owns all other objects. Ownership should be tracked in
dawn_native either with refcounting or validation to disallow
operations after an object's parent has been destroyed.

This simplifies the wire client code in that the client only
tracks allocated handles and does not manage parent/child lifetimes.
This is an important simplification so we can support multiple WebGPU
instances, adapters, and devices on a single wire.

Bug: dawn:384
Change-Id: I8ecc7c368130b8917202150c467b5f0e7d4b753e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/37000
Commit-Queue: Austin Eng <enga@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-01-13 18:31:47 +00:00
Austin Eng f6ef7530ab Make the Device ref the Instance
This is needed before supporting instances, adapters, and devices on
the wire so that the client cannot free the instance before the device.

In Dawn native, the developer still needs to make sure the device is not
freed before all child objects.

Bug: dawn:384
Change-Id: I863d44c6a8acecc7b8ea0cc0ac483f7a864162fd
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/37003
Commit-Queue: Austin Eng <enga@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-01-13 17:54:37 +00:00
Austin Eng 8ef94f1684 Don't forward device lost errors to the uncaptured error callback
This issue was discovered in http://crrev.com/c/2613517 where a
device lost error on page teardown was bubbling up to the Renderer's
uncaptured error callback.

Bug: chromium:1160459
Change-Id: I64b8c7779f4808d5a4b87c131aaf2e041c512bb9
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/36960
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
2021-01-13 17:53:29 +00:00
Carl Woffenden 558599fc9a Further fixes to build with with VS2019 (end2end tests)
These fix the tests so that the entire of Dawn can now be built with
VS2019. Some details:

Multiples of "error C3493: 'X' cannot be implicitly captured because no
default capture mode has been specified" in BufferTests.cpp. This
appears to be a bug in VS whereby the constexprs need capturing; the
workaround, rather than explicitly name them and change the function
signature, is to make the vars also static.

In DepthStencilSamplingTests.cpp we get "warning C4310: cast truncates
constant value" for uint8_t(256). Rather than try to silence the
warning the test was removed, since the cast will *always* result in
zero, which is also the first in the test values.

To successfully build two further third-party dependencies also require
updating:

https://dawn-review.googlesource.com/c/tint/+/37700
https://chromium-review.googlesource.com/c/angle/angle/+/2624888

Note: whilst this now builds the entire of Dawn with VS not yet all of
the build arguments are supported. Yet to investigate is turning on
optimisations (with is_official_build=true) which attempts to combine
"/INCREMENTAL" with "/OPT:REF" and fails (to be addressed next).

Bug: dawn:602
Change-Id: I37202992f16b999d5627022eeeb6b9fff0d4b60b
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/37701
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Carl Woffenden <cwoffenden@gmail.com>
2021-01-13 12:25:45 +00:00
Corentin Wallez 111ba65a5e D3D12: Use Texture::Create pattern for swapchain textures
Bug: dawn:269
Change-Id: Ia4b48126c153ddff2feefc1bf04dcc9adc783bd1
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/37421
Auto-Submit: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Rafael Cintron <rafael.cintron@microsoft.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2021-01-13 08:53:34 +00:00
Dawn Autoroller 7e4aa3d4e6 Roll Tint from 987376cd21 to 1c200cffd0 (13 revisions)
https://dawn.googlesource.com/tint.git/+log/987376cd21a8..1c200cffd051

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/tint-dawn
Please CC dsinclair@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md

Bug: None
Tbr: dsinclair@google.com
Change-Id: I5668c6719ac9b584d5d8b030df272a4ff31dda9c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/37680
Reviewed-by: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2021-01-13 05:20:44 +00:00
Mark Sibly 9f9a9785f2 Reset scissor reset before presenting in opengl
The opengl backend uses glBlitFramebuffer to present frames which
is affected by the opengl scissor rect.

Bug: dawn:616
Change-Id: I0b8c3eb7139ab22a98eeb60e3ad16678e3afad5d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/37101
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Stephen White <senorblanco@chromium.org>
Commit-Queue: Mark Sibly <marksibly@gmail.com>
2021-01-13 05:09:24 +00:00
Austin Eng 424fd82889 Update DepthStencilStateTests to use WGSL
Bug: dawn:572
Change-Id: Ia0bc64304cfa91e3c5f0179781eeef0eab21323a
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/33761
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
2021-01-13 03:10:54 +00:00
shrekshao 7faa362ea9 Fix SamplerFilterAnisotropicTests mipmap
Fix a bug about mipmap level in SamplerFilterAnisotropicTests.
Sizes of the 3 miplevels should be 4,2,1.
The old code allocates 8,4,2 (which don't have a 1x1 level)
Expected rendered pixel values have to change.
The render result now fits the webgl demo at https://jsfiddle.net/t8k7c95o/5/
(Thanks Kai for the enlarged pixelated canvas)

ComputeBoids.cpp and DawnTest.cpp change is due to git cl format

Bug: dawn:568
Change-Id: I9069732208a16be285be13b8cd1ab19b211995a6
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/37380
Commit-Queue: Shrek Shao <shrekshao@google.com>
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
2021-01-12 23:56:54 +00:00
dan sinclair e6ca254c72 Convert WGSL comments to //
This CL updates the tests with WGSL sources to use // for comments
instead of #. This matches the current WGSL spec.

Change-Id: I04e1a18630a16b794955cace7e55a89221c964fe
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/37520
Auto-Submit: dan sinclair <dsinclair@chromium.org>
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
2021-01-12 22:11:14 +00:00
Carl Woffenden 22eff1eb8c Fixes to build with MSVC 2019
When building with MSVC (using 'is_clang=false') various errors are
encountered. This fixes:

- multiple tests/end2end/ColorStateTests.cpp(309): error C2039:
  'transform': is not a member of 'std'

- dawn_wire/server/Server.h(171): error C2248:
  'dawn_wire::server::MapUserdata::MapUserdata': cannot access private
  member declared in class 'dawn_wire::server::MapUserdata'

- variants of the above in Server.h for all the other CallbackUserdata
  subclasses

Bug: dawn:602

Change-Id: I01b1db3fbf67ae170b21a7d890af6162b82a1725
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/37420
Commit-Queue: Carl Woffenden <cwoffenden@gmail.com>
Reviewed-by: Austin Eng <enga@chromium.org>
2021-01-12 19:47:13 +00:00
Corentin Wallez 4b30f93762 Add the correct rpath to use Swiftshader / Vulkan on macOS
Previously the @executable_path rpath was only added when doing
component builds and non-component builds failed to find Vulkan and
Swiftshader on macOS.

Bug: None
Change-Id: I0277566e4bf181703dff26bb1bf3e57858864009
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/37442
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
Auto-Submit: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Stephen White <senorblanco@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
2021-01-12 19:01:04 +00:00
Bryan Bernhart f600666866 D3D12: Add HLSL compiler version to key
BUG=dawn:529

Change-Id: I84d8edc6022564cda084a0f0de384a4e15e0e1a1
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/35480
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Bryan Bernhart <bryan.bernhart@intel.com>
2021-01-12 18:21:33 +00:00
Corentin Wallez 346fa226df Rolling 3 dependencies
Roll build/ 787a783b9..3769c3b43 (413 commits)

787a783b96..3769c3b43c

$ git log 787a783b9..3769c3b43 --date=short --no-merges --format='%ad %ae %s'
2021-01-12 chromium-autoroll Roll Fuchsia SDK from 0.20210111.1.1 to 0.20210111.3.1
2021-01-11 sokcevic Use inclusive parameter names in PRESUBMIT
2021-01-11 agrieve Android: Remove android:debuggable in AndroidManifest.xml expectations
2021-01-11 chromium-autoroll Roll Fuchsia SDK from 0.20210110.3.1 to 0.20210111.1.1
2021-01-11 jbudorick android: switch resource_sizes.py to vpython.
2021-01-11 chromium-autoroll Roll Fuchsia SDK from 0.20210110.2.1 to 0.20210110.3.1
2021-01-11 cduvall Check <queries> tag from DFM manifest when doing manifest verification
2021-01-10 chromium-autoroll Roll Fuchsia SDK from 0.20210110.1.1 to 0.20210110.2.1
2021-01-10 chromium-autoroll Roll Fuchsia SDK from 0.20210109.3.1 to 0.20210110.1.1
2021-01-10 chromium-autoroll Roll Fuchsia SDK from 0.20210109.2.1 to 0.20210109.3.1
2021-01-09 chromium-autoroll Roll Fuchsia SDK from 0.20210109.0.1 to 0.20210109.2.1
2021-01-09 chromium-autoroll Roll Fuchsia SDK from 0.20210108.2.1 to 0.20210109.0.1
2021-01-08 chromium-autoroll Roll Fuchsia SDK from 0.20210108.1.1 to 0.20210108.2.1
2021-01-08 chromium-autoroll Roll Fuchsia SDK from 0.20210107.3.1 to 0.20210108.1.1
2021-01-08 chromium-autoroll Roll Fuchsia SDK from 0.20210107.2.1 to 0.20210107.3.1
2021-01-07 liaoyuke Lacros: support --deploy-lacros in build/chromeos/test_runner.py
2021-01-07 guterman Proof of concept for test selection via GN
2021-01-07 chromium-autoroll Roll Fuchsia SDK from 0.20210107.0.1 to 0.20210107.2.1
2021-01-07 bpastene chromeos: Add support for sharding Tast tests.
2021-01-07 smaier Fixing ProtectedMembersInFinalClass errorprone warnings
2021-01-07 chromium-autoroll Roll Fuchsia SDK from 0.20210106.3.1 to 0.20210107.0.1
2021-01-07 chromium-autoroll Roll Fuchsia SDK from 0.20210106.1.1 to 0.20210106.3.1
2021-01-06 liaoyuke Lacros: Support --tast-vars in build/chromeos/test_runner.py
2021-01-06 wnwen Android: Use enable_bytecode_checks for D8 (reland)
2021-01-06 chromium-autoroll Roll Fuchsia SDK from 0.20210105.3.1 to 0.20210106.1.1
2021-01-06 chromium-autoroll Roll Fuchsia SDK from 0.20210105.2.1 to 0.20210105.3.1
2021-01-06 liaoyuke Add unit tests for build/chromeos/test_runner.py
2021-01-05 agrieve Android: Mark UnnecessaryParentheses ErrorProne check as undesirable.
2021-01-05 agrieve Android: Disable errorprone checks for generated files
2021-01-05 chromium-autoroll Roll Fuchsia SDK from 0.20210105.0.1 to 0.20210105.2.1
2021-01-05 agrieve Android: Add a way to apply errorprone suggested fixes
2021-01-05 chromium-autoroll Roll Fuchsia SDK from 0.20210104.3.1 to 0.20210105.0.1
2021-01-05 chromium-autoroll Roll Fuchsia SDK from 0.20210104.1.1 to 0.20210104.3.1
2021-01-04 thakis mac: Use `cp -l` instead of `cp -c` when available
2021-01-04 chromium-autoroll Roll Fuchsia SDK from 0.20210104.0.1 to 0.20210104.1.1
2021-01-04 chromium-autoroll Roll Fuchsia SDK from 0.20210103.2.1 to 0.20210104.0.1
2021-01-03 chromium-autoroll Roll Fuchsia SDK from 0.20210103.1.1 to 0.20210103.2.1
2021-01-03 chromium-autoroll Roll Fuchsia SDK from 0.20210102.3.1 to 0.20210103.1.1
2021-01-03 chromium-autoroll Roll Fuchsia SDK from 0.20210102.1.1 to 0.20210102.3.1
2021-01-02 chromium-autoroll Roll Fuchsia SDK from 0.20210102.0.1 to 0.20210102.1.1
2021-01-02 chromium-autoroll Roll Fuchsia SDK from 0.20201231.3.1 to 0.20210102.0.1
2021-01-01 chromium-autoroll Roll Fuchsia SDK from 0.20201231.1.1 to 0.20201231.3.1
2021-01-01 chromium-autoroll Roll Fuchsia SDK from 0.20201230.3.1 to 0.20201231.1.1
2020-12-31 chromium-autoroll Roll Fuchsia SDK from 0.20201230.2.1 to 0.20201230.3.1
2020-12-30 chromium-autoroll Roll Fuchsia SDK from 0.20201230.0.1 to 0.20201230.2.1
2020-12-30 agrieve Android: Remove obsolete .build_config entry "owned_resource_srcjars"
2020-12-30 thakis mac: Simplify copy_bundle_data command.
2020-12-30 chromium-autoroll Roll Fuchsia SDK from 0.20201229.2.1 to 0.20201230.0.1
2020-12-29 chromium-autoroll Roll Fuchsia SDK from 0.20201229.1.1 to 0.20201229.2.1
2020-12-29 chromium-autoroll Roll Fuchsia SDK from 0.20201228.3.1 to 0.20201229.1.1
(...)
2020-11-09 chromium-autoroll Roll Fuchsia SDK from 0.20201108.3.1 to 0.20201109.0.1
2020-11-09 chromium-autoroll Roll Fuchsia SDK from 0.20201108.1.1 to 0.20201108.3.1
2020-11-08 chromium-autoroll Roll Fuchsia SDK from 0.20201108.0.1 to 0.20201108.1.1
2020-11-08 chromium-autoroll Roll Fuchsia SDK from 0.20201107.2.1 to 0.20201108.0.1
2020-11-07 chromium-autoroll Roll Fuchsia SDK from 0.20201107.0.1 to 0.20201107.2.1
2020-11-07 chromium-autoroll Roll Fuchsia SDK from 0.20201106.3.1 to 0.20201107.0.1
2020-11-07 chromium-autoroll Roll Fuchsia SDK from 0.20201106.2.1 to 0.20201106.3.1
2020-11-07 smaier Android resources: skipping 'skip' XML element
2020-11-06 ender Enable errorprone compile-time nullable checks.
2020-11-06 thakis mac/arm: Remove two toolchain workarounds.
2020-11-06 chromium-autoroll Roll Fuchsia SDK from 0.20201106.0.1 to 0.20201106.2.1
2020-11-06 agrieve Reland "Android: Check R8 output for references to missing symbols"
2020-11-06 wenbinzhang Revert "Android: Check R8 output for references to missing symbols"
2020-11-06 thakis build: Enable MemorySSA DSE with pinned clang.
2020-11-06 nbilling Suppress output from the dwp tool in link scripts.
2020-11-06 chromium-autoroll Roll Fuchsia SDK from 0.20201105.5.1 to 0.20201106.0.1
2020-11-06 agrieve Android: Check R8 output for references to missing symbols
2020-11-06 mark mac-arm64: Update toolchain to Xcode 12.2rc (12B5044c)
2020-11-06 huangs [Build] Rename GN template "android_resource_size_config" to "android_size_bot_config".
2020-11-06 chromium-autoroll Roll Fuchsia SDK from 0.20201105.2.1 to 0.20201105.5.1
2020-11-05 huangs [Build] Add size config JSON files and supports.
2020-11-05 sebmarchand Enable call-graph-profile-sort for PGO builds.
2020-11-05 chromium-autoroll Roll Fuchsia SDK from 0.20201105.0.1 to 0.20201105.2.1
2020-11-05 sdefresne [ios] Mark Chrome target as supporting "catalyst" in Xcode project
2020-11-05 sdefresne [ios] Use generic implementation of libvpx in "catalyst" environment
2020-11-05 arthursonzogni Revert "[WebLayer] Change the return type of Fragment.getActivity() to Activity."
2020-11-05 chromium-autoroll Roll Fuchsia SDK from 0.20201104.2.1 to 0.20201105.0.1
2020-11-04 dpranke Change actions to python2_actions as needed.
2020-11-04 chromium-autoroll Roll Fuchsia SDK from 0.20201104.1.1 to 0.20201104.2.1
2020-11-04 seantopping Re-enable AFDO profiles for Chromecast
2020-11-04 bpastene Remove cros_browser_sanity_test from all CrOS bots.
2020-11-04 thakis Remove a no-op conditional to fix a todo.
2020-11-04 agrieve Revert "Reland #2: Android: Use locally-build devil deps only when build_with_chromium=true"
2020-11-04 cwallez Fix `gn gen` with python3 and the Windows toolchain on a other drive.
2020-11-04 chromium-autoroll Roll Fuchsia SDK from 0.20201103.3.1 to 0.20201104.1.1
2020-11-04 chromium-autoroll Roll Fuchsia SDK from 0.20201103.2.1 to 0.20201103.3.1
2020-11-03 bjoyce Add chrome_junit_test shard experimental test suit.
2020-11-03 thakis android: Reorganize how arm_float_abi is set.
2020-11-03 wnwen Android: Fix build_utils output for python 2
2020-11-03 chromium-autoroll Roll Fuchsia SDK from 0.20201103.0.1 to 0.20201103.2.1
2020-11-03 agrieve Reland #2: Android: Use locally-build devil deps only when build_with_chromium=true
2020-11-03 agrieve Fix missing output when using use_debug_fission
2020-11-03 sdefresne [ios] Ensure bots can pretty print $root_build_dir/args.gn
2020-11-03 rmcelrath [WebLayer] Change the return type of Fragment.getActivity() to Activity.
2020-11-03 chromium-autoroll Roll Fuchsia SDK from 0.20201102.3.1 to 0.20201103.0.1
2020-11-03 mmenke Remove TCP/UDP echo modes from the SpawnedTestServer.
2020-11-03 chromium-autoroll Roll Fuchsia SDK from 0.20201102.1.1 to 0.20201102.3.1
2020-11-02 mbonadei Move arm_float_abi to a generic declare_arg.
2020-11-02 sdefresne [gn] Ensure bots correctly parse $root_build_dir/args.gn
2020-11-02 smaier Reland "Re-enabling aar .info file checker"

Roll buildtools/ 98881a129..235cfe435 (10 commits)

98881a1297..235cfe435c

$ git log 98881a129..235cfe435 --date=short --no-merges --format='%ad %ae %s'
2021-01-12 dpranke Roll GN from 0d67e272..595e3be7
2020-12-26 thakis Roll GN from 53d92014..0d67e272
2020-12-09 msavigny Add initial support for re-client to the chromium build.
2020-12-08 msavigny Move reclient binaries to src/buildtools.
2020-11-05 dpranke Roll GN from 843b5003..53d92014
2020-11-05 honglinyu Roll gn to 843b50030ce7ee1f86b8f1bf284ce8ca92985c3b
2020-11-04 dpranke Revert "Reland "Roll GN from e002e68a..f5f465b5""
2020-11-03 dpranke Reland "Roll GN from e002e68a..f5f465b5"
2020-11-03 dpranke Revert "Roll GN from e002e68a..f5f465b5"
2020-11-03 rjascani Roll GN from e002e68a..f5f465b5

Roll tools/clang/ eb065289a..b12d1c836 (36 commits)

eb065289a4..b12d1c836e

$ git log eb065289a..b12d1c836 --date=short --no-merges --format='%ad %ae %s'
2021-01-12 hans Build Clang with GCC 10.2.0 on Linux
2021-01-12 keishi Update namespace for TK_AsIs
2021-01-11 thakis Roll clang llvmorg-12-init-15676-g5c951623-1 : llvmorg-12-init-16296-g5e476061-1.
2021-01-07 jdoerrie [clang] Add StringPiece Rewriter Tool
2021-01-05 glazunov Exclude BigEndianWriter::end_ from rewrite_raw_ptr_fields
2021-01-05 thakis Roll clang llvmorg-12-init-12923-g6ee22ca6-1 : llvmorg-12-init-15676-g5c951623-1.
2020-12-21 thakis clang build/mac: Stop forcing Py2
2020-12-18 timvp Add fallback for Ninja path for clang compile DB
2020-12-07 hans Clang build scripts: LLVM 'master' is now 'main'
2020-12-03 bikineev blink_gc_plugin: Disallow only Optional GCed fields
2020-12-01 rnk Fix -Wsuggest-override warnings in clang plugin code
2020-11-29 thakis Roll clang llvmorg-12-init-12083-g94e4ec64-1 : llvmorg-12-init-12923-g6ee22ca6-1.
2020-11-26 keishi Add sandbox/win to rewrite_raw_ptr_fields ignore list
2020-11-20 aeubanks Roll clang llvmorg-12-init-11780-g6ef07111-1 : llvmorg-12-init-12083-g94e4ec64-1.
2020-11-18 keishi Exclude MemoryDumpProvider::name from rewrite_raw_ptr_fields
2020-11-18 keishi Exclude LabelManagerTest TestCase fields from rewrite_raw_ptr_fields
2020-11-18 keishi Fix matcher for constructors via an implicit cast
2020-11-17 keishi Exclude logging.h in rewrite_raw_ptr_fields
2020-11-17 keishi Exclude KeyedServiceBaseFactory::service_name_ in rewrite_raw_ptr_fields
2020-11-17 thakis Roll clang llvmorg-12-init-11462-g418f18c6-1 : llvmorg-12-init-11780-g6ef07111-1.
2020-11-17 thakis clang packager: Create "ld64.lld" symlinks
2020-11-17 thakis mac: Let clang updater pull mac packages on all hosts.
2020-11-16 keishi Add .get() to CheckedPtr when comparing with a std::string
2020-11-12 thakis Roll clang llvmorg-12-init-11060-g118c3f3c-1 : llvmorg-12-init-11462-g418f18c6-1.
2020-11-12 thakis clang: Update plugin test expectations after clang e7f3e2103c
2020-11-11 mark mac: Switch all architectures to the macOS 11.0 SDK and Xcode 12
2020-11-09 thakis Roll clang llvmorg-12-init-10666-gc9f69ee7-1 : llvmorg-12-init-11060-g118c3f3c-1.
2020-11-05 thakis Revert "Treat CheckedPtr specially in FindBadConstructsConsumer"
2020-11-05 keishi Add mini_installer and chrome_elf to rewrite_raw_ptr_fields ignore list
2020-11-05 keishi Treat CheckedPtr specially in FindBadConstructsConsumer
2020-11-04 thakis Bump system Xcode on ToTMac, ToTMac (dbg), ToTMacAsan, ToTMacCoverage from 11 to 12.
2020-11-04 thakis clang build script: Remove a workaround for an issue that's fixed upstream.
2020-11-04 thakis Roll clang llvmorg-12-init-5627-gf086e85e-3 : llvmorg-12-init-10666-gc9f69ee7-1.
2020-11-03 lukasza Emit constexpr-initialized fields as candidates for exclusion (vars).
2020-11-03 thakis clang: Only build arm64 iossim compiler-rt libs on the upload bots.
2020-11-02 sdefresne [ios] Build more architecture for clang runtime library

Created with:
  roll-dep build buildtools tools/clang

Change-Id: Id4737ea3623ebd9d0f21b6a8c3b4a37fc4ab7dc2
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/37440
Commit-Queue: Stephen White <senorblanco@chromium.org>
Auto-Submit: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Stephen White <senorblanco@chromium.org>
2021-01-12 16:23:03 +00:00
Corentin Wallez fd4d7d261e cr-buildbucket.cfg: Use Windows 10 only for CQ
Chromium's //build directory now supports building only on Windows 10,
so request that for our builder.

Bug: None

Change-Id: I10692e20e25d8ea305a6504fb17cf5ac9370b6fc
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/37441
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2021-01-12 15:32:48 +00:00
Corentin Wallez 7fae6cbf1d Add new third-party dependencies to .gitignore
Bug: dawn:447, dawn:580
Change-Id: I0f9eb17f1c7d91a3688b3e4d888c125b390f0794
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/37200
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Auto-Submit: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Stephen White <senorblanco@chromium.org>
2021-01-12 09:23:37 +00:00
Ben Clayton 64275742e0 ShaderModule: Enable the prettier tint diagnostic formatter
Includes code snippits and squiggles of the offending line(s)

Bug: none
Change-Id: If704b5d1118d0246c16f6e729a10d16363a1169b
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/37281
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Auto-Submit: Ben Clayton <bclayton@google.com>
2021-01-12 08:55:57 +00:00
Carl Woffenden ede229f313 Minor fix to build with MSVC: Removes switch with only default case
Fixes warning C4065: switch statement contains 'default' but no 'case' labels

Change-Id: If9a8f20eaeb2499f71bc25a69e545b3e8b21be4d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/36081
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Carl Woffenden <cwoffenden@gmail.com>
2021-01-12 08:55:27 +00:00
Ben Clayton 4c5ab90452 ShaderModule: Refactor ParseWGSL() to take a File*
The tint::ast::Module holds a diagnostic list (tint::diag::List) which references the source tint::Source::File.
If you try to enable any of the more pretty diagnostic printing functionality, and attempt to print these after ParseWGSL() has returned, you'll then dereference a pointer to the now stack unwound `tint::Source::File`.
Promote the file up one callstack level to fix this.

Bug: none. Only exposed when using pretty printing.
Change-Id: I9432dd9d668fd1d92efa228bb5ed31278fd3ddfc
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/37280
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Auto-Submit: Ben Clayton <bclayton@google.com>
2021-01-12 08:50:31 +00:00
Dawn Autoroller 2bd95f1cf4 Roll Tint from c3c70f848a to 987376cd21 (7 revisions)
https://dawn.googlesource.com/tint.git/+log/c3c70f848a71..987376cd21a8

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/tint-dawn
Please CC dsinclair@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md

Bug: None
Tbr: dsinclair@google.com
Change-Id: I0352f0b0f863385dd2e22f90990cce4ee0777f9c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/37360
Reviewed-by: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2021-01-12 05:06:57 +00:00
Hao Li 9ff83f6c95 Query API: Non-precise occlusion query on D3D12
- Implement begin/endOcclusionQuery on D3D12, the query result is binary
  (0/1), so we don't need compute shader on D3D12.
- Add end2end tests with depth/stencil/scissor tests enable/disable

Bug: dawn:434
Change-Id: I7b58987a9bc3e7f9cbcdee83f630aaa166582f5f
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/36860
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Hao Li <hao.x.li@intel.com>
2021-01-12 01:44:01 +00:00
Dawn Autoroller ea26a8ce55 Roll Tint from f51d965bef to c3c70f848a (22 revisions)
https://dawn.googlesource.com/tint.git/+log/f51d965befa1..c3c70f848a71

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/tint-dawn
Please CC dsinclair@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md

Bug: None
Tbr: dsinclair@google.com
Change-Id: I89cef8b887811df48ea8f8573af7e1388e1fcb9a
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/37241
Reviewed-by: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2021-01-11 20:18:31 +00:00
Carl Woffenden e650b38aa6 Minor fix to build with MSVC: Gets content address instead of iterator
Fixes error C2679: binary '-': no operator found which takes a right-hand operand of type 'std::_Array_iterator<_Ty,23>' (or there is no acceptable conversion)

Change-Id: I566b05032da5f68674156eae2901a3f3e7a8acbb
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/36082
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-01-11 20:02:21 +00:00
Corentin Wallez 1457ecbcaf Remove obsolete build flag.
No longer necessarry: "linux_use_bundled_binutils_override"

Bug: chromium:1164276
Change-Id: Id5d27b427e91204e71a74da572f3f369630ae54b
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/37201
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
Auto-Submit: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
2021-01-11 18:27:52 +00:00
Yunchao He 0325e4503b Add more constants for max texture sizes
Currently we only implemented 2D and 2DArray texture. kMaxTextureSize
is actually for 2D texture only. This patch adds a few more constants
for texture size for 1D and 3D textures, and changes kMaxTextureSize
to kMaxTextureDimension2D.

Bug: dawn:558

Change-Id: I9088dd7c060dc096a65abea37c7fb01f760524e9
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/36540
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Yunchao He <yunchao.he@intel.com>
2021-01-11 18:04:12 +00:00
Stephen White 77fcdf7eaa Add ANGLE to Dawn build.
Bug: dawn:447, dawn:580
Change-Id: I77726651ca00d64768bddc0bb476fd920e11851f
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/35081
Commit-Queue: Stephen White <senorblanco@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-01-11 15:52:12 +00:00
Dawn Autoroller 99c3a691c2 Roll Tint from 9bacbe1b34 to f51d965bef (1 revision)
https://dawn.googlesource.com/tint.git/+log/9bacbe1b34a3..f51d965befa1

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/tint-dawn
Please CC dsinclair@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md

Bug: None
Tbr: dsinclair@google.com
Change-Id: Ieb6039b78bab603570dc9dbc1a4bdf56bdcdb0be
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/37160
Reviewed-by: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2021-01-11 15:35:32 +00:00
Stephan Hartmann 1670c5184b IWYU: add missing include for size_t
Bug: None
Change-Id: Idbb024aa136da5327caae796876ee80222d46a39
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/37140
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-01-11 08:20:02 +00:00
Dawn Autoroller 3a04055973 Roll Tint from 1e01c2c116 to 9bacbe1b34 (1 revision)
https://dawn.googlesource.com/tint.git/+log/1e01c2c11613..9bacbe1b34a3

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/tint-dawn
Please CC enga@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md

Bug: None
Tbr: enga@google.com
Change-Id: I10ac0b7fdd2656b5230bb29d6f1a43b6b8508f0d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/37120
Reviewed-by: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2021-01-09 17:51:41 +00:00
Hao Li c9a22bcb93 Disable timestamp query extension on Metal
Currently it's not clear how to convert timestamps to nanoseconds on
Metal, disable timestamp query extension on Metal until we know how to
do that. WebGPU issue: https://github.com/gpuweb/gpuweb/issues/1325

Bug: dawn:434
Change-Id: If63bd5fe9dccc1fff16a42cddf63e9d8265e65c5
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/37020
Commit-Queue: Austin Eng <enga@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
2021-01-08 22:56:05 +00:00
Dawn Autoroller c4efeef833 Roll Tint from 766e31d507 to 1e01c2c116 (3 revisions)
https://dawn.googlesource.com/tint.git/+log/766e31d50710..1e01c2c11613

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/tint-dawn
Please CC enga@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md

Bug: None
Tbr: enga@google.com
Change-Id: If682540f9e2442e767b7a028c81dac420967ede0
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/37061
Reviewed-by: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2021-01-08 17:15:55 +00:00
Corentin Wallez a2e02836a2 Suppress EntryPointTests.FragAndVertexSameModule on GL
The test is failing because it seems that SPIRV-Cross is outputing some
of the builtins for the vertex in the fragment shader and vice-versa.

Bug: chromium:1163767
TBR=senorblanco@chromium.org

Change-Id: Iefbc1beb9065a92f1d61776d12c903d4e80648d4
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/37040
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2021-01-08 12:26:05 +00:00
Corentin Wallez 00fcab636a Fix default viewDimension in deprecated BGLEntry path.
The handling of the default view dimension in the deprecated bind group
layout entry path was checking the viewDimension of the new
sub-descriptor instead of the deprecated viewDimension member. This
meant that viewDimension was always defaulted and "2D".

This commit fixes the issue by looking at the correct viewDimension member
and adds a regression deprecation test.

Bug: dawn:620

Change-Id: Icc133b6d80ba3d88bae30dc9138f1d74e14d12c7
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/36841
Auto-Submit: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
2021-01-07 17:33:44 +00:00
Dawn Autoroller 400a5e2710 Roll Tint from 40b4928a73 to 766e31d507 (4 revisions)
https://dawn.googlesource.com/tint.git/+log/40b4928a73b7..766e31d50710

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/tint-dawn
Please CC enga@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md

Bug: None
Tbr: enga@google.com
Change-Id: I6af2c446cdfeef02b1c66193c2adef1ee17b62b6
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/36920
Reviewed-by: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2021-01-07 16:52:54 +00:00
Ben Clayton 3f5c01ae92 Reland "Update PrimitiveTopologyTests to use WGSL"
This reverts commit ad0bec6c96.

Reason for revert: The change was incorrectly blamed for a autoroll failure and reverted unnecessarily.

Original change's description:
> Revert "Update PrimitiveTopologyTests to use WGSL"
>
> This reverts commit b9641b8225.
>
> Reason for revert: Suspect causing Dawn roll to fail
>
> Original change's description:
> > Update PrimitiveTopologyTests to use WGSL
> >
> > A rebased fork of https://dawn-review.googlesource.com/c/dawn/+/33774
> >
> > Bug: dawn:572
> > Change-Id: Icb24ac5b62984e9b093e61077155b9a1eafb344b
> > Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/35801
> > Commit-Queue: Ben Clayton <bclayton@google.com>
> > Auto-Submit: Ben Clayton <bclayton@google.com>
> > Reviewed-by: Austin Eng <enga@chromium.org>
> > Reviewed-by: Corentin Wallez <cwallez@chromium.org>
>
> TBR=cwallez@chromium.org,enga@chromium.org,bclayton@google.com
>
> Change-Id: Ib6fe527f28cf17f8f8e817c59121e357b9b65cd1
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: dawn:572
> Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/36520
> Reviewed-by: Austin Eng <enga@chromium.org>
> Commit-Queue: Austin Eng <enga@chromium.org>

TBR=cwallez@chromium.org,enga@chromium.org,bclayton@google.com

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: dawn:572
Change-Id: I2e8859c9b9f12c005bef1309c7bad98f61af2ac7
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/36842
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Ben Clayton <bclayton@google.com>
2021-01-07 16:04:24 +00:00
Corentin Wallez 06aa1af28a Roll third_party/vulkan-deps/ b08eace32..c493c6112 (27 commits; 1 trivial rolls)
https://chromium.googlesource.com/vulkan-deps/+log/b08eace32e9c..c493c6112021

$ git log b08eace32..c493c6112 --date=short --no-merges --format='%ad %ae %s'
2021-01-07 chromium-autoroll Roll SPIRV-Cross from 7b7a21c4058c to 234c65c0f32c (3 revisions)
2021-01-07 chromium-autoroll Roll glslang from 480f6039e072 to 3de5cfe50ede (1 revision)
2021-01-06 chromium-autoroll Roll Vulkan-Tools from 4cc0932495ec to a7825740f316 (3 revisions)
2021-01-06 chromium-autoroll Roll SPIRV-Tools from 4ed1f4fce9e7 to aa005e8bd435 (1 revision)
2021-01-06 chromium-autoroll Roll SPIRV-Tools from af3a3d481f6e to 4ed1f4fce9e7 (1 revision)
2021-01-06 chromium-autoroll Roll SPIRV-Tools from 94d1a80159e3 to af3a3d481f6e (1 revision)
2021-01-06 chromium-autoroll Roll Vulkan-ValidationLayers from 98382948dfea to cc435b55410a (2 revisions)
2021-01-06 chromium-autoroll Roll glslang from f77085c307fc to 480f6039e072 (1 revision)
2021-01-06 chromium-autoroll Roll SPIRV-Tools from 6d05ed8410b4 to 94d1a80159e3 (1 revision)
2021-01-06 chromium-autoroll Roll SPIRV-Tools from 37c03859de9e to 6d05ed8410b4 (1 revision)
2021-01-06 chromium-autoroll Roll SPIRV-Tools from d630e5f8c10c to 37c03859de9e (1 revision)
2021-01-06 chromium-autoroll Roll Vulkan-ValidationLayers from 2468aa9630c2 to 98382948dfea (1 revision)
2021-01-06 chromium-autoroll Roll SPIRV-Tools from 1bb80d2778a3 to d630e5f8c10c (1 revision)
2021-01-06 chromium-autoroll Roll glslang from 9325cc013e3d to f77085c307fc (1 revision)
2021-01-05 chromium-autoroll Roll Vulkan-ValidationLayers from 57255a663ed9 to 2468aa9630c2 (1 revision)
2021-01-05 chromium-autoroll Roll Vulkan-Loader from 1f0c7868a438 to 9ba835885ffe (1 revision)
2021-01-05 chromium-autoroll Roll Vulkan-ValidationLayers from 56a96658b750 to 57255a663ed9 (3 revisions)
2021-01-05 chromium-autoroll Roll Vulkan-Loader from 294480cb7f3e to 1f0c7868a438 (1 revision)
2021-01-05 chromium-autoroll Roll Vulkan-Tools from 7554321b88ae to 4cc0932495ec (2 revisions)
2021-01-05 chromium-autoroll Roll Vulkan-Loader from 66a23ac8c566 to 294480cb7f3e (1 revision)
2021-01-05 chromium-autoroll Roll Vulkan-Headers from 85470b32ad5d to 9efc4a631161 (1 revision)
2021-01-05 chromium-autoroll Roll Vulkan-ValidationLayers from aa076dae88e2 to 56a96658b750 (25 revisions)
2021-01-05 chromium-autoroll Roll glslang from f426f652299d to 9325cc013e3d (1 revision)
2021-01-05 chromium-autoroll Roll SPIRV-Cross from e50f7d1ce8e1 to 7b7a21c4058c (3 revisions)
2021-01-05 chromium-autoroll Roll SPIRV-Tools from 17ffa89097b2 to 1bb80d2778a3 (1 revision)
2020-12-21 jmadill Rolling 8 dependencies

TBR=senorblanco@chromium.org

Created with:
  roll-dep third_party/vulkan-deps

Change-Id: I8dffafc888ed2d54c38a14cfb2f1521a2c85dcc1
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/36840
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2021-01-07 13:22:22 +00:00
J-P Nurmi b3c4cc09a0 Fix typo: vulkan_deps vs. vulkan-deps
Change-Id: Ifad31bb254f2f1d6d72338ef1f68c34e6ba4de86
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/36721
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2021-01-07 10:35:02 +00:00
Ryan Harrison fac169113d Remove HLSL & MSL SPIRV-Cross Fuzzers
The plan of record is to use Tint for back end generation on these
platforms for launch, so there is no need to fuzz SPIRV-Cross on them.

The GLSL fuzzer will remain for now, since the PoR has native support
for GLSL using SPRIV-Cross.

Change-Id: I8d6bf76b2b81e9bbc158fa8c5a63b119060abbe5
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/36701
Commit-Queue: dan sinclair <dsinclair@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: dan sinclair <dsinclair@chromium.org>
Auto-Submit: Ryan Harrison <rharrison@chromium.org>
2021-01-07 01:36:11 +00:00
Stephen White f1fa60b912 Use Jamie's 7-layer burrito of Vulkan DEPS.
This allows us to roll all Vulkan- and SPIRV-related dependencies
simultaneously (which are often inter-dependent).

This change also implicitly rolls the dependencies to the revs in ANGLE.

Change-Id: I50a1e5b2ef706ffbfbc22f5783321820bb50ae96
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/36500
Commit-Queue: Stephen White <senorblanco@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-01-06 17:41:50 +00:00
Dawn Autoroller bc21cfa6cc Roll Tint from e6e704145b to 40b4928a73 (11 revisions)
https://dawn.googlesource.com/tint.git/+log/e6e704145b31..40b4928a73b7

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/tint-dawn
Please CC enga@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md

Bug: None
Tbr: enga@google.com
Change-Id: I4a6f1a7ad368b64afd60ce18950fc9cd8e24ea44
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/36640
Reviewed-by: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2021-01-06 16:26:10 +00:00
Jiawei Shao a84acc4fcc Enable CompressedTextureZeroInitTest on Win/Intel/Vulkan
This patch enables all the tests in CompressedTextureZeroInitTest
on Windows/Intel/Vulkan after the upgrade of Dawn try bots.

BUG=dawn:601
TEST=dawn_end2end_tests

Change-Id: Ida4278ae50ef45b2347462be986e5490a921f988
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/36560
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Jiawei Shao <jiawei.shao@intel.com>
2021-01-06 02:30:09 +00:00
Austin Eng ad0bec6c96 Revert "Update PrimitiveTopologyTests to use WGSL"
This reverts commit b9641b8225.

Reason for revert: Suspect causing Dawn roll to fail

Original change's description:
> Update PrimitiveTopologyTests to use WGSL
>
> A rebased fork of https://dawn-review.googlesource.com/c/dawn/+/33774
>
> Bug: dawn:572
> Change-Id: Icb24ac5b62984e9b093e61077155b9a1eafb344b
> Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/35801
> Commit-Queue: Ben Clayton <bclayton@google.com>
> Auto-Submit: Ben Clayton <bclayton@google.com>
> Reviewed-by: Austin Eng <enga@chromium.org>
> Reviewed-by: Corentin Wallez <cwallez@chromium.org>

TBR=cwallez@chromium.org,enga@chromium.org,bclayton@google.com

Change-Id: Ib6fe527f28cf17f8f8e817c59121e357b9b65cd1
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: dawn:572
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/36520
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
2021-01-06 00:07:21 +00:00
Dawn Autoroller 849aa9c1bd Roll Tint from 9a644c7903 to e6e704145b (1 revision)
https://dawn.googlesource.com/tint.git/+log/9a644c7903ca..e6e704145b31

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/tint-dawn
Please CC enga@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md

Bug: None
Tbr: enga@google.com
Change-Id: If4a9ae9854a329ae6c6e814df4608e37bfd94e00
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/36400
Reviewed-by: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2021-01-05 15:47:29 +00:00
Austin Eng b9641b8225 Update PrimitiveTopologyTests to use WGSL
A rebased fork of https://dawn-review.googlesource.com/c/dawn/+/33774

Bug: dawn:572
Change-Id: Icb24ac5b62984e9b093e61077155b9a1eafb344b
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/35801
Commit-Queue: Ben Clayton <bclayton@google.com>
Auto-Submit: Ben Clayton <bclayton@google.com>
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-01-05 15:24:29 +00:00
Austin Eng 200941c797 dawn_wire: Return early in callbacks after the server is destroyed
After the server is destroyed, the server's can't do anything like
forward callbacks to the client. Track this with a weak_ptr and
return early if it has expired.

It also updates device destruction in dawn_native so the lost
callback is always called, even on graceful destruction. This
is consistent with the rest of WebGPU where all callbacks are
guaranteed to be called in finite time.

Bug: chromium:1147416, chromium:1161943
Change-Id: Ib80dea36517401a2b8eafb01ded255ebbe757aef
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/35840
Commit-Queue: Austin Eng <enga@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jiawei Shao <jiawei.shao@intel.com>
2021-01-05 08:37:08 +00:00
Austin Eng e3fd026108 Use a common helper for std::nothrow
It's come up multiple times that ASAN doesn't support
std::nothrow which leads to OOM bugs filed by the fuzzers.
Use a common helper to avoid this and return nullptr for large
allocations when ASAN is enabled.

Bug: none
Change-Id: I492b4ff4e498cf82d4ca08ba849671d3d16b9cfb
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/36280
Reviewed-by: Jiawei Shao <jiawei.shao@intel.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
2021-01-05 07:40:48 +00:00
Hao Li c120b02dbe Remove internal resolve buffer from Timestamp compute shader
In timestamp compute shader, we will create an internal buffer for
resolving QuerySet and use it as input buffer in compute shader,
the user-provided resolve buffer is used as output buffer.

This will cause the buffer zero initialization to be called twice,
one is the internal buffer is zero initialized in ResolveQuerySet,
antoher is the user-provided buffer is tracked as pass resource
and need to be initialized. But for ResolveQuerySet(), we expect
there is only once.

We have no special requirements to have an internal buffer. It is
possible to directly use the user-provided buffer for read and
write becuase it will get STORAGE_INTERNAL usage.

Bug: dawn:434
Change-Id: Ia8c8ac6e9ba23fea31468a6d9b4580eece189be2
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/36201
Commit-Queue: Hao Li <hao.x.li@intel.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-01-05 04:49:08 +00:00
Hao Li cdbd295cc6 Get timestamp period from device
- Get timestamp period on each backend
  D3D12: Get GPU frequency(HZ) from queue and calculate the period in ns
  Vulkan: Get timestampPeriod from device properties
  Metal and others: don't need the period

Bug: dawn:434
Change-Id: Ia5588a3dccadfe92d7384b9fdf1e6848c6e5c6e2
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/36220
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Hao Li <hao.x.li@intel.com>
2021-01-05 02:39:18 +00:00
Jiawei Shao 4110684aa0 Vulkan: Fix a bug in the impl of T2T copy with 2D array textures
This patch fixes a bug in the implementation of the toggle
UseTemporaryBufferInCompressedTextureToTextureCopy on Vulkan backend.
The previous implementation only considered the T2T one-layer copies,
which will cause the validation error by Vulkan validation layer. This
patch fixes this issue by adding the missing support of multi-layer
copies.

This patch also fixes the failures in the WebGPU CTS tests
color_textures,compressed,array,* on the Linux/Vulkan backends with
Vulkan validation layer enabled.

BUG=dawn:42, chromium:1161355
TEST=dawn_end2end_tests

Change-Id: Ic437919a843b8439d267b8d75b27ade3a9e7bcae
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/36260
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Jiawei Shao <jiawei.shao@intel.com>
2021-01-05 00:40:30 +00:00