Commit Graph

1567 Commits

Author SHA1 Message Date
David Neto 9b9a0b07da [spirv-reader] Support OpPhi
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>
2020-07-06 16:08:17 +00:00
dan sinclair 35f47d6a90 Rolling 7 dependencies
Roll build/ 6f820da25..1a541c158 (409 commits)

6f820da254..1a541c1582

$ git log 6f820da25..1a541c158 --date=short --no-merges --format='%ad %ae %s'
2020-07-06 wnwen Android: Update errorprone to 2.4.0
2020-07-06 chromium-autoroll Roll Fuchsia SDK from 0.20200705.3.1 to 0.20200706.0.1
2020-07-06 thakis mac/arm: Disable -Wmax-tokens.
2020-07-06 chromium-autoroll Roll Fuchsia SDK from 0.20200705.2.1 to 0.20200705.3.1
2020-07-05 chromium-autoroll Roll Fuchsia SDK from 0.20200705.1.1 to 0.20200705.2.1
2020-07-05 thakis Disable -Wpsabi on the clang tot bots.
2020-07-05 chromium-autoroll Roll Fuchsia SDK from 0.20200704.3.1 to 0.20200705.1.1
2020-07-05 chromium-autoroll Roll Fuchsia SDK from 0.20200704.2.1 to 0.20200704.3.1
2020-07-04 chromium-autoroll Roll Fuchsia SDK from 0.20200704.1.1 to 0.20200704.2.1
2020-07-04 chromium-autoroll Roll Fuchsia SDK from 0.20200704.0.1 to 0.20200704.1.1
2020-07-04 chromium-autoroll Roll Fuchsia SDK from 0.20200703.3.1 to 0.20200704.0.1
2020-07-03 chromium-autoroll Roll Fuchsia SDK from 0.20200703.1.1 to 0.20200703.3.1
2020-07-03 chromium-autoroll Roll Fuchsia SDK from 0.20200702.3.1 to 0.20200703.1.1
2020-07-03 chromium-autoroll Roll Fuchsia SDK from 0.20200702.2.1 to 0.20200702.3.1
2020-07-03 mthiesse Fix off-by-one in batched test result parsing
2020-07-02 chromium-autoroll Roll Fuchsia SDK from 0.20200702.1.1 to 0.20200702.2.1
2020-07-02 chromium-autoroll Roll Fuchsia SDK from 0.20200701.3.1 to 0.20200702.1.1
2020-07-02 chromium-autoroll Roll Fuchsia SDK from 0.20200701.2.1 to 0.20200701.3.1
2020-07-01 chromium-autoroll Roll Fuchsia SDK from 0.20200701.0.1 to 0.20200701.2.1
2020-07-01 thomasanderson [XProto] Remove xcbproto from sysroots
2020-07-01 rsesek iOS: Convert GN libs lists to frameworks in //build.
2020-07-01 thakis mac: Make it possible to download mac sdk on a linux host.
2020-07-01 chromium-autoroll Roll Fuchsia SDK from 0.20200630.3.1 to 0.20200701.0.1
2020-07-01 sdefresne [ios] Remove unused script
2020-07-01 chromium-autoroll Roll Fuchsia SDK from 0.20200630.2.3 to 0.20200630.3.1
2020-06-30 chromium-autoroll Roll Fuchsia SDK from 0.20200630.1.1 to 0.20200630.2.3
2020-06-30 sdefresne [ios/mac] Preliminary work to untangle templates and scripts
2020-06-30 chromium-autoroll Roll Fuchsia SDK from 0.20200629.3.1 to 0.20200630.1.1
2020-06-30 chromium-autoroll Roll Fuchsia SDK from 0.20200629.2.4 to 0.20200629.3.1
2020-06-29 alancutter Update error help text for the debugger in vs_toolchain.py
2020-06-29 chromium-autoroll Roll Fuchsia SDK from 0.20200629.1.1 to 0.20200629.2.4
2020-06-29 thakis mac: Include arm64 slice in libclang_rt.osx.a.
2020-06-29 thestig Consistently define OS_ASMJS and use it in place of __asmjs__.
2020-06-29 dpranke Address an ambiguity in @WrappedPath() in GN generate_wrapper.
2020-06-29 mbonadei [build] Always declare the clang_version GN argument.
2020-06-29 chromium-autoroll Roll Fuchsia SDK from 0.20200629.0.1 to 0.20200629.1.1
2020-06-29 hans [build] Pass Clang's resource dir as the first -libpath to the linker
2020-06-29 chromium-autoroll Roll Fuchsia SDK from 0.20200628.3.1 to 0.20200629.0.1
2020-06-29 chromium-autoroll Roll Fuchsia SDK from 0.20200628.2.1 to 0.20200628.3.1
2020-06-28 chromium-autoroll Roll Fuchsia SDK from 0.20200628.1.1 to 0.20200628.2.1
2020-06-28 chromium-autoroll Roll Fuchsia SDK from 0.20200627.3.1 to 0.20200628.1.1
2020-06-28 chromium-autoroll Roll Fuchsia SDK from 0.20200627.2.1 to 0.20200627.3.1
2020-06-27 chromium-autoroll Roll Fuchsia SDK from 0.20200627.1.1 to 0.20200627.2.1
2020-06-27 chromium-autoroll Roll Fuchsia SDK from 0.20200626.3.1 to 0.20200627.1.1
2020-06-27 chromium-autoroll Roll Fuchsia SDK from 0.20200626.2.3 to 0.20200626.3.1
2020-06-26 chromium-autoroll Roll Fuchsia SDK from 0.20200626.1.1 to 0.20200626.2.3
2020-06-26 behdadb Revert "Android: Bump default target_sdk_version 24 -> SDK used to compile"
2020-06-26 brucedawson Updates to require and use latest Windows 10 SDK
2020-06-26 jamescook Move buildflag LACROS into //build and rename to IS_LACROS
2020-06-26 agrieve Android: Bump default target_sdk_version 24 -> SDK used to compile
(...)
2020-05-15 rsesek Delete old package_mac_toolchain.py script
2020-05-15 chromium-autoroll Roll Fuchsia SDK from 0.20200514.3.1 to 0.20200515.0.1
2020-05-15 hypan libc++: Set output_name of libc++ to libc++_chrome for android
2020-05-15 sdefresne Reland "[ios] Update application extension rpath"
2020-05-15 yuezhanggg Re-enable some tests in ConditionalTabStripTest
2020-05-15 chromium-autoroll Roll Fuchsia SDK from 0.20200514.2.1 to 0.20200514.3.1
2020-05-15 agrieve Revert "Android: Add desugar runtime in dex() step"
2020-05-15 sebmarchand Disable the -Wprofile-instr-out-of-date when doing a PGO build
2020-05-14 chromium-autoroll Roll Fuchsia SDK from 0.20200514.1.1 to 0.20200514.2.1
2020-05-14 benmason Revert "Android: Use non-dummy multiprocessing in compile_resources.py"
2020-05-14 dewittj Add a whitelist of classes that are allowed to be missing during bytecode checks.
2020-05-14 sdefresne [ios] Fix `gn gen ...` for fat builds
2020-05-14 huangs [Bundles] Make bundle wrapper test scripts install '-m dev_ui' by default.
2020-05-14 amraboelkher Revert "[ios] Update application extension rpath"
2020-05-14 wnwen Android: Ignore unused imports errorprone check
2020-05-14 mthiesse Ensure bundle targets rebuild md5_sum
2020-05-14 sdefresne [ios] Update application extension rpath
2020-05-14 chromium-autoroll Roll Fuchsia SDK from 0.20200514.0.1 to 0.20200514.1.1
2020-05-14 chouinard Remove ClearBrowsingDataFragment lint suppression
2020-05-14 wnwen Android: Remove unused gn args for lint
2020-05-14 chromium-autoroll Roll Fuchsia SDK from 0.20200513.3.1 to 0.20200514.0.1
2020-05-13 chromium-autoroll Roll Fuchsia SDK from 0.20200513.1.1 to 0.20200513.3.1
2020-05-13 isherman Skip sudo when running install-build-deps.sh in --quick-check mode
2020-05-13 wnwen Android: Fix NewApi and other lint checks
2020-05-13 sdefresne Reland "[ios] Better diagnostics when selecting codesigning identity fails"
2020-05-13 djean Revert "[ios] Better diagnostics when selecting codesigning identity fails"
2020-05-13 sdefresne [ios] Better diagnostics when selecting codesigning identity fails
2020-05-13 chromium-autoroll Roll Fuchsia SDK from 0.20200512.3.1 to 0.20200513.1.1
2020-05-13 chromium-autoroll Roll Fuchsia SDK from 0.20200512.2.1 to 0.20200512.3.1
2020-05-13 agrieve Android: Add desugar runtime in dex() step
2020-05-12 chromium-autoroll Roll Fuchsia SDK from 0.20200512.1.1 to 0.20200512.2.1
2020-05-12 hypan android: Fix the asan_symbolize to work with library name like libc++.so
2020-05-12 inglorion Make use_goma_thin_lto only apply when useful
2020-05-12 zynis Add Visual Studio debugger visualisation for std::_1::tuple<...>
2020-05-12 chromium-autoroll Roll Fuchsia SDK from 0.20200512.0.1 to 0.20200512.1.1
2020-05-12 chromium-autoroll Roll Fuchsia SDK from 0.20200511.3.1 to 0.20200512.0.1
2020-05-12 thakis Revert "mac: Disable assert for using hermetic xcode for official builds."
2020-05-12 steveroe [fuchsia] Enable call stack print for all exceptions caught by test runner.
2020-05-11 chromium-autoroll Roll Fuchsia SDK from 0.20200511.1.1 to 0.20200511.3.1
2020-05-11 meiliang [GroupSuggestion] Add strings for grouping suggestion
2020-05-11 gab [base] Add explicit note about COMPILER_MSVC and COMPILER_GCC being true with clang
2020-05-11 wnwen Android: Remove lint_suppressions_file forward
2020-05-11 hzjian [Reland] Move linker from Trichrome library to chrome
2020-05-11 wnwen Android: Add back lint_suppressions_file
2020-05-11 chromium-autoroll Roll Fuchsia SDK from 0.20200508.0.1 to 0.20200511.1.1
2020-05-11 agrieve Android: Remove duplicate assignment of _enable_turbine
2020-05-09 spang [fuchsia] Fix broken cc_unittests on Fuchsia
2020-05-08 sergeyu Revert "Roll Fuchsia SDK from 0.20200508.0.1 to 0.20200508.1.1"
2020-05-08 cduvall [WebLayer] Add tests for language handling in bundles
2020-05-08 chromium-autoroll Roll Fuchsia SDK from 0.20200508.0.1 to 0.20200508.1.1

