# GENERATED FILE - DO NOT EDIT.
# Generated by generate_tests.py
#
# Copyright (c) 2022 Google LLC.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

list(APPEND DIFF_TEST_FILES
"diff_files/OpExtInst_in_dst_only_autogen.cpp"
"diff_files/OpExtInst_in_src_only_autogen.cpp"
"diff_files/OpTypeForwardPointer_basic_autogen.cpp"
"diff_files/OpTypeForwardPointer_intertwined_autogen.cpp"
"diff_files/OpTypeForwardPointer_mismatching_class_autogen.cpp"
"diff_files/OpTypeForwardPointer_mismatching_type_autogen.cpp"
"diff_files/OpTypeForwardPointer_nested_autogen.cpp"
"diff_files/OpTypeForwardPointer_onesided_debug_autogen.cpp"
"diff_files/basic_autogen.cpp"
"diff_files/constant_array_size_autogen.cpp"
"diff_files/different_decorations_fragment_autogen.cpp"
"diff_files/different_decorations_vertex_autogen.cpp"
"diff_files/different_function_parameter_count_autogen.cpp"
"diff_files/extra_if_block_autogen.cpp"
"diff_files/index_signedness_autogen.cpp"
"diff_files/int_vs_uint_constants_autogen.cpp"
"diff_files/large_functions_large_diffs_autogen.cpp"
"diff_files/large_functions_small_diffs_autogen.cpp"
"diff_files/multiple_different_entry_points_autogen.cpp"
"diff_files/multiple_same_entry_points_autogen.cpp"
"diff_files/reordered_if_blocks_autogen.cpp"
"diff_files/reordered_switch_blocks_autogen.cpp"
"diff_files/small_functions_small_diffs_autogen.cpp"
"diff_files/spec_constant_array_size_autogen.cpp"
"diff_files/spec_constant_composite_autogen.cpp"
"diff_files/unrelated_shaders_autogen.cpp"
)
