1fd4e5da5Sopenharmony_ciload( 2fd4e5da5Sopenharmony_ci ":build_defs.bzl", 3fd4e5da5Sopenharmony_ci "CLDEBUGINFO100_GRAMMAR_JSON_FILE", 4fd4e5da5Sopenharmony_ci "COMMON_COPTS", 5fd4e5da5Sopenharmony_ci "DEBUGINFO_GRAMMAR_JSON_FILE", 6fd4e5da5Sopenharmony_ci "SHDEBUGINFO100_GRAMMAR_JSON_FILE", 7fd4e5da5Sopenharmony_ci "TEST_COPTS", 8fd4e5da5Sopenharmony_ci "generate_core_tables", 9fd4e5da5Sopenharmony_ci "generate_enum_string_mapping", 10fd4e5da5Sopenharmony_ci "generate_extinst_lang_headers", 11fd4e5da5Sopenharmony_ci "generate_glsl_tables", 12fd4e5da5Sopenharmony_ci "generate_opencl_tables", 13fd4e5da5Sopenharmony_ci "generate_vendor_tables", 14fd4e5da5Sopenharmony_ci "incompatible_with", 15fd4e5da5Sopenharmony_ci) 16fd4e5da5Sopenharmony_ci 17fd4e5da5Sopenharmony_cipackage( 18fd4e5da5Sopenharmony_ci default_visibility = ["//visibility:private"], 19fd4e5da5Sopenharmony_ci features = [ 20fd4e5da5Sopenharmony_ci "layering_check", 21fd4e5da5Sopenharmony_ci ], 22fd4e5da5Sopenharmony_ci) 23fd4e5da5Sopenharmony_ci 24fd4e5da5Sopenharmony_cilicenses(["notice"]) 25fd4e5da5Sopenharmony_ci 26fd4e5da5Sopenharmony_ciexports_files([ 27fd4e5da5Sopenharmony_ci "CHANGES", 28fd4e5da5Sopenharmony_ci "LICENSE", 29fd4e5da5Sopenharmony_ci]) 30fd4e5da5Sopenharmony_ci 31fd4e5da5Sopenharmony_cipy_binary( 32fd4e5da5Sopenharmony_ci name = "generate_grammar_tables", 33fd4e5da5Sopenharmony_ci srcs = ["utils/generate_grammar_tables.py"], 34fd4e5da5Sopenharmony_ci) 35fd4e5da5Sopenharmony_ci 36fd4e5da5Sopenharmony_cipy_binary( 37fd4e5da5Sopenharmony_ci name = "generate_language_headers", 38fd4e5da5Sopenharmony_ci srcs = ["utils/generate_language_headers.py"], 39fd4e5da5Sopenharmony_ci) 40fd4e5da5Sopenharmony_ci 41fd4e5da5Sopenharmony_cigenerate_core_tables(version = "unified1") 42fd4e5da5Sopenharmony_ci 43fd4e5da5Sopenharmony_cigenerate_enum_string_mapping(version = "unified1") 44fd4e5da5Sopenharmony_ci 45fd4e5da5Sopenharmony_cigenerate_opencl_tables(version = "unified1") 46fd4e5da5Sopenharmony_ci 47fd4e5da5Sopenharmony_cigenerate_glsl_tables(version = "unified1") 48fd4e5da5Sopenharmony_ci 49fd4e5da5Sopenharmony_cigenerate_vendor_tables(extension = "spv-amd-shader-explicit-vertex-parameter") 50fd4e5da5Sopenharmony_ci 51fd4e5da5Sopenharmony_cigenerate_vendor_tables(extension = "spv-amd-shader-trinary-minmax") 52fd4e5da5Sopenharmony_ci 53fd4e5da5Sopenharmony_cigenerate_vendor_tables(extension = "spv-amd-gcn-shader") 54fd4e5da5Sopenharmony_ci 55fd4e5da5Sopenharmony_cigenerate_vendor_tables(extension = "spv-amd-shader-ballot") 56fd4e5da5Sopenharmony_ci 57fd4e5da5Sopenharmony_cigenerate_vendor_tables(extension = "debuginfo") 58fd4e5da5Sopenharmony_ci 59fd4e5da5Sopenharmony_cigenerate_vendor_tables(extension = "nonsemantic.clspvreflection") 60fd4e5da5Sopenharmony_ci 61fd4e5da5Sopenharmony_cigenerate_vendor_tables( 62fd4e5da5Sopenharmony_ci extension = "opencl.debuginfo.100", 63fd4e5da5Sopenharmony_ci operand_kind_prefix = "CLDEBUG100_", 64fd4e5da5Sopenharmony_ci) 65fd4e5da5Sopenharmony_ci 66fd4e5da5Sopenharmony_cigenerate_vendor_tables( 67fd4e5da5Sopenharmony_ci extension = "nonsemantic.shader.debuginfo.100", 68fd4e5da5Sopenharmony_ci operand_kind_prefix = "SHDEBUG100_", 69fd4e5da5Sopenharmony_ci) 70fd4e5da5Sopenharmony_ci 71fd4e5da5Sopenharmony_cigenerate_extinst_lang_headers( 72fd4e5da5Sopenharmony_ci name = "DebugInfo", 73fd4e5da5Sopenharmony_ci grammar = DEBUGINFO_GRAMMAR_JSON_FILE, 74fd4e5da5Sopenharmony_ci) 75fd4e5da5Sopenharmony_ci 76fd4e5da5Sopenharmony_cigenerate_extinst_lang_headers( 77fd4e5da5Sopenharmony_ci name = "OpenCLDebugInfo100", 78fd4e5da5Sopenharmony_ci grammar = CLDEBUGINFO100_GRAMMAR_JSON_FILE, 79fd4e5da5Sopenharmony_ci) 80fd4e5da5Sopenharmony_ci 81fd4e5da5Sopenharmony_cigenerate_extinst_lang_headers( 82fd4e5da5Sopenharmony_ci name = "NonSemanticShaderDebugInfo100", 83fd4e5da5Sopenharmony_ci grammar = SHDEBUGINFO100_GRAMMAR_JSON_FILE, 84fd4e5da5Sopenharmony_ci) 85fd4e5da5Sopenharmony_ci 86fd4e5da5Sopenharmony_cipy_binary( 87fd4e5da5Sopenharmony_ci name = "generate_registry_tables", 88fd4e5da5Sopenharmony_ci srcs = ["utils/generate_registry_tables.py"], 89fd4e5da5Sopenharmony_ci) 90fd4e5da5Sopenharmony_ci 91fd4e5da5Sopenharmony_cigenrule( 92fd4e5da5Sopenharmony_ci name = "generators_inc", 93fd4e5da5Sopenharmony_ci srcs = ["@spirv_headers//:spirv_xml_registry"], 94fd4e5da5Sopenharmony_ci outs = ["generators.inc"], 95fd4e5da5Sopenharmony_ci cmd = "$(location :generate_registry_tables) --xml=$(location @spirv_headers//:spirv_xml_registry) --generator-output=$(location generators.inc)", 96fd4e5da5Sopenharmony_ci cmd_bat = "$(location :generate_registry_tables) --xml=$(location @spirv_headers//:spirv_xml_registry) --generator-output=$(location generators.inc)", 97fd4e5da5Sopenharmony_ci tools = [":generate_registry_tables"], 98fd4e5da5Sopenharmony_ci) 99fd4e5da5Sopenharmony_ci 100fd4e5da5Sopenharmony_cipy_binary( 101fd4e5da5Sopenharmony_ci name = "update_build_version", 102fd4e5da5Sopenharmony_ci srcs = ["utils/update_build_version.py"], 103fd4e5da5Sopenharmony_ci) 104fd4e5da5Sopenharmony_ci 105fd4e5da5Sopenharmony_cigenrule( 106fd4e5da5Sopenharmony_ci name = "build_version_inc", 107fd4e5da5Sopenharmony_ci srcs = ["CHANGES"], 108fd4e5da5Sopenharmony_ci outs = ["build-version.inc"], 109fd4e5da5Sopenharmony_ci cmd = "SOURCE_DATE_EPOCH=0 $(location :update_build_version) $(location CHANGES) $(location build-version.inc)", 110fd4e5da5Sopenharmony_ci cmd_bat = "set SOURCE_DATE_EPOCH=0 && $(location :update_build_version) $(location CHANGES) $(location build-version.inc)", 111fd4e5da5Sopenharmony_ci local = True, 112fd4e5da5Sopenharmony_ci tools = [":update_build_version"], 113fd4e5da5Sopenharmony_ci) 114fd4e5da5Sopenharmony_ci 115fd4e5da5Sopenharmony_ci# Libraries 116fd4e5da5Sopenharmony_ci 117fd4e5da5Sopenharmony_cicc_library( 118fd4e5da5Sopenharmony_ci name = "spirv_tools", 119fd4e5da5Sopenharmony_ci hdrs = [ 120fd4e5da5Sopenharmony_ci "include/spirv-tools/libspirv.h", 121fd4e5da5Sopenharmony_ci "include/spirv-tools/libspirv.hpp", 122fd4e5da5Sopenharmony_ci ], 123fd4e5da5Sopenharmony_ci copts = COMMON_COPTS, 124fd4e5da5Sopenharmony_ci includes = ["include"], 125fd4e5da5Sopenharmony_ci linkstatic = 1, 126fd4e5da5Sopenharmony_ci visibility = ["//visibility:public"], 127fd4e5da5Sopenharmony_ci deps = [ 128fd4e5da5Sopenharmony_ci ":spirv_tools_internal", 129fd4e5da5Sopenharmony_ci ], 130fd4e5da5Sopenharmony_ci) 131fd4e5da5Sopenharmony_ci 132fd4e5da5Sopenharmony_cicc_library( 133fd4e5da5Sopenharmony_ci name = "spirv_tools_internal", 134fd4e5da5Sopenharmony_ci srcs = glob([ 135fd4e5da5Sopenharmony_ci "source/*.cpp", 136fd4e5da5Sopenharmony_ci "source/util/*.cpp", 137fd4e5da5Sopenharmony_ci "source/val/*.cpp", 138fd4e5da5Sopenharmony_ci ]) + [ 139fd4e5da5Sopenharmony_ci ":build_version_inc", 140fd4e5da5Sopenharmony_ci ":gen_core_tables_unified1", 141fd4e5da5Sopenharmony_ci ":gen_enum_string_mapping", 142fd4e5da5Sopenharmony_ci ":gen_extinst_lang_headers_DebugInfo", 143fd4e5da5Sopenharmony_ci ":gen_extinst_lang_headers_NonSemanticShaderDebugInfo100", 144fd4e5da5Sopenharmony_ci ":gen_extinst_lang_headers_OpenCLDebugInfo100", 145fd4e5da5Sopenharmony_ci ":gen_glsl_tables_unified1", 146fd4e5da5Sopenharmony_ci ":gen_opencl_tables_unified1", 147fd4e5da5Sopenharmony_ci ":gen_vendor_tables_debuginfo", 148fd4e5da5Sopenharmony_ci ":gen_vendor_tables_nonsemantic_clspvreflection", 149fd4e5da5Sopenharmony_ci ":gen_vendor_tables_nonsemantic_shader_debuginfo_100", 150fd4e5da5Sopenharmony_ci ":gen_vendor_tables_opencl_debuginfo_100", 151fd4e5da5Sopenharmony_ci ":gen_vendor_tables_spv_amd_gcn_shader", 152fd4e5da5Sopenharmony_ci ":gen_vendor_tables_spv_amd_shader_ballot", 153fd4e5da5Sopenharmony_ci ":gen_vendor_tables_spv_amd_shader_explicit_vertex_parameter", 154fd4e5da5Sopenharmony_ci ":gen_vendor_tables_spv_amd_shader_trinary_minmax", 155fd4e5da5Sopenharmony_ci ":generators_inc", 156fd4e5da5Sopenharmony_ci ], 157fd4e5da5Sopenharmony_ci hdrs = [ 158fd4e5da5Sopenharmony_ci "include/spirv-tools/libspirv.h", 159fd4e5da5Sopenharmony_ci "include/spirv-tools/libspirv.hpp", 160fd4e5da5Sopenharmony_ci ":gen_extinst_lang_headers_DebugInfo", 161fd4e5da5Sopenharmony_ci ":gen_extinst_lang_headers_NonSemanticShaderDebugInfo100", 162fd4e5da5Sopenharmony_ci ":gen_extinst_lang_headers_OpenCLDebugInfo100", 163fd4e5da5Sopenharmony_ci ] + glob([ 164fd4e5da5Sopenharmony_ci "source/*.h", 165fd4e5da5Sopenharmony_ci "source/util/*.h", 166fd4e5da5Sopenharmony_ci "source/val/*.h", 167fd4e5da5Sopenharmony_ci ]), 168fd4e5da5Sopenharmony_ci copts = COMMON_COPTS, 169fd4e5da5Sopenharmony_ci includes = ["include"], 170fd4e5da5Sopenharmony_ci deps = [ 171fd4e5da5Sopenharmony_ci "@spirv_headers//:spirv_common_headers", 172fd4e5da5Sopenharmony_ci "@spirv_headers//:spirv_cpp11_headers", 173fd4e5da5Sopenharmony_ci ], 174fd4e5da5Sopenharmony_ci) 175fd4e5da5Sopenharmony_ci 176fd4e5da5Sopenharmony_cicc_library( 177fd4e5da5Sopenharmony_ci name = "spirv_tools_opt", 178fd4e5da5Sopenharmony_ci hdrs = [ 179fd4e5da5Sopenharmony_ci "include/spirv-tools/instrument.hpp", 180fd4e5da5Sopenharmony_ci "include/spirv-tools/optimizer.hpp", 181fd4e5da5Sopenharmony_ci ], 182fd4e5da5Sopenharmony_ci copts = COMMON_COPTS, 183fd4e5da5Sopenharmony_ci linkstatic = 1, 184fd4e5da5Sopenharmony_ci visibility = ["//visibility:public"], 185fd4e5da5Sopenharmony_ci deps = [ 186fd4e5da5Sopenharmony_ci ":spirv_tools", 187fd4e5da5Sopenharmony_ci ":spirv_tools_opt_internal", 188fd4e5da5Sopenharmony_ci ], 189fd4e5da5Sopenharmony_ci) 190fd4e5da5Sopenharmony_ci 191fd4e5da5Sopenharmony_cicc_library( 192fd4e5da5Sopenharmony_ci name = "spirv_tools_opt_internal", 193fd4e5da5Sopenharmony_ci srcs = glob(["source/opt/*.cpp"]) + [ 194fd4e5da5Sopenharmony_ci ":gen_vendor_tables_spv_amd_shader_ballot", 195fd4e5da5Sopenharmony_ci ], 196fd4e5da5Sopenharmony_ci hdrs = glob(["source/opt/*.h"]) + [ 197fd4e5da5Sopenharmony_ci "include/spirv-tools/instrument.hpp", 198fd4e5da5Sopenharmony_ci "include/spirv-tools/optimizer.hpp", 199fd4e5da5Sopenharmony_ci ], 200fd4e5da5Sopenharmony_ci copts = COMMON_COPTS, 201fd4e5da5Sopenharmony_ci deps = [ 202fd4e5da5Sopenharmony_ci ":spirv_tools_internal", 203fd4e5da5Sopenharmony_ci "@spirv_headers//:spirv_common_headers", 204fd4e5da5Sopenharmony_ci ], 205fd4e5da5Sopenharmony_ci) 206fd4e5da5Sopenharmony_ci 207fd4e5da5Sopenharmony_cicc_library( 208fd4e5da5Sopenharmony_ci name = "spirv_tools_reduce", 209fd4e5da5Sopenharmony_ci srcs = glob(["source/reduce/*.cpp"]), 210fd4e5da5Sopenharmony_ci hdrs = glob(["source/reduce/*.h"]), 211fd4e5da5Sopenharmony_ci copts = COMMON_COPTS, 212fd4e5da5Sopenharmony_ci deps = [ 213fd4e5da5Sopenharmony_ci ":spirv_tools_internal", 214fd4e5da5Sopenharmony_ci ":spirv_tools_opt_internal", 215fd4e5da5Sopenharmony_ci ], 216fd4e5da5Sopenharmony_ci) 217fd4e5da5Sopenharmony_ci 218fd4e5da5Sopenharmony_cicc_library( 219fd4e5da5Sopenharmony_ci name = "spirv_tools_link", 220fd4e5da5Sopenharmony_ci srcs = glob(["source/link/*.cpp"]), 221fd4e5da5Sopenharmony_ci hdrs = ["include/spirv-tools/linker.hpp"], 222fd4e5da5Sopenharmony_ci copts = COMMON_COPTS, 223fd4e5da5Sopenharmony_ci linkstatic = 1, 224fd4e5da5Sopenharmony_ci visibility = ["//visibility:public"], 225fd4e5da5Sopenharmony_ci deps = [ 226fd4e5da5Sopenharmony_ci ":spirv_tools_internal", 227fd4e5da5Sopenharmony_ci ":spirv_tools_opt_internal", 228fd4e5da5Sopenharmony_ci ], 229fd4e5da5Sopenharmony_ci) 230fd4e5da5Sopenharmony_ci 231fd4e5da5Sopenharmony_cicc_library( 232fd4e5da5Sopenharmony_ci name = "spirv_tools_lint_internal", 233fd4e5da5Sopenharmony_ci srcs = glob([ 234fd4e5da5Sopenharmony_ci "source/lint/*.cpp", 235fd4e5da5Sopenharmony_ci "source/lint/*.h", 236fd4e5da5Sopenharmony_ci ]), 237fd4e5da5Sopenharmony_ci hdrs = ["include/spirv-tools/linter.hpp"] + glob([ 238fd4e5da5Sopenharmony_ci "source/lint/*.h", 239fd4e5da5Sopenharmony_ci ]), 240fd4e5da5Sopenharmony_ci copts = COMMON_COPTS, 241fd4e5da5Sopenharmony_ci includes = ["include"], 242fd4e5da5Sopenharmony_ci deps = [ 243fd4e5da5Sopenharmony_ci ":spirv_tools_internal", 244fd4e5da5Sopenharmony_ci ":spirv_tools_opt_internal", 245fd4e5da5Sopenharmony_ci ], 246fd4e5da5Sopenharmony_ci) 247fd4e5da5Sopenharmony_ci 248fd4e5da5Sopenharmony_cicc_library( 249fd4e5da5Sopenharmony_ci name = "spirv_tools_lint", 250fd4e5da5Sopenharmony_ci hdrs = ["include/spirv-tools/linter.hpp"], 251fd4e5da5Sopenharmony_ci copts = COMMON_COPTS, 252fd4e5da5Sopenharmony_ci includes = ["include"], 253fd4e5da5Sopenharmony_ci linkstatic = 1, 254fd4e5da5Sopenharmony_ci visibility = ["//visibility:public"], 255fd4e5da5Sopenharmony_ci deps = [ 256fd4e5da5Sopenharmony_ci ":spirv_tools", 257fd4e5da5Sopenharmony_ci ":spirv_tools_lint_internal", 258fd4e5da5Sopenharmony_ci ], 259fd4e5da5Sopenharmony_ci) 260fd4e5da5Sopenharmony_ci 261fd4e5da5Sopenharmony_cicc_library( 262fd4e5da5Sopenharmony_ci name = "tools_util", 263fd4e5da5Sopenharmony_ci srcs = glob(["tools/util/*.cpp"]), 264fd4e5da5Sopenharmony_ci hdrs = glob(["tools/util/*.h"]), 265fd4e5da5Sopenharmony_ci copts = COMMON_COPTS, 266fd4e5da5Sopenharmony_ci deps = [":spirv_tools"], 267fd4e5da5Sopenharmony_ci) 268fd4e5da5Sopenharmony_ci 269fd4e5da5Sopenharmony_cicc_library( 270fd4e5da5Sopenharmony_ci name = "tools_io", 271fd4e5da5Sopenharmony_ci hdrs = ["tools/io.h"], 272fd4e5da5Sopenharmony_ci copts = COMMON_COPTS, 273fd4e5da5Sopenharmony_ci) 274fd4e5da5Sopenharmony_ci 275fd4e5da5Sopenharmony_ci# Tools 276fd4e5da5Sopenharmony_ci 277fd4e5da5Sopenharmony_cicc_binary( 278fd4e5da5Sopenharmony_ci name = "spirv-as", 279fd4e5da5Sopenharmony_ci srcs = [ 280fd4e5da5Sopenharmony_ci "tools/as/as.cpp", 281fd4e5da5Sopenharmony_ci ], 282fd4e5da5Sopenharmony_ci copts = COMMON_COPTS, 283fd4e5da5Sopenharmony_ci visibility = ["//visibility:public"], 284fd4e5da5Sopenharmony_ci deps = [ 285fd4e5da5Sopenharmony_ci ":spirv_tools_internal", 286fd4e5da5Sopenharmony_ci ":tools_io", 287fd4e5da5Sopenharmony_ci ":tools_util", 288fd4e5da5Sopenharmony_ci ], 289fd4e5da5Sopenharmony_ci) 290fd4e5da5Sopenharmony_ci 291fd4e5da5Sopenharmony_cicc_binary( 292fd4e5da5Sopenharmony_ci name = "spirv-dis", 293fd4e5da5Sopenharmony_ci srcs = [ 294fd4e5da5Sopenharmony_ci "tools/dis/dis.cpp", 295fd4e5da5Sopenharmony_ci ], 296fd4e5da5Sopenharmony_ci copts = COMMON_COPTS, 297fd4e5da5Sopenharmony_ci visibility = ["//visibility:public"], 298fd4e5da5Sopenharmony_ci deps = [ 299fd4e5da5Sopenharmony_ci ":spirv_tools", 300fd4e5da5Sopenharmony_ci ":tools_io", 301fd4e5da5Sopenharmony_ci ":tools_util", 302fd4e5da5Sopenharmony_ci ], 303fd4e5da5Sopenharmony_ci) 304fd4e5da5Sopenharmony_ci 305fd4e5da5Sopenharmony_cicc_binary( 306fd4e5da5Sopenharmony_ci name = "spirv-objdump", 307fd4e5da5Sopenharmony_ci srcs = [ 308fd4e5da5Sopenharmony_ci "tools/objdump/extract_source.cpp", 309fd4e5da5Sopenharmony_ci "tools/objdump/extract_source.h", 310fd4e5da5Sopenharmony_ci "tools/objdump/objdump.cpp", 311fd4e5da5Sopenharmony_ci ], 312fd4e5da5Sopenharmony_ci copts = COMMON_COPTS, 313fd4e5da5Sopenharmony_ci visibility = ["//visibility:public"], 314fd4e5da5Sopenharmony_ci deps = [ 315fd4e5da5Sopenharmony_ci ":spirv_tools_internal", 316fd4e5da5Sopenharmony_ci ":spirv_tools_opt_internal", 317fd4e5da5Sopenharmony_ci ":tools_io", 318fd4e5da5Sopenharmony_ci ":tools_util", 319fd4e5da5Sopenharmony_ci "@spirv_headers//:spirv_cpp_headers", 320fd4e5da5Sopenharmony_ci ], 321fd4e5da5Sopenharmony_ci) 322fd4e5da5Sopenharmony_ci 323fd4e5da5Sopenharmony_cicc_binary( 324fd4e5da5Sopenharmony_ci name = "spirv-val", 325fd4e5da5Sopenharmony_ci srcs = [ 326fd4e5da5Sopenharmony_ci "tools/val/val.cpp", 327fd4e5da5Sopenharmony_ci ], 328fd4e5da5Sopenharmony_ci copts = COMMON_COPTS, 329fd4e5da5Sopenharmony_ci visibility = ["//visibility:public"], 330fd4e5da5Sopenharmony_ci deps = [ 331fd4e5da5Sopenharmony_ci ":spirv_tools_internal", 332fd4e5da5Sopenharmony_ci ":tools_io", 333fd4e5da5Sopenharmony_ci ":tools_util", 334fd4e5da5Sopenharmony_ci ], 335fd4e5da5Sopenharmony_ci) 336fd4e5da5Sopenharmony_ci 337fd4e5da5Sopenharmony_cicc_binary( 338fd4e5da5Sopenharmony_ci name = "spirv-opt", 339fd4e5da5Sopenharmony_ci srcs = [ 340fd4e5da5Sopenharmony_ci "tools/opt/opt.cpp", 341fd4e5da5Sopenharmony_ci ], 342fd4e5da5Sopenharmony_ci copts = COMMON_COPTS, 343fd4e5da5Sopenharmony_ci visibility = ["//visibility:public"], 344fd4e5da5Sopenharmony_ci deps = [ 345fd4e5da5Sopenharmony_ci ":spirv_tools_internal", 346fd4e5da5Sopenharmony_ci ":spirv_tools_opt_internal", 347fd4e5da5Sopenharmony_ci ":tools_io", 348fd4e5da5Sopenharmony_ci ":tools_util", 349fd4e5da5Sopenharmony_ci ], 350fd4e5da5Sopenharmony_ci) 351fd4e5da5Sopenharmony_ci 352fd4e5da5Sopenharmony_cicc_binary( 353fd4e5da5Sopenharmony_ci name = "spirv-reduce", 354fd4e5da5Sopenharmony_ci srcs = [ 355fd4e5da5Sopenharmony_ci "tools/reduce/reduce.cpp", 356fd4e5da5Sopenharmony_ci ], 357fd4e5da5Sopenharmony_ci copts = COMMON_COPTS, 358fd4e5da5Sopenharmony_ci visibility = ["//visibility:public"], 359fd4e5da5Sopenharmony_ci deps = [ 360fd4e5da5Sopenharmony_ci ":spirv_tools_internal", 361fd4e5da5Sopenharmony_ci ":spirv_tools_opt_internal", 362fd4e5da5Sopenharmony_ci ":spirv_tools_reduce", 363fd4e5da5Sopenharmony_ci ":tools_io", 364fd4e5da5Sopenharmony_ci ":tools_util", 365fd4e5da5Sopenharmony_ci ], 366fd4e5da5Sopenharmony_ci) 367fd4e5da5Sopenharmony_ci 368fd4e5da5Sopenharmony_cicc_binary( 369fd4e5da5Sopenharmony_ci name = "spirv-link", 370fd4e5da5Sopenharmony_ci srcs = [ 371fd4e5da5Sopenharmony_ci "tools/link/linker.cpp", 372fd4e5da5Sopenharmony_ci ], 373fd4e5da5Sopenharmony_ci copts = COMMON_COPTS, 374fd4e5da5Sopenharmony_ci visibility = ["//visibility:public"], 375fd4e5da5Sopenharmony_ci deps = [ 376fd4e5da5Sopenharmony_ci ":spirv_tools_internal", 377fd4e5da5Sopenharmony_ci ":spirv_tools_link", 378fd4e5da5Sopenharmony_ci ":tools_io", 379fd4e5da5Sopenharmony_ci ":tools_util", 380fd4e5da5Sopenharmony_ci ], 381fd4e5da5Sopenharmony_ci) 382fd4e5da5Sopenharmony_ci 383fd4e5da5Sopenharmony_cicc_binary( 384fd4e5da5Sopenharmony_ci name = "spirv-lint", 385fd4e5da5Sopenharmony_ci srcs = [ 386fd4e5da5Sopenharmony_ci "tools/lint/lint.cpp", 387fd4e5da5Sopenharmony_ci ], 388fd4e5da5Sopenharmony_ci copts = COMMON_COPTS, 389fd4e5da5Sopenharmony_ci visibility = ["//visibility:public"], 390fd4e5da5Sopenharmony_ci deps = [ 391fd4e5da5Sopenharmony_ci ":spirv_tools_lint", 392fd4e5da5Sopenharmony_ci ":spirv_tools_opt_internal", 393fd4e5da5Sopenharmony_ci ":tools_io", 394fd4e5da5Sopenharmony_ci ":tools_util", 395fd4e5da5Sopenharmony_ci ], 396fd4e5da5Sopenharmony_ci) 397fd4e5da5Sopenharmony_ci 398fd4e5da5Sopenharmony_cicc_binary( 399fd4e5da5Sopenharmony_ci name = "spirv-cfg", 400fd4e5da5Sopenharmony_ci srcs = [ 401fd4e5da5Sopenharmony_ci "tools/cfg/bin_to_dot.cpp", 402fd4e5da5Sopenharmony_ci "tools/cfg/bin_to_dot.h", 403fd4e5da5Sopenharmony_ci "tools/cfg/cfg.cpp", 404fd4e5da5Sopenharmony_ci ], 405fd4e5da5Sopenharmony_ci copts = COMMON_COPTS, 406fd4e5da5Sopenharmony_ci visibility = ["//visibility:public"], 407fd4e5da5Sopenharmony_ci deps = [ 408fd4e5da5Sopenharmony_ci ":spirv_tools_internal", 409fd4e5da5Sopenharmony_ci ":tools_io", 410fd4e5da5Sopenharmony_ci ":tools_util", 411fd4e5da5Sopenharmony_ci ], 412fd4e5da5Sopenharmony_ci) 413fd4e5da5Sopenharmony_ci 414fd4e5da5Sopenharmony_ci# Unit tests 415fd4e5da5Sopenharmony_ci 416fd4e5da5Sopenharmony_cicc_library( 417fd4e5da5Sopenharmony_ci name = "test_lib", 418fd4e5da5Sopenharmony_ci testonly = 1, 419fd4e5da5Sopenharmony_ci srcs = [ 420fd4e5da5Sopenharmony_ci "test/unit_spirv.cpp", 421fd4e5da5Sopenharmony_ci ], 422fd4e5da5Sopenharmony_ci hdrs = [ 423fd4e5da5Sopenharmony_ci "test/test_fixture.h", 424fd4e5da5Sopenharmony_ci "test/unit_spirv.h", 425fd4e5da5Sopenharmony_ci ], 426fd4e5da5Sopenharmony_ci copts = TEST_COPTS, 427fd4e5da5Sopenharmony_ci deps = [ 428fd4e5da5Sopenharmony_ci ":spirv_tools_internal", 429fd4e5da5Sopenharmony_ci "@com_google_googletest//:gtest", 430fd4e5da5Sopenharmony_ci ], 431fd4e5da5Sopenharmony_ci) 432fd4e5da5Sopenharmony_ci 433fd4e5da5Sopenharmony_ci# PCH (precompiled header) tests only work when using CMake and MSVC on Windows, 434fd4e5da5Sopenharmony_ci# so they will be skipped in the Bazel builds. 435fd4e5da5Sopenharmony_ci 436fd4e5da5Sopenharmony_ci[cc_test( 437fd4e5da5Sopenharmony_ci name = "base_{testcase}_test".format(testcase = f[len("test/"):-len("_test.cpp")]), 438fd4e5da5Sopenharmony_ci size = "small", 439fd4e5da5Sopenharmony_ci srcs = [f], 440fd4e5da5Sopenharmony_ci copts = TEST_COPTS + ["-DTESTING"], 441fd4e5da5Sopenharmony_ci linkstatic = 1, 442fd4e5da5Sopenharmony_ci target_compatible_with = { 443fd4e5da5Sopenharmony_ci "test/timer_test.cpp": incompatible_with(["@bazel_tools//src/conditions:windows"]), 444fd4e5da5Sopenharmony_ci }.get(f, []), 445fd4e5da5Sopenharmony_ci deps = [ 446fd4e5da5Sopenharmony_ci "tools_util", 447fd4e5da5Sopenharmony_ci ":spirv_tools_internal", 448fd4e5da5Sopenharmony_ci ":test_lib", 449fd4e5da5Sopenharmony_ci "@com_google_googletest//:gtest", 450fd4e5da5Sopenharmony_ci "@com_google_googletest//:gtest_main", 451fd4e5da5Sopenharmony_ci ], 452fd4e5da5Sopenharmony_ci) for f in glob( 453fd4e5da5Sopenharmony_ci [ 454fd4e5da5Sopenharmony_ci "test/*_test.cpp", 455fd4e5da5Sopenharmony_ci "test/tools/*_test.cpp", 456fd4e5da5Sopenharmony_ci ], 457fd4e5da5Sopenharmony_ci exclude = [ 458fd4e5da5Sopenharmony_ci "test/cpp_interface_test.cpp", 459fd4e5da5Sopenharmony_ci "test/pch_test.cpp", 460fd4e5da5Sopenharmony_ci ], 461fd4e5da5Sopenharmony_ci)] 462fd4e5da5Sopenharmony_ci 463fd4e5da5Sopenharmony_cicc_test( 464fd4e5da5Sopenharmony_ci name = "base_cpp_interface_test", 465fd4e5da5Sopenharmony_ci size = "small", 466fd4e5da5Sopenharmony_ci srcs = ["test/cpp_interface_test.cpp"], 467fd4e5da5Sopenharmony_ci linkstatic = 1, 468fd4e5da5Sopenharmony_ci deps = [ 469fd4e5da5Sopenharmony_ci ":spirv_tools_opt_internal", 470fd4e5da5Sopenharmony_ci "@com_google_googletest//:gtest", 471fd4e5da5Sopenharmony_ci "@com_google_googletest//:gtest_main", 472fd4e5da5Sopenharmony_ci "@spirv_headers//:spirv_cpp11_headers", 473fd4e5da5Sopenharmony_ci ], 474fd4e5da5Sopenharmony_ci) 475fd4e5da5Sopenharmony_ci 476fd4e5da5Sopenharmony_cicc_test( 477fd4e5da5Sopenharmony_ci name = "base_ilist_test", 478fd4e5da5Sopenharmony_ci size = "small", 479fd4e5da5Sopenharmony_ci srcs = ["test/util/ilist_test.cpp"], 480fd4e5da5Sopenharmony_ci copts = TEST_COPTS, 481fd4e5da5Sopenharmony_ci linkstatic = 1, 482fd4e5da5Sopenharmony_ci deps = [ 483fd4e5da5Sopenharmony_ci ":spirv_tools_internal", 484fd4e5da5Sopenharmony_ci "@com_google_googletest//:gtest", 485fd4e5da5Sopenharmony_ci "@com_google_googletest//:gtest_main", 486fd4e5da5Sopenharmony_ci ], 487fd4e5da5Sopenharmony_ci) 488fd4e5da5Sopenharmony_ci 489fd4e5da5Sopenharmony_cicc_library( 490fd4e5da5Sopenharmony_ci name = "link_test_lib", 491fd4e5da5Sopenharmony_ci testonly = 1, 492fd4e5da5Sopenharmony_ci hdrs = ["test/link/linker_fixture.h"], 493fd4e5da5Sopenharmony_ci copts = TEST_COPTS, 494fd4e5da5Sopenharmony_ci deps = [ 495fd4e5da5Sopenharmony_ci ":spirv_tools_internal", 496fd4e5da5Sopenharmony_ci ":spirv_tools_link", 497fd4e5da5Sopenharmony_ci ":test_lib", 498fd4e5da5Sopenharmony_ci "@com_google_effcee//:effcee", 499fd4e5da5Sopenharmony_ci "@com_googlesource_code_re2//:re2", 500fd4e5da5Sopenharmony_ci ], 501fd4e5da5Sopenharmony_ci) 502fd4e5da5Sopenharmony_ci 503fd4e5da5Sopenharmony_ci[cc_test( 504fd4e5da5Sopenharmony_ci name = "link_{testcase}_test".format(testcase = f[len("test/link/"):-len("_test.cpp")]), 505fd4e5da5Sopenharmony_ci size = "small", 506fd4e5da5Sopenharmony_ci srcs = [f], 507fd4e5da5Sopenharmony_ci copts = TEST_COPTS, 508fd4e5da5Sopenharmony_ci linkstatic = 1, 509fd4e5da5Sopenharmony_ci deps = [ 510fd4e5da5Sopenharmony_ci ":link_test_lib", 511fd4e5da5Sopenharmony_ci "@com_google_googletest//:gtest", 512fd4e5da5Sopenharmony_ci "@com_google_googletest//:gtest_main", 513fd4e5da5Sopenharmony_ci ], 514fd4e5da5Sopenharmony_ci) for f in glob( 515fd4e5da5Sopenharmony_ci ["test/link/*_test.cpp"], 516fd4e5da5Sopenharmony_ci)] 517fd4e5da5Sopenharmony_ci 518fd4e5da5Sopenharmony_ci[cc_test( 519fd4e5da5Sopenharmony_ci name = "lint_{testcase}_test".format(testcase = f[len("test/lint/"):-len("_test.cpp")]), 520fd4e5da5Sopenharmony_ci size = "small", 521fd4e5da5Sopenharmony_ci srcs = [f], 522fd4e5da5Sopenharmony_ci copts = TEST_COPTS, 523fd4e5da5Sopenharmony_ci linkstatic = 1, 524fd4e5da5Sopenharmony_ci deps = [ 525fd4e5da5Sopenharmony_ci ":spirv_tools", 526fd4e5da5Sopenharmony_ci ":spirv_tools_lint_internal", 527fd4e5da5Sopenharmony_ci ":spirv_tools_opt_internal", 528fd4e5da5Sopenharmony_ci "@com_google_googletest//:gtest", 529fd4e5da5Sopenharmony_ci "@com_google_googletest//:gtest_main", 530fd4e5da5Sopenharmony_ci ], 531fd4e5da5Sopenharmony_ci) for f in glob( 532fd4e5da5Sopenharmony_ci ["test/lint/*_test.cpp"], 533fd4e5da5Sopenharmony_ci)] 534fd4e5da5Sopenharmony_ci 535fd4e5da5Sopenharmony_cicc_library( 536fd4e5da5Sopenharmony_ci name = "opt_test_lib", 537fd4e5da5Sopenharmony_ci testonly = 1, 538fd4e5da5Sopenharmony_ci srcs = [ 539fd4e5da5Sopenharmony_ci "test/opt/pass_utils.cpp", 540fd4e5da5Sopenharmony_ci ], 541fd4e5da5Sopenharmony_ci hdrs = [ 542fd4e5da5Sopenharmony_ci "test/opt/assembly_builder.h", 543fd4e5da5Sopenharmony_ci "test/opt/function_utils.h", 544fd4e5da5Sopenharmony_ci "test/opt/module_utils.h", 545fd4e5da5Sopenharmony_ci "test/opt/pass_fixture.h", 546fd4e5da5Sopenharmony_ci "test/opt/pass_utils.h", 547fd4e5da5Sopenharmony_ci ], 548fd4e5da5Sopenharmony_ci copts = TEST_COPTS, 549fd4e5da5Sopenharmony_ci deps = [ 550fd4e5da5Sopenharmony_ci ":spirv_tools_internal", 551fd4e5da5Sopenharmony_ci ":spirv_tools_opt_internal", 552fd4e5da5Sopenharmony_ci "@com_google_effcee//:effcee", 553fd4e5da5Sopenharmony_ci "@com_google_googletest//:gtest", 554fd4e5da5Sopenharmony_ci ], 555fd4e5da5Sopenharmony_ci) 556fd4e5da5Sopenharmony_ci 557fd4e5da5Sopenharmony_ci[cc_test( 558fd4e5da5Sopenharmony_ci name = "opt_{testcase}_test".format(testcase = f[len("test/opt/"):-len("_test.cpp")]), 559fd4e5da5Sopenharmony_ci size = "small", 560fd4e5da5Sopenharmony_ci srcs = [f], 561fd4e5da5Sopenharmony_ci copts = TEST_COPTS, 562fd4e5da5Sopenharmony_ci linkstatic = 1, 563fd4e5da5Sopenharmony_ci deps = [ 564fd4e5da5Sopenharmony_ci ":opt_test_lib", 565fd4e5da5Sopenharmony_ci ":spirv_tools_internal", 566fd4e5da5Sopenharmony_ci ":spirv_tools_opt_internal", 567fd4e5da5Sopenharmony_ci ":test_lib", 568fd4e5da5Sopenharmony_ci "@com_google_effcee//:effcee", 569fd4e5da5Sopenharmony_ci "@com_google_googletest//:gtest", 570fd4e5da5Sopenharmony_ci "@com_google_googletest//:gtest_main", 571fd4e5da5Sopenharmony_ci ], 572fd4e5da5Sopenharmony_ci) for f in glob(["test/opt/*_test.cpp"])] 573fd4e5da5Sopenharmony_ci 574fd4e5da5Sopenharmony_ci[cc_test( 575fd4e5da5Sopenharmony_ci name = "opt_dom_tree_{testcase}_test".format(testcase = f[len("test/opt/dominator_tree/"):-len(".cpp")]), 576fd4e5da5Sopenharmony_ci size = "small", 577fd4e5da5Sopenharmony_ci srcs = [f], 578fd4e5da5Sopenharmony_ci copts = TEST_COPTS, 579fd4e5da5Sopenharmony_ci linkstatic = 1, 580fd4e5da5Sopenharmony_ci deps = [ 581fd4e5da5Sopenharmony_ci ":opt_test_lib", 582fd4e5da5Sopenharmony_ci ":spirv_tools_opt_internal", 583fd4e5da5Sopenharmony_ci "@com_google_googletest//:gtest", 584fd4e5da5Sopenharmony_ci "@com_google_googletest//:gtest_main", 585fd4e5da5Sopenharmony_ci ], 586fd4e5da5Sopenharmony_ci) for f in glob( 587fd4e5da5Sopenharmony_ci ["test/opt/dominator_tree/*.cpp"], 588fd4e5da5Sopenharmony_ci exclude = ["test/opt/dominator_tree/pch_test_opt_dom.cpp"], 589fd4e5da5Sopenharmony_ci)] 590fd4e5da5Sopenharmony_ci 591fd4e5da5Sopenharmony_ci[cc_test( 592fd4e5da5Sopenharmony_ci name = "opt_loop_{testcase}_test".format(testcase = f[len("test/opt/loop_optimizations/"):-len(".cpp")]), 593fd4e5da5Sopenharmony_ci size = "small", 594fd4e5da5Sopenharmony_ci srcs = [f], 595fd4e5da5Sopenharmony_ci copts = TEST_COPTS, 596fd4e5da5Sopenharmony_ci linkstatic = 1, 597fd4e5da5Sopenharmony_ci deps = [ 598fd4e5da5Sopenharmony_ci ":opt_test_lib", 599fd4e5da5Sopenharmony_ci ":spirv_tools", 600fd4e5da5Sopenharmony_ci ":spirv_tools_opt_internal", 601fd4e5da5Sopenharmony_ci "@com_google_effcee//:effcee", 602fd4e5da5Sopenharmony_ci "@com_google_googletest//:gtest", 603fd4e5da5Sopenharmony_ci "@com_google_googletest//:gtest_main", 604fd4e5da5Sopenharmony_ci ], 605fd4e5da5Sopenharmony_ci) for f in glob( 606fd4e5da5Sopenharmony_ci ["test/opt/loop_optimizations/*.cpp"], 607fd4e5da5Sopenharmony_ci exclude = ["test/opt/loop_optimizations/pch_test_opt_loop.cpp"], 608fd4e5da5Sopenharmony_ci)] 609fd4e5da5Sopenharmony_ci 610fd4e5da5Sopenharmony_cicc_library( 611fd4e5da5Sopenharmony_ci name = "reduce_test_lib", 612fd4e5da5Sopenharmony_ci testonly = 1, 613fd4e5da5Sopenharmony_ci srcs = [ 614fd4e5da5Sopenharmony_ci "test/reduce/reduce_test_util.cpp", 615fd4e5da5Sopenharmony_ci ], 616fd4e5da5Sopenharmony_ci hdrs = ["test/reduce/reduce_test_util.h"], 617fd4e5da5Sopenharmony_ci copts = TEST_COPTS, 618fd4e5da5Sopenharmony_ci deps = [ 619fd4e5da5Sopenharmony_ci ":spirv_tools", 620fd4e5da5Sopenharmony_ci ":spirv_tools_opt_internal", 621fd4e5da5Sopenharmony_ci ":spirv_tools_reduce", 622fd4e5da5Sopenharmony_ci ":test_lib", 623fd4e5da5Sopenharmony_ci ":tools_io", 624fd4e5da5Sopenharmony_ci "@com_google_googletest//:gtest", 625fd4e5da5Sopenharmony_ci ], 626fd4e5da5Sopenharmony_ci) 627fd4e5da5Sopenharmony_ci 628fd4e5da5Sopenharmony_ci[cc_test( 629fd4e5da5Sopenharmony_ci name = "reduce_{testcase}_test".format(testcase = f[len("test/reduce/"):-len("_test.cpp")]), 630fd4e5da5Sopenharmony_ci size = "small", 631fd4e5da5Sopenharmony_ci srcs = [f], 632fd4e5da5Sopenharmony_ci copts = TEST_COPTS, 633fd4e5da5Sopenharmony_ci linkstatic = 1, 634fd4e5da5Sopenharmony_ci deps = [ 635fd4e5da5Sopenharmony_ci ":reduce_test_lib", 636fd4e5da5Sopenharmony_ci ":spirv_tools_internal", 637fd4e5da5Sopenharmony_ci ":spirv_tools_opt_internal", 638fd4e5da5Sopenharmony_ci ":spirv_tools_reduce", 639fd4e5da5Sopenharmony_ci "@com_google_googletest//:gtest_main", 640fd4e5da5Sopenharmony_ci ], 641fd4e5da5Sopenharmony_ci) for f in glob(["test/reduce/*_test.cpp"])] 642fd4e5da5Sopenharmony_ci 643fd4e5da5Sopenharmony_ci[cc_test( 644fd4e5da5Sopenharmony_ci name = "util_{testcase}_test".format(testcase = f[len("test/util/"):-len("_test.cpp")]), 645fd4e5da5Sopenharmony_ci size = "small", 646fd4e5da5Sopenharmony_ci srcs = [f], 647fd4e5da5Sopenharmony_ci copts = TEST_COPTS, 648fd4e5da5Sopenharmony_ci linkstatic = 1, 649fd4e5da5Sopenharmony_ci deps = [ 650fd4e5da5Sopenharmony_ci ":spirv_tools_internal", 651fd4e5da5Sopenharmony_ci "@com_google_googletest//:gtest", 652fd4e5da5Sopenharmony_ci "@com_google_googletest//:gtest_main", 653fd4e5da5Sopenharmony_ci ], 654fd4e5da5Sopenharmony_ci) for f in glob(["test/util/*_test.cpp"])] 655fd4e5da5Sopenharmony_ci 656fd4e5da5Sopenharmony_cicc_library( 657fd4e5da5Sopenharmony_ci name = "val_test_lib", 658fd4e5da5Sopenharmony_ci testonly = 1, 659fd4e5da5Sopenharmony_ci srcs = [ 660fd4e5da5Sopenharmony_ci "test/val/val_code_generator.cpp", 661fd4e5da5Sopenharmony_ci ], 662fd4e5da5Sopenharmony_ci hdrs = [ 663fd4e5da5Sopenharmony_ci "test/val/val_code_generator.h", 664fd4e5da5Sopenharmony_ci "test/val/val_fixtures.h", 665fd4e5da5Sopenharmony_ci ], 666fd4e5da5Sopenharmony_ci copts = TEST_COPTS, 667fd4e5da5Sopenharmony_ci deps = [ 668fd4e5da5Sopenharmony_ci ":spirv_tools_internal", 669fd4e5da5Sopenharmony_ci ":test_lib", 670fd4e5da5Sopenharmony_ci ], 671fd4e5da5Sopenharmony_ci) 672fd4e5da5Sopenharmony_ci 673fd4e5da5Sopenharmony_ci[cc_test( 674fd4e5da5Sopenharmony_ci name = "val_{testcase}_test".format(testcase = f[len("test/val/val_"):-len("_test.cpp")]), 675fd4e5da5Sopenharmony_ci size = "small", 676fd4e5da5Sopenharmony_ci srcs = [f], 677fd4e5da5Sopenharmony_ci copts = TEST_COPTS, 678fd4e5da5Sopenharmony_ci linkstatic = 1, 679fd4e5da5Sopenharmony_ci deps = [ 680fd4e5da5Sopenharmony_ci ":spirv_tools_internal", 681fd4e5da5Sopenharmony_ci ":test_lib", 682fd4e5da5Sopenharmony_ci ":val_test_lib", 683fd4e5da5Sopenharmony_ci "@com_google_googletest//:gtest", 684fd4e5da5Sopenharmony_ci "@com_google_googletest//:gtest_main", 685fd4e5da5Sopenharmony_ci ], 686fd4e5da5Sopenharmony_ci) for f in glob( 687fd4e5da5Sopenharmony_ci ["test/val/val_*_test.cpp"], 688fd4e5da5Sopenharmony_ci exclude = [ 689fd4e5da5Sopenharmony_ci "test/val/val_capability_test.cpp", 690fd4e5da5Sopenharmony_ci "test/val/val_limits_test.cpp", 691fd4e5da5Sopenharmony_ci ], 692fd4e5da5Sopenharmony_ci)] 693fd4e5da5Sopenharmony_ci 694fd4e5da5Sopenharmony_cicc_test( 695fd4e5da5Sopenharmony_ci name = "val_capability_test", 696fd4e5da5Sopenharmony_ci size = "large", 697fd4e5da5Sopenharmony_ci timeout = "long", 698fd4e5da5Sopenharmony_ci srcs = ["test/val/val_capability_test.cpp"], 699fd4e5da5Sopenharmony_ci copts = TEST_COPTS + ["-O3"], 700fd4e5da5Sopenharmony_ci linkstatic = 1, 701fd4e5da5Sopenharmony_ci deps = [ 702fd4e5da5Sopenharmony_ci ":spirv_tools_internal", 703fd4e5da5Sopenharmony_ci ":test_lib", 704fd4e5da5Sopenharmony_ci ":val_test_lib", 705fd4e5da5Sopenharmony_ci "@com_google_googletest//:gtest", 706fd4e5da5Sopenharmony_ci "@com_google_googletest//:gtest_main", 707fd4e5da5Sopenharmony_ci ], 708fd4e5da5Sopenharmony_ci) 709fd4e5da5Sopenharmony_ci 710fd4e5da5Sopenharmony_cicc_test( 711fd4e5da5Sopenharmony_ci name = "val_limits_test", 712fd4e5da5Sopenharmony_ci size = "large", 713fd4e5da5Sopenharmony_ci timeout = "long", 714fd4e5da5Sopenharmony_ci srcs = ["test/val/val_limits_test.cpp"], 715fd4e5da5Sopenharmony_ci copts = TEST_COPTS + [ 716fd4e5da5Sopenharmony_ci "-O3", 717fd4e5da5Sopenharmony_ci ], 718fd4e5da5Sopenharmony_ci linkstatic = 1, 719fd4e5da5Sopenharmony_ci deps = [ 720fd4e5da5Sopenharmony_ci ":test_lib", 721fd4e5da5Sopenharmony_ci ":val_test_lib", 722fd4e5da5Sopenharmony_ci "@com_google_googletest//:gtest", 723fd4e5da5Sopenharmony_ci "@com_google_googletest//:gtest_main", 724fd4e5da5Sopenharmony_ci ], 725fd4e5da5Sopenharmony_ci) 726