This website requires JavaScript.
Explore
Help
Sign In
encounter
/
dawn-cmake
mirror of
https://github.com/encounter/dawn-cmake.git
Watch
1
Star
0
Fork
You've already forked dawn-cmake
0
Code
Issues
Packages
Projects
Releases
Wiki
Activity
41e4d9a34c
dawn-cmake
/
test
/
tint
/
ptr_ref
/
load
/
global
/
i32.wgsl.expected.hlsl
8 lines
94 B
HLSL
Raw
Normal View
History
Unescape
Escape
writer/hlsl: Emit zero values for private variables Also remove the unreachanble constructor logic in EmitHandleVariable. Variables of the handle storage class cannot have initializers. Fixed: tint:173 Change-Id: I7c997a8b6a70308ff9b5c42fa1198810ee365bac Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/55258 Kokoro: Kokoro <noreply+kokoro@google.com> Reviewed-by: James Price <jrprice@google.com> Commit-Queue: Ben Clayton <bclayton@google.com>
2021-06-21 19:37:58 +00:00
static
int
I
=
0
;
Implement Pointers and References This change implements pointers and references as described by the WGSL specification change in https://github.com/gpuweb/gpuweb/pull/1569. reader/spirv: * Now emits address-of `&expr` and indirection `*expr` operators as needed. * As an identifier may now resolve to a pointer or reference type depending on whether the declaration is a `var`, `let` or parameter, `Function::identifier_values_` has been changed from an ID set to an ID -> Type* map. resolver: * Now correctly resolves all expressions to either a value type, reference type or pointer type. * Validates pointer / reference rules on assignment, `var` and `let` construction, and usage. * Handles the address-of and indirection operators. * No longer does any implicit loads of pointer types. * Storage class validation is still TODO (crbug.com/tint/809) writer/spirv: * Correctly handles variables and expressions of pointer and reference types, emitting OpLoads where necessary. test: * Lots of new test cases Fixed: tint:727 Change-Id: I77d3281590e35e5a3122f5b74cdeb71a6fe51f74 Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/50740 Commit-Queue: Ben Clayton <bclayton@chromium.org> Kokoro: Kokoro <noreply+kokoro@google.com> Reviewed-by: David Neto <dneto@google.com>
2021-05-18 10:28:48 +00:00
[
numthreads
(
1
,
1
,
1
)
]
void
main
(
)
{
writer/hlsl: Emit for-loops where possible. Use the new transforms to try and simplify loops into for-loops. Emit loops when the initialiser, condition and continuing are simple enough to do so. Bug: tint:952 Change-Id: I5b3c225b245ffa72996abf6a70f52a9cd25b748e Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/56772 Kokoro: Kokoro <noreply+kokoro@google.com> Reviewed-by: David Neto <dneto@google.com>
2021-07-02 22:17:25 +00:00
const
int
use
=
(
I
+
1
)
;
Implement Pointers and References This change implements pointers and references as described by the WGSL specification change in https://github.com/gpuweb/gpuweb/pull/1569. reader/spirv: * Now emits address-of `&expr` and indirection `*expr` operators as needed. * As an identifier may now resolve to a pointer or reference type depending on whether the declaration is a `var`, `let` or parameter, `Function::identifier_values_` has been changed from an ID set to an ID -> Type* map. resolver: * Now correctly resolves all expressions to either a value type, reference type or pointer type. * Validates pointer / reference rules on assignment, `var` and `let` construction, and usage. * Handles the address-of and indirection operators. * No longer does any implicit loads of pointer types. * Storage class validation is still TODO (crbug.com/tint/809) writer/spirv: * Correctly handles variables and expressions of pointer and reference types, emitting OpLoads where necessary. test: * Lots of new test cases Fixed: tint:727 Change-Id: I77d3281590e35e5a3122f5b74cdeb71a6fe51f74 Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/50740 Commit-Queue: Ben Clayton <bclayton@chromium.org> Kokoro: Kokoro <noreply+kokoro@google.com> Reviewed-by: David Neto <dneto@google.com>
2021-05-18 10:28:48 +00:00
return
;
}