dawn-cmake/src/tint/transform
dan sinclair 46c32d882d Early out Is checks.
This CL adds a check to the `Is` castable methods to determine if the
target type is `final`. If the type being compared too is `final` we
bail out early in the walk up the hierarchy as it won't be a parent
class.

Change-Id: Ieba4dd686e47207a3db0cf3a8ea46fbc1a8d1c91
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/96600
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
2022-07-20 15:53:14 +00:00
..
utils tint/sem/constant.h: Remove #include to program_builder.h 2022-06-29 10:58:41 +00:00
add_empty_entry_point.cc tint: Change all ProgramBuilder literals to 'i' or 'u' suffix 2022-05-05 20:23:40 +00:00
add_empty_entry_point.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
add_empty_entry_point_test.cc Update src/tint unittests to new @stage format. 2022-06-07 13:55:34 +00:00
add_spirv_block_attribute.cc tint: Optimize sem node lookup 2022-07-18 20:50:02 +00:00
add_spirv_block_attribute.h tint: Optimize sem node lookup 2022-07-18 20:50:02 +00:00
add_spirv_block_attribute_test.cc Update src/tint unittests to new @stage format. 2022-06-07 13:55:34 +00:00
array_length_from_uniform.cc tint: Rename Global() -> GlobalVar() 2022-06-25 08:12:59 +00:00
array_length_from_uniform.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
array_length_from_uniform_test.cc Update src/tint unittests to new @stage format. 2022-06-07 13:55:34 +00:00
binding_remapper.cc tint/ast: Derive off `ast::Variable` 2022-06-17 12:48:51 +00:00
binding_remapper.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
binding_remapper_test.cc tint: Disallow write-only storage buffers 2022-07-04 15:17:00 +00:00
builtin_polyfill.cc tint: Implement acosh, asinh, atanh 2022-06-28 15:27:44 +00:00
builtin_polyfill.h tint: Implement acosh, asinh, atanh 2022-06-28 15:27:44 +00:00
builtin_polyfill_test.cc tint: Implement acosh, asinh, atanh 2022-06-28 15:27:44 +00:00
calculate_array_length.cc tint: Optimize sem node lookup 2022-07-18 20:50:02 +00:00
calculate_array_length.h tint: Optimize sem node lookup 2022-07-18 20:50:02 +00:00
calculate_array_length_test.cc tint/transform: Remove use of StorageClass on parameter 2022-06-15 19:32:37 +00:00
canonicalize_entry_point_io.cc tint: Fix SPIR-V validation around interpolation decorations 2022-07-12 19:10:39 +00:00
canonicalize_entry_point_io.h Add parsing of shorter stage attributes. 2022-06-03 02:47:40 +00:00
canonicalize_entry_point_io_test.cc tint: Fix SPIR-V validation around interpolation decorations 2022-07-12 19:10:39 +00:00
combine_samplers.cc Fixup various warnings in Tint which were accidentally suppressed. 2022-06-29 14:38:15 +00:00
combine_samplers.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
combine_samplers_test.cc tint/writer/wgsl: Emit 'f' suffix on FloatLiteralExpressions 2022-05-31 20:45:59 +00:00
decompose_memory_access.cc Early out Is checks. 2022-07-20 15:53:14 +00:00
decompose_memory_access.h tint: Optimize sem node lookup 2022-07-18 20:50:02 +00:00
decompose_memory_access_test.cc tint/transform: Remove use of StorageClass on parameter 2022-06-15 19:32:37 +00:00
decompose_strided_array.cc tint: Remove ast::CallExpression -> sem::Call implicit mapping 2022-05-19 21:50:59 +00:00
decompose_strided_array.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
decompose_strided_array_test.cc tint: Rename Global() -> GlobalVar() 2022-06-25 08:12:59 +00:00
decompose_strided_matrix.cc tint: Change all ProgramBuilder literals to 'i' or 'u' suffix 2022-05-05 20:23:40 +00:00
decompose_strided_matrix.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
decompose_strided_matrix_test.cc Fixup various warnings in Tint which were accidentally suppressed. 2022-06-29 14:38:15 +00:00
disable_uniformity_analysis.cc tint: Refactor Extensions / Enables. 2022-05-18 22:41:48 +00:00
disable_uniformity_analysis.h tint: Add transform to disable uniformity analysis 2022-05-11 13:50:33 +00:00
disable_uniformity_analysis_test.cc Update src/tint unittests to new @stage format. 2022-06-07 13:55:34 +00:00
expand_compound_assignment.cc tint: Simplify ++/-- handling in transform 2022-06-18 14:22:15 +00:00
expand_compound_assignment.h Early out Is checks. 2022-07-20 15:53:14 +00:00
expand_compound_assignment_test.cc tint: Simplify ++/-- handling in transform 2022-06-18 14:22:15 +00:00
first_index_offset.cc tint: Rename Global() -> GlobalVar() 2022-06-25 08:12:59 +00:00
first_index_offset.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
first_index_offset_test.cc Update src/tint unittests to new @stage format. 2022-06-07 13:55:34 +00:00
fold_trivial_single_use_lets.cc tint/ast: Derive off `ast::Variable` 2022-06-17 12:48:51 +00:00
fold_trivial_single_use_lets.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
fold_trivial_single_use_lets_test.cc Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
for_loop_to_loop.cc Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
for_loop_to_loop.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
for_loop_to_loop_test.cc Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
localize_struct_array_assignment.cc tint: Refactor sem::Constant to be less memory-hungry 2022-06-29 19:07:30 +00:00
localize_struct_array_assignment.h Early out Is checks. 2022-07-20 15:53:14 +00:00
localize_struct_array_assignment_test.cc Update src/tint unittests to new @stage format. 2022-06-07 13:55:34 +00:00
loop_to_for_loop.cc Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
loop_to_for_loop.h Early out Is checks. 2022-07-20 15:53:14 +00:00
loop_to_for_loop_test.cc tint: Deprecated module-scope 'let' for 'const' 2022-06-29 00:55:36 +00:00
manager.cc tint/transform: Remove use of StorageClass on parameter 2022-06-15 19:32:37 +00:00
manager.h Early out Is checks. 2022-07-20 15:53:14 +00:00
module_scope_var_to_entry_point_param.cc msl: Promote local private vars to function scope 2022-06-28 02:06:05 +00:00
module_scope_var_to_entry_point_param.h Early out Is checks. 2022-07-20 15:53:14 +00:00
module_scope_var_to_entry_point_param_test.cc msl: Promote local private vars to function scope 2022-06-28 02:06:05 +00:00
multiplanar_external_texture.cc tint: Rename Global() -> GlobalVar() 2022-06-25 08:12:59 +00:00
multiplanar_external_texture.h Early out Is checks. 2022-07-20 15:53:14 +00:00
multiplanar_external_texture_test.cc Skip Gamma and Gamut conversions for BT.709->SRGB 2022-06-22 03:14:26 +00:00
num_workgroups_from_uniform.cc tint: Rename Global() -> GlobalVar() 2022-06-25 08:12:59 +00:00
num_workgroups_from_uniform.h Early out Is checks. 2022-07-20 15:53:14 +00:00
num_workgroups_from_uniform_test.cc tint: Disallow write-only storage buffers 2022-07-04 15:17:00 +00:00
promote_initializers_to_let.cc tint/transform: PromoteInitializersToLet 2022-06-27 20:20:25 +00:00
promote_initializers_to_let.h Early out Is checks. 2022-07-20 15:53:14 +00:00
promote_initializers_to_let_test.cc tint: Deprecated module-scope 'let' for 'const' 2022-06-29 00:55:36 +00:00
promote_side_effects_to_decl.cc tint: Refactor sem::Constant to be less memory-hungry 2022-06-29 19:07:30 +00:00
promote_side_effects_to_decl.h Early out Is checks. 2022-07-20 15:53:14 +00:00
promote_side_effects_to_decl_test.cc Add while statement parsing. 2022-06-16 12:01:27 +00:00
remove_continue_in_switch.cc Add while statement parsing. 2022-06-16 12:01:27 +00:00
remove_continue_in_switch.h Early out Is checks. 2022-07-20 15:53:14 +00:00
remove_continue_in_switch_test.cc Add while statement parsing. 2022-06-16 12:01:27 +00:00
remove_phonies.cc tint: Add ast::ParameterList, use it 2022-06-15 10:14:27 +00:00
remove_phonies.h Early out Is checks. 2022-07-20 15:53:14 +00:00
remove_phonies_test.cc Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
remove_unreachable_statements.cc Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
remove_unreachable_statements.h Early out Is checks. 2022-07-20 15:53:14 +00:00
remove_unreachable_statements_test.cc Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
renamer.cc tint: Remove ast::CallExpression -> sem::Call implicit mapping 2022-05-19 21:50:59 +00:00
renamer.h Early out Is checks. 2022-07-20 15:53:14 +00:00
renamer_test.cc Update src/tint unittests to new @stage format. 2022-06-07 13:55:34 +00:00
robustness.cc tint: Refactor sem::Constant to be less memory-hungry 2022-06-29 19:07:30 +00:00
robustness.h Early out Is checks. 2022-07-20 15:53:14 +00:00
robustness_test.cc tint: Deprecated module-scope 'let' for 'const' 2022-06-29 00:55:36 +00:00
simplify_pointers.cc tint/ast: Derive off `ast::Variable` 2022-06-17 12:48:51 +00:00
simplify_pointers.h Early out Is checks. 2022-07-20 15:53:14 +00:00
simplify_pointers_test.cc Update src/tint unittests to new @stage format. 2022-06-07 13:55:34 +00:00
single_entry_point.cc tint/ast: Derive off `ast::Variable` 2022-06-17 12:48:51 +00:00
single_entry_point.h Early out Is checks. 2022-07-20 15:53:14 +00:00
single_entry_point_test.cc tint: Deprecated module-scope 'let' for 'const' 2022-06-29 00:55:36 +00:00
spirv_atomic.cc tint: Optimize sem node lookup 2022-07-18 20:50:02 +00:00
spirv_atomic.h tint: Optimize sem node lookup 2022-07-18 20:50:02 +00:00
spirv_atomic_test.cc tint: Optimize sem node lookup 2022-07-18 20:50:02 +00:00
test_helper.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
transform.cc tint: Implement `f16` keyword in Tint frontend 2022-05-13 12:01:11 +00:00
transform.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
transform_test.cc tint: Merge [S|U]intLiteralExpression 2022-05-04 22:18:49 +00:00
unshadow.cc tint/transform: Handle 'const' for Unshadow. 2022-06-26 14:38:30 +00:00
unshadow.h Early out Is checks. 2022-07-20 15:53:14 +00:00
unshadow_test.cc tint: Deprecated module-scope 'let' for 'const' 2022-06-29 00:55:36 +00:00
unwind_discard_functions.cc tint: Rename Global() -> GlobalVar() 2022-06-25 08:12:59 +00:00
unwind_discard_functions.h Early out Is checks. 2022-07-20 15:53:14 +00:00
unwind_discard_functions_test.cc Add while statement parsing. 2022-06-16 12:01:27 +00:00
var_for_dynamic_index.cc Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
var_for_dynamic_index.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
var_for_dynamic_index_test.cc tint: Deprecated module-scope 'let' for 'const' 2022-06-29 00:55:36 +00:00
vectorize_scalar_matrix_constructors.cc Tint: Fix VectorizeScalarMatrixConstructors to run for ref to scalar 2022-06-17 15:36:59 +00:00
vectorize_scalar_matrix_constructors.h Early out Is checks. 2022-07-20 15:53:14 +00:00
vectorize_scalar_matrix_constructors_test.cc tint: Remove single scalar matrix constructors. 2022-07-15 15:25:30 +00:00
vertex_pulling.cc tint: Rename Global() -> GlobalVar() 2022-06-25 08:12:59 +00:00
vertex_pulling.h Early out Is checks. 2022-07-20 15:53:14 +00:00
vertex_pulling_test.cc Update src/tint unittests to new @stage format. 2022-06-07 13:55:34 +00:00
while_to_loop.cc Add while statement parsing. 2022-06-16 12:01:27 +00:00
while_to_loop.h Add while statement parsing. 2022-06-16 12:01:27 +00:00
while_to_loop_test.cc Add while statement parsing. 2022-06-16 12:01:27 +00:00
zero_init_workgroup_memory.cc tint: Refactor sem::Constant to be less memory-hungry 2022-06-29 19:07:30 +00:00
zero_init_workgroup_memory.h Early out Is checks. 2022-07-20 15:53:14 +00:00
zero_init_workgroup_memory_test.cc Update src/tint unittests to new @stage format. 2022-06-07 13:55:34 +00:00