mirror of
https://github.com/encounter/dawn-cmake.git
synced 2025-12-10 05:57:51 +00:00
[ast] Add the result_type into the AST dump
This CL adds the result_type type_name into the AST dump if available. Bug: tint:310, tint:308 Change-Id: Iea678fd4f7a2dadbfca86f29043c75459c421cb3 Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/32780 Reviewed-by: Sarah Mashayekhi <sarahmashay@google.com> Commit-Queue: dan sinclair <dsinclair@chromium.org>
This commit is contained in:
committed by
Commit Bot service account
parent
112314b73d
commit
80598edf78
@@ -38,6 +38,7 @@
|
||||
#include "src/ast/type_constructor_expression.h"
|
||||
#include "src/ast/uint_literal.h"
|
||||
#include "src/ast/variable_decl_statement.h"
|
||||
#include "src/type_determiner.h"
|
||||
|
||||
namespace tint {
|
||||
namespace transform {
|
||||
@@ -100,7 +101,11 @@ bool VertexPullingTransform::Run() {
|
||||
AddVertexStorageBuffers();
|
||||
AddVertexPullingPreamble(vertex_func);
|
||||
|
||||
return true;
|
||||
// We've potentially inserted nodes into the AST so we have to make sure to
|
||||
// re-run type determination else those nodes will be missing their
|
||||
// result_type
|
||||
TypeDeterminer td(ctx_, mod_);
|
||||
return td.Determine();
|
||||
}
|
||||
|
||||
std::string VertexPullingTransform::GetVertexBufferName(uint32_t index) {
|
||||
|
||||
@@ -186,29 +186,29 @@ TEST_F(VertexPullingTransformTest, OneAttribute) {
|
||||
}
|
||||
}
|
||||
Assignment{
|
||||
Identifier{_tint_pulling_pos}
|
||||
Binary{
|
||||
Binary{
|
||||
Identifier{_tint_pulling_vertex_index}
|
||||
Identifier[__ptr_function__i32]{_tint_pulling_pos}
|
||||
Binary[__i32]{
|
||||
Binary[__i32]{
|
||||
Identifier[__ptr_in__i32]{_tint_pulling_vertex_index}
|
||||
multiply
|
||||
ScalarConstructor{4}
|
||||
ScalarConstructor[__u32]{4}
|
||||
}
|
||||
add
|
||||
ScalarConstructor{0}
|
||||
ScalarConstructor[__u32]{0}
|
||||
}
|
||||
}
|
||||
Assignment{
|
||||
Identifier{var_a}
|
||||
Bitcast<__f32>{
|
||||
ArrayAccessor{
|
||||
MemberAccessor{
|
||||
Identifier{_tint_pulling_vertex_buffer_0}
|
||||
Identifier{_tint_vertex_data}
|
||||
Identifier[__ptr_private__f32]{var_a}
|
||||
Bitcast[__f32]<__f32>{
|
||||
ArrayAccessor[__ptr_storage_buffer__u32]{
|
||||
MemberAccessor[__ptr_storage_buffer__array__u32_stride_4]{
|
||||
Identifier[__ptr_storage_buffer__struct_TintVertexData]{_tint_pulling_vertex_buffer_0}
|
||||
Identifier[not set]{_tint_vertex_data}
|
||||
}
|
||||
Binary{
|
||||
Identifier{_tint_pulling_pos}
|
||||
Binary[__i32]{
|
||||
Identifier[__ptr_function__i32]{_tint_pulling_pos}
|
||||
divide
|
||||
ScalarConstructor{4}
|
||||
ScalarConstructor[__u32]{4}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -271,29 +271,29 @@ TEST_F(VertexPullingTransformTest, OneInstancedAttribute) {
|
||||
}
|
||||
}
|
||||
Assignment{
|
||||
Identifier{_tint_pulling_pos}
|
||||
Binary{
|
||||
Binary{
|
||||
Identifier{_tint_pulling_instance_index}
|
||||
Identifier[__ptr_function__i32]{_tint_pulling_pos}
|
||||
Binary[__i32]{
|
||||
Binary[__i32]{
|
||||
Identifier[__ptr_in__i32]{_tint_pulling_instance_index}
|
||||
multiply
|
||||
ScalarConstructor{4}
|
||||
ScalarConstructor[__u32]{4}
|
||||
}
|
||||
add
|
||||
ScalarConstructor{0}
|
||||
ScalarConstructor[__u32]{0}
|
||||
}
|
||||
}
|
||||
Assignment{
|
||||
Identifier{var_a}
|
||||
Bitcast<__f32>{
|
||||
ArrayAccessor{
|
||||
MemberAccessor{
|
||||
Identifier{_tint_pulling_vertex_buffer_0}
|
||||
Identifier{_tint_vertex_data}
|
||||
Identifier[__ptr_private__f32]{var_a}
|
||||
Bitcast[__f32]<__f32>{
|
||||
ArrayAccessor[__ptr_storage_buffer__u32]{
|
||||
MemberAccessor[__ptr_storage_buffer__array__u32_stride_4]{
|
||||
Identifier[__ptr_storage_buffer__struct_TintVertexData]{_tint_pulling_vertex_buffer_0}
|
||||
Identifier[not set]{_tint_vertex_data}
|
||||
}
|
||||
Binary{
|
||||
Identifier{_tint_pulling_pos}
|
||||
Binary[__i32]{
|
||||
Identifier[__ptr_function__i32]{_tint_pulling_pos}
|
||||
divide
|
||||
ScalarConstructor{4}
|
||||
ScalarConstructor[__u32]{4}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -356,29 +356,29 @@ TEST_F(VertexPullingTransformTest, OneAttributeDifferentOutputSet) {
|
||||
}
|
||||
}
|
||||
Assignment{
|
||||
Identifier{_tint_pulling_pos}
|
||||
Binary{
|
||||
Binary{
|
||||
Identifier{_tint_pulling_vertex_index}
|
||||
Identifier[__ptr_function__i32]{_tint_pulling_pos}
|
||||
Binary[__i32]{
|
||||
Binary[__i32]{
|
||||
Identifier[__ptr_in__i32]{_tint_pulling_vertex_index}
|
||||
multiply
|
||||
ScalarConstructor{4}
|
||||
ScalarConstructor[__u32]{4}
|
||||
}
|
||||
add
|
||||
ScalarConstructor{0}
|
||||
ScalarConstructor[__u32]{0}
|
||||
}
|
||||
}
|
||||
Assignment{
|
||||
Identifier{var_a}
|
||||
Bitcast<__f32>{
|
||||
ArrayAccessor{
|
||||
MemberAccessor{
|
||||
Identifier{_tint_pulling_vertex_buffer_0}
|
||||
Identifier{_tint_vertex_data}
|
||||
Identifier[__ptr_private__f32]{var_a}
|
||||
Bitcast[__f32]<__f32>{
|
||||
ArrayAccessor[__ptr_storage_buffer__u32]{
|
||||
MemberAccessor[__ptr_storage_buffer__array__u32_stride_4]{
|
||||
Identifier[__ptr_storage_buffer__struct_TintVertexData]{_tint_pulling_vertex_buffer_0}
|
||||
Identifier[not set]{_tint_vertex_data}
|
||||
}
|
||||
Binary{
|
||||
Identifier{_tint_pulling_pos}
|
||||
Binary[__i32]{
|
||||
Identifier[__ptr_function__i32]{_tint_pulling_pos}
|
||||
divide
|
||||
ScalarConstructor{4}
|
||||
ScalarConstructor[__u32]{4}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -493,57 +493,57 @@ TEST_F(VertexPullingTransformTest, ExistingVertexIndexAndInstanceIndex) {
|
||||
}
|
||||
}
|
||||
Assignment{
|
||||
Identifier{_tint_pulling_pos}
|
||||
Binary{
|
||||
Binary{
|
||||
Identifier{custom_vertex_index}
|
||||
Identifier[__ptr_function__i32]{_tint_pulling_pos}
|
||||
Binary[__i32]{
|
||||
Binary[__i32]{
|
||||
Identifier[__ptr_in__i32]{custom_vertex_index}
|
||||
multiply
|
||||
ScalarConstructor{4}
|
||||
ScalarConstructor[__u32]{4}
|
||||
}
|
||||
add
|
||||
ScalarConstructor{0}
|
||||
ScalarConstructor[__u32]{0}
|
||||
}
|
||||
}
|
||||
Assignment{
|
||||
Identifier{var_a}
|
||||
Bitcast<__f32>{
|
||||
ArrayAccessor{
|
||||
MemberAccessor{
|
||||
Identifier{_tint_pulling_vertex_buffer_0}
|
||||
Identifier{_tint_vertex_data}
|
||||
Identifier[__ptr_private__f32]{var_a}
|
||||
Bitcast[__f32]<__f32>{
|
||||
ArrayAccessor[__ptr_storage_buffer__u32]{
|
||||
MemberAccessor[__ptr_storage_buffer__array__u32_stride_4]{
|
||||
Identifier[__ptr_storage_buffer__struct_TintVertexData]{_tint_pulling_vertex_buffer_0}
|
||||
Identifier[not set]{_tint_vertex_data}
|
||||
}
|
||||
Binary{
|
||||
Identifier{_tint_pulling_pos}
|
||||
Binary[__i32]{
|
||||
Identifier[__ptr_function__i32]{_tint_pulling_pos}
|
||||
divide
|
||||
ScalarConstructor{4}
|
||||
ScalarConstructor[__u32]{4}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Assignment{
|
||||
Identifier{_tint_pulling_pos}
|
||||
Binary{
|
||||
Binary{
|
||||
Identifier{custom_instance_index}
|
||||
Identifier[__ptr_function__i32]{_tint_pulling_pos}
|
||||
Binary[__i32]{
|
||||
Binary[__i32]{
|
||||
Identifier[__ptr_in__i32]{custom_instance_index}
|
||||
multiply
|
||||
ScalarConstructor{4}
|
||||
ScalarConstructor[__u32]{4}
|
||||
}
|
||||
add
|
||||
ScalarConstructor{0}
|
||||
ScalarConstructor[__u32]{0}
|
||||
}
|
||||
}
|
||||
Assignment{
|
||||
Identifier{var_b}
|
||||
Bitcast<__f32>{
|
||||
ArrayAccessor{
|
||||
MemberAccessor{
|
||||
Identifier{_tint_pulling_vertex_buffer_1}
|
||||
Identifier{_tint_vertex_data}
|
||||
Identifier[__ptr_private__f32]{var_b}
|
||||
Bitcast[__f32]<__f32>{
|
||||
ArrayAccessor[__ptr_storage_buffer__u32]{
|
||||
MemberAccessor[__ptr_storage_buffer__array__u32_stride_4]{
|
||||
Identifier[__ptr_storage_buffer__struct_TintVertexData]{_tint_pulling_vertex_buffer_1}
|
||||
Identifier[not set]{_tint_vertex_data}
|
||||
}
|
||||
Binary{
|
||||
Identifier{_tint_pulling_pos}
|
||||
Binary[__i32]{
|
||||
Identifier[__ptr_function__i32]{_tint_pulling_pos}
|
||||
divide
|
||||
ScalarConstructor{4}
|
||||
ScalarConstructor[__u32]{4}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -616,114 +616,114 @@ TEST_F(VertexPullingTransformTest, TwoAttributesSameBuffer) {
|
||||
}
|
||||
}
|
||||
Assignment{
|
||||
Identifier{_tint_pulling_pos}
|
||||
Binary{
|
||||
Binary{
|
||||
Identifier{_tint_pulling_vertex_index}
|
||||
Identifier[__ptr_function__i32]{_tint_pulling_pos}
|
||||
Binary[__i32]{
|
||||
Binary[__i32]{
|
||||
Identifier[__ptr_in__i32]{_tint_pulling_vertex_index}
|
||||
multiply
|
||||
ScalarConstructor{16}
|
||||
ScalarConstructor[__u32]{16}
|
||||
}
|
||||
add
|
||||
ScalarConstructor{0}
|
||||
ScalarConstructor[__u32]{0}
|
||||
}
|
||||
}
|
||||
Assignment{
|
||||
Identifier{var_a}
|
||||
Bitcast<__f32>{
|
||||
ArrayAccessor{
|
||||
MemberAccessor{
|
||||
Identifier{_tint_pulling_vertex_buffer_0}
|
||||
Identifier{_tint_vertex_data}
|
||||
Identifier[__ptr_private__f32]{var_a}
|
||||
Bitcast[__f32]<__f32>{
|
||||
ArrayAccessor[__ptr_storage_buffer__u32]{
|
||||
MemberAccessor[__ptr_storage_buffer__array__u32_stride_4]{
|
||||
Identifier[__ptr_storage_buffer__struct_TintVertexData]{_tint_pulling_vertex_buffer_0}
|
||||
Identifier[not set]{_tint_vertex_data}
|
||||
}
|
||||
Binary{
|
||||
Identifier{_tint_pulling_pos}
|
||||
Binary[__i32]{
|
||||
Identifier[__ptr_function__i32]{_tint_pulling_pos}
|
||||
divide
|
||||
ScalarConstructor{4}
|
||||
ScalarConstructor[__u32]{4}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Assignment{
|
||||
Identifier{_tint_pulling_pos}
|
||||
Binary{
|
||||
Binary{
|
||||
Identifier{_tint_pulling_vertex_index}
|
||||
Identifier[__ptr_function__i32]{_tint_pulling_pos}
|
||||
Binary[__i32]{
|
||||
Binary[__i32]{
|
||||
Identifier[__ptr_in__i32]{_tint_pulling_vertex_index}
|
||||
multiply
|
||||
ScalarConstructor{16}
|
||||
ScalarConstructor[__u32]{16}
|
||||
}
|
||||
add
|
||||
ScalarConstructor{0}
|
||||
ScalarConstructor[__u32]{0}
|
||||
}
|
||||
}
|
||||
Assignment{
|
||||
Identifier{var_b}
|
||||
TypeConstructor{
|
||||
Identifier[__ptr_private__array__f32_4]{var_b}
|
||||
TypeConstructor[__vec_4__f32]{
|
||||
__vec_4__f32
|
||||
Bitcast<__f32>{
|
||||
ArrayAccessor{
|
||||
MemberAccessor{
|
||||
Identifier{_tint_pulling_vertex_buffer_0}
|
||||
Identifier{_tint_vertex_data}
|
||||
Bitcast[__f32]<__f32>{
|
||||
ArrayAccessor[__ptr_storage_buffer__u32]{
|
||||
MemberAccessor[__ptr_storage_buffer__array__u32_stride_4]{
|
||||
Identifier[__ptr_storage_buffer__struct_TintVertexData]{_tint_pulling_vertex_buffer_0}
|
||||
Identifier[not set]{_tint_vertex_data}
|
||||
}
|
||||
Binary{
|
||||
Binary{
|
||||
Identifier{_tint_pulling_pos}
|
||||
Binary[__i32]{
|
||||
Binary[__i32]{
|
||||
Identifier[__ptr_function__i32]{_tint_pulling_pos}
|
||||
add
|
||||
ScalarConstructor{0}
|
||||
ScalarConstructor[__u32]{0}
|
||||
}
|
||||
divide
|
||||
ScalarConstructor{4}
|
||||
ScalarConstructor[__u32]{4}
|
||||
}
|
||||
}
|
||||
}
|
||||
Bitcast<__f32>{
|
||||
ArrayAccessor{
|
||||
MemberAccessor{
|
||||
Identifier{_tint_pulling_vertex_buffer_0}
|
||||
Identifier{_tint_vertex_data}
|
||||
Bitcast[__f32]<__f32>{
|
||||
ArrayAccessor[__ptr_storage_buffer__u32]{
|
||||
MemberAccessor[__ptr_storage_buffer__array__u32_stride_4]{
|
||||
Identifier[__ptr_storage_buffer__struct_TintVertexData]{_tint_pulling_vertex_buffer_0}
|
||||
Identifier[not set]{_tint_vertex_data}
|
||||
}
|
||||
Binary{
|
||||
Binary{
|
||||
Identifier{_tint_pulling_pos}
|
||||
Binary[__i32]{
|
||||
Binary[__i32]{
|
||||
Identifier[__ptr_function__i32]{_tint_pulling_pos}
|
||||
add
|
||||
ScalarConstructor{4}
|
||||
ScalarConstructor[__u32]{4}
|
||||
}
|
||||
divide
|
||||
ScalarConstructor{4}
|
||||
ScalarConstructor[__u32]{4}
|
||||
}
|
||||
}
|
||||
}
|
||||
Bitcast<__f32>{
|
||||
ArrayAccessor{
|
||||
MemberAccessor{
|
||||
Identifier{_tint_pulling_vertex_buffer_0}
|
||||
Identifier{_tint_vertex_data}
|
||||
Bitcast[__f32]<__f32>{
|
||||
ArrayAccessor[__ptr_storage_buffer__u32]{
|
||||
MemberAccessor[__ptr_storage_buffer__array__u32_stride_4]{
|
||||
Identifier[__ptr_storage_buffer__struct_TintVertexData]{_tint_pulling_vertex_buffer_0}
|
||||
Identifier[not set]{_tint_vertex_data}
|
||||
}
|
||||
Binary{
|
||||
Binary{
|
||||
Identifier{_tint_pulling_pos}
|
||||
Binary[__i32]{
|
||||
Binary[__i32]{
|
||||
Identifier[__ptr_function__i32]{_tint_pulling_pos}
|
||||
add
|
||||
ScalarConstructor{8}
|
||||
ScalarConstructor[__u32]{8}
|
||||
}
|
||||
divide
|
||||
ScalarConstructor{4}
|
||||
ScalarConstructor[__u32]{4}
|
||||
}
|
||||
}
|
||||
}
|
||||
Bitcast<__f32>{
|
||||
ArrayAccessor{
|
||||
MemberAccessor{
|
||||
Identifier{_tint_pulling_vertex_buffer_0}
|
||||
Identifier{_tint_vertex_data}
|
||||
Bitcast[__f32]<__f32>{
|
||||
ArrayAccessor[__ptr_storage_buffer__u32]{
|
||||
MemberAccessor[__ptr_storage_buffer__array__u32_stride_4]{
|
||||
Identifier[__ptr_storage_buffer__struct_TintVertexData]{_tint_pulling_vertex_buffer_0}
|
||||
Identifier[not set]{_tint_vertex_data}
|
||||
}
|
||||
Binary{
|
||||
Binary{
|
||||
Identifier{_tint_pulling_pos}
|
||||
Binary[__i32]{
|
||||
Binary[__i32]{
|
||||
Identifier[__ptr_function__i32]{_tint_pulling_pos}
|
||||
add
|
||||
ScalarConstructor{12}
|
||||
ScalarConstructor[__u32]{12}
|
||||
}
|
||||
divide
|
||||
ScalarConstructor{4}
|
||||
ScalarConstructor[__u32]{4}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -824,207 +824,207 @@ TEST_F(VertexPullingTransformTest, FloatVectorAttributes) {
|
||||
}
|
||||
}
|
||||
Assignment{
|
||||
Identifier{_tint_pulling_pos}
|
||||
Binary{
|
||||
Binary{
|
||||
Identifier{_tint_pulling_vertex_index}
|
||||
Identifier[__ptr_function__i32]{_tint_pulling_pos}
|
||||
Binary[__i32]{
|
||||
Binary[__i32]{
|
||||
Identifier[__ptr_in__i32]{_tint_pulling_vertex_index}
|
||||
multiply
|
||||
ScalarConstructor{8}
|
||||
ScalarConstructor[__u32]{8}
|
||||
}
|
||||
add
|
||||
ScalarConstructor{0}
|
||||
ScalarConstructor[__u32]{0}
|
||||
}
|
||||
}
|
||||
Assignment{
|
||||
Identifier{var_a}
|
||||
TypeConstructor{
|
||||
Identifier[__ptr_private__array__f32_2]{var_a}
|
||||
TypeConstructor[__vec_2__f32]{
|
||||
__vec_2__f32
|
||||
Bitcast<__f32>{
|
||||
ArrayAccessor{
|
||||
MemberAccessor{
|
||||
Identifier{_tint_pulling_vertex_buffer_0}
|
||||
Identifier{_tint_vertex_data}
|
||||
Bitcast[__f32]<__f32>{
|
||||
ArrayAccessor[__ptr_storage_buffer__u32]{
|
||||
MemberAccessor[__ptr_storage_buffer__array__u32_stride_4]{
|
||||
Identifier[__ptr_storage_buffer__struct_TintVertexData]{_tint_pulling_vertex_buffer_0}
|
||||
Identifier[not set]{_tint_vertex_data}
|
||||
}
|
||||
Binary{
|
||||
Binary{
|
||||
Identifier{_tint_pulling_pos}
|
||||
Binary[__i32]{
|
||||
Binary[__i32]{
|
||||
Identifier[__ptr_function__i32]{_tint_pulling_pos}
|
||||
add
|
||||
ScalarConstructor{0}
|
||||
ScalarConstructor[__u32]{0}
|
||||
}
|
||||
divide
|
||||
ScalarConstructor{4}
|
||||
ScalarConstructor[__u32]{4}
|
||||
}
|
||||
}
|
||||
}
|
||||
Bitcast<__f32>{
|
||||
ArrayAccessor{
|
||||
MemberAccessor{
|
||||
Identifier{_tint_pulling_vertex_buffer_0}
|
||||
Identifier{_tint_vertex_data}
|
||||
Bitcast[__f32]<__f32>{
|
||||
ArrayAccessor[__ptr_storage_buffer__u32]{
|
||||
MemberAccessor[__ptr_storage_buffer__array__u32_stride_4]{
|
||||
Identifier[__ptr_storage_buffer__struct_TintVertexData]{_tint_pulling_vertex_buffer_0}
|
||||
Identifier[not set]{_tint_vertex_data}
|
||||
}
|
||||
Binary{
|
||||
Binary{
|
||||
Identifier{_tint_pulling_pos}
|
||||
Binary[__i32]{
|
||||
Binary[__i32]{
|
||||
Identifier[__ptr_function__i32]{_tint_pulling_pos}
|
||||
add
|
||||
ScalarConstructor{4}
|
||||
ScalarConstructor[__u32]{4}
|
||||
}
|
||||
divide
|
||||
ScalarConstructor{4}
|
||||
ScalarConstructor[__u32]{4}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Assignment{
|
||||
Identifier{_tint_pulling_pos}
|
||||
Binary{
|
||||
Binary{
|
||||
Identifier{_tint_pulling_vertex_index}
|
||||
Identifier[__ptr_function__i32]{_tint_pulling_pos}
|
||||
Binary[__i32]{
|
||||
Binary[__i32]{
|
||||
Identifier[__ptr_in__i32]{_tint_pulling_vertex_index}
|
||||
multiply
|
||||
ScalarConstructor{12}
|
||||
ScalarConstructor[__u32]{12}
|
||||
}
|
||||
add
|
||||
ScalarConstructor{0}
|
||||
ScalarConstructor[__u32]{0}
|
||||
}
|
||||
}
|
||||
Assignment{
|
||||
Identifier{var_b}
|
||||
TypeConstructor{
|
||||
Identifier[__ptr_private__array__f32_3]{var_b}
|
||||
TypeConstructor[__vec_3__f32]{
|
||||
__vec_3__f32
|
||||
Bitcast<__f32>{
|
||||
ArrayAccessor{
|
||||
MemberAccessor{
|
||||
Identifier{_tint_pulling_vertex_buffer_1}
|
||||
Identifier{_tint_vertex_data}
|
||||
Bitcast[__f32]<__f32>{
|
||||
ArrayAccessor[__ptr_storage_buffer__u32]{
|
||||
MemberAccessor[__ptr_storage_buffer__array__u32_stride_4]{
|
||||
Identifier[__ptr_storage_buffer__struct_TintVertexData]{_tint_pulling_vertex_buffer_1}
|
||||
Identifier[not set]{_tint_vertex_data}
|
||||
}
|
||||
Binary{
|
||||
Binary{
|
||||
Identifier{_tint_pulling_pos}
|
||||
Binary[__i32]{
|
||||
Binary[__i32]{
|
||||
Identifier[__ptr_function__i32]{_tint_pulling_pos}
|
||||
add
|
||||
ScalarConstructor{0}
|
||||
ScalarConstructor[__u32]{0}
|
||||
}
|
||||
divide
|
||||
ScalarConstructor{4}
|
||||
ScalarConstructor[__u32]{4}
|
||||
}
|
||||
}
|
||||
}
|
||||
Bitcast<__f32>{
|
||||
ArrayAccessor{
|
||||
MemberAccessor{
|
||||
Identifier{_tint_pulling_vertex_buffer_1}
|
||||
Identifier{_tint_vertex_data}
|
||||
Bitcast[__f32]<__f32>{
|
||||
ArrayAccessor[__ptr_storage_buffer__u32]{
|
||||
MemberAccessor[__ptr_storage_buffer__array__u32_stride_4]{
|
||||
Identifier[__ptr_storage_buffer__struct_TintVertexData]{_tint_pulling_vertex_buffer_1}
|
||||
Identifier[not set]{_tint_vertex_data}
|
||||
}
|
||||
Binary{
|
||||
Binary{
|
||||
Identifier{_tint_pulling_pos}
|
||||
Binary[__i32]{
|
||||
Binary[__i32]{
|
||||
Identifier[__ptr_function__i32]{_tint_pulling_pos}
|
||||
add
|
||||
ScalarConstructor{4}
|
||||
ScalarConstructor[__u32]{4}
|
||||
}
|
||||
divide
|
||||
ScalarConstructor{4}
|
||||
ScalarConstructor[__u32]{4}
|
||||
}
|
||||
}
|
||||
}
|
||||
Bitcast<__f32>{
|
||||
ArrayAccessor{
|
||||
MemberAccessor{
|
||||
Identifier{_tint_pulling_vertex_buffer_1}
|
||||
Identifier{_tint_vertex_data}
|
||||
Bitcast[__f32]<__f32>{
|
||||
ArrayAccessor[__ptr_storage_buffer__u32]{
|
||||
MemberAccessor[__ptr_storage_buffer__array__u32_stride_4]{
|
||||
Identifier[__ptr_storage_buffer__struct_TintVertexData]{_tint_pulling_vertex_buffer_1}
|
||||
Identifier[not set]{_tint_vertex_data}
|
||||
}
|
||||
Binary{
|
||||
Binary{
|
||||
Identifier{_tint_pulling_pos}
|
||||
Binary[__i32]{
|
||||
Binary[__i32]{
|
||||
Identifier[__ptr_function__i32]{_tint_pulling_pos}
|
||||
add
|
||||
ScalarConstructor{8}
|
||||
ScalarConstructor[__u32]{8}
|
||||
}
|
||||
divide
|
||||
ScalarConstructor{4}
|
||||
ScalarConstructor[__u32]{4}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Assignment{
|
||||
Identifier{_tint_pulling_pos}
|
||||
Binary{
|
||||
Binary{
|
||||
Identifier{_tint_pulling_vertex_index}
|
||||
Identifier[__ptr_function__i32]{_tint_pulling_pos}
|
||||
Binary[__i32]{
|
||||
Binary[__i32]{
|
||||
Identifier[__ptr_in__i32]{_tint_pulling_vertex_index}
|
||||
multiply
|
||||
ScalarConstructor{16}
|
||||
ScalarConstructor[__u32]{16}
|
||||
}
|
||||
add
|
||||
ScalarConstructor{0}
|
||||
ScalarConstructor[__u32]{0}
|
||||
}
|
||||
}
|
||||
Assignment{
|
||||
Identifier{var_c}
|
||||
TypeConstructor{
|
||||
Identifier[__ptr_private__array__f32_4]{var_c}
|
||||
TypeConstructor[__vec_4__f32]{
|
||||
__vec_4__f32
|
||||
Bitcast<__f32>{
|
||||
ArrayAccessor{
|
||||
MemberAccessor{
|
||||
Identifier{_tint_pulling_vertex_buffer_2}
|
||||
Identifier{_tint_vertex_data}
|
||||
Bitcast[__f32]<__f32>{
|
||||
ArrayAccessor[__ptr_storage_buffer__u32]{
|
||||
MemberAccessor[__ptr_storage_buffer__array__u32_stride_4]{
|
||||
Identifier[__ptr_storage_buffer__struct_TintVertexData]{_tint_pulling_vertex_buffer_2}
|
||||
Identifier[not set]{_tint_vertex_data}
|
||||
}
|
||||
Binary{
|
||||
Binary{
|
||||
Identifier{_tint_pulling_pos}
|
||||
Binary[__i32]{
|
||||
Binary[__i32]{
|
||||
Identifier[__ptr_function__i32]{_tint_pulling_pos}
|
||||
add
|
||||
ScalarConstructor{0}
|
||||
ScalarConstructor[__u32]{0}
|
||||
}
|
||||
divide
|
||||
ScalarConstructor{4}
|
||||
ScalarConstructor[__u32]{4}
|
||||
}
|
||||
}
|
||||
}
|
||||
Bitcast<__f32>{
|
||||
ArrayAccessor{
|
||||
MemberAccessor{
|
||||
Identifier{_tint_pulling_vertex_buffer_2}
|
||||
Identifier{_tint_vertex_data}
|
||||
Bitcast[__f32]<__f32>{
|
||||
ArrayAccessor[__ptr_storage_buffer__u32]{
|
||||
MemberAccessor[__ptr_storage_buffer__array__u32_stride_4]{
|
||||
Identifier[__ptr_storage_buffer__struct_TintVertexData]{_tint_pulling_vertex_buffer_2}
|
||||
Identifier[not set]{_tint_vertex_data}
|
||||
}
|
||||
Binary{
|
||||
Binary{
|
||||
Identifier{_tint_pulling_pos}
|
||||
Binary[__i32]{
|
||||
Binary[__i32]{
|
||||
Identifier[__ptr_function__i32]{_tint_pulling_pos}
|
||||
add
|
||||
ScalarConstructor{4}
|
||||
ScalarConstructor[__u32]{4}
|
||||
}
|
||||
divide
|
||||
ScalarConstructor{4}
|
||||
ScalarConstructor[__u32]{4}
|
||||
}
|
||||
}
|
||||
}
|
||||
Bitcast<__f32>{
|
||||
ArrayAccessor{
|
||||
MemberAccessor{
|
||||
Identifier{_tint_pulling_vertex_buffer_2}
|
||||
Identifier{_tint_vertex_data}
|
||||
Bitcast[__f32]<__f32>{
|
||||
ArrayAccessor[__ptr_storage_buffer__u32]{
|
||||
MemberAccessor[__ptr_storage_buffer__array__u32_stride_4]{
|
||||
Identifier[__ptr_storage_buffer__struct_TintVertexData]{_tint_pulling_vertex_buffer_2}
|
||||
Identifier[not set]{_tint_vertex_data}
|
||||
}
|
||||
Binary{
|
||||
Binary{
|
||||
Identifier{_tint_pulling_pos}
|
||||
Binary[__i32]{
|
||||
Binary[__i32]{
|
||||
Identifier[__ptr_function__i32]{_tint_pulling_pos}
|
||||
add
|
||||
ScalarConstructor{8}
|
||||
ScalarConstructor[__u32]{8}
|
||||
}
|
||||
divide
|
||||
ScalarConstructor{4}
|
||||
ScalarConstructor[__u32]{4}
|
||||
}
|
||||
}
|
||||
}
|
||||
Bitcast<__f32>{
|
||||
ArrayAccessor{
|
||||
MemberAccessor{
|
||||
Identifier{_tint_pulling_vertex_buffer_2}
|
||||
Identifier{_tint_vertex_data}
|
||||
Bitcast[__f32]<__f32>{
|
||||
ArrayAccessor[__ptr_storage_buffer__u32]{
|
||||
MemberAccessor[__ptr_storage_buffer__array__u32_stride_4]{
|
||||
Identifier[__ptr_storage_buffer__struct_TintVertexData]{_tint_pulling_vertex_buffer_2}
|
||||
Identifier[not set]{_tint_vertex_data}
|
||||
}
|
||||
Binary{
|
||||
Binary{
|
||||
Identifier{_tint_pulling_pos}
|
||||
Binary[__i32]{
|
||||
Binary[__i32]{
|
||||
Identifier[__ptr_function__i32]{_tint_pulling_pos}
|
||||
add
|
||||
ScalarConstructor{12}
|
||||
ScalarConstructor[__u32]{12}
|
||||
}
|
||||
divide
|
||||
ScalarConstructor{4}
|
||||
ScalarConstructor[__u32]{4}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user