This CL adds emission of CallStatement to the various backends.
Bug: tint:45
Change-Id: Ia2bdf0433f136c516ecccdcbc64a5365094220af
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/25281
Reviewed-by: David Neto <dneto@google.com>
This CL adds type determination for the call statement.
Bug: tint:45
Change-Id: I2460fe6c6103bdf7e5d0367cded1d78ca5d671d6
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/25321
Reviewed-by: David Neto <dneto@google.com>
This CL adds CallStatement to the AST to allow wrapping a CallExpression
into a statement.
Bug: tint:45
Change-Id: I5a9525514344fcc2cf9900eb2cd78c1fb94ca2ef
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/25320
Reviewed-by: David Neto <dneto@google.com>
Still TODO: OpSelect over arrays and structures, as permitted in SPIR-V 1.4
Bug: tint:3, tint:99
Change-Id: I70f6c8a43ea3339cd715813c6eb0128d66ff0df8
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/25301
Reviewed-by: dan sinclair <dsinclair@chromium.org>
This CL adds the scaffolding for the HLSL backend.
Bug: tint:7
Change-Id: Iaf9f5159bc409f3ac71fcec281229258bdfa021b
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/25000
Reviewed-by: David Neto <dneto@google.com>
This Cl adds the emission of storage buffers to the MSL backend.
Bug: tint:8
Change-Id: I6923926b36e73f2e351443cf1d2bf6d70873bc9a
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/25264
Reviewed-by: David Neto <dneto@google.com>
This CL adds emission of import function calls to the MSL backend.
Bug: tint:8
Change-Id: Ib8b8638b11caee2ff3557d551447b215ef2a4c69
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/25262
Reviewed-by: David Neto <dneto@google.com>
Couple of little style issues, and a path to a file that was incorrect.
Change-Id: I21d1a4ca41bc36163602378086989ac712f54469
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/25265
Reviewed-by: dan sinclair <dsinclair@chromium.org>
This CL cleans up some interfaces and methods in the MSL generator and
generator impl classes.
Bug: tint:8
Change-Id: I9aabeb1ecb69baeaa9cb6bbc15e313806923dddc
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/25163
Reviewed-by: David Neto <dneto@google.com>
This CL adds support for handling uniform data. Currently the uniform is
added to a buffer where the number is the binding value. This will need
to be updated to accept the correct mapping from the embedder.
Bug: tint:8
Change-Id: Icccccbe599a9555defa6136e384745f4093df020
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/25104
Reviewed-by: David Neto <dneto@google.com>
Old way:
- struct decorated with BufferBlock
- Uniform storage class
New way
- struct decorated with Block
- StorageBuffer storage class
Also fixes the result type for an access chain.
Bug: tint:99
Change-Id: I2324ba94bb19b369d206313de798bdfec6099fe0
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24605
Reviewed-by: dan sinclair <dsinclair@chromium.org>
Roll build/ 1a541c158..9b01e295f (100 commits)
1a541c1582..9b01e295f8
$ git log 1a541c158..9b01e295f --date=short --no-merges --format='%ad %ae %s'
2020-07-17 chromium-autoroll Roll Fuchsia SDK from 0.20200717.0.1 to 0.20200717.1.1
2020-07-17 chromium-autoroll Roll Fuchsia SDK from 0.20200716.2.1 to 0.20200717.0.1
2020-07-17 sdefresne [ios] Force target to be dirty if xcode_version changes
2020-07-17 mheikal Remove unneeded extra_r_text_files from resource management
2020-07-17 bpastene Reland #2: "Split the cros_boards gclient var into two for fetching QEMU images."
2020-07-17 wnwen Android: Add direct deps for turbine
2020-07-17 thomasanderson [XProto] Remove usage of XCursor
2020-07-16 liaoyuke [lacros] Add functions to download ash-chrome in the test runner
2020-07-16 chromium-autoroll Roll Fuchsia SDK from 0.20200716.1.1 to 0.20200716.2.1
2020-07-16 liaoyuke [lacros] Fix argument helper
2020-07-16 wfh Turn on CFG linker config and bitmap generation for DLLs.
2020-07-16 liaoyuke [lacros] Fix build/lacros OWNERS file
2020-07-16 wnwen Android: More direct deps for turbine
2020-07-16 wnwen Android: Direct deps for //net
2020-07-16 bpastene Revert "Reland "Split the cros_boards gclient var into two for fetching QEMU images.""
2020-07-16 wnwen Android: Direct deps for //media
2020-07-16 sdefresne [ios] Force target to be dirty if xcode_version changes
2020-07-16 chromium-autoroll Roll Fuchsia SDK from 0.20200716.0.1 to 0.20200716.1.1
2020-07-16 chromium-autoroll Roll Fuchsia SDK from 0.20200715.2.1 to 0.20200716.0.1
2020-07-16 wnwen Android: Direct deps for chrome/android etc
2020-07-16 liaoyuke [lacros] Generate a test runner wrapper for lacros
2020-07-15 wnwen Android: Prefer direct deps for turbine
2020-07-15 chromium-autoroll Roll Fuchsia SDK from 0.20200715.1.1 to 0.20200715.2.1
2020-07-15 wnwen Android: Add new build speed benchmarks
2020-07-15 bpastene Reland "Split the cros_boards gclient var into two for fetching QEMU images."
2020-07-15 torne android: use final_android_sdk when setting versionCode.
2020-07-15 pkotwicz [Android] Re-enable custom errorprone plugins
2020-07-15 nelakaczmarek Test commit
2020-07-15 chromium-autoroll Roll Fuchsia SDK from 0.20200715.0.1 to 0.20200715.1.1
2020-07-15 hans Clang: the tip-of-tree version is now 12.0.0
2020-07-15 chromium-autoroll Roll Fuchsia SDK from 0.20200714.1.1 to 0.20200715.0.1
2020-07-15 bjoyce Use coverage on the fly for junit tests.
2020-07-14 thakis Update a TODO bug link.
2020-07-14 chromium-autoroll Roll Fuchsia SDK from 0.20200714.0.1 to 0.20200714.1.1
2020-07-14 bjoyce Set jvm arg for jacoco to false.
2020-07-14 agrieve Android: Dump logcat to logdog when gtests are listing tests
2020-07-14 chromium-autoroll Roll Fuchsia SDK from 0.20200713.3.1 to 0.20200714.0.1
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-07-07 bpastene Split the cros_boards gclient var into two for fetching QEMU images.
2020-07-07 bpastene chromeos: Correctly set the '--flash' arg for host-side tests.
2020-07-07 chromium-autoroll Roll Fuchsia SDK from 0.20200707.1.1 to 0.20200707.3.1
2020-07-07 bpastene chromeos: Treat all unknown-args as the cmd to run in host-side tests.
2020-07-07 chromium-autoroll Roll Fuchsia SDK from 0.20200706.3.1 to 0.20200707.1.1
2020-07-07 jiancai Redirect clang crash diagnosese
2020-07-07 chromium-autoroll Roll Fuchsia SDK from 0.20200706.2.1 to 0.20200706.3.1
2020-07-06 mthiesse Move Activity finishing for Instrumentation tests to BaseChromiumAndroidJUnitRunner
2020-07-06 wnwen Android: Refactor write_build_config.py java paths
2020-07-06 mheikal Improve pydeps related errors
2020-07-06 steimel Add libdbus to tsan_suppressions
2020-07-06 wnwen Android: Fix comments in compile_java.py
2020-07-06 chromium-autoroll Roll Fuchsia SDK from 0.20200706.0.1 to 0.20200706.2.1
Roll buildtools/ 6b951673d..eb3987ec7 (2 commits)
6b951673d1..eb3987ec70
$ git log 6b951673d..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.
Roll testing/ a711b1132..cadd4e1eb (71 commits)
a711b11325..cadd4e1eb3
$ git log a711b1132..cadd4e1eb --date=short --no-merges --format='%ad %ae %s'
2020-07-17 jdoerrie [Passwords] Enable Touch To Fill by default
2020-07-17 sky history: renames ThumbnailDatabase to FaviconDatabase
2020-07-17 wylieb Update client testing config to match server group
2020-07-17 cduvall Add system_webview_google_apk compile target to perf bots
2020-07-17 bsheedy Target Mac 10.15.5 for GPU Intel stable
2020-07-17 jeffyoon [ios] ios14 tests on chromium.tests.ios14
2020-07-16 dpranke Update //testing/buildbot to remove no-longer-used test types.
2020-07-16 thegreenfrog [ios] Add Testing Config for Fullscreen Finch Config
2020-07-16 liaoyuke [lacros] Encapsulates lacros test runner with test_env or xvfb
2020-07-16 dpranke Remove some unused code paths in the test() GN template.
2020-07-16 behdadb Low cpu_Wall_time_ratio can invalidate failures
2020-07-16 bsheedy Target experimental Win10 NVIDIA machines
2020-07-16 robertma Fix --additional-expectations for disable-site-isolation-trials
2020-07-16 jdeblasio [MIX-DL] Update field trial testing config for m85
2020-07-16 behdadb Updated upper limits of rep_perf_tests including CPU_wall_time_ratios
2020-07-16 sgilhuly Enable more cc_unittests for Skia Dawn
2020-07-16 andzaytsev Privacy elevated on Android: added to the field trial config
2020-07-16 sreejakshetty [bfcache] Cleanup empty test filters
2020-07-16 rsesek Forward invoker.frameworks in fuzzer_test template.
2020-07-16 liaoyuke [code coverage] Clean up code coverage merge script
2020-07-16 liaoyuke [lacros] Generate a test runner wrapper for lacros
2020-07-16 justincohen ios: Pause EmbedderBlockRestoreUrl and remove config.
2020-07-15 svenzheng Fix linux-lacros-tester-rel failure
2020-07-15 johnidel Add fieldtrial testing config for Heavy Ads
2020-07-15 svenzheng LUCI config for linux-lacros
2020-07-15 dpranke Reland "Add a first pass of the desktop test wrapper scripts."
2020-07-14 kimstephanie Revert "Add mac-official builder"
2020-07-14 jeffyoon [pgo] deprecate --no-sparse from merge scripts
2020-07-14 kimstephanie Add mac-official builder
2020-07-14 fhorschig [PwdCheckAndroid] Configure trybots to execute controller tests
2020-07-14 seblalancette [iOS] Fix QR Code Generation Study Name
2020-07-14 jochen Remove code that allows non-CORS whitelisted extra headers from intents
2020-07-14 tby Update field trial testing config for launcher experiments.
2020-07-14 bsheedy Switch GPU Mac Intel Exp to 10.15.5
2020-07-13 hypan emulator: Disable flaky tests in content_shell_test_apk on MM
2020-07-13 xinghuilu Split real time lookup with desktop and Android in field trials.
2020-07-13 steveroe Add fuchsia-fyi-arm64-dbg CI and try builder.
2020-07-11 jam Increase sharding of storage_service content_browsertest on CrOS debug to match content_browsertests.
2020-07-10 vikassoni Add fieldtrial config for DisableGles2ForOopR.
2020-07-10 isamsonov Add flag expectations file to high dpi builder.
2020-07-10 lpz Set --chunk-type=hash in run_wpt_tests.py.
2020-07-10 kerneis Implement OSMetrics::FillOSMemoryDump on Fuchsia
2020-07-10 chanli Remove step_name from telemetry_gpu_integration_test's test_id_prefix
2020-07-09 tbansal Enable idle unused socket timeout of 60 seconds on desktop
2020-07-09 ccameron Increase limit for aquarium_20k average frame time
2020-07-09 michaeldo Roll bots to Xcode 12 beta 2
2020-07-09 rockot Revert "Reland "Add MojoDedicatedThread field trial testing config""
2020-07-09 dullweber Enable ImprovedCookieControls by default
2020-07-09 masonfreed Add Webview fieldtrial testing config for WebComponentsV0
2020-07-08 jam Increase sharding for browser test suites on Linux ASan Tests (sandboxed).
2020-07-08 sreejakshetty [bfcache] Filter out newly failing content_browsertests
2020-07-08 kimstephanie Add win-official and win32-official
2020-07-08 kimstephanie Mac10.15 to main waterfall with no_nacl
2020-07-08 sreejakshetty [bfcache] Filter out newly failing content_unittests
2020-07-08 hazems AW UMA: delete fieldtrial config for WebViewCollectNonEmbeddedMetrics
2020-07-08 alcooper Remove vr_testapp from bots
2020-07-07 svenzheng Pixel tests add retry and disable some tests
2020-07-07 hypan android: Temporarily remove content_browsertests from L CQ builder
2020-07-07 bpastene Remove all unused build & test configs for betty CrOS testers.
2020-07-07 sreejakshetty [bfcache] Filter out newly failing content_browsertests
2020-07-07 dhoss Add CupsIppPrintingBackend experiment to field trial testing config
2020-07-07 wenbinzhang [benchmarking] Disable android-go-perf tester from uploading perf data
2020-07-07 dpranke Reland "Remove //chrome/test wrapper targets for angle."
2020-07-07 bpastene Enable pre-test flashing on all internal CrOS device tests.
2020-07-07 mbonadei Smoke tests to check Abseil is built with ABSL_OPTION_HARDENED=1.
2020-07-07 sreejakshetty [bfcache] Filter out new content_unittests failures
2020-07-07 sreejakshetty [bfcache] Filter out newly failing chrome_public_test_apk
2020-07-07 ricea Add WebSocketReassembleShortMessages config
2020-07-07 sreejakshetty [bfcache] Filter out newly failing unit_tests
2020-07-07 alito Enable WebRTC-SendSideBwe-WithOverhead field trial for testing.
2020-07-07 khushalsagar cc: Enable desychronized scrolling for field trial testing.
Roll third_party/googletest/ 356f2d264..a781fe29b (10 commits)
356f2d264a..a781fe29bc
$ git log 356f2d264..a781fe29b --date=short --no-merges --format='%ad %ae %s'
2020-07-13 ofats Googletest export
2020-07-11 ashikpaul17 Fixed some minor typos
2020-07-09 absl-team Googletest export
2020-07-07 ofats Googletest export
2020-07-07 absl-team Googletest export
2020-07-07 absl-team Googletest export
2020-04-11 olivier.ldff use target_compile_features to use c++11 if cmake > 3.8
2020-06-19 amatanhead Make EXPECT_THROW and EXPECT_NO_THROW macros more informative
2020-05-30 eli fix compilation on OpenBSD 6.7
2020-01-22 mjvk Fixes extensions missing for QNX
Roll third_party/spirv-tools/ bd2a9ea85..717e7877c (35 commits)
bd2a9ea852..717e7877ca
$ git log bd2a9ea85..717e7877c --date=short --no-merges --format='%ad %ae %s'
2020-07-17 alanbaker Store location values sparsely (#3488)
2020-07-17 dneto Permit Simple and GLSL450 memory model in WEBGPU_0 (#3463)
2020-07-17 antonikarp spirv-fuzz: support floating-point in TransformationInvertComparisonOperator (#3551)
2020-07-17 stefanomil Change MaybeApplyTransformation to return a boolean (#3555)
2020-07-17 stefanomil spirv-fuzz: Implement MaybeApplyTransformation helper function (#3540)
2020-07-17 stefanomil spirv-fuzz: Assert false in IsApplicable method of TransformationAccessChain (#3528)
2020-07-16 vasniktel spirv-fuzz: Add support for OpBitcast to TransformationEquationInstruction (#3523)
2020-07-16 vasniktel spirv-fuzz: Add support for OpConvert to TransformationEquationInstruction (#3472)
2020-07-15 alanbaker Fix reachability in the validator (#3541)
2020-07-15 vasniktel spirv-fuzz: Remove TransformationCopyObject (#3531)
2020-07-15 vasniktel spirv-opt: Add support for OpLabel to dominator analysis (#3516)
2020-07-15 stefanomil spirv-fuzz: Fuzzer pass to interchange zero-like constants (#3524)
2020-07-15 afdx spirv-fuzz: Add replay range option (#3535)
2020-07-14 jaebaek Rewrite KillDebugDeclares() (#3513)
2020-07-14 andreperezmaselco.developer spirv-fuzz: Fix instruction insertion issue (#3521)
2020-07-14 andreperezmaselco.developer spirv-fuzz: Implement the OpMatrixTimesMatrix linear algebra case (#3527)
2020-07-14 greg Add support to GPU-AV instrumentation for Task and Mesh shaders (#3512)
2020-07-14 andreperezmaselco.developer spirv-fuzz: Support adding dead break from back-edge block (#3519)
2020-07-14 andreperezmaselco.developer Support OpPhi when replacing boolean constant operand (#3518)
2020-07-12 vasniktel spirv-fuzz: TransformationAddSynonyms (#3447)
2020-07-11 vasniktel spirv-fuzz: Remove unused functions (#3510)
2020-07-11 vasniktel spirv-fuzz: Minor refactoring (#3507)
2020-07-10 greg Preserve OpenCL.DebugInfo.100 through elim-local-single-store (#3498)
2020-07-10 jaebaek Preserve debug info in vector DCE pass (#3497)
2020-07-10 stefano.milizia00 Implement transformation to record synonymous constants. (#3494)
2020-07-09 jaebaek Fix build failure (#3508)
2020-07-09 greg Upgrade elim-local-single-block for OpenCL.DebugInfo.100 (#3451)
2020-07-09 vasniktel spirv-fuzz: TransformationReplaceParameterWithGlobal (#3434)
2020-07-09 andreperezmaselco.developer Implement the OpMatrixTimesVector linear algebra case (#3500)
2020-07-08 jaebaek Preserve OpenCL.100.DebugInfo in reduce-load-size pass (#3492)
2020-07-08 andreperezmaselco.developer spirv-fuzz: Add image sample unused components transformation (#3439)
2020-07-07 andreperezmaselco.developer spirv-fuzz: Add variables with workgroup storage class (#3485)
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)
Roll tools/clang/ b49c12a8f..6412135b3 (10 commits)
b49c12a8f3..6412135b39
$ git log b49c12a8f..6412135b3 --date=short --no-merges --format='%ad %ae %s'
2020-07-15 aeubanks Set -DLIBCXX_ENABLE_EXPERIMENTAL_LIBRARY=OFF
2020-07-15 hans Clang: fix syntax error in build.py
2020-07-15 hans Clang: the tip-of-tree version is now 12.0.0
2020-07-14 lukasza Teach the rewriter about additional thirdy-party paths.
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.
Created with:
roll-dep build buildtools testing third_party/binutils third_party/googletest third_party/spirv-headers third_party/spirv-tools tools/clang
R=rharrison@google.com
Change-Id: I1f5a20578b6909f556270c807b6be048a97182db
Change-Id: I8cf650a6be72c832bf50e74b4aed1ed1aff9b661
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/25160
Reviewed-by: David Neto <dneto@google.com>
Emits it as a module-level variable. Deconstruct and throw away
the gl_PerVertex struct.
Not handled: unusual patterns that are technically valid but
which don't occur in practice:
- loading, storing, or producing intermediate values of the whole structure.
- multiple definitions of the per-vertex structure (e.g. if someone had
put both a vertex shader and a tessellation shader in the same
module.)
Bug: tint:3, tint:99
Change-Id: I3ad9ff6ab780a002367f01f385bfa7d6ddba6db9
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24880
Reviewed-by: dan sinclair <dsinclair@chromium.org>
gn gen --check is failing in chromium due to how includes are propagated
out of deps. Re-organizing them to resolve this.
Change-Id: I3c21bbb0cb8b5bc5bdad4ab97d557d718a3cdc33
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/25120
Reviewed-by: dan sinclair <dsinclair@chromium.org>
After submitting the last CL I received an email with the note:
Some configs in revision 780c594 in tint repo have validation errors.
luci-config had to reject all configs in this revision.
* ERROR: refs.cfg: refs.cfg is not used since 2019 and must be deleted
Change-Id: I40c4fcdccd9af53aa47e32f074065782876f179d
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/25080
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
The try job group is project-tint-tryjobs-access.
Change-Id: Ib9541dbc36ec08d3b90850808a1d118926f2e110
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/25061
Reviewed-by: dan sinclair <dsinclair@chromium.org>
This CL adds code to emit program constants in the MSL backend.
Bug: tint:8
Change-Id: I63e40983253349d2e293904fbe9b6f543b885b34
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24940
Reviewed-by: David Neto <dneto@google.com>
This CL fixes up the array constructors to emit `{}` instead of
`<type>[<size>]()`. The matrix example is also updated to have the
correct data format for WGSL matrices which fixes the MSL output.
Bug: tint:8
Change-Id: I3a08a8814d4b8b38a57b6324e2182a271c958ef3
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/25060
Reviewed-by: David Neto <dneto@google.com>
This CL adds a `_stride_` into the array type name to differentiate an
array of 8 elements and a runtime array of stride 8.
Bug: tint:102
Change-Id: Iaf10fe5957acde16a9ccdf2a0fd8a83e47bb57bc
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24962
Reviewed-by: David Neto <dneto@google.com>
This CL adds support for injecting padding into structs in the MSL
backend.
Bug: tint:8
Change-Id: I83631a71ce4a2f00b61974ee2c0c7ca1b97f3028
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24601
Reviewed-by: David Neto <dneto@google.com>
This CL extends module scoped variables to include support for builtins.
Bug: tint:8
Change-Id: I9e4363be32401bfdd45ad5d1727d9432aca206fe
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24786
Reviewed-by: David Neto <dneto@google.com>
This CL adds a helper to get referenced builtins and referenced
locations from the ast::Function.
Change-Id: I95cf7efd6b0fe9569c5e514d3245112e78147ffe
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24783
Reviewed-by: David Neto <dneto@google.com>
This CL cleans up some of the entry point variable code.
Bug: tint:8
Change-Id: Ic89ff3608d34af26eeb9fe9408cdbd5c7de22dda
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24782
Reviewed-by: David Neto <dneto@google.com>
This CL generates entry point functions and duplicate functions as
needed to call from the entry points.
Bug: tint:8
Change-Id: I8092ce463248e7a887c26ae05b0774e8fa21ab94
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24764
Reviewed-by: David Neto <dneto@google.com>
This CL adds support for calling user defined functions from the MSL
backend. Intrinsics and imports are not handled yet.
Bug: tint:8
Change-Id: I45c3078d014ab89cc0eec76dd626759077e1a890
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24763
Reviewed-by: David Neto <dneto@google.com>
A given caller should inherit the globals referenced from a callee. This
way, a given entry point will have a list of all the variables used up
the stack which it needs to reference.
Change-Id: Ib6efcdd5c3347749ad2d54aecfa425bd966a62fd
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24762
Reviewed-by: David Neto <dneto@google.com>
This CL adds generation of the input/output structures for entry points.
Bug: tint:8
Change-Id: I93942496bcea0a2eea944e5e1cd0baf383530f5e
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24721
Reviewed-by: David Neto <dneto@google.com>
This Cl updates the type determiner to annotate each function with the
name of any entry points which call into the given function. This will
allow determining in the backends if we need to duplicate the function
due to differing entry point parameter requirements.
Bug: tint:8
Change-Id: Icd7c4ccab72dd6eabcf0abaf1159319949c4ecf5
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24760
Reviewed-by: David Neto <dneto@google.com>
This Cl updates the cube example to use unique names for the entry
points and fixes the duplicate name used for fragColor between the
vertex and fragment shaders.
Change-Id: Icb77897bac88f7641cab2702b37573bfd771a586
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24781
Reviewed-by: David Neto <dneto@google.com>
Take the type of a const-definition (or a write to a hoisted variable)
from the generated expression rather than the directly-converted type
from the SPIR-V ID.
This prepares the way for remapping storage buffers from
Uniform/BufferBlock to StorageBuffer/Block representation.
Bug: tint:99
Change-Id: I6104d8ad96312053562468a3cdb247932c1cb6cb
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24604
Reviewed-by: dan sinclair <dsinclair@chromium.org>
This CL fixes the output of multi-dimentional arrays in the MSL backend.
Bug: tint:7, tint:100
Change-Id: I8fe925145973555f77673e9db97f150077e2471f
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24560
Reviewed-by: David Neto <dneto@google.com>
This CL adds variable declarations to the MSL backend.
Bug: tint:7
Change-Id: Icf63ad44a217213e5036eb76429e25a3031822eb
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24540
Reviewed-by: David Neto <dneto@google.com>
If the statement or expression being emitted is not implemented this
will now output the failed statement.
Bug: tint:7
Change-Id: I8a359abd369067540d503a1facbee018e91e8666
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24523
Reviewed-by: David Neto <dneto@google.com>
Need the algorithm include to build on Windows.
Bug: tint:7
Change-Id: I5691c9e30c762271c767934921fe925120a67e01
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24522
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
If the remapper give an ident a new name which collides with a future
ident name we need to rename the future name to not collide.
Bug: tint:7
Change-Id: I162a3071f75ed714cee730b78aebefa8c75c77de
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24521
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
This Cl fixes up the format parsing so it doesn't get recognized as an
invalid option.
Change-Id: I92626830ef36c3de5908edeb8900afd5807b31b0
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24520
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
Use the fact that in WGSL the scope corresponding to the loop construct
encloses the scope for its associated continue construct.
In our construct data structure, the two are adjacent but not
overlapping.
This improvement means that when a definition is in a loop construct,
but used only in the loop or associated continue construct, then no
hoisting is required.
Bug: tint:3
Change-Id: I8d33b8f76303ab2868306847e846b4c26899e746
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24420
Reviewed-by: dan sinclair <dsinclair@google.com>
When we hoist a variable out of a continue construct, put it
in associated loop construct, if it exists. This reduces its
lifetime in WGSL, and easier to understand as a code reader.
Change-Id: I8f0cc37640bfe67874cbc27b55029e79e9a8992c
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24321
Reviewed-by: dan sinclair <dsinclair@google.com>
The special case is not "single-block-loop" but rather the
case where a continue target is also its own loop header.
This can occur for single-block loops and multi-block loops.
Bug: tint:3
Change-Id: I4af1410793caf8b26a1f781e221fc0b395f07aa3
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24320
Reviewed-by: dan sinclair <dsinclair@google.com>
For each OpPhi, make a variable to carry values from predecessor blocks
to the OpPhi. Declare the variable at the smallest scope enclosing all
the predecessor blocks (where we write to it), and the OpPhi (where we
read from it).
Bug: tint:3
Change-Id: I7898b4b903d9ee1a25a7466e3c5aaf6840550e2d
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24181
Reviewed-by: dan sinclair <dsinclair@google.com>