Roll buildtools/ 204a35a2a..6b951673d (16 commits)

204a35a2a6..6b951673d1

$ git log 204a35a2a..6b951673d --date=short --no-merges --format='%ad %ae %s'
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

Roll testing/ 46f9803f0..a711b1132 (380 commits)

46f9803f0c..a711b11325

$ git log 46f9803f0..a711b1132 --date=short --no-merges --format='%ad %ae %s'
2020-07-06 syoussefi Revert "Remove //chrome/test wrapper targets for angle."
2020-07-06 toyoshim OOR-CORS: Enable TabStripTabListTest and TabStripTabTest on cros
2020-07-06 rdevlin.cronin [Extensions] Add a trial config for kExtensionSettingsOverriddenDialogs
2020-07-06 fdoray Cleanup feature to control the priority of the video capture service.
2020-07-06 apotapchuk [Kiosk] Add e2e tests for Web kiosk
2020-07-06 dpranke Remove //chrome/test:dawn_perf_tests wrapper target.
2020-07-06 dpranke Remove //chrome/test wrapper targets for angle.
2020-07-03 kylechar Remove flags to force OOP-R for SkR+Dawn on Windows
2020-07-03 agrieve Delete chrome_public_modern_apk
2020-07-02 treib Remove cacheinvalidation_unittests from more buildbot configs
2020-07-02 jmadill Run standalone ANGLE unittests on non-Android CQ.
2020-07-02 guidou Revert "Add a first pass of the desktop test wrapper scripts."
2020-07-02 dpranke Add a first pass of the desktop test wrapper scripts.
2020-07-01 machenbach [owners] Add comment in owners file
2020-07-01 fergal Reland "Parameterize NavigationControllerBrowserTest etc for RenderDocument."
2020-07-01 rsesek iOS: Convert GN libs lists to frameworks in //testing/iossim.
2020-07-01 dullweber Revert "Parameterize NavigationControllerBrowserTest etc for RenderDocument."
2020-07-01 chikamune Enable the HeapMojoUseContextObserver feature for waterfall testing
2020-07-01 jessemckenna Limit battery timer-interrupt frequency to 125 Hz
2020-07-01 liviutinta Enable ClickPointerEvent flag for tests
2020-07-01 fergal Parameterize NavigationControllerBrowserTest etc for RenderDocument.
2020-07-01 ajuma Update fieldtrial_testing_config.json for SafeBrowsingAvailableOnIOS
2020-06-30 lindsayw [mac] Roll osxbeta to 10.16
2020-06-30 sergeyu Revert "[fuchsia] Temporarily remove blink_web_tests from Fuchsia x64 bot."
2020-06-30 jonahr Re-enable gl_tests_passthrough on Linux and Mac
2020-06-30 behdadb Updating rep_perf_test spec tags to fix upper limit adjustment
2020-06-30 mpolzer Oobe: Read Rollback Restore from Config
2020-06-30 rsorokin oobe tests: Add LoginOfflineTest to MSAN filters.
2020-06-30 kojii [FragmentItem] Add to fieldtrial_testing_config.json
2020-06-30 sergeyu [Fuchsia] Enable AEMU on FYI Fuchsia x64 bots.
2020-06-30 bpastene Bump shards of storage-variant content_browsertests on linux-dbg.
2020-06-30 bsheedy Automatically handle multiple expected GPU IDs
2020-06-29 hypan emulator: Disable flaky tests in content_shell_test_apk on MM
2020-06-29 ynovikov Enable tests on SwANGLE Chromium bots
2020-06-29 triploblastic Remove SyncErrorInfoBarAndroid flag from native code
2020-06-29 treib Remove cacheinvalidation_unittests from buildbot configs
2020-06-29 fergal Add 4 failing SitePerProcessBrowserTest to the bfcache filter.
2020-06-29 fergal Rename SitePerProcessBrowserTest tests in various test filter.
2020-06-26 bsheedy Fix info_collection_tests flaking due to missing ID
2020-06-26 rmhasan weblayer: Update m84 version tested for skew
2020-06-26 asamidoi Enable the CheckOfflineCapability flag in a field trial testing config.
2020-06-25 mmoroz [libFuzzer] fix MojoLPM link in the documentation.
2020-06-25 mamir [Autofill] Add fieldtrial for HideAutofillSuggestions experiment
2020-06-25 pnoland Fix DetachedIframeUnloadHandlerABCB test filters
2020-06-25 gbeaty Generate a pyl file with project details that presubmits can read.
2020-06-25 gbeaty Use pyfakefs in generate_buildbot_json_unittest.
2020-06-25 zhaoyangli [iOS][infra] Fix some variant definitions in ios14-beta-sim builder.
2020-06-25 rmhasan weblayer, wpt: Remove setting of actual results to layout test results
2020-06-25 schenney [Paint Holding] Add a flag for cross-origin Paint Holding
2020-06-25 gbeaty Add a .style.yapf file to testing/buildbot so that code is formatted.
(...)
2020-05-15 wenbinzhang [benchmarking] Disable linux-perf from uploading perf data
2020-05-15 wenbinzhang [benchmarking] Disable Win10 low end on fyi from uploading perf data
2020-05-15 hypan android: Update android-asan to run on marshmallow
2020-05-15 hypan android: Update android-cronet-asan-arm-rel to run on marshmallow
2020-05-15 gbeaty Don't enforce that builders in waterfalls.pyl exist on branches.
2020-05-15 antoniosartori Remove logic for the require-sri-for directive in CSP
2020-05-14 sgilhuly Add screenshot_sync and pixel tests to SkiaDawn bots
2020-05-14 alexchau Add back field trial config for UnidoOnSignInV2
2020-05-14 nhiroki ServiceWorker: Rename ServiceWorkerProviderHostTest to ServiceWorkerContainerHostTest
2020-05-14 enga Simplify Dawn bot test configurations
2020-05-13 bsheedy Fix CrOS mixins
2020-05-13 wylieb Add dark search feature flag
2020-05-13 wnwen Android: Add webview boundaries apk for lint
2020-05-13 liaoyuke Fix win coverage config - part 1
2020-05-13 chonggu [Fuchsia] Shard net_unittests in Fuchsia.
2020-05-13 collinbaker Focus textfields on completed tap on ChromeOS
2020-05-13 chonggu [Fuchsia] Enable cc_unittests for Fuchsia CI.
2020-05-13 enga Run dawn_end2end_tests on just discrete and integrated GPUs
2020-05-13 svenzheng Fix pixel tests not running on CQ/tryjob
2020-05-12 kylixrd Only add views_examples_unittests to win10 bot.
2020-05-12 michaeldo [iOS] Roll to Xcode 11.4
2020-05-12 samfort Remove AssumeOverlapAfterFixedOrStickyPosition
2020-05-12 clemensb Extend field trial for Liftoff on mobile
2020-05-12 wenbinzhang [benchmarking] Disable android pixel 2 perf fyi from uploading perf data
2020-05-12 battre Switch Autofill to new API server
2020-05-12 sidereal Revert "Added views_examples_unitttests to launch views_examples to verify it appears."
2020-05-12 kylixrd Added views_examples_unitttests to launch views_examples to verify it appears.
2020-05-12 bsheedy Add GPU CrOS builder/testers
2020-05-12 estaab Add WebLayer skew tests for older clients against trunk implementation.
2020-05-11 zhaoyangli [iOS][infra] Source side changes to add multi window builders.
2020-05-11 domfc Remove field trial testing config for WebProtect alpha
2020-05-11 hypan emulator: increase shard number of NSOOP_content_browsertests for MM bot
2020-05-11 wychen Disable RenderTests on Android CFI bot (cont.)
2020-05-11 chonggu [Fuchsia] Add stable test suites to Fuchsia CI Bots.
2020-05-11 bpastene Promote vaapi_unittest out of experimental.
2020-05-11 mheikal Check 64bit expectations on android-pie-arm64-rel (Reland)
2020-05-11 behdadb Support for experimental stories
2020-05-11 dmcardle Fuzz BackoffEntrySerializer with net_backoff_entry_serializer_fuzzer.
2020-05-11 harrisonsean Modify PasswordCheck experiment
2020-05-09 spang Revert "[Fuchsia] Use headless ozone for Fuchsia ARM64 bots."
2020-05-09 spang [fuchsia] Fix broken cc_unittests on Fuchsia
2020-05-09 gbeaty Add 'all' as a compile target for clang builders.
2020-05-08 bsheedy Disable GPU buildbucket test
2020-05-08 jeffyoon [pgo] introducing --sparse argument to code coverage merge scripts
2020-05-08 bpastene Temporarily remove disk_usage_tast_test from chromeos-kevin-rel.
2020-05-08 mheikal Revert "Check 64bit expectations on android-pie-arm64-rel"
2020-05-08 bsheedy Fix test_buildbucket_api_gpu_use_case retval
2020-05-08 bpastene Add LIBVA_DRIVER_NAME to vaapi_unittest & narrow down its filter.
2020-05-08 cduvall [WebLayer] Add tests for language handling in bundles
2020-05-08 behdadb Refactoring Rendering Representative perf tests

