Added implementation of writeTexture in Metal. It's using a
staging buffer instead of writing directly from the CPU to
the texture, because Dawn uses the private storage mode for
most of the Metal textures.
Bug: dawn:483
Change-Id: I6b85ee8bbe343881337bdb203a122dc1f1523177
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24581
Commit-Queue: Tomek Ponitka <tommek@google.com>
Reviewed-by: Austin Eng <enga@chromium.org>
GN recently added support for Apple frameworks to link, rather than
overloading the libs lists. This pulls .frameworks out of the libs
lists, so that GN can stop supporting .frameworks in libs in the
future.
Bug: chromium:1052560
Change-Id: I0b57a3c4c995887a57937317db30b67cf7a7f0f7
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24281
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
This patch optimizes the implementation of buffer-to-texture and
texture-to-buffer computations on D3D12 backends by computing
TextureCopySplits once for all the 2D texture array layers in the
copy instead of computing it once per layer. You can see the
comments in the function D3D12::ComputeTextureCopySplits() for more
details.
BUG=dawn:453
TEST=dawn_end2end_tests
Change-Id: I1b66d24d2418147957fbe03e2c25144bd043a62e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24643
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Jiawei Shao <jiawei.shao@intel.com>
kMaxBindingsPerGroup is not a real WebGPU limit. Code in Dawn that
uses it now uses dynamically sized vectors, optimistic stack_vecs or
a different limit like kMaxDynamicBuffersPerPipelineLayout.
The CL introduces kMaxOptimalBindingsPerGroup=32 which is used to size
the static portion of stack_vecs, but the value is tentative.
Bug: dawn:443
Change-Id: I08e06bed6531bed8b4365f36cf2fc0579ac5f180
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/23502
Commit-Queue: Austin Eng <enga@chromium.org>
Reviewed-by: Stephen White <senorblanco@chromium.org>
PRESUBMIT.py calls into a shell script which we can't do on Windows.
Disabling this for now until we can find a way to lint on Windows.
Bug: dawn:486
Change-Id: Ica525a4a8b01ffde6a3b6170bd58cb4edc9c442d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24784
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Kai Ninomiya <kainino@chromium.org>
Chromium's //build/ requires the DEPS file to produce gclient_args.gni
that contains a max_xcode_version variable so we add a
gclient_gn_args_file.
Also third_party/binutils is no longer needed and is removed.
Roll build/ 896323eed..b8f14c09b (640 commits; 1 trivial rolls)
896323eeda..b8f14c09b7
$ git log 896323eed..b8f14c09b --date=short --no-merges --format='%ad %ae %s'
2020-07-14 agrieve Add "list_java_targets.py" to make it easy to build all java targets
2020-07-14 chromium-autoroll Roll Fuchsia SDK from 0.20200713.1.1 to 0.20200713.3.1
2020-07-13 sebmarchand Disable the segment heap by default and add a GN flag to control it.
2020-07-13 agrieve Android: Reduce link pool when R8 or Android Lint is enabled.
2020-07-13 wnwen Android: Add deps' transitive classes to classpath
2020-07-13 hypan Reland "emulator: Disable the feature GLDMA."
2020-07-13 thakis win: Don't pass -mllvm flags to ms assembler.
2020-07-13 zhin [Py3] Make mac_toolchain Python 3 compatible
2020-07-13 agrieve Android: Make android_test_apk() define target with name=target_name
2020-07-13 chromium-autoroll Roll Fuchsia SDK from 0.20200713.0.1 to 0.20200713.1.1
2020-07-13 chromium-autoroll Roll Fuchsia SDK from 0.20200712.3.1 to 0.20200713.0.1
2020-07-13 chromium-autoroll Roll Fuchsia SDK from 0.20200712.2.1 to 0.20200712.3.1
2020-07-12 chromium-autoroll Roll Fuchsia SDK from 0.20200712.1.1 to 0.20200712.2.1
2020-07-12 chromium-autoroll Roll Fuchsia SDK from 0.20200711.3.1 to 0.20200712.1.1
2020-07-12 chromium-autoroll Roll Fuchsia SDK from 0.20200711.2.1 to 0.20200711.3.1
2020-07-11 chromium-autoroll Roll Fuchsia SDK from 0.20200711.1.1 to 0.20200711.2.1
2020-07-11 chromium-autoroll Roll Fuchsia SDK from 0.20200710.4.1 to 0.20200711.1.1
2020-07-11 hypan Revert "emulator: Disable the feature GLDMA."
2020-07-11 chromium-autoroll Roll Fuchsia SDK from 0.20200710.2.1 to 0.20200710.4.1
2020-07-11 thakis Roll clang n358615-fb1aa286-3 : n359864-04b9a46c-1.
2020-07-10 hypan emulator: Disable the feature GLDMA.
2020-07-10 chromium-autoroll Roll Fuchsia SDK from 0.20200710.1.1 to 0.20200710.2.1
2020-07-10 ehmaldonado Allow DIR_METADATA files within res
2020-07-10 vasilyt Remove GLStreamTextureImage
2020-07-10 agrieve Reland #3 "Android: Bump default target_sdk_version 24 -> SDK used to compile"
2020-07-10 chromium-autoroll Roll Fuchsia SDK from 0.20200710.0.1 to 0.20200710.1.1
2020-07-10 sdefresne [ios] Fix intent_definition template
2020-07-10 chromium-autoroll Roll Fuchsia SDK from 0.20200708.2.1 to 0.20200710.0.1
2020-07-10 wnwen Android: Use direct classpath for android_webview
2020-07-09 wnwen Android: Prefer direct interface classpaths
2020-07-09 bsheedy Revert "Reland #2 "Android: Bump default target_sdk_version 24 -> SDK used to compile""
2020-07-09 mheikal java_library_impl targets can now generate their own R.java files
2020-07-09 mmoss Revert "Split the cros_boards gclient var into two for fetching QEMU images."
2020-07-09 agrieve Android: Dump logcat when gtest fails to list tests
2020-07-09 mmoss Revert "Simplify Simple Chrome's gclient and GN conditionals."
2020-07-09 agrieve Android: Fix -checkdiscard regex'es to ignore comments
2020-07-09 sdefresne [ios] Add support for compiling .intentdefinition
2020-07-08 agrieve Reland #2 "Android: Bump default target_sdk_version 24 -> SDK used to compile"
2020-07-08 chromium-autoroll Roll Fuchsia SDK from 0.20200708.1.1 to 0.20200708.2.1
2020-07-08 agrieve Revert "Reland "Android: Bump default target_sdk_version 24 -> SDK used to compile""
2020-07-08 sdefresne Reland "[ios] Add --landmines-path to build/landmines.py script"
2020-07-08 bpastene Simplify Simple Chrome's gclient and GN conditionals.
2020-07-08 agrieve Reland "Android: Bump default target_sdk_version 24 -> SDK used to compile"
2020-07-08 bsheedy Report public and internal Gold links
2020-07-08 sdefresne Revert "[ios] Add --landmines-path to build/landmines.py script"
2020-07-08 chromium-autoroll Roll Fuchsia SDK from 0.20200707.4.1 to 0.20200708.1.1
2020-07-08 sdefresne [ios] Add --landmines-path to build/landmines.py script
2020-07-08 sdefresne [ios] Fix interaction of build/clobber.py & ios/build/tools/setup-gn.py
2020-07-08 chromium-autoroll Roll Fuchsia SDK from 0.20200707.3.1 to 0.20200707.4.1
2020-07-08 thomasanderson [XProto] Remove usage of XRRUpdateConfiguration and XRandR
(...)
2020-04-23 bpastene Default is_chromeos_device to false.
2020-04-22 dtrainor DownloadUtils improvements for modularization
2020-04-22 steveroe [fuchsia] Save the fuchsia system log by default.
2020-04-22 thomasanderson Add xcb-proto to sysroots
2020-04-22 agrieve Android: Disable proguard deobuscation in tests for incremental_install && proguard_enabled
2020-04-22 bsheedy Add notion of configs to Android Gold
2020-04-22 hzjian Create a .expected checker for native libraries & assets
2020-04-22 agrieve Android: Put .javac.jar files in $OUT/obj rather than $OUT/gen
2020-04-22 chromium-autoroll Roll Fuchsia SDK from 0.20200422.1.1 to 0.20200422.2.1
2020-04-22 chromium-autoroll Roll Fuchsia SDK from 0.20200421.3.1 to 0.20200422.1.1
2020-04-22 ukai Use depot_tools/.cipd_bin as default of goma_dir
2020-04-22 rakina Revert "[Android] add sr-Latn to locales.gni and resource packs"
2020-04-22 chromium-autoroll Roll Fuchsia SDK from 0.20200421.2.1 to 0.20200421.3.1
2020-04-22 chonggu [Fuchsia] Extend time to wait for device connection to 2 minutes
2020-04-21 thestig Remove ro_segment_workaround_for_valgrind build argument.
2020-04-21 perrier [Android] add sr-Latn to locales.gni and resource packs
2020-04-21 chromium-autoroll Roll Fuchsia SDK from 0.20200421.1.1 to 0.20200421.2.1
2020-04-21 agrieve Remove python-cherrypy3 from //build/install-build-deps.sh
2020-04-21 hypan emulator: wait for decryption to complete during avd create
2020-04-21 agrieve Fix incremental_install on Android P
2020-04-21 wez [fuchsia] Simplify specification of required host tools.
2020-04-21 chromium-autoroll Roll Fuchsia SDK from 0.20200417.2.1 to 0.20200421.1.1
2020-04-20 spang [fuchsia] Add a basic WebGL test to cast runner
2020-04-20 agrieve SuperSize: Remove versions from .aar paths in android_deps
2020-04-20 wnwen Android: Remove md5check for android lint
2020-04-20 wnwen Android: Update lint target API
2020-04-20 agrieve Remove python-opencv from install-build-deps.sh
2020-04-20 agrieve Android: Never use --release when dexing library targets
2020-04-19 wez [fuchsia] Enable toolkit_views in Fuchsia builds.
2020-04-19 wez [fuchsia] Use 'pkgctl get-hash' to verify cached package version.
2020-04-18 thakis Remove is_multi_dll_chrome.
2020-04-18 agrieve compile_resources.py: Use try/finally for threadpools
2020-04-18 bpastene Strip chrome before deploying it when running disk-usage Tast test.
2020-04-17 chromium-autoroll Roll Fuchsia SDK from 0.20200417.1.1 to 0.20200417.2.1
2020-04-17 brucedawson Update compute_build_timestamp.py comment
2020-04-17 olivierrobin Add PRODUCT_BUNDLE_IDENTIFIER in xcode attributes
2020-04-17 chromium-autoroll Roll Fuchsia SDK from 0.20200416.3.1 to 0.20200417.1.1
2020-04-17 chromium-autoroll Roll Fuchsia SDK from 0.20200416.2.1 to 0.20200416.3.1
2020-04-17 hypan emulator: edit config.ini instead of hardware-qemu.ini during avd Install.
2020-04-16 perrier Update Android gyp to handle locales with scripts.
2020-04-16 chromium-autoroll Roll Fuchsia SDK from 0.20200416.1.1 to 0.20200416.2.1
2020-04-16 bsheedy Optimize Skia Gold Init And Auth
2020-04-16 chromium-autoroll Roll Fuchsia SDK from 0.20200416.0.1 to 0.20200416.1.1
2020-04-16 chromium-autoroll Roll Fuchsia SDK from 0.20200415.3.1 to 0.20200416.0.1
2020-04-16 chromium-autoroll Roll Fuchsia SDK from 0.20200415.2.1 to 0.20200415.3.1
2020-04-15 agrieve apk_operations.py: Fix additional_apk_paths being ignored
2020-04-15 chromium-autoroll Roll Fuchsia SDK from 0.20200415.1.1 to 0.20200415.2.1
2020-04-15 wnwen Android: Use lint from cmdline-tools (reland)
2020-04-15 agrieve Reland "Use .r8dex.jar and .mergeddex.jar rather than .dex.zip"
2020-04-15 chromium-autoroll Roll Fuchsia SDK from 0.20200414.3.1 to 0.20200415.1.1
Roll buildtools/ 2c41dfb19..eb3987ec7 (19 commits)
2c41dfb19a..eb3987ec70
$ git log 2c41dfb19..eb3987ec7 --date=short --no-merges --format='%ad %ae %s'
2020-07-06 estaab Roll GN from b6203d18..d585128c
2020-07-06 bpastene Update chromium's DEPS-file presubmits with new 'Str' type.
2020-07-03 sdefresne Roll GN from cd3869be..b6203d18
2020-07-01 estaab Roll GN from 7d7e8dee..cd3869be
2020-06-18 sdefresne remove copybara initialization artifacts
2020-06-18 sdefresne Copybara Service Migration Initialization.
2020-06-18 sdefresne Roll GN from db55efd4..7d7e8dee
2020-06-17 sdefresne Roll GN from fbe7aec7..db55efd4
2020-06-15 sdefresne Roll GN from 200492a5..fbe7aec7
2020-06-15 sdefresne Roll GN from 9a0496a7..200492a5
2020-06-11 thakis Roll GN from d0a6f072..9a0496a7
2020-06-03 ambre [libunwind] Build with -funwind-tables
2020-05-20 dpranke Change 'dpranke@chromium.org' -> 'dpranke@google.com' in OWNERS files.
2020-05-20 avi Fix checkdeps
2020-05-20 dpranke Update TEAM in OWNERS for build-related directories.
2020-05-19 rsesek Roll GN from ab32747a..d0a6f072
2020-05-15 hypan libc++: Set output_name of libc++ to libc++_chrome for android
2020-05-14 thakis Roll GN from 5ed3c9cc..ab32747a
2020-04-23 thakis Reland "Roll libunwind 43bb9f8722..d999d54f4b"
Roll tools/clang/ 698732d5d..d027d75e8 (100 commits)
698732d5db..d027d75e8d
$ git log 698732d5d..d027d75e8 --date=short --no-merges --format='%ad %ae %s'
2020-07-12 bartekn Fix a field and add more to manual-fields-to-ignore.txt
2020-07-11 thakis Roll clang n358615-fb1aa286-3 : n359864-04b9a46c-1.
2020-07-10 thakis clang/win bots: Switch to gnuwin-13.
2020-07-08 lukasza Only exclude const-qualified char pointers.
2020-07-08 lukasza Make raw-output-tests ignore changes in absolute path of Chromium repo.
2020-07-07 glenrob Always remove gomacc in compile_db.py, so clang is called directly.
2020-06-30 inglorion goma_link: add --allowlist option
2020-06-30 inglorion goma_link: add phony rules for native object files
2020-06-30 inglorion goma_link: use allowlist for targets for which we do distributed ThinLTO
2020-06-30 thakis clang build script: scale back xcode stuff a bit
2020-06-29 thakis mac: Include arm64 slice in libclang_rt.osx.a.
2020-06-29 inglorion goma_link: add --generate option
2020-06-29 zhin [Py3] Get update.py Python3 compatible
2020-06-28 thakis Minor tweaks to the clang upload rev script.
2020-06-28 thakis clang build script: Stop showing the first LLVM commit in every build.
2020-06-28 thakis Roll clang n356902-4e813bbd-1 : n358615-fb1aa286-1.
2020-06-26 zhin [Py3] Get blink_gc_plugin Py3 ready
2020-06-25 zhin [Py3] Refactor expand_thin_archives to call into goma_link
2020-06-25 lukasza Ensure stable order in the rewriter output.
2020-06-25 zhin [Py3] Make compile_db and test Python3 compatible
2020-06-25 bartekn Fix a field and add more to manual-fields-to-ignore.txt
2020-06-25 omerkatz heap: Remove mixin check from clang plugin
2020-06-25 hans Fix blink_gc_plugin tests with Python 2
2020-06-25 bartekn A script that performs a CheckedPtr rewrite
2020-06-25 lukasza Stop ignoring base::Bind args (thinking the parameters are references).
2020-06-24 zhin [Py3] Get blink_gc_plugin Py3 ready
2020-06-24 zhin [Py3] Make build.py python3 compatible
2020-06-23 hans Add linux_angle_deqp_rel_ng to Cq-Include-Trybots for Clang rolls
2020-06-23 bartekn Adding some more fields to manual-fields-to-ignore.txt.
2020-06-22 hans Revert "Roll clang n356902-4e813bbd-1 : n357772-7f0d7f32-1."
2020-06-22 hans Remove/replace unnecessary includes of logging.h (tools/)
2020-06-22 hans Roll clang n356902-4e813bbd-1 : n357772-7f0d7f32-1.
2020-06-18 omerkatz heap: Apply clang plugin to heap unittests
2020-06-18 bartekn Adding a few more fields to manual-fields-to-ignore.txt.
2020-06-17 lukasza Remove stale, automatic exclusions from fields-to-ignore.txt
2020-06-16 lukasza Workaround a clang bug affecting cxxConstructorExpr.
2020-06-16 lukasza Skip some scenarios via blocklist, rather than unconditionally.
2020-06-15 lukasza Adding two more fields to fields-to-ignore.txt.
2020-06-15 bartekn Add TlsVectorEntry::data to fields-to-ignore.txt
2020-06-15 bartekn Add 2 fields that violate constexpr to fields-to-ignore.txt
2020-06-13 aeubanks Roll clang n356235-f7f1abdb-1 : n356902-4e813bbd-1.
2020-06-11 lukasza Fix rewriting of |auto* v = my_struct.field| to allow direct memberExpr.
2020-06-11 lukasza Ensure that |SomeTemplate<SomeClass>* ptr_field| gets rewritten.
2020-06-11 bartekn Add one more x_display_ field to fields-to-ignore.txt
2020-06-10 bartekn Add more fields to fields-to-ignore.txt
2020-06-10 lukasza Ignoring fields declared within implicit function specializations.
2020-06-10 lukasza Always normalize paths used in apply_edit.py
2020-06-09 lukasza Append |.get()| when calling function templates like base::WrapUnique.
2020-06-09 lukasza Support for auto-generating input for --exclude-fields cmdline param.
2020-06-08 hans Roll clang n355885-a6ae333a-2 : n356235-f7f1abdb-1.
2020-06-05 lukasza Fix handling affected expressions in implicit template specializations.
2020-06-05 jonross Reland "Fields in system headers (and generated code) are not really affected."
2020-06-05 jonross Revert "Fields in system headers (and generated code) are not really affected."
2020-06-05 bartekn Exclude users of nmap and base::AllocPages
2020-06-04 inglorion goma_link: handle function sections and data sections
2020-06-04 lukasza Fields in system headers (and generated code) are not really affected.
2020-06-04 lukasza Append |.get()| to: auto* var_ptr = my_struct.ptr_field;
2020-06-03 lukasza Using |.get()| in conditional operator results.
2020-06-03 lukasza Rewriting |const_cast<...>(s.ptr_field)| into |...s.ptr_field.get()...|.
2020-06-03 lukasza Rewriting |printf("%p", s.ptr_field)| into |...s.ptr_field.get()...|.
2020-06-03 lukasza Avoid rewriting C-only or |extern "C"| field decls.
2020-06-03 thakis clang build script: Start using LLVM_LOCAL_RPATH.
2020-06-03 bartekn Add two more fields to fields-to-ignore.txt
2020-06-02 thakis Roll clang n354867-0e41d647-2 : n355885-a6ae333a-1.
2020-06-02 bartekn Add more fields to fields-to-ignore.txt
2020-05-28 dmcardle Fix broken --diff option for clang_tidy_tool.py.
2020-05-26 lukasza Support for --exclude-fields=fields-to-ignore.txt cmdline parameter.
2020-05-26 lukasza Avoiding rewriting macro-generated types.
2020-05-25 hans Clang upload_revision.py, add TODO about bug number
2020-05-25 thakis clang/android: Stop using make_standalone_toolchain.py script.
2020-05-22 thakis Roll clang n353803-99ac9ce7-2 : n354867-0e41d647-1.
2020-05-22 lukasza Avoid rewriting fields in third-party code.
2020-05-21 thakis clang build script: set rpath on linux so unit tests can run
2020-05-21 lukasza Ignoring |SomeClass *ptr_field1, *ptr_field2|.
2020-05-20 inglorion goma_link: add slash to -thinlto-prefix-replace
2020-05-17 omerkatz heap: Make all Trace methods const
2020-05-14 lukasza Avoiding rewriting pointers to non-free-standing structs.
2020-05-14 lukasza Avoid rewriting pointers to arrays.
2020-05-14 lukasza Avoid converting |char* field| to |CheckedPtr<char> field|.
2020-05-14 lukasza Avoiding CheckedPtr<object-with-deleted-operator-new>.
2020-05-14 lukasza Not generating replacements within implicit template specializations.
2020-05-12 lukasza Ignoring fields of class backing lambda expressions.
2020-05-12 hans Roll clang n346557-4e0d9925-3 : n353803-99ac9ce7-1.
2020-05-12 lukasza Stop depending on the Z3 solver when building llvm/clang.
2020-05-08 lukasza Inserting a new header should account for presence of BOM bytes.
2020-05-08 lukasza Attempt to preserve the original spelling of the pointee type.
2020-05-08 lukasza Avoid rewriting function pointer types.
2020-05-06 lukasza Inserting an include of the new header during the rewrite.
2020-05-02 sebmarchand clang upload script: Use Cq-Include-Trybots: for official builders
2020-04-30 thakis clang: Only copy msdia140.dll next to llvm-symbolizers when building clang.
2020-04-30 hans Clang build script: prefer Python 2 on Mac until infra problem is fixed
2020-04-28 inglorion goma_link: Add --no-gomacc option
2020-04-23 hans Clang build script: use CMake 3.17.1
2020-04-22 thakis win cross builds: Copy dia dlls when targeting Windows, even on non-Win hosts.
2020-04-22 mark clang: make platform downloaded by update.py switchable with --platform
2020-04-19 lukasza Preserving qualifiers and specifiers: |const|, |volatile|, |mutable|.
2020-04-19 bikineev Reland "clang plugins: default no-members-in-stack-allocated to on"
2020-04-18 thakis Revert "clang plugins: default no-members-in-stack-allocated to on"
2020-04-17 lukasza Handling of basics: |Pointee* field| -> |CheckedPtr<Pointee> field|.
2020-04-17 johannkoenig clang plugins: default no-members-in-stack-allocated to on
Created with:
roll-dep build buildtools tools/clang
Bug: None
Change-Id: Iedb7379f02bd1272305f8767299be98b137880bc
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24800
Reviewed-by: Stephen White <senorblanco@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
MapAsync in dawn_native is fully implemented and only missing
a couple cleanups that can be done once MapRead/WriteAsync are
removed.
MapAsync in dawn_wire is left as a pure shim on top of
MapRead/WriteAsync and will be transitioned to its own commands
in follow-ups.
All MapRead/WriteAsync end2end and validation tests are duplicated
for MapAsync.
Bug: dawn:445
Change-Id: Ib1430b9257149917be19a84f13e0ddd2a8eccc32
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24260
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Stephen White <senorblanco@chromium.org>
In order to remove the kMaxBindingsPerGroup limit in Dawn, some static
ityp::arrays need to be made dynamically sized. This CL adds ityp::vector
wrapping std::vector.
This CL also fixes the assumption that ityp::stack_vec iterators are pointers
Bug: dawn:442, dawn:443
Change-Id: I8698cbba3ea80ac063ab918a77f223c527720d08
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24480
Commit-Queue: Austin Eng <enga@chromium.org>
Reviewed-by: Stephen White <senorblanco@chromium.org>
This CL adds per-stage and per-pipeline-layout limits according
to the WebGPU spec. It also slightly increases kMaxBindingsPerGroup
from 16 to 24 so that these limits can be effectively tested
without hitting kMaxBindingsPerGroup. kMaxBindingsPerGroup is not a
real WebGPU limit and will be removed in future patches.
Bug: dawn:443
Change-Id: I72be062cd31dea4ebd851f2d9f8274a77f286846
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24481
Reviewed-by: Stephen White <senorblanco@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
Adds RenderPassDescriptor.occlusionQuerySet for struct compatibility
with upstream webgpu.h, and validation errors that it's not used (since
it's not implemented).
Bug: dawn:22
Change-Id: I05ac75105038a0d7569cc720170e55f35b0f80d7
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24620
Commit-Queue: Kai Ninomiya <kainino@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
binding index >= kMaxBindingsPerGroup is actually valid.
Bug: none
Change-Id: Idfba743d50013b7115f125b6441fd49732dffc96
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24700
Commit-Queue: Kai Ninomiya <kainino@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
Implements validation for RenderPassDepthStencilAttachmentDescriptor depthReadOnly and
stencilReadOnly flags to match WebGPU specification. Includes corresponding unit tests.
bug: dawn:485
Change-Id: I21e624850d5a393469569417f102fb979dbfdf27
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24602
Commit-Queue: Brandon Jones <brandon1.jones@intel.com>
Commit-Queue: Kai Ninomiya <kainino@chromium.org>
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Adds WARP to known vendor/device Ids so
tests can detect when MBR is being used.
BUG=dawn:463
TEST=dawn_end2end_tests
Change-Id: I19f16dfeb4839c5a7c0a993bab94d2b6ca4ca36d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24680
Reviewed-by: Rafael Cintron <rafael.cintron@microsoft.com>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Bryan Bernhart <bryan.bernhart@intel.com>
These were previously skipped because clang-format was messing up our
builder-pattern code. But we got rid of the builder pattern long ago.
The actual files will be autoformatted in the next CL.
Bug: none
Change-Id: Ia01a2cabc2daa9d94a15bf44687bc2e5801b49bd
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24621
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Kai Ninomiya <kainino@chromium.org>
Done by:
- Appending an extra newline at the end of src/**/*.{cpp,h,mm,gn}
except src/tests/*
- Running git cl format --full to format the full contents of every
changed file
Bug: none
Change-Id: Id88fc5ed0c5efbbc93b2c6a305c2f98465fe646d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24641
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Kai Ninomiya <kainino@chromium.org>
Previously, buildtools' copy of clang-format was stuck at 6.0, so we
used a custom built of 7.0. Now, buildtools' version is 11.0.
Bug: none
Change-Id: I8964bcfbea2d40284249427395c8d417fc77b18d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24640
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Kai Ninomiya <kainino@chromium.org>
In order to remove a warning in the D3D debug layer, this patch passes
an empty range CPU written range to calls of Unmap on READBACK
buffers.
Bug: dawn:419
Change-Id: Ic4dcbf31beb3a257c3d88896f4bb97e19caf0cc6
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24301
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Added validation tests for CommandEncoder::CopyB2T, CommandEncoder::CopyT2B and
Queue::WriteTexture which involve copying or writing to multiple layers
of a 2d-array texture.
Bug: dawn:483
Change-Id: I23f580dff86cd2512a94b41c9c0ce795122a045e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24443
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Tomek Ponitka <tommek@google.com>
This patch implements buffer lazy initialization before
CopyBufferToBuffer() behind the toggle LazyClearBufferOnFirstUse.
- If the source buffer is not initialized, it will be cleared to 0
before CopyBufferToBuffer().
- If the destination buffer is not initialized and the copy doesn't
overwrite the whole buffer, it will be cleared to 0 before
CopyBufferToBuffer(), otherwise the buffer shouldn't be cleared.
BUG=dawn:414
TEST=dawn_end2end_tests
Change-Id: I3d0512c6376a1ed8928e86f8e56fefebc16910fa
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24360
Commit-Queue: Jiawei Shao <jiawei.shao@intel.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
It is breaking the roll of Dawn in Chromium because on ChromeOS the
macro is defined on the command-line, causing the compilation to fail
because of a macro redefinition.
Bug: None
TBR=enga@chromium.org
Change-Id: I13eebb9b40f2a5f7c1eed4e3572de3eda2db8bb6
Change-Id: I4797211f4d9ff122d992d78aeac83fd4f0585ff6
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24580
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
In the validation tests, we relied on Queue.Submit(0, nullptr) to
resolve mapping operations. This is fragile so we replace it with a
FlushMappingOperations() function that uses device.Tick() instead.
This allows removing the mapSerial argument from
Buffer::MapRead/WriteAsyncImpl (which was the actual goal of this CL).
Bug: dawn:445
Change-Id: Id98822287370c371bebb83afb8e290e17f3c1b55
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24381
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
In order to lift Dawn's restriction on the number of bindings
per bind group, static sized arays need to be converted to
dynamically sized vectors. This CL adds Chromium's StackVector
class which behaves like std::vector but provides a stack allocator
to allocate small vectors on the stack. Dawn can use this to avoid
making separate heap allocations for a smaller, realistic binding
counts.
The CL also adds an ityp::stack_vec class to support using
a StackVector with TypedInteger indices.
Bug: dawn:442, dawn:443
Change-Id: I7604c02b3ea52cd63990a2e8b45ed238a5d52232
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/23681
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Bryan Bernhart <bryan.bernhart@intel.com>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
This required changing DeviceBase::CreateBufferImpl to return
ResultOrError<Ref<BufferBase>>
Bug: chromium:1103154
Change-Id: I1a5811d293333b6ef29c988a08f2f1f84ac65702
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24500
Commit-Queue: Kai Ninomiya <kainino@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
- Fix a struct vs. class in forward declaration of std::hash
- Fix an unsigned vs. signed compare in BitSetIterator
- Fix the assumption that std::array::[const_]iterator is a pointer.
- Fix for reinterpret_cast from uint64_t to uint64_t not being allowed
for vulkan_platform.h
- Fix for a 32bit shift being expanded to 64bit.
Bug: None
Change-Id: I5f2bf8745aa1ef1eba9916fcf6ff7801b48f61cf
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24501
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Kai Ninomiya <kainino@chromium.org>
Added Queue::WriteTexture with validation but no actual
implementation. Tests were mostly taken from validation tests
for copying buffer to texture. Validation tests for CopyB2T
and WriteTexture do not cover 2d-array textures yet.
Bug: dawn:483
Change-Id: I9027eb615c02fe2265cde912f6ba17a235b94728
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24440
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Tomek Ponitka <tommek@google.com>
Adding zero as the optimized clear value to silence a warning in
the D3D12 debug layer. Warning will still occur under non-zero
clears.
Bug: dawn:418
Change-Id: Idada948950f28130618834d966b237dcc39460c7
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24300
Reviewed-by: Rafael Cintron <rafael.cintron@microsoft.com>
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Bryan Bernhart <bryan.bernhart@intel.com>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Skip re-binding samplers since sampler heap
allocations are cached and the pipeline would
redundantly get set every draw. This is
particularly important for draw heavy scenarios.
After the change:
+3% in RendererPerfTest/1.* via SkiaDawn
+100% for Forest Demo FPS (55ms vs 28ms)
BUG=dawn:479
Change-Id: I93cbca4e365d6ff89ec86fc15eaccf70b49ea916
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24161
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Bryan Bernhart <bryan.bernhart@intel.com>
Roll third_party/glslang/ 839704450..29c9135d0 (34 commits)
8397044502..29c9135d06
$ git log 839704450..29c9135d0 --date=short --no-merges --format='%ad %ae %s'
2020-07-07 rharrison Make sure glslang_angle has a definition in BUILD.gn
2020-07-07 bclayton Remove GLSLANG_BUILD_PIC flag
2020-07-07 bclayton Add new static targets to VS solution folders
2020-07-07 bclayton Add new rules to .gitignore
2020-07-03 marcin.slusarz Add --quiet option.
2020-07-05 ShabbyX gn: Fix dawn tests in Chromium
2020-07-05 ShabbyX gn: Fix `gn gen --check` by adding missing dependency
2020-07-03 bclayton Add GLSLANG_BUILD_PIC CMake flag
2020-07-03 ShabbyX gn: Optionally disable optimizations and HLSL
2020-07-03 bclayton Don't use add_link_options() on old CMake versions
2020-07-03 bclayton License headers: s/Google/The Khronos Group
2020-07-03 bclayton Kokoro: Correct the `build_file' path to build.sh
2020-07-02 bclayton Add config for license-checker and Kokoro scripts.
2020-07-02 bclayton Fix GLSLANG_IS_SHARED_LIBRARY define
2020-07-01 bclayton Add missing copyright headers
2020-07-02 cepheus Bump revision.
2020-07-01 cepheus SPIRV-Tools and tests: Update to location-validation in SPIRV-Tools.
2020-07-01 cepheus Tests: More broadly use automapping binding/location.
2020-07-01 bclayton Add additional licenses in use to LICENSE.txt
2020-07-01 cepheus HLSL: Catch error cases earlier, preventing a later assert.
2020-06-29 bclayton glslang: Only export public interface for SOs
2020-06-29 bclayton CMake: break up glslang into smaller static libs
2020-06-30 cepheus SPV: RelaxedPrecision: use the result precision for texture sampling.
2020-06-30 cepheus SPV: RelaxedPrecision: Generalize fix#2293 to cover more operations.
2020-06-24 e.proydakov Fixed GCC -Wunused-parameter in hlslParseables.cpp.
2020-06-29 bclayton CMake: Compile with -fPIC when building SOs
2020-06-29 bclayton CMake: Error on unresolved symbols
2020-06-29 bclayton Remove root kokoro/linux-*-cmake configs
2020-06-26 cepheus SPV: Fix#2293: keep relaxed precision on arg passed to relaxed param
2020-06-26 cepheus SPV: Partially address #2293: correct "const in" precision matching.
2020-06-25 lriki.net Add pack_matrix test
2020-06-12 lriki.net HLSL: Fix #pragma pack_matrix(row_major) not work on global uniforms
2020-06-24 bclayton Kokoro: Split linux cmake cfgs into static/shared
2020-06-23 e.proydakov Fixed msvc 2019 nmake compiler warnings with RTTI. By default cmake generates cxx_flags with `/GR` parameter. I updated CMAKE_CXX_FLAGS string and replaced `/GR` -> `/GR-`
Created with:
roll-dep third_party/glslang
Roll third_party/shaderc/ f4025c1cd..1402ed576 (3 commits)
f4025c1cd5..1402ed5765
$ git log f4025c1cd..1402ed576 --date=short --no-merges --format='%ad %ae %s'
2020-07-07 rharrison Roll 6 dependencies and update expectations. (#1097)
2020-07-06 dneto glslc and spvc understand -h as the same as --help (#1089)
2020-07-03 dneto Glslang third party build needs -fPIC (#1093)
Created with:
roll-dep third_party/shaderc
Roll third_party/spirv-cross/ 2e7a56258..559b21c6c (13 commits)
2e7a562583..559b21c6c9
$ git log 2e7a56258..559b21c6c --date=short --no-merges --format='%ad %ae %s'
2020-07-06 dsinclair Roll deps.
2020-07-01 post MSL: Do not emit swizzled writes in packing fixups.
2020-07-01 post MSL: Workaround broken vector -> scalar access chain in MSL.
2020-07-06 post MSL: Use input attachment index directly for resource index fallback.
2020-07-06 post GLSL: Support I/O flattening with arrays as final type.
2020-07-03 post GLSL: Support multi-level struct flattening for I/O.
2020-07-01 post Run format_all.sh.
2020-07-01 post test: Use --hlsl-dx9-compatible when attempting to compile SM 3.0 shaders.
2020-06-30 post GLSL: Fix nested legacy switch workarounds.
2020-06-29 post GLSL: Implement switch on ESSL 1.0.
2020-06-29 post GLSL: Use for-loop fallback instead of do/while for legacy ESSL.
2020-06-29 post Implement context-sensitive expression read tracking.
2020-06-29 post Fix bug with control dependent expression tracking.
Created with:
roll-dep third_party/spirv-cross
Roll third_party/spirv-headers/ 11d7637e7..308bd0742 (1 commit)
11d7637e7a..308bd07424
$ git log 11d7637e7..308bd0742 --date=short --no-merges --format='%ad %ae %s'
2020-06-26 dj2 Register the Tint compiler
Created with:
roll-dep third_party/spirv-headers
Roll third_party/SPIRV-Tools/ 52a5f074e..2fbeb04b6 (29 commits)
52a5f074e9..2fbeb04b6e
$ git log 52a5f074e..2fbeb04b6 --date=short --no-merges --format='%ad %ae %s'
2020-07-07 andreperezmaselco.developer spirv-fuzz: Implement the OpVectorTimesMatrix linear algebra case (#3489)
2020-07-07 vasniktel spirv-fuzz: fuzzerutil::MaybeGetConstant* #3487
2020-07-06 jaebaek Debug info preservation in copy-prop-array pass (#3444)
2020-07-03 vasniktel spirv-fuzz: TransformationInvertComparisonOperator (#3475)
2020-07-02 vasniktel Fix regression (#3481)
2020-07-02 vasniktel spirv-fuzz: Add fuzzerutil::FindOrCreate* (#3479)
2020-06-30 vasniktel spirv-fuzz: Add FuzzerPassAddCopyMemoryInstructions (#3391)
2020-06-30 vasniktel spirv-fuzz: Add one parameter at a time (#3469)
2020-06-29 jaebaek Fix ADCE pass bug for mulitple entries (#3470)
2020-06-26 ehsannas Add gl_BaseInstance to the name mapper. (#3462)
2020-06-26 andreperezmaselco.developer Implement the OpMatrixTimesScalar linear algebra case (#3450)
2020-06-25 jaebaek Clear debug information for kill and replacement (#3459)
2020-06-25 alanbaker Validate location assignments (#3308)
2020-06-23 ehsannas Support OpCompositeExtract pattern in desc_sroa (#3456)
2020-06-23 vasniktel spirv-fuzz: Implement FuzzerPassAddParameters (#3399)
2020-06-23 vasniktel spirv-fuzz: Add GetParameters (#3454)
2020-06-23 vasniktel spirv-fuzz: Permute OpPhi instruction operands (#3421)
2020-06-22 rharrison Add support for different default/trunks in roll-deps (#3442)
2020-06-19 jaebaek [spirv-opt] debug info preservation in ssa-rewrite (#3356)
2020-06-19 ehsannas Updated desc_sroa to support flattening structures (#3448)
2020-06-19 vasniktel spirv-fuzz: Refactor variable creation (#3414)
2020-06-19 vasniktel spirv-fuzz: Swap operands in OpBranchConditional (#3423)
2020-06-18 stevenperron Use structured order to unroll loops. (#3443)
2020-06-18 jaebaek Debug info preservation in dead branch elimination (#3425)
2020-06-17 vasniktel Add RemoveParameter method (#3437)
2020-06-17 vasniktel Fix return type (#3435)
2020-06-16 ehsannas Eliminate branches with condition of OpConstantNull (#3438)
2020-06-16 andreperezmaselco.developer spirv-fuzz: Implement vector shuffle fuzzer pass (#3412)
2020-06-16 andreperezmaselco.developer spirv-fuzz: Add replace linear algebra instruction transformation (#3402)
Created with:
roll-dep third_party/SPIRV-Tools
Roll third_party/tint/ 0c647a889..7b819aa16 (49 commits)
https://dawn.googlesource.com/tint/+log/0c647a8896d1..7b819aa16240
$ git log 0c647a889..7b819aa16 --date=short --no-merges --format='%ad %ae %s'
2020-07-07 rharrison Multiple fixes to get BUILD.gn builds working again
2020-07-07 dneto [spirv-reader] Even better hoisted variables
2020-07-06 dsinclair Use Tint Generator Number.
2020-07-06 dneto [spirv-reader] Improve placement of hoisted vars
2020-07-06 dneto [spirv-reader] Allow multi-block continue construct being the entire loop
2020-07-06 dneto [spirv-reader] Support OpPhi
2020-07-06 dsinclair Rolling 7 dependencies
2020-07-06 dneto Error out for unrecognized option, more than one file
2020-07-02 dj2 [msl-writer] Always add the metal_stdlib include.
2020-07-02 dj2 [msl-writer] Add namer class.
2020-06-30 dsinclair [msl-writer] Emit switch statements.
2020-06-30 dneto [spirv-reader] Refactor bookkeeping for localy defined values
2020-06-30 dsinclair [msl-writer] Emit loop statements.
2020-06-30 dneto [spirv-reader] Hoist definitions as needed
2020-06-30 dneto [spirv-reader] Don't move combinatorial values across control flow
2020-06-29 dsinclair [msl-writer] Add break and continue emission.
2020-06-29 dsinclair [msl-writer] Emit member accessors.
2020-06-29 dsinclair [spirv-writer] Allow casting of vectors along with scalars.
2020-06-26 dneto Enable Tint as part of a larger CMake project
2020-06-26 dj2 [msl-writer] Emit alias types.
2020-06-26 dj2 [msl-writer] Add array accessors.
2020-06-26 dj2 [msl-writer] Add unary op emission.
2020-06-26 dj2 [msl-writer] Emit kill statement.
2020-06-26 dj2 [msl-writer] Add emission of if statements.
2020-06-26 dj2 [msl-writer] Add cast conversion.
2020-06-26 dj2 [msl-writer] Add generation of as casts.
2020-06-26 dneto [spirv-reader] Weaken input validation to Vulkan 1.0
2020-06-25 rharrison Add configs for CQ
2020-06-23 dsinclair [metal-writer] Add entry point support.
2020-06-23 dsinclair [metal-writer] Emit constructors.
2020-06-23 dsinclair [metal-writer] Emit binary operations.
2020-06-23 dsinclair [metal-writer] Emit assignment statements.
2020-06-23 dsinclair [metal-writer] Emit functions
2020-06-23 dsinclair [metal-writer] Add identifier expression.
2020-06-23 dsinclair [metal-writer] Add return generation.
2020-06-23 dsinclair [metal-writer] Add basic type emission.
2020-06-23 dsinclair [metal-writer] Stub out the Metal Shading Language backend.
2020-06-23 rharrison Fix BUILD.gn issues for TypeDeterminerTest
2020-06-22 dneto [spirv-reader] Simplify null composites
2020-06-22 dj2 [spirv-writer] Only add used variables to entry point.
2020-06-22 dneto [spirv-reader] Support OpNop
2020-06-22 dneto [spirv-reader] Support Undef, mapping to null
2020-06-22 dneto [spirv-reader] Use type aliases pervasively
2020-06-22 dj2 Support the zero initializer syntax.
2020-06-22 dneto type determine accessor on aliased array
2020-06-22 dneto Add type alias unwrapping methods
2020-06-22 dj2 [spirv-writer] Add Operand and Instruction list aliases.
2020-06-22 dj2 [spirv-writer] Add function calls
2020-06-22 dj2 [spirv-writer] Generate function parameters.
Created with:
roll-dep third_party/tint
Change-Id: I33626195f373dde01e8e6ce26195578db372d949
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24461
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
This CL:
- Adds mappedAtCreation to dawn.json
- Changes dawn_native to implement CreateBufferMapped in terms of
mappedAtCreation.
- Duplicates all the CreateBufferMappedTests to mappedAtCreation tests
(both validation and end2end).
- Implements dawn_wire's mappedAtCreation in terms of
CreateBufferMapped. The reversal in dawn_wire will be done in a
follow-up CL.
Bug: dawn:445
Change-Id: I70b9fa729b1402524a6b993c3f288987eb65c6c4
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24083
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
https://swiftshader.googlesource.com/SwiftShader/+log/d25ce8725224..f6f11215cd93
$ git log d25ce8725..f6f11215c --date=short --no-merges --format='%ad %ae %s'
2020-07-01 capn Implement shaderStorageImageExtendedFormats support
2020-07-05 capn Implement scatter/gather for 1- and 2-byte texels
2020-07-01 capn Fix float-to-half conversion
2020-07-03 capn Eliminate large image specialization
2020-06-24 capn Refactor texel buffer reads
2020-06-24 capn Implement SNORM uniform texel buffer support
2020-06-24 capn Implement B10G11R11_UFLOAT_PACK32 uniform texel buffer support
2020-07-02 sugoi ASTC Decoder: Trim unused struct members
2020-07-02 capn Fix /DEBUG:FASTLINK usage
2020-06-30 pcc Start reserving x18 by default on Android targets.
2020-06-25 srisser Fix debug assert from happening in release build
2020-06-10 capn Optimize clearing of depth and stencil images
2020-06-25 thakis mac: Add ARM64 support to swiftshader.
2020-06-22 amaiorano Kokoro: add builds with REACTOR_EMIT_DEBUG_INFO and REACTOR_EMIT_PRINT_LOCATION
2020-06-22 amaiorano Fix build when ENABLE_RR_DEBUG_INFO enabled
2020-06-22 amaiorano Make Windows Kokoro script less verbose
2020-06-22 cwallez Revert "Optimize clearing of depth and stencil images"
2020-06-11 capn Assert attachment format supports blending when blending is enabled
2020-06-10 capn Optimize copying image data for presentation
2020-06-10 capn Optimize clearing of depth and stencil images
2020-06-01 capn Assert reserved binding entries aren't accessed
2020-05-12 capn Optimize out-of-bounds checks with unsigned compare
2020-05-07 capn Replace instead of add pointer offsets when out of bounds
2020-06-15 capn Add a benchmark with multisampling enabled
2020-06-15 capn Refactor multisample benchmark support
2020-06-11 capn Implement multisample support for the triangle benchmark
2020-06-17 capn Don't assert thread_local initialization
2020-06-11 capn Ignore rasterization state pointers when rasterization is disabled
2020-06-11 capn Zero-initialize the context state and data
2020-06-15 sugoi Cleanup: using the proper Image subregion structure
2020-06-16 bclayton Squashed 'third_party/marl/' changes from 5c6c1532220..d29553a3730
2020-06-16 bclayton Squashed 'third_party/marl/' changes from c5127112545..5c6c1532220
2020-06-09 bclayton SpirvShaderDebugger: Show vector elements as xyzw
2020-06-09 bclayton SpirvShaderDebugger: Add a virtual destructor
2020-06-15 bclayton Squashed 'third_party/marl/' changes from 38c0c7a0f..c51271125
2020-06-15 bclayton Repoint marl branch from master to main
2020-06-15 bclayton SubzeroReactor: Use new marl::Scheduler::Config API.
2020-06-10 amaiorano Make rr::Print output to debugger and be stubbed
2020-06-10 sugoi Regres: Roll deqp forward to latest 1.2.1
2020-06-04 capn Validate the SPIR-V code in debug builds
2020-06-05 capn Add a triangle rendering benchmark
2020-06-10 capn Add glslang dependency to VulkanBenchmarks
2020-06-10 capn Add glslang as a submodule
2020-06-05 capn Move CMake build targets for PowerVR samples before unit tests
2020-06-01 capn Add microbenchmarks for vkCmdClear*Image
2020-06-04 capn Add back vulkan.hpp
2020-06-01 caio.oliveira Convert Vulkan headers from CRLF to LF endings
2020-06-02 ari.suonpaa Add Z mirroring support for image blit.
2020-05-26 vantablack Added reference counting for PipelineLayout objects
2020-06-02 bclayton libVulkan: Use new marl::Scheduler::Config API.
(...)
2020-05-01 amaiorano Regres: use Subzero backend by default
2020-04-30 bclayton Squashed 'third_party/marl/' changes from 748d3c161..3c643dd4c
2020-04-30 bclayton Vulkan/Debug: Don't step for column updates
2020-04-30 bclayton Vulkan/Debug: Fix build with clang-10.
2020-04-12 bclayton Device: Use std::unique_ptr instead of raw pointers
2020-04-09 amaiorano CMake: add graphviz generation scripts
2020-04-29 jrprice Fix null dereference in OFFSET macro
2020-04-29 capn Fix JIT on separate thread
2020-04-28 capn Avoid implicitly destructing thread-locals
2020-04-27 amaiorano Eliminate use of Vulkan header BEGIN_RANGE/END_RANGE/RANGE_SIZE enums
2020-04-27 amaiorano Run clang-format on renamed headers
2020-04-27 amaiorano Rename Vulkan-source .h to .hpp
2020-04-27 bclayton ReactorUnitTests: Speed up multithreaded tests
2020-04-22 capn Eliminate the ABORT() macro
2020-04-24 capn Record vkCmdBindDescriptorSets() as a single command
2020-04-23 capn Store binding information in the pipeline layout
2020-04-22 capn Don't expose individual descriptor set layouts to SPIR-V compilation
2020-04-23 capn Fix ordering of descriptor set bindings
2020-04-24 bclayton SpirvShader: Document activeLaneMask() and storesAndAtomicsMask()
2020-04-24 capn Omit ASSERT() expression evaluation in Release builds
2020-04-23 bclayton SpirvShaderDebugger: Ensure frames are fully popped
2020-04-23 bclayton SpirvShaderDebugger: Implement globals, stub array types
2020-04-22 bclayton SpirvShader: Add WriteCFGGraphVizDotFile debug function
2020-04-21 pcc Don't unlock Android buffers immediately after locking them.
2020-04-20 digit LLVM: Do not map read-only data sections as executable.
2020-04-17 digit Vulkan: Add vk_icdInitializeConnectToServiceCallback()
2020-04-23 amaiorano Kokoro: fix SWIFTSHADER_LESS_DEBUG_INFO not being set
2020-04-22 digit Update tests/presubmit.sh to accept Fuchsia bugs as fxb/#
2020-04-22 capn Fix specializing graphics routines for the pipeline layout
2019-05-15 bclayton SpirvShader: Add a flag for printing SPIRV execution
2020-04-17 bclayton Regres: Write logs to /dev/null
2020-04-20 amaiorano CMake: use target_compile_options/definitions for llvm
2020-04-20 amaiorano CMake: use target_link_options
2020-04-20 amaiorano CMake: require version 3.13
2020-04-20 amaiorano Kokoro: update CMake to latest version
2020-04-17 bclayton Regres: Limit the default number of threads to 100
2020-04-15 capn Pass only descriptor data to shader execution
2020-04-16 capn Reduce descriptor binding info exposure
2020-04-22 bclayton Kokoro: Fix ubuntu bots.
2020-04-17 digit Vulkan: Fix Fuchsia external semaphore fix tryWait().
2020-04-21 amaiorano CMake: fix astc code not being enabled correctly
2020-04-20 capn Don't use deprecated llvm::Type::getVectorNumElements()
2020-04-17 capn Fix JIT on separate thread
2020-04-03 bclayton Use Thread Safety Analysis annotations throughout SwiftShader.
2020-04-17 digit CMakeLists: Fix Fuchsia build.
2019-07-01 bclayton LLVMReactor: Drop codegenMutex, now thread safe.
2020-04-17 bclayton LLVMJIT: Remove the TargetMachine cache.
2020-04-17 bclayton LLVM 7: Set LLVM_ENABLE_THREADS to 1
2020-04-17 bclayton SpirvShader: Fix ASSERT firing in debugger
2020-04-17 bclayton Squashed 'third_party/marl/' changes from 539094011..748d3c161
Created with:
roll-dep third_party/swiftshader
TBR=enga@chromium.org
Bug: None
Change-Id: I9c71f3e1810f0515ba5958cf18c9d31f0b3b40cd
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24441
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Moved some of the validation helper functions from CommandEncoder.cpp
to CommandValidation.cpp. This will make them accessible for
Queue::WriteTexture. Also introduced ValidateLinearTextureData
and ValidateTextureCopyRange which combine already implemented
checks in a way that's defined in WebGPU spec.
Bug: dawn:483
Change-Id: I04304c5e4906f3745c6adf75758fae179c6ffcfe
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24283
Commit-Queue: Tomek Ponitka <tommek@google.com>
Reviewed-by: Austin Eng <enga@chromium.org>
Change-Id: Id0ee4940c7cec255558bcca3bfa578ee4bdb87ab
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24421
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
- Move wgpu::TextureUsage::Storage at the end of the enum.
- Reorder some methods of device to be in alphabetical order.
- Reorder members of wgpu::QuerySetDescriptor.
- Change SurfaceDescriptorFromHTMLCanvasID to
SurfaceDescriptorFromCanvasHTMLDescriptor.
Bug: dawn:22
Change-Id: Ib18fbaf153ad2969b0d0c4e49682e8736b00776c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24280
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
GetMappedRange never produces errors and instead returns nullptr when it
is disallowed. When in a correct state, should return a valid pointer as
much as possible, even if the buffer is an error or if the device is
lost.
Adds tests for error buffers and device loss, and modify existing tests
to not expect a device error.
Also removes some dead code in the Vulkan backend and adds a fix for
missing deallocation of VkMemory on device shutdown.
Bug: dawn:445
Change-Id: Ia844ee3493cdaf75083424743dd194fa94faf591
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24160
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Stephen White <senorblanco@chromium.org>
True FP16 is only supported in DXC through Shader Model 6.2, also
check the value of the Native16BitShaderOpsSupported member of
D3D12_FEATURE_DATA_D3D12_OPTIONS4 to view whether hardware actually
supports FP16 operations.
BUG=dawn:426
TEST=dawn_end2end_tests
Change-Id: If675f7ba650cb1bd8c792928b70619b9ccda048a
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/23243
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Xinghua Cao <xinghua.cao@intel.com>
This patch implements buffer lazy initialization before writeBuffer():
if the buffer is not initialized and writeBuffer() doesn't cover the
whole buffer, the buffer will be cleared to 0, otherwise the buffer
shouldn't be cleared.
This patch also introduces a toggle LazyClearBufferOnFirstUse for the
development of buffer lazy initialization: before buffer lazy
initialization being completely supported, all the related code will
only be enabled behind this toggle to prevent the buffers with valid
content being unexpectedly cleared.
BUG=dawn:414
TEST=dawn_end2end_tests
Change-Id: I99a2aa98ca4b9b21d69c6b32080afb525e2c4ad3
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24041
Commit-Queue: Jiawei Shao <jiawei.shao@intel.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Currently the Chromium build defines a wrapper build target
for Dawn (//chrome/test:dawn_perf_tests) that seems to exist
only to specify some extra data dependencies. By moving this
data dependencies onto the Dawn dawn_perf_tests itself, this
removes a problematic target in Chromium that would otherwise
block my planned changes for crbug.com/816629.
Bug: chromium:816629
Change-Id: I428698fe164bd1aad09c8dba14e57a4b7acebb1c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24302
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
This patch fixes two bugs in the copy commands with BC formats and
multiple array layers on D3D12 and OpenGL and adds two end2end tests as
the regression tests.
This patch also removes "viewArrayLayer" in the struct CopyConfig used
in CompressedTextureBCFormatTest and sets the base array layer into
CopyConfig.copyOrigin3D.z instead.
BUG=dawn:453
TEST=dawn_end2end_tests
Change-Id: I1c2e6b79fb7c44fc996655ab5a908e27ba8c4729
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24183
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>