Ben Clayton
351128a41e
Replace Type::(Is|As)Sampler with Castable
...
Change-Id: Iaa43e607199e25308ecb121c61bb7a37abff197c
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/34270
Reviewed-by: dan sinclair <dsinclair@chromium.org>
2020-11-30 23:30:58 +00:00
Ben Clayton
c52f4214ad
Replace Type::(Is|As)Pointer with Castable
...
Change-Id: Ic1b82f1ddc61355021a80d8e72f645f830363c62
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/34269
Reviewed-by: dan sinclair <dsinclair@chromium.org>
2020-11-30 23:30:58 +00:00
Ben Clayton
d8457c15f1
Replace Type::(Is|As)Matrix with Castable
...
Change-Id: I861aed231604a8bfba1f4cf3659b4863556fc3c4
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/34268
Reviewed-by: dan sinclair <dsinclair@chromium.org>
2020-11-30 23:30:58 +00:00
Ben Clayton
9857f81e94
Replace Type::(Is|As)I32 with Castable
...
Change-Id: Id130581f72e762bd398a4c1c509cdbe21739e750
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/34267
Reviewed-by: dan sinclair <dsinclair@chromium.org>
2020-11-30 23:30:58 +00:00
Ben Clayton
75f39be976
Replace Type::(Is|As)F32 with Castable
...
Change-Id: I75e5a34034360c1d4c96ae0ce293bc6cbfc1c33d
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/34266
Reviewed-by: dan sinclair <dsinclair@chromium.org>
2020-11-30 23:30:58 +00:00
Ben Clayton
f3639b787f
Replace Type::(Is|As)Bool with Castable
...
Change-Id: I60ed33bd9a54b14bb9b35f3cd999a2604c2c4450
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/34265
Reviewed-by: dan sinclair <dsinclair@chromium.org>
2020-11-30 23:30:58 +00:00
Ben Clayton
af37c4ae83
Replace Type::(Is|As)Array with Castable
...
Change-Id: I8d9b916f5977121380325d373c4e2f805b691fae
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/34264
Reviewed-by: dan sinclair <dsinclair@chromium.org>
2020-11-30 23:30:58 +00:00
Ben Clayton
67864267c2
Replace Type::(Is|As)Alias with Castable
...
Change-Id: I10f1d3d0757661a41b44517d55d6f159aced04ce
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/34263
Reviewed-by: dan sinclair <dsinclair@chromium.org>
2020-11-30 23:30:58 +00:00
Ben Clayton
a8d87788da
Replace Type::(Is|As)AccessControl with Castable
...
Change-Id: I833c92be270236fefd1e77a7a145dede757e93e9
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/34262
Reviewed-by: dan sinclair <dsinclair@chromium.org>
2020-11-30 23:30:58 +00:00
Ben Clayton
69aabb51a9
Derive all ast::types from Castable
...
The hand-rolled `AsBlah()`, `IsBlah()` methods will be migrated in future changes.
Change-Id: I46a350a560f9eda8ca15f8ba8c95b17b9b6010b7
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/34261
Reviewed-by: dan sinclair <dsinclair@chromium.org>
Commit-Queue: Ben Clayton <bclayton@google.com>
2020-11-30 23:30:58 +00:00
David Neto
21e9204e14
tests: Change name SampledImageCase -> ImageAccessCase
...
Bug: tint:109
Change-Id: I6f5b1d3cf73fa58ae9f4c37d155199649eb37518
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/34423
Commit-Queue: David Neto <dneto@google.com>
Auto-Submit: David Neto <dneto@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
2020-11-30 23:17:05 +00:00
David Neto
2082beed0f
spirv-reader: Add entry point declaration to handle test
...
Bug: tint:109
Change-Id: I25645944061b8b247eda442b61f4591a9359ec4f
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/34422
Commit-Queue: David Neto <dneto@google.com>
Auto-Submit: David Neto <dneto@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
2020-11-30 22:53:25 +00:00
Ben Clayton
95feb99a9d
Add Castable template class
...
Implements `As<Blah>()` and `Is<Blah>()` automatically.
There are several benefits to using this over the pattern of hand-rolled `IsBlah()`, `AsBlah()` methods:
(1) We don't have to maintain a whole lot of hand written code.
(2) These allow us to cast from the base type to _any_ derived type in a single cast. The existing hand-rolled methods usually require a couple of intermediary casts to go from the base type to the leaf type.
(3) The use of a template parameter means these casts can be called from other template logic.
Note: Unlike the hand-rolled `AsBlah()` methods, it is safe to call `As<T>()` even if the type does not derive from `T`. If the object does not derive from `T` then `As` will simply return `nullptr`. This allows the calling logic to replace the common pattern of:
```
if (obj.IsBlah()) {
auto* b = obj.AsBlah();
...
}
```
with:
```
if (auto* b = obj.As<Blah>()) {
...
}
```
This halves the number of virtual method calls, and is one line shorter.
Change-Id: I4312e9831d7de6703a97184640864b8050a34177
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/34260
Reviewed-by: dan sinclair <dsinclair@chromium.org>
Commit-Queue: Ben Clayton <bclayton@google.com>
2020-11-30 22:50:25 +00:00
David Neto
386755b1ac
spirv-reader: fix SPIR-V types in handle tests
...
Bug: tint:109
Change-Id: Icb4cbe12334c92a86d1c52a0b3569fb22a1cfc7c
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/34421
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
Auto-Submit: David Neto <dneto@google.com>
2020-11-30 22:48:55 +00:00
dan sinclair
eac3c5bf51
Add tricium config.
...
This CL adds a tricium config file for Tint.
Change-Id: I08409df9b6b79bdd3ffecf4f28867674435ae14a
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/34360
Auto-Submit: dan sinclair <dsinclair@chromium.org>
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
2020-11-30 20:28:50 +00:00
David Neto
aa212ee81f
spirv-reader: sampling depth texture requires unsigned Lod
...
Fixed: tint:378
Change-Id: I835ee7e9fb63dc68db571091f28fd34287c209b0
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/34201
Commit-Queue: David Neto <dneto@google.com>
Auto-Submit: David Neto <dneto@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
2020-11-27 19:28:53 +00:00
David Neto
29e7e3b78e
spirv-reader: Use better names in handle tests
...
Change-Id: I461cc6fd3b497e7b56b8004266580b4280c7dc42
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/34200
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
Auto-Submit: David Neto <dneto@google.com>
2020-11-27 18:14:53 +00:00
David Neto
a8b6f87cca
spirv-reader: test texture builtins over arrayed textures
...
Tested:
- textureSample
- textureSampleBias
- textureSampleLevel
- textureSampleGrad
- textureSampleCompare
Fixed: tint:349
Change-Id: Ibb45883b88c8eeec6ba40170f47d78613e150db7
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/34102
Commit-Queue: David Neto <dneto@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Auto-Submit: David Neto <dneto@google.com>
2020-11-27 17:00:03 +00:00
David Neto
e5aa390e15
spirv-reader: refactor image access tests
...
Bug: tint:349
Change-Id: I0cd3dc6d6704f5b636a14542993c39d3f6ea5f59
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/34101
Commit-Queue: David Neto <dneto@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Auto-Submit: David Neto <dneto@google.com>
2020-11-27 16:46:33 +00:00
David Neto
76e5f17313
spirv-reader: simplify tests
...
Change-Id: I69b4893d8693310f445bbf9667358d7b09f35728
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/34100
Reviewed-by: David Neto <dneto@google.com>
Commit-Queue: David Neto <dneto@google.com>
Auto-Submit: David Neto <dneto@google.com>
2020-11-27 16:43:13 +00:00
David Neto
3f305ac294
spirv-reader: split off last coordinate for arrayed texture access
...
Also ensure that the number of texture coordinates is exactly
the right number required for the given texture dimension.
I think SPIR-V is looser in this respect.
Assumes coordinates are floating point.
Bug: tint:349
Change-Id: I4512c333fada3647c66f13ef31897b2d73b46cf0
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/33982
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: David Neto <dneto@google.com>
Auto-Submit: David Neto <dneto@google.com>
2020-11-27 16:17:03 +00:00
Corentin Wallez
456aad3bce
Remove use of recent SPIRV-Tools functionality
...
reader/spirv/parser_impl.cc was using an overload of a function that's
recently added in SPIRV-Tools so rolling Tint would require rolling
SPIRV-Tools at the same time, which is not currently possible because of
a breaking change in spirv-headers.
Bug: chromium:1153258
Change-Id: I4e8cf87a3f11adbd8b6ef289260c6159faf9580c
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/34142
Commit-Queue: David Neto <dneto@google.com>
Auto-Submit: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: David Neto <dneto@google.com>
2020-11-27 15:36:23 +00:00
Ben Clayton
f32a3c1f35
Diagnostics: Add error code to the Diagnostic
...
Allows this to be formatted similarly to the severity.
Change-Id: I74cd863d8f1d94089ce753ab76a2c70784eb5553
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/33938
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: David Neto <dneto@google.com>
2020-11-26 17:49:22 +00:00
David Neto
61ec48b99e
spirv-reader: refactor swizzle creation
...
Change-Id: I6a09756026b7cbc436d5f232be9331255615e8c3
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/34040
Auto-Submit: David Neto <dneto@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: David Neto <dneto@google.com>
2020-11-26 17:45:52 +00:00
David Neto
3ec71a63aa
spirv-reader: test textureSample with depth texture
...
Bug: tint:109
Change-Id: Ia13940b521229012a7c73fe0896e6ea75c4b1307
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/34020
Commit-Queue: David Neto <dneto@google.com>
Auto-Submit: David Neto <dneto@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
2020-11-26 16:58:02 +00:00
Ben Clayton
ba06db6e00
validator: Migrate to using diagnostics
...
Unlike error strings, diagnostics can:
* Describe more than one error
* Be printed with colors
* Highlight (`^^^`) the particular error on the line
* Can have separate severities
Change-Id: I4ead391ffbe190e55f79c5f23536a4524768478d
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/33820
Commit-Queue: David Neto <dneto@google.com>
Reviewed-by: David Neto <dneto@google.com>
2020-11-26 16:50:02 +00:00
Ben Clayton
b7b6a3f3f4
Fix linter errors about newlines in lists
...
Change-Id: I5c2eb4d9beed1e6cf9f0f410da116ae3958589b9
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/33939
Commit-Queue: David Neto <dneto@google.com>
Reviewed-by: David Neto <dneto@google.com>
2020-11-26 16:47:32 +00:00
David Neto
77e3318b39
spirv-reader: Support depth-reference sampling
...
Bug: tint:109
Change-Id: I1e1dcd7c0724124a3a29e94e65856a07c54dd998
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/34005
Commit-Queue: David Neto <dneto@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Auto-Submit: David Neto <dneto@google.com>
2020-11-26 16:39:32 +00:00
David Neto
ddaf59016b
spirv-reader: Infer a handle type when needed
...
Fixed: tint:374
Change-Id: I4785a48d456a6b5ba1fa8c9950b4c72d00853fc9
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/33981
Commit-Queue: David Neto <dneto@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Auto-Submit: David Neto <dneto@google.com>
2020-11-26 15:35:12 +00:00
Ben Clayton
83b32455c2
writer/msl: Emit texture builtin functions
...
Bug: tint:145
Change-Id: I8a2d10c2e7239c81a11933c009d9175d4f4d8577
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/33782
Commit-Queue: Ben Clayton <bclayton@google.com>
Auto-Submit: Ben Clayton <bclayton@google.com>
Reviewed-by: David Neto <dneto@google.com>
2020-11-26 15:07:52 +00:00
Ben Clayton
f48d244252
writer/spirv: Use PackCoordAndArrayIndex()
...
As `PackCoordAndArrayIndex()` extracts the elements of vectors-in-vectors, the resulting SPIR-V is now more compact.
Change-Id: I3e35546efc89531b9f70d4c44c23c179e76b15d8
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/33781
Commit-Queue: Ben Clayton <bclayton@google.com>
Auto-Submit: Ben Clayton <bclayton@google.com>
Reviewed-by: David Neto <dneto@google.com>
2020-11-26 14:18:12 +00:00
Ben Clayton
41c8cd3e68
writer/hlsl: Move the coord/arrayidx packing to utility function
...
So we can also use this for the `spirv` backend
Bug: tint:146
Change-Id: I26f70125a5015946d2428a6e669da32bdea23bcd
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/33780
Reviewed-by: David Neto <dneto@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
Auto-Submit: Ben Clayton <bclayton@google.com>
2020-11-26 13:57:32 +00:00
David Neto
8ad2c91c60
spirv-writer: Add SampledCubeArray cap when needed
...
Fixed: tint:371
Change-Id: I13f568725370f446f154af26c326edfd4abec3c8
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/34003
Auto-Submit: David Neto <dneto@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
2020-11-26 13:37:32 +00:00
David Neto
b496611165
spirv-writer: avoid dup OpCapability instructions
...
Change-Id: Iaf53d2addadd8efbb912e4f97ff426fd4182c9f3
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/34002
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
Auto-Submit: David Neto <dneto@google.com>
2020-11-26 13:32:12 +00:00
David Neto
66794eada3
Roll dependencies; spirv-reader: avoid spurious OpLine
...
Roll third_party/gpuweb-cts/ 2a53a9bd3..abe6e1dd2 (51 commits)
2a53a9bd3d..abe6e1dd26
$ git log 2a53a9bd3..abe6e1dd2 --date=short --no-merges --format='%ad %ae %s'
2020-11-25 corentin Port the robust vertex access tests from GLSL to WGSL (#379 )
2020-11-25 corentin Port createRenderPipeline validation tests from GLSL to WGSL (#372 )
2020-11-23 kainino iterateCollapsedQueries: don't yield files with no tests (#383 )
2020-11-20 kainino Clean trailing whitespace inside shader strings (#382 )
2020-11-20 yunchao.he Memory sync test for buffer (#302 )
2020-11-20 corentin Port verteState validation tests from GLSL to WGSL (#376 )
2020-11-20 corentin Port the setVertexBuffer validation tests from GLSL to WGSL (#375 )
2020-11-20 corentin Port the render pass validation tests from GLSL to WGSL (#374 )
2020-11-20 corentin Port the validation index access tests from GLSL to WGSL (#373 )
2020-11-20 corentin Group and update the dynamic state validation tests. (#307 )
2020-11-20 corentin Port the primitive topology tests from GLSL to WGSL (#371 )
2020-11-20 corentin Port culling tests from GLSL to WGSL (#370 )
2020-11-20 corentin Cleanups in webgpu/api/operation/command_buffer (#369 )
2020-11-20 kainino From HackMD plan, part 2: some more validation tests (#368 )
2020-11-19 kainino Fix cross-device fence signal tests (cherry-pick) (#366 )
2020-11-19 kainino From HackMD plan: manual, stress, web_platform, documentation, and some validation (#364 )
2020-11-18 corentin Port basic command_buffer tests from the GLSL branch (#350 )
2020-11-17 kainino add src/webgpu as a separate folder in the workspace
2020-11-17 kainino Replace grunt tasks with shell tasks
2020-11-17 kainino Check directory names match validQueryPart
2020-11-17 kainino rename web-platform to web_platform
2020-11-17 2154796+austinEng Remove TexelDataRepresentationImpl.isGPULittleEndian (#357 )
2020-11-17 2154796+austinEng Implement texelData for rgb9e5ufloat and add texelData unit tests (#352 )
2020-11-17 2154796+austinEng Refactor texture zero init tests and use WGSL (#353 )
2020-11-17 corentin Port the renderPass resolve tests from GLSL to WGSL (#351 )
2020-11-13 mehmetoguzderin Make comments optional (#348 )
2020-11-12 corentin Add gen_wpt_cts_html as an NPM script (#347 )
2020-11-11 9856269+sarahM0 [wgsl] Update tests to match spec update: Relaxing void return requirement (#330 )
2020-11-11 mehmetoguzderin Check PRs to glsl-dependent (#341 )
2020-11-10 kainino Remove travis config from main branch (#336 )
2020-11-10 kainino Remove AsyncMutex
2020-11-09 kainino Simplify WPT runtime
2020-11-10 mehmetoguzderin Fix Actions on CI (#334 )
2020-11-10 corentin Roll webgpu-types. (#329 )
2020-11-10 mehmetoguzderin Add CI on Actions (#331 )
2020-11-05 natashalee add create sampler validation test (#327 )
2020-11-04 kainino wpt: Don't return promise from async_test
2020-11-04 kainino Allow marking tests as explicitly unimplemented (#319 )
2020-11-04 kainino standalone: Don't generate DOM when test finishes (#323 )
2020-11-04 kainino standalone: Show only the full query string for a test, and aligned (#324 )
2020-11-03 kainino standalone: Replace results JSON textarea with copy button (#322 )
2020-11-02 kainino standalone: Lazily-generate DOM subtrees (#321 )
2020-10-27 enrico.galli Add API validation tests for compute pass (#308 )
2020-10-26 kainino Optimize device pool lookup (#295 )
2020-10-23 kainino Remove unneeded @babel/plugin-proposal-class-properties (#313 )
2020-10-23 kainino Remove non-test dependence on WebGPU ambient constants (#318 )
2020-10-20 kainino Loop to exhaust eventualExpectations (#309 )
2020-10-20 dsinclair Update WGSL to new struct syntax. (#316 )
2020-10-19 kainino Add support for logical assignment operators (&&= ||=) (#311 )
2020-10-19 kainino Update npm dependencies (#310 )
2020-10-20 corentin Add validation tests for mapAsync. (#301 )
Created with:
roll-dep third_party/gpuweb-cts
Change-Id: Ibed486c6e02d8df9db7a66c00c4546c46df0c1fc
Roll third_party/spirv-tools/ 7e1825a59..2c458414c (62 commits)
7e1825a596..2c458414c0
$ git log 7e1825a59..2c458414c --date=short --no-merges --format='%ad %ae %s'
2020-11-25 dneto BuildModule: optionally avoid adding new OpLine instructions (#4033 )
2020-11-25 dneto Remove prototype for unimplemented method (#4031 )
2020-11-25 afdx spirv-fuzz: Fix facts arising from CompositeConstruct (#4034 )
2020-11-24 afdx spirv-fuzz: Do not flatten conditionals that create synonyms (#4030 )
2020-11-23 dneto Update MeshShadingNV dependencies (and land Ray tracing updates) (#4028 )
2020-11-18 greg Fix buffer oob instrumentation for matrix refs (#4025 )
2020-11-13 afdx spirv-opt: Set parent when adding basic block (#4021 )
2020-11-13 jaebaek spirv-opt: properly preserve DebugValue indexes operand (#4022 )
2020-11-11 dneto Use less stack space when validating Vulkan builtins (#4019 )
2020-11-05 46493288+sfricke-samsung spirv-val: Fix SPV_KHR_fragment_shading_rate VUID label (#4014 )
2020-11-05 46493288+sfricke-samsung spirv-val: Label Layer and ViewportIndex VUIDs (#4013 )
2020-11-05 alanbaker Add dead function elimination to -O (#4015 )
2020-11-04 jaebaek Add DebugValue for invisible store in single_store_elim (#4002 )
2020-11-04 dnovillo Fix SSA re-writing in the presence of variable pointers. (#4010 )
2020-11-04 afdx spirv-fuzz: Fixes to pass management (#4011 )
2020-11-03 afdx spirv-fuzz: Add support for reining in rogue fuzzer passes (#3987 )
2020-11-03 vasniktel spirv-fuzz: Fix assertion failure in FuzzerPassAddCompositeExtract (#3995 )
2020-11-03 vasniktel spirv-fuzz: Fix invalid equation facts (#4009 )
2020-11-03 vasniktel spirv-fuzz: Fix bugs in TransformationFlattenConditionalBranch (#4006 )
2020-11-03 andreperezmaselco.developer spirv-fuzz: Fix bug related to transformation applicability (#3990 )
2020-10-30 jaebaek Temporarily add EmptyPass to prevent glslang from failing (#4004 )
2020-10-30 Junda.Liu spirv-opt: Add support to prevent functions from being inlined if they have DontInline flag (#3858 )
2020-10-29 jaebaek Propagate OpLine to all applied instructions in spirv-opt (#3951 )
2020-10-29 bclayton CMake: Add SPIRV_TOOLS_BUILD_STATIC flag (#3910 )
2020-10-29 dneto Avoid copying a ref in a loop (#4000 )
2020-10-28 justsid spirv-val: Allow the ViewportIndex and Layer built-ins on SPIR-V 1.5 (#3986 )
2020-10-28 dnovillo Simplify logic to decide whether CCP modified the IR (#3997 )
2020-10-27 jaebaek Add DebugValue for DebugDecl invisible to value assignment (#3973 )
2020-10-26 greg Fix bounds check instrumentation to handle 16-bit values (#3983 )
2020-10-23 andreperezmaselco.developer spirv-fuzz: Add expand vector reduction transformation (#3869 )
2020-10-23 vasniktel spirv-fuzz: Don't replace irrelevant indices in OpAccessChain (#3988 )
2020-10-23 vasniktel spirv-fuzz: Add FuzzerPassAddCompositeExtract (#3904 )
2020-10-22 afdx spirv-fuzz: Fix mismatch with shrinker step limit (#3985 )
2020-10-22 afdx spirv-fuzz: Fix off-by-one error in replayer (#3982 )
2020-10-22 afdx spirv-fuzz: Get order right for OpSelect arguments (#3974 )
2020-10-22 afdx spirv-fuzz: Do not add synonym-creating loops in dead blocks (#3975 )
2020-10-22 afdx spirv-fuzz: Skip OpTypeSampledImage when propagating up (#3976 )
2020-10-22 afdx spirv-fuzz: Pass OpUndef in function call if needed (#3978 )
2020-10-22 afdx spirv-fuzz: Fix off-by-one in TransformationCompositeConstruct (#3979 )
2020-10-22 afdx spirv-fuzz: Tolerate absent ids in data synonym fact management (#3966 )
2020-10-21 afdx spirv-fuzz: Fix to id availability (#3971 )
2020-10-21 afdx spirv-fuzz: Fix operand types (#3962 )
2020-10-21 8729214+jonahryandavis Update SPIRV-Headers revision in DEPS file (#3961 )
2020-10-21 afdx spirv-fuzz: Don't flatten conditional if condition is irrelevant (#3944 )
2020-10-21 afdx spirv-fuzz: Do not produce OpPhis of type OpTypeSampledImage (#3964 )
2020-10-21 afdx spirv-fuzz: Restrict fuzzer pass to reachable blocks (#3970 )
2020-10-21 afdx spirv-fuzz: Handle more types when extending OpPhi instructions (#3969 )
2020-10-21 afdx spirv-fuzz: Skip early terminator wrappers when merging returns (#3968 )
2020-10-21 afdx spirv-fuzz: Avoid irrelevant constants in synonym-creating loops (#3967 )
2020-10-21 afdx spirv-fuzz: Skip dead blocks in FuzzerPassAddOpPhiSynonyms (#3965 )
2020-10-21 afdx spirv-fuzz: Avoid the type manager when looking for struct types (#3963 )
2020-10-20 afdx spirv-fuzz: Fix to TransformationDuplicateRegionWithSelection (#3941 )
2020-10-20 afdx spirv-fuzz: Skip OpFunction when replacing irrelevant ids (#3932 )
2020-10-20 afdx spirv-fuzz: Use component-wise selectors when flattening conditional branches (#3921 )
2020-10-20 TobyHector Add SPV_EXT_shader_image_int64 (#3852 )
2020-10-20 TobyHector Support SPV_KHR_fragment_shading_rate (#3943 )
2020-10-19 afdx spirv-val: Fix validation of OpPhi instructions (#3919 )
2020-10-19 afdx spirv-fuzz: Avoid void struct member when outlining functions (#3936 )
2020-10-19 afdx spirv-fuzz: Do not allow Block-decorated structs when adding parameters (#3931 )
2020-10-19 afdx spirv-fuzz: Fix to operand id type (#3937 )
2020-10-19 afdx spirv-fuzz: Handle dead blocks in TransformationEquationInstruction (#3933 )
2020-10-19 afdx spirv-fuzz: Do not allow sampled image load when flattening conditionals (#3930 )
Created with:
roll-dep third_party/spirv-tools
Change-Id: Ic75967a4b775dfae8b53a679f48bcc8b3f162217
Roll third_party/spirv-headers/ c43a43c7c..104ecc356 (9 commits)
c43a43c7cc..104ecc356c
$ git log c43a43c7c..104ecc356 --date=short --no-merges --format='%ad %ae %s'
2020-11-12 dneto MeshShadingNV enables builtins PrimitiveId, Layer, and ViewportIndex
2020-10-16 dkoch de-alias/reassign OpIgnoreIntersectionKHR/OpTerminateRayKHR
2020-06-29 alele Raytracing and Rayquery updates for final
2020-06-15 alele Updated headers for new trace/executeCallable and acceleration structure cast.
2020-11-04 michael.kinsner Reserve additional loop control bit for Intel extension (NoFusionINTEL) (#175 )
2020-11-02 4464295+XAMPPRocky Add EmbarkStudios/rust-gpu to vendor list. (#174 )
2020-10-23 john Bump revision to 4, for SPIR-V 1.5.
2020-10-19 TobyHector Add SPV_EXT_shader_image_int64 (#170 )
2020-10-19 TobyHector Added SPV_KHR_fragment_shading_rate (#172 )
Created with:
roll-dep third_party/spirv-headers
Change-Id: Ib43e5574d9fc1d2cffdd3a6cf66cbc3a88db2051
Roll third_party/googletest/ 3c95bf552..b1fbd33c0 (30 commits)
3c95bf5524..b1fbd33c06
$ git log 3c95bf552..b1fbd33c0 --date=short --no-merges --format='%ad %ae %s'
2020-11-23 absl-team Googletest export
2020-11-19 absl-team Googletest export
2020-11-13 vlee Initialize TestInfo member is_in_another_shard_ in constructor.
2020-11-12 absl-team Googletest export
2020-11-12 absl-team Googletest export
2020-11-12 absl-team Googletest export
2020-11-11 dmauro Googletest export
2020-11-11 dmauro Googletest export
2020-11-11 dmauro Googletest export
2020-11-11 absl-team Googletest export
2020-11-11 marius.brehler Refactor finding python
2020-11-06 absl-team Googletest export
2020-11-06 absl-team Googletest export
2020-10-29 knut Only save original working directory if death tests are enabled
2020-11-08 hyuk.myeong fix typos
2020-11-06 absl-team Googletest export
2020-11-05 ofats Googletest export
2020-10-27 absl-team Googletest export
2020-10-27 elliott.brossard Add instructions for sanitizer integration
2020-10-26 absl-team Googletest export
2020-10-20 sonzogniarthur Fix typo "definedin in" => "defined in"
2020-10-15 absl-team Googletest export
2020-10-15 absl-team Googletest export
2020-10-07 manavrion Improve FilePath::Normalize method
2020-09-16 hyuk.myeong Remove spaces between Google Test and Google Mock
2020-09-15 hyuk.myeong Add follow-up patch for more natural reading
2020-09-15 hyuk.myeong Apply the reviewed comment
2020-09-15 hyuk.myeong Remove a space
2020-09-15 hyuk.myeong Improve the tutorial that may be confusing
2020-02-17 krystian.kuzniarek remove a duplicated include
Created with:
roll-dep third_party/googletest
Change-Id: I62335cb23a96218f62c1842e786777d7e8dfe4f2
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/34007
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
Commit-Queue: David Neto <dneto@google.com>
Auto-Submit: David Neto <dneto@google.com>
2020-11-25 21:13:17 +00:00
David Neto
d0bb9b3c02
roll-all: Fix args for GNU find(1)
...
Change-Id: I004581a42df5bd719819da36f8222b3cd0de8e7f
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/34006
Auto-Submit: David Neto <dneto@google.com>
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
2020-11-25 21:08:37 +00:00
David Neto
eb913d3829
spirv-reader: Start emitting sampled image builtins
...
- Emit (non-depth) sampler variables
- Emit sampled texture variables
- Test emission of textureSample, textureBias, textureLevel
TODO: convert unsigned offset parameter to signed. crbug.com/tint/348
TODO: support arrayed access, where we have to split out the array index
into a separate operand. crbug.com/tint/349
TODO: for explicit-lod sampling, we may have to convert coordinates to
floating point. crbug.com/tint/346
Bug: tint:109
Change-Id: I12558f99473ca234ce0d09a87fc0c2f4730497bc
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/33342
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
Auto-Submit: David Neto <dneto@google.com>
2020-11-25 19:23:17 +00:00
Corentin Wallez
4e91325bf0
writer/spirv: Emit Image1D and Sampled1D capabilities when needed
...
Fixes: tint:363
Change-Id: Ia0f09e3173f54abaf15aa8f772b097835d451bcb
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/33920
Reviewed-by: dan sinclair <dsinclair@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2020-11-25 17:02:37 +00:00
Corentin Wallez
d49841ca9f
writer/spirv: Emit NonRead/Writable decoration of storage texture vars
...
Fixes: tint:366
Change-Id: I03e1312841d5b86d1192382bf4cdf0ad1bcfc43d
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/33921
Auto-Submit: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: David Neto <dneto@google.com>
Reviewed-by: David Neto <dneto@google.com>
2020-11-25 13:59:27 +00:00
Corentin Wallez
bed7a32b3b
type_determiner: use f32 as the subtype for u/norm storage texture.
...
Fixes: tint:367
Change-Id: I311f5b9524d6251c88ae774dc8dc80f6d52e457d
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/33922
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: David Neto <dneto@google.com>
2020-11-25 13:58:47 +00:00
Ben Clayton
12ed862c7e
Add fuzzer instrumentation when building fuzzers
...
Without this the fuzzing is unguided and takes exponentially more time to find interesting corpus cases.
Change-Id: I1b66de153bc41a829a5276a02a729f4e6bb50ef0
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/33722
Reviewed-by: David Neto <dneto@google.com>
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
Commit-Queue: Ben Clayton <bclayton@google.com>
Auto-Submit: Ben Clayton <bclayton@google.com>
2020-11-24 15:28:06 +00:00
David Neto
1b543c6778
spirv-reader: Add a disassembler helper
...
This helped me debug a problem.
Change-Id: I665aaa482c6f20d24966f0990bfe4e15cdd82915
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/33800
Commit-Queue: David Neto <dneto@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Auto-Submit: David Neto <dneto@google.com>
2020-11-24 15:17:46 +00:00
Ben Clayton
1e87fe5517
reader/wgsl: Abort after raising too many errors
...
Change-Id: I641ee8c2e34e059a02742d06c24f96acecb39cd3
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/33720
Commit-Queue: David Neto <dneto@google.com>
Reviewed-by: David Neto <dneto@google.com>
Auto-Submit: Ben Clayton <bclayton@google.com>
2020-11-24 15:15:36 +00:00
Ben Clayton
c489875ff0
ast/module: Additional documentation for type methods
...
Bug: tint:337
Change-Id: I60dae81baba3c5c85efa277e772f4a1f12589e11
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/33786
Auto-Submit: Ben Clayton <bclayton@google.com>
Commit-Queue: David Neto <dneto@google.com>
Reviewed-by: David Neto <dneto@google.com>
2020-11-24 15:11:06 +00:00
Ben Clayton
8282262304
writer/spriv: Add an assert that functions_ is not empty
...
... before attempting to push instructions to `functions_.back()`
If this fires, we're in an invalid state anyway. At least make the explosion less head scratching.
Change-Id: I7b4a002043de4b55a12d9aba80a0393c630140c2
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/33664
Commit-Queue: David Neto <dneto@google.com>
Reviewed-by: David Neto <dneto@google.com>
2020-11-23 22:32:55 +00:00
Ben Clayton
1ed92b2a9d
fuzzers: Add dictionary
...
Helps speed up fuzzing
Change-Id: I19c0476fbb1b6fd497716e2537093c27c69e3007
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/33721
Auto-Submit: Ben Clayton <bclayton@google.com>
Commit-Queue: David Neto <dneto@google.com>
Reviewed-by: David Neto <dneto@google.com>
2020-11-23 21:12:45 +00:00
Ben Clayton
fecf10664a
Improve error message when suffixing float with f
...
Fixes: tint:277
Change-Id: I7ec3bb758c7d80c95c6ecd51eebf4144b696bec5
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/33668
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: David Neto <dneto@google.com>
2020-11-23 20:07:15 +00:00
Ben Clayton
7e4ffa0064
Add create<T>() method to Module for types
...
Migrate all uses to use this and the new `unique_type<T>()` and `types()` methods.
Remove the `type_mgr()` accessor. `TypeManager` is now an implementation detail of the module, allowing us to unify the allocation of types and nodes (if we so wish).
Fixes: tint:337
Bug: tint:307
Change-Id: I233fa9dc73d60515dd721f02ea7ba089ef7d374f
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/33667
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: David Neto <dneto@google.com>
2020-11-23 19:58:55 +00:00
Ben Clayton
0fb5168fc7
Move TypeManager from tint::Context to ast::Module
...
Bug: tint:307
Bug: tint:337
Change-Id: I726cdf89182813ba6f468f8ac35e5d44b22e1e1f
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/33666
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: David Neto <dneto@google.com>
2020-11-23 19:50:55 +00:00
Ben Clayton
3e67c5dba6
Move type_manager to the ast dir/namespace
...
First step to moving this to the `ast::Module`.
Also remove a bunch of redundant includes to `type_manager.h` as this is already included in `context.h`
Bug: tint:307
Bug: tint:337
Change-Id: Ic4baffa7b76ddefa29f56f758c25b1003ef40888
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/33665
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: David Neto <dneto@google.com>
2020-11-23 19:30:55 +00:00