Roll third_party/googletest/ a09ea700d..356f2d264 (50 commits)

a09ea700d3..356f2d264a

$ git log a09ea700d..356f2d264 --date=short --no-merges --format='%ad %ae %s'
2020-07-01 absl-team Googletest export
2020-06-26 absl-team Googletest export
2020-06-25 absl-team Googletest export
2020-06-24 absl-team Googletest export
2020-06-24 absl-team Googletest export
2020-06-19 mayur.shingote Updated googletest issue tracker url.
2020-06-17 absl-team Googletest export
2020-06-15 absl-team Googletest export
2020-06-12 dmauro Googletest export
2020-06-10 absl-team Googletest export
2020-06-08 absl-team Googletest export
2020-06-08 absl-team Googletest export
2020-06-05 dmauro Googletest export
2020-06-10 rharrison Fix build issue for MinGW
2020-06-04 dmauro Googletest export
2020-06-03 absl-team Googletest export
2020-06-02 absl-team Googletest export
2020-06-01 absl-team Googletest export
2020-03-07 krystian.kuzniarek make UniversalPrinter<std::any> support RTTI
2020-03-07 krystian.kuzniarek specialize UniversalPrinter<> for std::any (without support for RTTI)
2020-03-07 krystian.kuzniarek specialize UniversalPrinter<> for std::optional
2020-03-07 krystian.kuzniarek specialize UniversalPrinter<> for std::variant
2020-05-28 dmauro Googletest export
2020-05-28 dmauro Googletest export
2020-05-27 absl-team Googletest export
2020-05-27 dmauro Googletest export
2020-05-19 absl-team Googletest export
2020-05-18 absl-team Googletest export
2020-05-18 durandal Googletest export
2020-05-18 absl-team Googletest export
2020-05-14 absl-team Googletest export
2020-05-25 invalid_ms_user Use count function instead of handwritten loop
2020-05-10 mate.pek README.dm: Renamed related open source project name: Catch2 and Google Test Explorer -> C++ TestMate
2020-05-13 absl-team Googletest export
2020-05-13 absl-team Googletest export
2020-05-11 absl-team Googletest export
2020-05-08 martin Remove an explicit include of debugapi.h
2020-05-08 martin Revert "Googletest export"
2020-03-26 mvoorsluys Fix test with stack.
2020-03-29 verdoialaurent Fix --gtest_print_time coloring
2020-03-26 mvoorsluys Fixed xml unit-tests and added extra tests
2020-03-26 mvoorsluys Fix multiple \n characters in xml file when using GTEST_SKIP.
2020-03-26 mvoorsluys Only write ">\n" once when there is failure and skipped tests.
2020-03-26 mvoorsluys Output skipped information in the xml file.
2020-03-21 ngompa13 Set the version for the libraries
2020-02-21 nini16041988-gitbucket Add missing call for gtest_list_output_unittest_ unitTest. Add unitTest for fixed TEST_P line number. Use CodeLocation TestInfo struct.
2020-02-18 nini16041988-gitbucket Fix: shadow member
2020-02-18 nini16041988-gitbucket Add correct line number to TEST_P test cases for gtest_output.
2020-02-06 59134746+aribibek fix a link to documentation
2020-01-17 hgsilverman Fix always false condition and clean function body

Roll third_party/spirv-headers/ c0df742ec..11d7637e7 (8 commits)

c0df742ec0..11d7637e7a

$ git log c0df742ec..11d7637e7 --date=short --no-merges --format='%ad %ae %s'
2020-06-01 dneto spir-v.xml: Use plain ASCII quotes in comment
2020-05-29 cepheus Rebuild headers against the previous grammar commit.
2020-05-29 dmitry.sidorov Apply suggestions
2020-04-05 dmitry.sidorov Add Intel specific definitions from KhronosGroup/SPIRV-LLVM-Translator
2020-05-29 cepheus Header build from previous grammar update.
2020-05-25 michael.kinsner Propose bit allocation mechanism for the FP Fast Math Mode bitfield, following from the mechanism previously added for the loop control bitfield.
2020-05-20 dneto Update example to use unified1 headers
2020-04-05 dmitry.sidorov Add SPV_INTEL_function_pointers preview extension

Roll third_party/spirv-tools/ c8590c18b..bd2a9ea85 (70 commits)

c8590c18bd..bd2a9ea852

$ git log c8590c18b..bd2a9ea85 --date=short --no-merges --format='%ad %ae %s'
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)
2020-06-15 dj2 Update access control lists. (#3433)
2020-06-13 vasniktel Fix operand access (#3427)
2020-06-12 jaebaek Debug info preservation in ccp pass (#3420)
2020-06-10 dneto Fix round trip tests that weren't instantiated (#3417)
2020-06-10 vasniktel spirv-fuzz: Add a test (#3238)
2020-06-10 vasniktel spirv-fuzz: Add support for OpSpecConstant* (#3373)
2020-06-05 vasniktel spirv-fuzz: Fix replayer bug (#3401)
2020-06-05 andreperezmaselco.developer Add value instruction condition (#3385)
2020-06-05 andreperezmaselco.developer Fix instruction function use (#3390)
2020-06-05 vasniktel spirv-fuzz: Fix regression (#3396)
2020-06-04 paulthomson Fix googletest inclusion (#3398)
2020-06-02 jaebaek Add tests for merge-return debug info preservation (#3389)
2020-05-29 andreperezmaselco.developer spirv-fuzz: Add push id through variable transformation (#3359)
2020-05-27 rharrison Rolling 4 dependencies (#3380)
2020-05-27 stevenperron Start SPIRV-Tools v2020.4
2020-05-27 stevenperron Finalize SPIRV-Tools v2020.3
2020-05-27 stevenperron Update CHANGES
2020-05-26 andreperezmaselco.developer spirv-fuzz: Support bit width argument for int and float types (#3378)
2020-05-26 andreperezmaselco.developer Fix function use (#3372)
2020-05-25 jaebaek spirv-val: allow DebugInfoNone for DebugTypeComposite.Size (#3374)
2020-05-25 47594367+rg3igalia Add validation support for ImageGatherBiasLodAMD (#3363)
2020-05-21 38433336+AnastasiaStulova Fix validation failure on OpDecorationGroup (#3365)
2020-05-21 greg Remove deprecated interfaces from instrument passes (#3361)
2020-05-21 jaebaek Preserve debug info in inline pass (#3349)
2020-05-21 dnovillo Reject folding comparisons with unfoldable types. (#3370)
2020-05-21 paulthomson Improve build instructions for fuzzer (#3364)
2020-05-20 stevenperron Add unrolling to performance passes (#3082)
2020-05-20 jaebaek Handle OpConstantNull in ssa-rewrite (#3362)
2020-05-19 rharrison Add in a bunch of missed files to the BUILD.gn (#3360)
2020-05-19 rharrison Remove stale entries from BUILD.gn (#3358)
2020-05-19 vladimir.davidovich allow cross compiling for Windows Store, UWP, etc. (#3330)
2020-05-19 vasniktel spirv-fuzz: Remove FuzzerPassAddUsefulConstructs (#3341)
2020-05-19 vasniktel Add support for StorageBuffer (#3348)
2020-05-19 462213+sl1pkn07 Prevent Effcee install his things when build spirv-tools with testing enabled (#3256)
2020-05-19 stevenperron Don't register edges twice in merge return (#3350)
2020-05-14 stevenperron Revert "Revert "[spirv-opt] refactor inlining pass (#3328)" (#3342)" (#3345)
2020-05-14 afdx spirv-reduce: Remove unused struct members (#3329)
2020-05-14 andreperezmaselco.developer Add adjust branch weights transformation (#3336)
2020-05-13 stevenperron Revert "[spirv-opt] refactor inlining pass (#3328)" (#3342)
2020-05-13 jaebaek [spirv-opt] refactor inlining pass (#3328)
2020-05-13 afdx spirv-reduce: Remove unused uniforms and similar (#3321)
2020-05-13 afdx spirv-fuzz: Fix to fact manager (#3339)
2020-05-13 afdx spirv-fuzz: Get rid of unnecessary template method (#3340)
2020-05-12 stevenperron Do merge return if the return is not at the end of the function. (#3337)

Roll tools/clang/ 54f2e0def..b49c12a8f (81 commits)

54f2e0def1..b49c12a8f3

$ git log 54f2e0def..b49c12a8f --date=short --no-merges --format='%ad %ae %s'
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.

Created with:
  roll-dep build buildtools testing third_party/binutils third_party/googletest third_party/spirv-headers third_party/spirv-tools tools/clang

Change-Id: I88228938fb78c3c5badc9489bfaa3860e1d56e33
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24400
Reviewed-by: dan sinclair <dsinclair@google.com>
2020-07-06 16:07:03 +00:00
David Neto 3b8e6dd816 Error out for unrecognized option, more than one file
Change-Id: I7b7797a04ce824f263c4db6e64eefee083cc4c9d
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24340
Reviewed-by: dan sinclair <dsinclair@google.com>
2020-07-06 13:15:26 +00:00
dan sinclair f2aaa0e985 [msl-writer] Always add the metal_stdlib include.
This CL adds the metal_stdlib include to the MSL generator.

Bug: tint:8
Change-Id: Ie80a7aa3921e2c4594cb7dc5a69d1b04a253c752
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24185
Reviewed-by: David Neto <dneto@google.com>
2020-07-02 20:53:54 +00:00
dan sinclair 6002a3345f [msl-writer] Add namer class.
This CL adds a namer class to prevent collisions with builtin names in
MSL. The MSL generator has been updated to use the namer anywhere that
names are emitted.

Bug: tint:8
Change-Id: I820f226a7286be1d5b0d613bd0fa41b68cb9f8ba
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24184
Reviewed-by: David Neto <dneto@google.com>
2020-07-02 20:53:45 +00:00
dan sinclair 53b3283c6a [msl-writer] Emit switch statements.
This CL adds support for switch and case statements into the MSL writer.

Bug: tint:8
Change-Id: Ib51f943e8476c0ecfd45e9131404f96934c6e21f
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24180
Reviewed-by: David Neto <dneto@google.com>
2020-06-30 21:33:20 +00:00
David Neto 2c11bd6b68 [spirv-reader] Refactor bookkeeping for localy defined values
Bug: tint:3
Change-Id: Ibe26b802ae61c6271f8a75e641ac31db36df6000
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24124
Reviewed-by: dan sinclair <dsinclair@google.com>
2020-06-30 19:03:17 +00:00
dan sinclair e88c0f6f8a [msl-writer] Emit loop statements.
This CL adds the code to convert a loop/continuing statement into MSL.

Bug: tint:8
Change-Id: I9fa595908c6d834d9543b583c8baf8c19f8cae6c
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24122
Reviewed-by: David Neto <dneto@google.com>
2020-06-30 17:40:28 +00:00
David Neto e91325956d [spirv-reader] Hoist definitions as needed
Compensate for the fact that dominance does not correspond
exactly to scoping. A definition can dominate a use, but when mapped
in a naive way to constant definitiion and its use, the definition
name goes out of scope by the time you reach the use.

This is correct for storable types.

Bug: tint:3
Change-Id: I03e6c5ba68393151485ed4cdbe6b2b3d7773d1ad
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24141
Reviewed-by: dan sinclair <dsinclair@google.com>
2020-06-30 15:16:18 +00:00
David Neto de7b15ebb9 [spirv-reader] Don't move combinatorial values across control flow
Avoid sinking expensive operations into control flow such as loops.
The heuristic way to achieve that is to avoid moving combinatorial
values across *any* structured construct boundaries.

Bug: tint:3
Change-Id: I91502b01166a0db64c0e652331591850df75f9d4
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24140
Reviewed-by: dan sinclair <dsinclair@google.com>
2020-06-30 13:59:43 +00:00
dan sinclair 57b3b1d117 [msl-writer] Add break and continue emission.
This CL adds writting of break and continue statements to the MSL
backend.

Bug: tint:8
Change-Id: If2443c036fa82f54708d209d924192ee7a159e76
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24121
Reviewed-by: David Neto <dneto@google.com>
2020-06-29 21:17:54 +00:00
dan sinclair fa1659a3ef [msl-writer] Emit member accessors.
This CL adds emission of member accessor expressions to the MSL writer.

Bug: tint:8
Change-Id: I21d8564880c44d719c89dca2a10cd97ccb1e2cd7
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24120
Reviewed-by: David Neto <dneto@google.com>
2020-06-29 21:17:44 +00:00
dan sinclair 48bb366991 [spirv-writer] Allow casting of vectors along with scalars.
The current `cast` conversion code only handles scalar types and fails
if provided with vectors. This CL updates the logic to accept scalars
along with the provided scalar cases.

Bug: tint:96
Change-Id: I60772e75286fc3ee7a9dfba6634db069062b22d0
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/23820
Reviewed-by: David Neto <dneto@google.com>
2020-06-29 17:58:09 +00:00
David Neto 5b46d71ae7 Enable Tint as part of a larger CMake project
- Add googletest and spirv-tools local builds only if their CMake targets
  are not already configured.
- Add local spirv-headers as an include directory only if the associated
  CMake directory does not already point to a directory.

Change-Id: I53ebb0d8fdf7703e8219000b78c75c30859c91a4
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24020
Reviewed-by: dan sinclair <dsinclair@google.com>
2020-06-26 22:29:27 +00:00
dan sinclair d4eafb631d [msl-writer] Emit alias types.
This CL adds emission of alias types to the MSL writer. They are output
as `typedef`s.

Bug: tint:8
Change-Id: I18b839ed0238c4636e3975f35f5d88badd412fe4
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24001
Reviewed-by: David Neto <dneto@google.com>
2020-06-26 21:27:59 +00:00
dan sinclair dc841f1bf2 [msl-writer] Add array accessors.
This CL adds the code to emit array accessors from the MSL backend..

Bug: tint:8
Change-Id: Ia6b49c11602d39aa559feac31fcfd592ab54928c
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/24000
Reviewed-by: David Neto <dneto@google.com>
2020-06-26 21:27:59 +00:00
dan sinclair d1bf87b9d8 [msl-writer] Add unary op emission.
This CL adds emission of the unary `-` and `!` operators.

Bug: tint:8
Change-Id: I9dda066111cc8f115b593127cf070c6ca37bdc66
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/23842
Reviewed-by: David Neto <dneto@google.com>
2020-06-26 21:27:59 +00:00
dan sinclair 24a46e8e69 [msl-writer] Emit kill statement.
This Cl adds emission of the Kill statement as `discard_fragment`. This
may need to be revised when the semantics of Kill are agreed upon.

Bug: tint:8
Change-Id: I2d09f09143b2acd0139d876e873e3c70abbc84a3
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/23841
Reviewed-by: David Neto <dneto@google.com>
2020-06-26 21:27:59 +00:00
dan sinclair 28d4a94bee [msl-writer] Add emission of if statements.
This Cl adds emission of `if`, `else if` and `else` statements to the
MSL backend.

Bug: tint:8
Change-Id: I8c22d70f2afa0a1d86cf475f5c98127504a6dc0e
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/23840
Reviewed-by: David Neto <dneto@google.com>
2020-06-26 21:27:59 +00:00
dan sinclair b1de84316c [msl-writer] Add cast conversion.
This CL adds conversion of casts to MSL.

Bug: tint:8
Change-Id: Iecfb9a5b413b1d10372b4d2fec31c0956b1475a0
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/23822
Reviewed-by: David Neto <dneto@google.com>
2020-06-26 21:27:59 +00:00
dan sinclair 3dbc8378fa [msl-writer] Add generation of as casts.
This CL adds the MSL conversion of as casts to `as_cast`.

Bug: tint:8
Change-Id: Iaa8ee1fa3077e4471bbead9d24fcf1e2d68998b0
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/23821
Reviewed-by: David Neto <dneto@google.com>
2020-06-26 21:27:59 +00:00
David Neto 7fe3c36376 [spirv-reader] Weaken input validation to Vulkan 1.0
The process of passing the module through this reader, the WGSL semantics,
and the SPIR-V writer will sanitize the module such that the end result
should satisfy SPV_ENV_WEBGPU_0 requirements.

Being more forgiving about the input SPIR-V will be a quality-of-life
improvement.

Bug: tint:3
Change-Id: Ib54cbf729b9e078d797a1ef31422bad497daa5a0
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/23942
Reviewed-by: dan sinclair <dsinclair@google.com>
Commit-Queue: dan sinclair <dsinclair@google.com>
2020-06-26 15:47:03 +00:00
Ryan Harrison 40236d835e Add configs for CQ
Based off of the configs used in Dawn

BUG=tint:1

Change-Id: Ie6d028dd0c0ae4ce77fa689a3e080b91afd56f83
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/23800
Reviewed-by: dan sinclair <dsinclair@google.com>
2020-06-25 01:50:59 +00:00
dan sinclair ec3e2d4abd [metal-writer] Add entry point support.
This CL adds preliminary entry point support to the Metal backend.

Bug: tint:8
Change-Id: I7b904621d706d4503d5054711de64872f79cf2fa
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/23708
Reviewed-by: David Neto <dneto@google.com>
2020-06-23 18:22:28 +00:00
dan sinclair 6366f68121 [metal-writer] Emit constructors.
This Cl adds the code to emit scalar and type constructors from the
Metal backend.

Bug: tint:8
Change-Id: I95c713568ae3a73b82f8c9e10119e29e3469893e
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/23707
Reviewed-by: David Neto <dneto@google.com>
2020-06-23 18:22:21 +00:00
dan sinclair 7f269e5bcb [metal-writer] Emit binary operations.
This CL adds emission of binary operations to the Metal backend.

Bug: tint:8
Change-Id: I797daadd238b718b081842b63ccefab3294bc20c
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/23706
Reviewed-by: David Neto <dneto@google.com>
2020-06-23 18:22:05 +00:00
dan sinclair 70c605fc47 [metal-writer] Emit assignment statements.
This CL adds assignment statements to the Metal backend.

Bug: tint:8
Change-Id: Iaf4faa62124948fd0e785d5bebd20aae778ba050
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/23705
Reviewed-by: David Neto <dneto@google.com>
2020-06-23 17:54:33 +00:00
dan sinclair e66d6a6745 [metal-writer] Emit functions
This Cl adds the code to emit functions from the metal writer. Note,
this does not handle entry points yet.

Bug: tint:8
Change-Id: Ie665771169261f6839de5eb1b66dc511bf47616a
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/23704
Reviewed-by: David Neto <dneto@google.com>
2020-06-23 17:54:25 +00:00
dan sinclair 646fb23c1f [metal-writer] Add identifier expression.
This CL adds the start of identifier expressions to the Metal backend.
Identifiers with paths are currently not supported.

Bug: tint:8
Change-Id: I4df8b6a3c32251d454d3dae5fa8933dad36094f8
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/23703
Reviewed-by: David Neto <dneto@google.com>
2020-06-23 17:49:08 +00:00
dan sinclair 8cd87513b3 [metal-writer] Add return generation.
This CL adds generation of the return statement.

Bug: tint:8
Change-Id: Iffee600e77a485649b987d39aab47742968e438e
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/23702
Reviewed-by: David Neto <dneto@google.com>
2020-06-23 17:49:00 +00:00
dan sinclair 5dd37b2e6c [metal-writer] Add basic type emission.
This CL adds the start of type emission for the Metal backend. A few
types like pointers and structs aren't complete yet.

Bug: tint:8
Change-Id: I648e9275ef1b9dc6fa63b6ab328fe018a5f620ea
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/23701
Reviewed-by: David Neto <dneto@google.com>
2020-06-23 17:48:53 +00:00
dan sinclair 2a59901483 [metal-writer] Stub out the Metal Shading Language backend.
This CL adds the basis of the Metal Shading Language backend.

Bug: tint:8
Change-Id: I85976250eb41ac12203a5db116444e993c3d09d4
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/23700
Reviewed-by: David Neto <dneto@google.com>
2020-06-23 17:48:40 +00:00
Ryan Harrison 9a452c11ae Fix BUILD.gn issues for TypeDeterminerTest
Change-Id: Iba35145fcba04ecaf2cb411c5e87d2e7f8ecea50
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/23740
Reviewed-by: dan sinclair <dsinclair@google.com>
2020-06-23 16:38:47 +00:00
David Neto 1ca5382749 [spirv-reader] Simplify null composites
Use the shortcut for zero-values: a type constructor without
any parameters.  Scalars still use plain literals like false, 1u, 1.0.

Change-Id: Ie436f1af28cbab0b4c87a07b057deb04632eb534
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/23680
Reviewed-by: dan sinclair <dsinclair@google.com>
2020-06-22 23:15:52 +00:00
dan sinclair 13d2a3b96c [spirv-writer] Only add used variables to entry point.
This Cl updates the entry point code to only output Input/Output
variabes which are referenced by the function instead of all
Input/Output variables.

Bug: tint:28
Change-Id: Idc429e02cac8dac7fc7b609cbd7f88039695829e
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/23623
Reviewed-by: David Neto <dneto@google.com>
2020-06-22 20:52:24 +00:00
David Neto 194e0cca3b [spirv-reader] Support OpNop
An OpNop maps to nothing

Bug: tint:3
Change-Id: Id73601d481971954dd4de706202b5229dcf39871
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/23561
Reviewed-by: dan sinclair <dsinclair@google.com>
2020-06-22 20:49:34 +00:00
David Neto fd3700c0a7 [spirv-reader] Support Undef, mapping to null
Bug: tint:3
Change-Id: I1549f0445c92312b0d20292ff9d60736300d5378
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/23600
Reviewed-by: dan sinclair <dsinclair@google.com>
2020-06-22 20:48:59 +00:00
David Neto cb8e0bae00 [spirv-reader] Use type aliases pervasively
When a type alias is created, map the SPIR-V type ID to the
type alias, not the underlying type. Only unpack the alias as
needed when inspecting the content structure to make values.

Bug: tint:3
Change-Id: I11011ddd190d89c81d3323f684a5e13f17dde09d
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/23582
Reviewed-by: dan sinclair <dsinclair@google.com>
2020-06-22 20:45:43 +00:00
dan sinclair 5b853eebc6 Support the zero initializer syntax.
This Cl updates the system to allow zero initializers. This allows:

```
var a : vec3<f32> = vec3<f32>();
```

Bug: tint:34
Change-Id: I84d6b431914c4ddf112ed375fae028d912f4a080
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/23660
Reviewed-by: David Neto <dneto@google.com>
2020-06-22 20:44:27 +00:00
David Neto 9c88ea5988 type determine accessor on aliased array
Change-Id: I8084bf6c30649acb2d6d7639fa6bf78cdd0a4a6a
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/23581
Reviewed-by: dan sinclair <dsinclair@google.com>
2020-06-22 20:33:12 +00:00
David Neto 32a4f957b4 Add type alias unwrapping methods
Change-Id: I8dbd3bba48ae95d76f75a5eba3e97ed4e091ed01
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/23580
Reviewed-by: dan sinclair <dsinclair@google.com>
2020-06-22 20:30:33 +00:00
dan sinclair e87ba1fd37 [spirv-writer] Add Operand and Instruction list aliases.
This CL adds OperandList and InstructionList aliases.

Bug: tint:5
Change-Id: I74263e937ed6007bb44c8d502b122d55af4c7b21
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/23622
Reviewed-by: David Neto <dneto@google.com>
2020-06-22 20:18:26 +00:00
dan sinclair 011aed9b82 [spirv-writer] Add function calls
This CL adds calls to functions to the SPIR-V writer.

Bug: tint:5
Change-Id: Id6f3e41deba937edb85fa6ec2f2db8d1f4241944
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/23621
Reviewed-by: David Neto <dneto@google.com>
2020-06-22 20:18:17 +00:00
dan sinclair 7fe4d02ca1 [spirv-writer] Generate function parameters.
This CL adds generation of OpFunctionParameter entries for function
parameters.

Bug: tint:5
Change-Id: I7af6cb756e20674f32737f2ef362fda12c9d2ef2
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/23620
Reviewed-by: David Neto <dneto@google.com>
2020-06-22 20:09:23 +00:00
David Neto 0c647a8896 sample: handle SPIR-V assembly input
Change-Id: Ic9f5263cdb398a2853dc49cfef3956cb9c8de0dc
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/23583
Reviewed-by: dan sinclair <dsinclair@google.com>
2020-06-22 14:36:34 +00:00
dan sinclair be66f9faf9 [spirv-writer] Emit logical and and logical or
This CL adds support for the &&  and || operators to the SPIR-V backend.

Bug: tint:5
Change-Id: I63b23d9904b5b8027e189034d24949df71cbbe42
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/23501
Reviewed-by: David Neto <dneto@google.com>
2020-06-19 19:44:38 +00:00
David Neto 6b6e6a16ea [spirv-reader] Remove orphaned TODOs
TODOs in the test file are or were in the function_arithmetic_test.cc

Change-Id: I679dbf0019e12e26488ccc310dfb03a535628e0b
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/23462
Reviewed-by: dan sinclair <dsinclair@google.com>
2020-06-18 19:42:24 +00:00
dan sinclair e9598d697a Add support for sclamp and uclamp GLSL methods.
This CL adds support for type determination of the SClamp and UClamp
GLSL methods.

Change-Id: I974e80127f0e256285f126136270ac5131334a92
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/23500
Reviewed-by: David Neto <dneto@google.com>
2020-06-18 18:03:00 +00:00
dan sinclair 8b48b26f73 [spirv-writer] Add as casts.
This CL adds the conversion of `as<f32>(b)` to SPIR-V.

Bug: tint:5
Change-Id: If1e04db2fe5520940527f4dcf52a89628b11b518
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/23461
Reviewed-by: David Neto <dneto@google.com>
2020-06-18 18:02:46 +00:00
David Neto d7868e34c2 [spirv-reader] Add ConvertFToU, ConvertFToS
Bug: tint:3
Change-Id: I9f3188e0aac64e98da785c4df2e8b2aa42b71cf8
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/23402
Reviewed-by: dan sinclair <dsinclair@google.com>
2020-06-18 17:57:23 +00:00