Coverage Report

View results by: Directories | Files

Path Line Coverage Function Coverage Region Coverage
src/spirv-tools/build/core_tables_body.inc
 72.99% (300/411)
100.00% (5/5)
 71.97% (285/396)
src/spirv-tools/external/spirv-headers/include/spirv/unified1/spirv.hpp11
  4.69% (3/64)
  4.69% (3/64)
  4.69% (3/64)
src/spirv-tools/include/spirv-tools/libspirv.hpp
 15.46% (15/97)
 23.08% (9/39)
 26.83% (11/41)
src/spirv-tools/source/assembly_grammar.cpp
 97.47% (77/79)
100.00% (9/9)
 95.56% (43/45)
src/spirv-tools/source/assembly_grammar.h
100.00% (6/6)
100.00% (3/3)
100.00% (4/4)
src/spirv-tools/source/binary.cpp
 96.83% (520/537)
 95.00% (19/20)
 80.61% (420/521)
src/spirv-tools/source/cfa.h
100.00% (183/183)
100.00% (12/12)
 72.22% (117/162)
src/spirv-tools/source/diagnostic.cpp
 48.98% (72/147)
 87.50% (7/8)
 53.95% (41/76)
src/spirv-tools/source/diagnostic.h
100.00% (9/9)
100.00% (3/3)
100.00% (7/7)
src/spirv-tools/source/disassemble.cpp
 59.57% (386/648)
 65.31% (32/49)
 51.08% (284/556)
src/spirv-tools/source/enum_set.h
 77.78% (154/198)
 78.12% (25/32)
 67.89% (129/190)
src/spirv-tools/source/ext_inst.cpp
100.00% (62/62)
100.00% (3/3)
100.00% (61/61)
src/spirv-tools/source/extensions.cpp
 91.67% (22/24)
100.00% (2/2)
 60.98% (25/41)
src/spirv-tools/source/instruction.h
100.00% (3/3)
100.00% (1/1)
100.00% (1/1)
src/spirv-tools/source/libspirv.cpp
 26.92% (28/104)
 34.78% (8/23)
 30.91% (17/55)
src/spirv-tools/source/name_mapper.cpp
 99.29% (279/281)
100.00% (10/10)
 97.93% (284/290)
src/spirv-tools/source/name_mapper.h
100.00% (8/8)
100.00% (3/3)
100.00% (3/3)
src/spirv-tools/source/opcode.cpp
 70.74% (452/639)
 75.68% (28/37)
 68.84% (349/507)
src/spirv-tools/source/operand.cpp
 83.54% (482/577)
 71.05% (27/38)
 83.98% (304/362)
src/spirv-tools/source/opt/aggressive_dead_code_elim_pass.cpp
 82.52% (878/1064)
 94.55% (52/55)
 72.59% (490/675)
src/spirv-tools/source/opt/aggressive_dead_code_elim_pass.h
100.00% (16/16)
100.00% (5/5)
100.00% (9/9)
src/spirv-tools/source/opt/amd_ext_to_khr.cpp
  0.00% (0/702)
  0.00% (0/17)
  0.00% (0/521)
src/spirv-tools/source/opt/amd_ext_to_khr.h
  0.00% (0/14)
  0.00% (0/2)
  0.00% (0/2)
src/spirv-tools/source/opt/analyze_live_input_pass.cpp
  0.00% (0/16)
  0.00% (0/2)
  0.00% (0/14)
src/spirv-tools/source/opt/analyze_live_input_pass.h
  0.00% (0/10)
  0.00% (0/3)
  0.00% (0/5)
src/spirv-tools/source/opt/basic_block.cpp
 86.38% (241/279)
 79.31% (23/29)
 72.73% (112/154)
src/spirv-tools/source/opt/basic_block.h
 73.44% (94/128)
 69.23% (27/39)
 72.34% (68/94)
src/spirv-tools/source/opt/block_merge_pass.cpp
100.00% (20/20)
100.00% (4/4)
100.00% (14/14)
src/spirv-tools/source/opt/block_merge_pass.h
100.00% (8/8)
100.00% (2/2)
100.00% (2/2)
src/spirv-tools/source/opt/block_merge_util.cpp
 93.87% (153/163)
 90.91% (10/11)
 78.79% (104/132)
src/spirv-tools/source/opt/build_module.cpp
 78.79% (26/33)
 80.00% (4/5)
 71.43% (10/14)
src/spirv-tools/source/opt/canonicalize_ids_pass.cpp
  0.00% (0/443)
  0.00% (0/19)
  0.00% (0/255)
src/spirv-tools/source/opt/canonicalize_ids_pass.h
  0.00% (0/13)
  0.00% (0/7)
  0.00% (0/7)
src/spirv-tools/source/opt/ccp_pass.cpp
 94.02% (236/251)
100.00% (17/17)
 77.04% (208/270)
src/spirv-tools/source/opt/ccp_pass.h
100.00% (10/10)
100.00% (3/3)
100.00% (3/3)
src/spirv-tools/source/opt/cfg.cpp
 73.73% (233/316)
 87.50% (21/24)
 62.75% (96/153)
src/spirv-tools/source/opt/cfg.h
 86.36% (38/44)
 85.71% (12/14)
 64.00% (32/50)
src/spirv-tools/source/opt/cfg_cleanup_pass.cpp
100.00% (7/7)
100.00% (2/2)
100.00% (5/5)
src/spirv-tools/source/opt/cfg_cleanup_pass.h
100.00% (6/6)
100.00% (3/3)
100.00% (3/3)
src/spirv-tools/source/opt/code_sink.cpp
  0.00% (0/321)
  0.00% (0/15)
  0.00% (0/195)
src/spirv-tools/source/opt/code_sink.h
  0.00% (0/9)
  0.00% (0/2)
  0.00% (0/2)
src/spirv-tools/source/opt/combine_access_chains.cpp
 28.63% (67/234)
 33.33% (5/15)
 20.36% (34/167)
src/spirv-tools/source/opt/combine_access_chains.h
 11.11% (1/9)
 50.00% (1/2)
 50.00% (1/2)
src/spirv-tools/source/opt/compact_ids_pass.cpp
  0.00% (0/99)
  0.00% (0/3)
  0.00% (0/49)
src/spirv-tools/source/opt/compact_ids_pass.h
  0.00% (0/6)
  0.00% (0/2)
  0.00% (0/2)
src/spirv-tools/source/opt/composite.cpp
 94.74% (18/19)
100.00% (2/2)
 95.00% (19/20)
src/spirv-tools/source/opt/const_folding_rules.cpp
 80.87% (1881/2326)
 94.55% (104/110)
 50.68% (1300/2565)
src/spirv-tools/source/opt/const_folding_rules.h
 88.24% (30/34)
100.00% (7/7)
 90.91% (20/22)
src/spirv-tools/source/opt/constants.cpp
 75.85% (358/472)
 74.29% (26/35)
 52.38% (308/588)
src/spirv-tools/source/opt/constants.h
 53.01% (141/266)
 45.37% (49/108)
 48.66% (127/261)
src/spirv-tools/source/opt/convert_to_half_pass.cpp
  0.00% (0/604)
  0.00% (0/36)
  0.00% (0/286)
src/spirv-tools/source/opt/convert_to_half_pass.h
  0.00% (0/9)
  0.00% (0/5)
  0.00% (0/6)
src/spirv-tools/source/opt/convert_to_sampled_image_pass.cpp
  0.00% (0/334)
  0.00% (0/25)
  0.00% (0/225)
src/spirv-tools/source/opt/convert_to_sampled_image_pass.h
  0.00% (0/11)
  0.00% (0/4)
  0.00% (0/7)
src/spirv-tools/source/opt/copy_prop_arrays.cpp
 75.49% (650/861)
100.00% (36/36)
 62.02% (338/545)
src/spirv-tools/source/opt/copy_prop_arrays.h
100.00% (41/41)
100.00% (9/9)
 75.00% (15/20)
src/spirv-tools/source/opt/dead_branch_elim_pass.cpp
 92.80% (477/514)
 95.45% (21/22)
 85.71% (246/287)
src/spirv-tools/source/opt/dead_branch_elim_pass.h
100.00% (7/7)
100.00% (3/3)
100.00% (3/3)
src/spirv-tools/source/opt/dead_insert_elim_pass.cpp
 86.85% (185/213)
100.00% (9/9)
 85.22% (98/115)
src/spirv-tools/source/opt/dead_insert_elim_pass.h
100.00% (10/10)
100.00% (3/3)
100.00% (3/3)
src/spirv-tools/source/opt/dead_variable_elimination.cpp
  0.00% (0/73)
  0.00% (0/4)
  0.00% (0/43)
src/spirv-tools/source/opt/dead_variable_elimination.h
  0.00% (0/5)
  0.00% (0/2)
  0.00% (0/2)
src/spirv-tools/source/opt/debug_info_manager.cpp
  9.15% (66/721)
 36.11% (13/36)
  7.34% (45/613)
src/spirv-tools/source/opt/debug_info_manager.h
 13.04% (3/23)
 22.22% (2/9)
 28.57% (4/14)
src/spirv-tools/source/opt/decoration_manager.cpp
 70.67% (388/549)
 64.52% (20/31)
 55.27% (173/313)
src/spirv-tools/source/opt/decoration_manager.h
 16.00% (4/25)
 50.00% (2/4)
 21.43% (3/14)
src/spirv-tools/source/opt/def_use_manager.cpp
 73.97% (179/242)
 83.87% (26/31)
 70.41% (119/169)
src/spirv-tools/source/opt/def_use_manager.h
 94.12% (16/17)
 75.00% (3/4)
 89.19% (33/37)
src/spirv-tools/source/opt/desc_sroa.cpp
  0.00% (0/376)
  0.00% (0/16)
  0.00% (0/243)
src/spirv-tools/source/opt/desc_sroa.h
  0.00% (0/14)
  0.00% (0/3)
  0.00% (0/13)
src/spirv-tools/source/opt/desc_sroa_util.cpp
  0.00% (0/82)
  0.00% (0/9)
  0.00% (0/95)
src/spirv-tools/source/opt/dominator_analysis.cpp
 80.00% (32/40)
100.00% (2/2)
 86.11% (31/36)
src/spirv-tools/source/opt/dominator_analysis.h
 44.44% (20/45)
 42.11% (8/19)
 48.48% (16/33)
src/spirv-tools/source/opt/dominator_tree.cpp
 71.43% (150/210)
 80.00% (24/30)
 73.26% (63/86)
src/spirv-tools/source/opt/dominator_tree.h
 37.50% (42/112)
 29.63% (16/54)
 36.36% (32/88)
src/spirv-tools/source/opt/eliminate_dead_constant_pass.cpp
  0.00% (0/65)
  0.00% (0/2)
  0.00% (0/45)
src/spirv-tools/source/opt/eliminate_dead_constant_pass.h
  0.00% (0/1)
  0.00% (0/1)
  0.00% (0/1)
src/spirv-tools/source/opt/eliminate_dead_functions_pass.cpp
100.00% (25/25)
100.00% (2/2)
100.00% (10/10)
src/spirv-tools/source/opt/eliminate_dead_functions_pass.h
100.00% (5/5)
100.00% (2/2)
100.00% (2/2)
src/spirv-tools/source/opt/eliminate_dead_functions_util.cpp
 74.58% (44/59)
100.00% (2/2)
 37.04% (10/27)
src/spirv-tools/source/opt/eliminate_dead_io_components_pass.cpp
  0.00% (0/224)
  0.00% (0/5)
  0.00% (0/173)
src/spirv-tools/source/opt/eliminate_dead_io_components_pass.h
  0.00% (0/12)
  0.00% (0/3)
  0.00% (0/5)
src/spirv-tools/source/opt/eliminate_dead_members_pass.cpp
 83.36% (536/643)
 92.59% (25/27)
 56.47% (288/510)
src/spirv-tools/source/opt/eliminate_dead_members_pass.h
100.00% (14/14)
100.00% (2/2)
100.00% (2/2)
src/spirv-tools/source/opt/eliminate_dead_output_stores_pass.cpp
  0.00% (0/217)
  0.00% (0/14)
  0.00% (0/190)
src/spirv-tools/source/opt/eliminate_dead_output_stores_pass.h
  0.00% (0/10)
  0.00% (0/3)
  0.00% (0/5)
src/spirv-tools/source/opt/empty_pass.h
  0.00% (0/3)
  0.00% (0/3)
  0.00% (0/3)
src/spirv-tools/source/opt/feature_manager.cpp
 61.73% (50/81)
 66.67% (6/9)
 48.39% (30/62)
src/spirv-tools/source/opt/feature_manager.h
 78.95% (15/19)
 77.78% (7/9)
 80.00% (8/10)
src/spirv-tools/source/opt/fix_func_call_arguments.cpp
  0.00% (0/63)
  0.00% (0/5)
  0.00% (0/24)
src/spirv-tools/source/opt/fix_func_call_arguments.h
  0.00% (0/5)
  0.00% (0/3)
  0.00% (0/3)
src/spirv-tools/source/opt/fix_storage_class.cpp
 70.73% (203/287)
 78.57% (11/14)
 50.00% (114/228)
src/spirv-tools/source/opt/fix_storage_class.h
 11.11% (1/9)
 50.00% (1/2)
 50.00% (1/2)
src/spirv-tools/source/opt/flatten_decoration_pass.cpp
  0.00% (0/100)
  0.00% (0/1)
  0.00% (0/59)
src/spirv-tools/source/opt/flatten_decoration_pass.h
  0.00% (0/1)
  0.00% (0/1)
  0.00% (0/1)
src/spirv-tools/source/opt/fold.cpp
 89.40% (506/566)
 89.47% (17/19)
 75.00% (402/536)
src/spirv-tools/source/opt/fold.h
100.00% (19/19)
100.00% (5/5)
100.00% (11/11)
src/spirv-tools/source/opt/fold_spec_constant_op_and_composite_pass.cpp
  0.00% (0/233)
  0.00% (0/8)
  0.00% (0/197)
src/spirv-tools/source/opt/fold_spec_constant_op_and_composite_pass.h
  0.00% (0/13)
  0.00% (0/4)
  0.00% (0/6)
src/spirv-tools/source/opt/folding_rules.cpp
 93.68% (3972/4240)
 98.53% (134/136)
 69.09% (2081/3012)
src/spirv-tools/source/opt/folding_rules.h
 87.10% (27/31)
100.00% (6/6)
 90.48% (19/21)
src/spirv-tools/source/opt/freeze_spec_constant_value_pass.cpp
  0.00% (0/55)
  0.00% (0/2)
  0.00% (0/12)
src/spirv-tools/source/opt/freeze_spec_constant_value_pass.h
  0.00% (0/1)
  0.00% (0/1)
  0.00% (0/1)
src/spirv-tools/source/opt/function.cpp
 47.16% (108/229)
 61.90% (13/21)
 43.80% (60/137)
src/spirv-tools/source/opt/function.h
 60.19% (65/108)
 72.22% (26/36)
 56.06% (37/66)
src/spirv-tools/source/opt/graph.cpp
  0.00% (0/47)
  0.00% (0/3)
  0.00% (0/12)
src/spirv-tools/source/opt/graph.h
  3.57% (1/28)
  7.14% (1/14)
 13.33% (2/15)
src/spirv-tools/source/opt/graphics_robust_access_pass.cpp
  0.00% (0/736)
  0.00% (0/20)
  0.00% (0/361)
src/spirv-tools/source/opt/graphics_robust_access_pass.h
  0.00% (0/10)
  0.00% (0/3)
  0.00% (0/3)
src/spirv-tools/source/opt/if_conversion.cpp
 98.87% (263/266)
100.00% (14/14)
 93.92% (139/148)
src/spirv-tools/source/opt/if_conversion.h
100.00% (7/7)
100.00% (2/2)
100.00% (2/2)
src/spirv-tools/source/opt/inline_exhaustive_pass.cpp
 95.83% (46/48)
100.00% (5/5)
 96.30% (26/27)
src/spirv-tools/source/opt/inline_exhaustive_pass.h
100.00% (1/1)
100.00% (1/1)
100.00% (1/1)
src/spirv-tools/source/opt/inline_opaque_pass.cpp
  0.00% (0/86)
  0.00% (0/10)
  0.00% (0/51)
src/spirv-tools/source/opt/inline_opaque_pass.h
  0.00% (0/1)
  0.00% (0/1)
  0.00% (0/1)
src/spirv-tools/source/opt/inline_pass.cpp
 75.11% (525/699)
 86.36% (38/44)
 69.53% (251/361)
src/spirv-tools/source/opt/inline_pass.h
100.00% (1/1)
100.00% (1/1)
100.00% (1/1)
src/spirv-tools/source/opt/instruction.cpp
 62.83% (578/920)
 68.85% (42/61)
 65.24% (426/653)
src/spirv-tools/source/opt/instruction.h
 77.34% (273/353)
 80.21% (77/96)
 72.46% (221/305)
src/spirv-tools/source/opt/instruction_list.cpp
100.00% (12/12)
100.00% (2/2)
100.00% (3/3)
src/spirv-tools/source/opt/instruction_list.h
 74.00% (37/50)
 81.25% (13/16)
 86.96% (20/23)
src/spirv-tools/source/opt/interface_var_sroa.cpp
  0.00% (0/814)
  0.00% (0/55)
  0.00% (0/444)
src/spirv-tools/source/opt/interface_var_sroa.h
  0.00% (0/23)
  0.00% (0/10)
  0.00% (0/11)
src/spirv-tools/source/opt/interp_fixup_pass.cpp
 53.23% (33/62)
 85.71% (6/7)
 29.17% (14/48)
src/spirv-tools/source/opt/interp_fixup_pass.h
  7.14% (1/14)
 50.00% (1/2)
 50.00% (1/2)
src/spirv-tools/source/opt/invocation_interlock_placement_pass.cpp
  1.86% (9/483)
  6.67% (2/30)
  2.74% (6/219)
src/spirv-tools/source/opt/invocation_interlock_placement_pass.h
100.00% (2/2)
100.00% (2/2)
100.00% (2/2)
src/spirv-tools/source/opt/ir_builder.h
 42.47% (203/478)
 50.98% (26/51)
 48.11% (102/212)
src/spirv-tools/source/opt/ir_context.cpp
 57.61% (598/1038)
 59.09% (26/44)
 47.07% (241/512)
src/spirv-tools/source/opt/ir_context.h
 48.03% (280/583)
 45.38% (59/130)
 51.52% (136/264)
src/spirv-tools/source/opt/ir_loader.cpp
 85.59% (297/347)
100.00% (4/4)
 91.12% (236/259)
src/spirv-tools/source/opt/ir_loader.h
 83.33% (5/6)
 75.00% (3/4)
 75.00% (3/4)
src/spirv-tools/source/opt/iterator.h
 45.16% (42/93)
 46.67% (14/30)
 32.79% (20/61)
src/spirv-tools/source/opt/licm_pass.cpp
  0.00% (0/95)
  0.00% (0/8)
  0.00% (0/57)
src/spirv-tools/source/opt/licm_pass.h
  0.00% (0/2)
  0.00% (0/2)
  0.00% (0/2)
src/spirv-tools/source/opt/liveness.cpp
  0.00% (0/359)
  0.00% (0/18)
  0.00% (0/342)
src/spirv-tools/source/opt/liveness.h
  0.00% (0/1)
  0.00% (0/1)
  0.00% (0/1)
src/spirv-tools/source/opt/local_access_chain_convert_pass.cpp
 93.27% (416/446)
100.00% (21/21)
 81.05% (201/248)
src/spirv-tools/source/opt/local_access_chain_convert_pass.h
100.00% (5/5)
100.00% (2/2)
100.00% (2/2)
src/spirv-tools/source/opt/local_redundancy_elimination.cpp
 75.51% (37/49)
 66.67% (2/3)
 55.56% (10/18)
src/spirv-tools/source/opt/local_redundancy_elimination.h
 88.89% (8/9)
 50.00% (1/2)
 50.00% (1/2)
src/spirv-tools/source/opt/local_single_block_elim_pass.cpp
 97.19% (242/249)
100.00% (10/10)
 89.71% (122/136)
src/spirv-tools/source/opt/local_single_block_elim_pass.h
100.00% (6/6)
100.00% (2/2)
100.00% (2/2)
src/spirv-tools/source/opt/local_single_store_elim_pass.cpp
 90.26% (241/267)
 93.33% (14/15)
 82.61% (95/115)
src/spirv-tools/source/opt/local_single_store_elim_pass.h
100.00% (6/6)
100.00% (2/2)
100.00% (2/2)
src/spirv-tools/source/opt/log.h
 67.86% (19/28)
100.00% (4/4)
 64.29% (9/14)
src/spirv-tools/source/opt/loop_dependence.cpp
  0.00% (0/1246)
  0.00% (0/31)
  0.00% (0/554)
src/spirv-tools/source/opt/loop_dependence.h
  0.00% (0/91)
  0.00% (0/51)
  0.00% (0/83)
src/spirv-tools/source/opt/loop_dependence_helpers.cpp
  0.00% (0/387)
  0.00% (0/26)
  0.00% (0/211)
src/spirv-tools/source/opt/loop_descriptor.cpp
 56.63% (397/701)
 42.22% (19/45)
 46.17% (313/678)
src/spirv-tools/source/opt/loop_descriptor.h
 42.50% (68/160)
 37.68% (26/69)
 38.85% (54/139)
src/spirv-tools/source/opt/loop_fission.cpp
  0.00% (0/279)
  0.00% (0/15)
  0.00% (0/191)
src/spirv-tools/source/opt/loop_fission.h
  0.00% (0/2)
  0.00% (0/2)
  0.00% (0/2)
src/spirv-tools/source/opt/loop_fusion.cpp
  0.00% (0/532)
  0.00% (0/29)
  0.00% (0/292)
src/spirv-tools/source/opt/loop_fusion.h
  0.00% (0/4)
  0.00% (0/1)
  0.00% (0/5)
src/spirv-tools/source/opt/loop_fusion_pass.cpp
  0.00% (0/32)
  0.00% (0/2)
  0.00% (0/21)
src/spirv-tools/source/opt/loop_fusion_pass.h
  0.00% (0/2)
  0.00% (0/2)
  0.00% (0/4)
src/spirv-tools/source/opt/loop_peeling.cpp
  0.00% (0/1012)
  0.00% (0/41)
  0.00% (0/581)
src/spirv-tools/source/opt/loop_peeling.h
  0.00% (0/68)
  0.00% (0/11)
  0.00% (0/62)
src/spirv-tools/source/opt/loop_unroller.cpp
 62.56% (376/601)
 75.00% (27/36)
 54.26% (223/411)
src/spirv-tools/source/opt/loop_unroller.h
 90.00% (9/10)
 75.00% (3/4)
 85.71% (6/7)
src/spirv-tools/source/opt/loop_unswitch_pass.cpp
  0.00% (0/476)
  0.00% (0/23)
  0.00% (0/314)
src/spirv-tools/source/opt/loop_unswitch_pass.h
  0.00% (0/1)
  0.00% (0/1)
  0.00% (0/1)
src/spirv-tools/source/opt/loop_utils.cpp
  0.00% (0/552)
  0.00% (0/30)
  0.00% (0/333)
src/spirv-tools/source/opt/loop_utils.h
 50.00% (4/8)
 20.00% (1/5)
 55.56% (5/9)
src/spirv-tools/source/opt/mem_pass.cpp
 95.30% (385/404)
100.00% (30/30)
 89.52% (222/248)
src/spirv-tools/source/opt/mem_pass.h
100.00% (7/7)
100.00% (3/3)
100.00% (5/5)
src/spirv-tools/source/opt/merge_return_pass.cpp
 74.15% (614/828)
 90.62% (29/32)
 66.85% (355/531)
src/spirv-tools/source/opt/merge_return_pass.h
 73.08% (19/26)
 81.82% (9/11)
 91.67% (22/24)
src/spirv-tools/source/opt/modify_maximal_reconvergence.cpp
  0.00% (0/73)
  0.00% (0/3)
  0.00% (0/32)
src/spirv-tools/source/opt/modify_maximal_reconvergence.h
  0.00% (0/9)
  0.00% (0/3)
  0.00% (0/5)
src/spirv-tools/source/opt/module.cpp
 72.90% (226/310)
 66.67% (12/18)
 72.78% (123/169)
src/spirv-tools/source/opt/module.h
 48.88% (109/223)
 49.44% (44/89)
 50.00% (50/100)
src/spirv-tools/source/opt/null_pass.h
  0.00% (0/2)
  0.00% (0/2)
  0.00% (0/2)
src/spirv-tools/source/opt/opextinst_forward_ref_fixup_pass.cpp
 36.21% (21/58)
 50.00% (2/4)
 15.56% (7/45)
src/spirv-tools/source/opt/opextinst_forward_ref_fixup_pass.h
  7.14% (1/14)
 50.00% (1/2)
 50.00% (1/2)
src/spirv-tools/source/opt/optimizer.cpp
 30.08% (302/1004)
 36.15% (47/130)
 15.41% (84/545)
src/spirv-tools/source/opt/pass.cpp
 17.76% (19/107)
 42.86% (3/7)
 20.00% (14/70)
src/spirv-tools/source/opt/pass.h
 82.61% (19/23)
 84.62% (11/13)
 84.62% (11/13)
src/spirv-tools/source/opt/pass_manager.cpp
 59.42% (41/69)
100.00% (2/2)
 63.33% (19/30)
src/spirv-tools/source/opt/pass_manager.h
 60.00% (24/40)
 63.64% (7/11)
 52.00% (13/25)
src/spirv-tools/source/opt/private_to_local_pass.cpp
 83.87% (156/186)
100.00% (10/10)
 76.70% (79/103)
src/spirv-tools/source/opt/private_to_local_pass.h
100.00% (9/9)
100.00% (2/2)
100.00% (2/2)
src/spirv-tools/source/opt/propagator.cpp
 89.34% (218/244)
 93.33% (14/15)
 81.25% (130/160)
src/spirv-tools/source/opt/propagator.h
100.00% (32/32)
100.00% (12/12)
 72.97% (27/37)
src/spirv-tools/source/opt/reduce_load_size.cpp
 95.10% (136/143)
100.00% (5/5)
 78.95% (75/95)
src/spirv-tools/source/opt/reduce_load_size.h
100.00% (10/10)
100.00% (3/3)
100.00% (4/4)
src/spirv-tools/source/opt/redundancy_elimination.cpp
 93.75% (30/32)
100.00% (2/2)
 93.33% (14/15)
src/spirv-tools/source/opt/redundancy_elimination.h
100.00% (1/1)
100.00% (1/1)
100.00% (1/1)
src/spirv-tools/source/opt/reflect.h
100.00% (31/31)
100.00% (8/8)
100.00% (26/26)
src/spirv-tools/source/opt/register_pressure.cpp
  0.00% (0/509)
  0.00% (0/27)
  0.00% (0/281)
src/spirv-tools/source/opt/register_pressure.h
  0.00% (0/60)
  0.00% (0/13)
  0.00% (0/27)
src/spirv-tools/source/opt/relax_float_ops_pass.cpp
  0.00% (0/151)
  0.00% (0/10)
  0.00% (0/50)
src/spirv-tools/source/opt/relax_float_ops_pass.h
  0.00% (0/9)
  0.00% (0/5)
  0.00% (0/6)
src/spirv-tools/source/opt/remove_dontinline_pass.cpp
  0.00% (0/25)
  0.00% (0/3)
  0.00% (0/10)
src/spirv-tools/source/opt/remove_dontinline_pass.h
  0.00% (0/1)
  0.00% (0/1)
  0.00% (0/1)
src/spirv-tools/source/opt/remove_duplicates_pass.cpp
  0.00% (0/155)
  0.00% (0/6)
  0.00% (0/89)
src/spirv-tools/source/opt/remove_duplicates_pass.h
  0.00% (0/1)
  0.00% (0/1)
  0.00% (0/1)
src/spirv-tools/source/opt/remove_unused_interface_variables_pass.cpp
 98.68% (75/76)
100.00% (7/7)
 94.83% (55/58)
src/spirv-tools/source/opt/remove_unused_interface_variables_pass.h
100.00% (3/3)
100.00% (1/1)
100.00% (1/1)
src/spirv-tools/source/opt/replace_desc_array_access_using_var_index.cpp
  0.00% (0/361)
  0.00% (0/29)
  0.00% (0/257)
src/spirv-tools/source/opt/replace_desc_array_access_using_var_index.h
  0.00% (0/9)
  0.00% (0/3)
  0.00% (0/3)
src/spirv-tools/source/opt/replace_invalid_opc.cpp
  0.00% (0/210)
  0.00% (0/8)
  0.00% (0/129)
src/spirv-tools/source/opt/replace_invalid_opc.h
  0.00% (0/1)
  0.00% (0/1)
  0.00% (0/1)
src/spirv-tools/source/opt/resolve_binding_conflicts_pass.cpp
  0.00% (0/213)
  0.00% (0/14)
  0.00% (0/107)
src/spirv-tools/source/opt/resolve_binding_conflicts_pass.h
  0.00% (0/1)
  0.00% (0/1)
  0.00% (0/1)
src/spirv-tools/source/opt/scalar_analysis.cpp
  0.00% (0/749)
  0.00% (0/46)
  0.00% (0/509)
src/spirv-tools/source/opt/scalar_analysis.h
  0.00% (0/48)
  0.00% (0/19)
  0.00% (0/21)
src/spirv-tools/source/opt/scalar_analysis_nodes.h
  0.00% (0/109)
  0.00% (0/64)
  0.00% (0/105)
src/spirv-tools/source/opt/scalar_analysis_simplification.cpp
  0.00% (0/254)
  0.00% (0/10)
  0.00% (0/178)
src/spirv-tools/source/opt/scalar_replacement_pass.cpp
 78.17% (770/985)
 87.80% (36/41)
 61.18% (353/577)
src/spirv-tools/source/opt/scalar_replacement_pass.h
100.00% (19/19)
100.00% (3/3)
 61.11% (11/18)
src/spirv-tools/source/opt/set_spec_constant_default_value_pass.cpp
  0.00% (0/228)
  0.00% (0/10)
  0.00% (0/167)
src/spirv-tools/source/opt/set_spec_constant_default_value_pass.h
  0.00% (0/7)
  0.00% (0/5)
  0.00% (0/9)
src/spirv-tools/source/opt/simplification_pass.cpp
 97.84% (181/185)
100.00% (9/9)
 97.14% (68/70)
src/spirv-tools/source/opt/simplification_pass.h
100.00% (9/9)
100.00% (2/2)
100.00% (2/2)
src/spirv-tools/source/opt/split_combined_image_sampler_pass.cpp
  0.00% (0/569)
  0.00% (0/20)
  0.00% (0/358)
src/spirv-tools/source/opt/split_combined_image_sampler_pass.h
  0.00% (0/19)
  0.00% (0/7)
  0.00% (0/19)
src/spirv-tools/source/opt/spread_volatile_semantics.cpp
  0.00% (0/278)
  0.00% (0/19)
  0.00% (0/125)
src/spirv-tools/source/opt/spread_volatile_semantics.h
  0.00% (0/16)
  0.00% (0/5)
  0.00% (0/10)
src/spirv-tools/source/opt/ssa_rewrite_pass.cpp
 85.44% (311/364)
 85.71% (18/21)
 69.65% (218/313)
src/spirv-tools/source/opt/ssa_rewrite_pass.h
 97.14% (34/35)
 95.24% (20/21)
 97.22% (35/36)
src/spirv-tools/source/opt/strength_reduction_pass.cpp
  0.00% (0/120)
  0.00% (0/7)
  0.00% (0/89)
src/spirv-tools/source/opt/strength_reduction_pass.h
  0.00% (0/1)
  0.00% (0/1)
  0.00% (0/1)
src/spirv-tools/source/opt/strip_debug_info_pass.cpp
  0.00% (0/84)
  0.00% (0/4)
  0.00% (0/36)
src/spirv-tools/source/opt/strip_debug_info_pass.h
  0.00% (0/1)
  0.00% (0/1)
  0.00% (0/1)
src/spirv-tools/source/opt/strip_nonsemantic_info_pass.cpp
  0.00% (0/85)
  0.00% (0/2)
  0.00% (0/59)
src/spirv-tools/source/opt/strip_nonsemantic_info_pass.h
  0.00% (0/8)
  0.00% (0/2)
  0.00% (0/2)
src/spirv-tools/source/opt/struct_cfg_analysis.cpp
 79.07% (136/172)
 71.43% (10/14)
 71.11% (64/90)
src/spirv-tools/source/opt/struct_cfg_analysis.h
 90.48% (19/21)
100.00% (3/3)
 91.67% (11/12)
src/spirv-tools/source/opt/struct_packing_pass.cpp
  0.00% (0/309)
  0.00% (0/20)
  0.00% (0/288)
src/spirv-tools/source/opt/struct_packing_pass.h
  0.00% (0/9)
  0.00% (0/2)
  0.00% (0/2)
src/spirv-tools/source/opt/switch_descriptorset_pass.cpp
  0.00% (0/20)
  0.00% (0/1)
  0.00% (0/10)
src/spirv-tools/source/opt/switch_descriptorset_pass.h
  0.00% (0/7)
  0.00% (0/3)
  0.00% (0/5)
src/spirv-tools/source/opt/tree_iterator.h
 88.31% (68/77)
 94.44% (17/18)
 91.84% (45/49)
src/spirv-tools/source/opt/trim_capabilities_pass.cpp
  0.00% (0/538)
  0.00% (0/36)
  0.00% (0/469)
src/spirv-tools/source/opt/trim_capabilities_pass.h
  0.00% (0/24)
  0.00% (0/5)
  0.00% (0/11)
src/spirv-tools/source/opt/type_manager.cpp
 32.33% (376/1163)
 78.95% (15/19)
 31.65% (220/695)
src/spirv-tools/source/opt/type_manager.h
 31.65% (25/79)
 21.21% (7/33)
 33.75% (27/80)
src/spirv-tools/source/opt/types.cpp
 39.67% (311/784)
 44.12% (45/102)
 33.36% (384/1151)
src/spirv-tools/source/opt/types.h
 37.99% (68/179)
 37.16% (55/148)
 42.20% (73/173)
src/spirv-tools/source/opt/unify_const_pass.cpp
  0.00% (0/65)
  0.00% (0/8)
  0.00% (0/42)
src/spirv-tools/source/opt/unify_const_pass.h
  0.00% (0/1)
  0.00% (0/1)
  0.00% (0/1)
src/spirv-tools/source/opt/upgrade_memory_model.cpp
  0.00% (0/989)
  0.00% (0/31)
  0.00% (0/446)
src/spirv-tools/source/opt/upgrade_memory_model.h
  0.00% (0/7)
  0.00% (0/2)
  0.00% (0/3)
src/spirv-tools/source/opt/value_number_table.cpp
 90.48% (209/231)
100.00% (9/9)
 89.57% (146/163)
src/spirv-tools/source/opt/value_number_table.h
100.00% (5/5)
100.00% (3/3)
100.00% (5/5)
src/spirv-tools/source/opt/vector_dce.cpp
 91.76% (334/364)
100.00% (20/20)
 80.13% (125/156)
src/spirv-tools/source/opt/vector_dce.h
100.00% (14/14)
100.00% (4/4)
100.00% (10/10)
src/spirv-tools/source/opt/workaround1209.cpp
  0.00% (0/35)
  0.00% (0/2)
  0.00% (0/18)
src/spirv-tools/source/opt/workaround1209.h
  0.00% (0/1)
  0.00% (0/1)
  0.00% (0/1)
src/spirv-tools/source/opt/wrap_opkill.cpp
 80.38% (127/158)
 87.50% (7/8)
 64.10% (75/117)
src/spirv-tools/source/opt/wrap_opkill.h
100.00% (9/9)
100.00% (3/3)
100.00% (4/4)
src/spirv-tools/source/parsed_operand.cpp
 82.43% (61/74)
100.00% (1/1)
 82.93% (34/41)
src/spirv-tools/source/print.cpp
100.00% (6/6)
100.00% (6/6)
100.00% (6/6)
src/spirv-tools/source/print.h
100.00% (8/8)
100.00% (3/3)
100.00% (8/8)
src/spirv-tools/source/spirv_endian.cpp
 91.18% (31/34)
 75.00% (3/4)
 95.92% (47/49)
src/spirv-tools/source/spirv_optimizer_options.cpp
 57.14% (12/21)
 57.14% (4/7)
 57.14% (4/7)
src/spirv-tools/source/spirv_optimizer_options.h
100.00% (5/5)
100.00% (1/1)
100.00% (6/6)
src/spirv-tools/source/spirv_target_env.cpp
 17.92% (69/385)
 50.00% (6/12)
 11.03% (46/417)
src/spirv-tools/source/spirv_validator_options.cpp
 13.83% (13/94)
 17.65% (3/17)
 14.12% (12/85)
src/spirv-tools/source/spirv_validator_options.h
100.00% (13/13)
100.00% (1/1)
100.00% (14/14)
src/spirv-tools/source/table.cpp
 63.16% (24/38)
100.00% (3/3)
 58.06% (18/31)
src/spirv-tools/source/table2.cpp
 75.83% (229/302)
 88.24% (30/34)
 70.48% (117/166)
src/spirv-tools/source/table2.h
 50.00% (3/6)
 50.00% (3/6)
 66.67% (6/9)
src/spirv-tools/source/text.cpp
 97.48% (657/674)
 92.86% (13/14)
 90.89% (489/538)
src/spirv-tools/source/text_handler.cpp
 98.31% (291/296)
100.00% (24/24)
 96.52% (194/201)
src/spirv-tools/source/text_handler.h
 66.67% (28/42)
 80.00% (8/10)
 71.43% (15/21)
src/spirv-tools/source/to_string.cpp
100.00% (17/17)
100.00% (1/1)
 66.67% (10/15)
src/spirv-tools/source/util/bit_vector.cpp
 32.00% (16/50)
 33.33% (1/3)
 34.78% (8/23)
src/spirv-tools/source/util/bit_vector.h
 95.83% (46/48)
100.00% (5/5)
 95.83% (23/24)
src/spirv-tools/source/util/bitutils.h
 89.36% (84/94)
100.00% (9/9)
 65.91% (58/88)
src/spirv-tools/source/util/hash_combine.h
 92.31% (12/13)
 75.00% (3/4)
 80.00% (4/5)
src/spirv-tools/source/util/hex_float.h
 86.60% (627/724)
 71.79% (84/117)
 83.20% (401/482)
src/spirv-tools/source/util/ilist.h
 94.12% (96/102)
 96.15% (25/26)
 72.22% (52/72)
src/spirv-tools/source/util/ilist_node.h
 35.29% (36/102)
 66.67% (8/12)
 38.21% (47/123)
src/spirv-tools/source/util/index_range.h
100.00% (9/9)
100.00% (6/6)
 90.91% (10/11)
src/spirv-tools/source/util/make_unique.h
100.00% (3/3)
100.00% (1/1)
100.00% (1/1)
src/spirv-tools/source/util/parse_number.cpp
 89.27% (158/177)
100.00% (7/7)
 88.14% (104/118)
src/spirv-tools/source/util/parse_number.h
 93.42% (71/76)
100.00% (9/9)
 89.29% (50/56)
src/spirv-tools/source/util/small_vector.h
 79.24% (187/236)
 89.29% (25/28)
 76.22% (141/185)
src/spirv-tools/source/util/span.h
 85.71% (12/14)
 88.89% (8/9)
 84.21% (16/19)
src/spirv-tools/source/util/string_utils.cpp
 53.85% (14/26)
 50.00% (1/2)
 53.33% (16/30)
src/spirv-tools/source/util/string_utils.h
 90.16% (55/61)
 85.71% (6/7)
 84.21% (32/38)
src/spirv-tools/source/util/timer.cpp
 18.97% (11/58)
100.00% (4/4)
 20.83% (10/48)
src/spirv-tools/source/util/timer.h
 13.48% (12/89)
 20.00% (4/20)
 13.04% (9/69)
src/spirv-tools/source/val/basic_block.cpp
 73.91% (102/138)
 71.05% (27/38)
 82.26% (51/62)
src/spirv-tools/source/val/basic_block.h
 88.89% (40/45)
 90.91% (20/22)
 85.71% (24/28)
src/spirv-tools/source/val/construct.cpp
 94.90% (149/157)
 92.86% (13/14)
 79.17% (114/144)
src/spirv-tools/source/val/construct.h
100.00% (6/6)
100.00% (2/2)
100.00% (4/4)
src/spirv-tools/source/val/decoration.h
 76.19% (16/21)
 77.78% (7/9)
 70.27% (26/37)
src/spirv-tools/source/val/function.cpp
 97.73% (344/352)
 95.00% (38/40)
 76.72% (201/262)
src/spirv-tools/source/val/function.h
 67.57% (25/37)
 71.43% (10/14)
 71.43% (10/14)
src/spirv-tools/source/val/instruction.cpp
 56.52% (13/23)
 42.86% (3/7)
 52.63% (10/19)
src/spirv-tools/source/val/instruction.h
 92.31% (36/39)
 95.00% (19/20)
 73.81% (31/42)
src/spirv-tools/source/val/validate.cpp
 87.23% (280/321)
 83.33% (10/12)
 90.46% (275/304)
src/spirv-tools/source/val/validate_adjacency.cpp
 90.00% (81/90)
100.00% (1/1)
 86.00% (43/50)
src/spirv-tools/source/val/validate_annotation.cpp
 74.49% (368/494)
 92.31% (12/13)
 71.99% (257/357)
src/spirv-tools/source/val/validate_arithmetics.cpp
 49.11% (359/731)
 33.33% (1/3)
 57.01% (305/535)
src/spirv-tools/source/val/validate_atomics.cpp
 56.32% (205/364)
100.00% (7/7)
 59.38% (171/288)
src/spirv-tools/source/val/validate_barriers.cpp
 70.59% (72/102)
100.00% (2/2)
 66.07% (37/56)
src/spirv-tools/source/val/validate_bitwise.cpp
 90.00% (153/170)
100.00% (2/2)
 94.81% (128/135)
src/spirv-tools/source/val/validate_builtins.cpp
  2.90% (125/4308)
  4.60% (8/174)
  5.47% (102/1864)
src/spirv-tools/source/val/validate_capability.cpp
 10.00% (40/400)
  5.26% (1/19)
 15.86% (59/372)
src/spirv-tools/source/val/validate_cfg.cpp
 88.10% (874/992)
 96.67% (29/30)
 86.65% (584/674)
src/spirv-tools/source/val/validate_composites.cpp
 45.63% (423/927)
 71.43% (10/14)
 40.62% (273/672)
src/spirv-tools/source/val/validate_constants.cpp
 62.39% (340/545)
 88.89% (8/9)
 67.17% (223/332)
src/spirv-tools/source/val/validate_conversion.cpp
 54.70% (355/649)
100.00% (1/1)
 64.02% (347/542)
src/spirv-tools/source/val/validate_debug.cpp
100.00% (41/41)
100.00% (3/3)
100.00% (26/26)
src/spirv-tools/source/val/validate_decorations.cpp
 38.06% (752/1976)
 71.15% (37/52)
 41.47% (625/1507)
src/spirv-tools/source/val/validate_derivatives.cpp
 97.60% (122/125)
100.00% (3/3)
 98.04% (50/51)
src/spirv-tools/source/val/validate_execution_limitations.cpp
 83.33% (35/42)
100.00% (1/1)
 90.00% (18/20)
src/spirv-tools/source/val/validate_extensions.cpp
 17.31% (581/3357)
 10.00% (6/60)
 14.73% (436/2960)
src/spirv-tools/source/val/validate_function.cpp
 63.72% (209/328)
 66.67% (4/6)
 70.75% (150/212)
src/spirv-tools/source/val/validate_graph.cpp
  1.68% (7/416)
  5.56% (1/18)
  1.34% (3/224)
src/spirv-tools/source/val/validate_id.cpp
100.00% (213/213)
100.00% (5/5)
 99.36% (155/156)
src/spirv-tools/source/val/validate_image.cpp
 61.76% (1326/2147)
 84.44% (38/45)
 60.75% (969/1595)
src/spirv-tools/source/val/validate_instruction.cpp
 77.60% (291/375)
100.00% (13/13)
 81.06% (214/264)
src/spirv-tools/source/val/validate_interfaces.cpp
 12.32% (75/609)
 30.77% (4/13)
 10.44% (40/383)
src/spirv-tools/source/val/validate_invalid_type.cpp
 65.55% (78/119)
100.00% (1/1)
 80.52% (62/77)
src/spirv-tools/source/val/validate_layout.cpp
 59.95% (220/367)
100.00% (4/4)
 58.70% (162/276)
src/spirv-tools/source/val/validate_literals.cpp
100.00% (49/49)
100.00% (3/3)
 76.74% (33/43)
src/spirv-tools/source/val/validate_logical_pointers.cpp
 32.90% (276/839)
 37.50% (6/16)
 42.80% (226/528)
src/spirv-tools/source/val/validate_logicals.cpp
 96.48% (219/227)
100.00% (2/2)
 92.97% (172/185)
src/spirv-tools/source/val/validate_memory.cpp
 28.83% (796/2761)
 36.36% (16/44)
 32.45% (659/2031)
src/spirv-tools/source/val/validate_memory_semantics.cpp
 53.88% (125/232)
100.00% (1/1)
 69.57% (96/138)
src/spirv-tools/source/val/validate_mesh_shading.cpp
  8.11% (12/148)
 25.00% (1/4)
  7.89% (6/76)
src/spirv-tools/source/val/validate_misc.cpp
 11.11% (23/207)
 28.57% (2/7)
 18.75% (18/96)
src/spirv-tools/source/val/validate_mode_setting.cpp
 58.83% (713/1212)
 87.10% (27/31)
 56.57% (366/647)
src/spirv-tools/source/val/validate_non_uniform.cpp
  6.04% (25/414)
 14.29% (2/14)
  5.88% (16/272)
src/spirv-tools/source/val/validate_primitives.cpp
 57.89% (22/38)
100.00% (1/1)
 56.25% (9/16)
src/spirv-tools/source/val/validate_ray_query.cpp
  3.20% (9/281)
 25.00% (1/4)
  1.06% (3/283)
src/spirv-tools/source/val/validate_ray_tracing.cpp
  4.52% (9/199)
 25.00% (1/4)
  2.50% (3/120)
src/spirv-tools/source/val/validate_ray_tracing_reorder.cpp
  4.39% (29/660)
 11.11% (1/9)
  0.64% (3/467)
src/spirv-tools/source/val/validate_scopes.cpp
 25.60% (86/336)
 44.44% (4/9)
 33.66% (68/202)
src/spirv-tools/source/val/validate_small_type_uses.cpp
 20.83% (5/24)
100.00% (1/1)
 33.33% (7/21)
src/spirv-tools/source/val/validate_tensor.cpp
  4.89% (9/184)
 14.29% (1/7)
  2.68% (3/112)
src/spirv-tools/source/val/validate_tensor_layout.cpp
  5.69% (7/123)
 16.67% (1/6)
  3.33% (3/90)
src/spirv-tools/source/val/validate_type.cpp
 50.61% (454/897)
 61.90% (13/21)
 54.48% (353/648)
src/spirv-tools/source/val/validation_state.cpp
 38.29% (965/2520)
 75.17% (109/145)
 33.80% (728/2154)
src/spirv-tools/source/val/validation_state.h
 65.17% (174/267)
 75.00% (57/76)
 57.14% (72/126)
src/spirv-tools/test/fuzzers/random_generator.cpp
 73.33% (44/60)
 63.64% (7/11)
 50.00% (25/50)
src/spirv-tools/test/fuzzers/random_generator.h
100.00% (1/1)
100.00% (1/1)
100.00% (1/1)
src/spirv-tools/test/fuzzers/spvtools_as_fuzzer.cpp
 95.24% (40/42)
100.00% (1/1)
 92.86% (13/14)
src/spirv-tools/test/fuzzers/spvtools_binary_parser_fuzzer.cpp
 80.95% (17/21)
100.00% (1/1)
 80.00% (8/10)
src/spirv-tools/test/fuzzers/spvtools_dis_fuzzer.cpp
 95.45% (42/44)
100.00% (1/1)
 94.12% (16/17)
src/spirv-tools/test/fuzzers/spvtools_opt_fuzzer_common.cpp
 94.59% (35/37)
100.00% (2/2)
 93.33% (14/15)
src/spirv-tools/test/fuzzers/spvtools_opt_legalization_fuzzer.cpp
100.00% (9/9)
100.00% (2/2)
100.00% (2/2)
src/spirv-tools/test/fuzzers/spvtools_opt_performance_fuzzer.cpp
100.00% (9/9)
100.00% (2/2)
100.00% (2/2)
src/spirv-tools/test/fuzzers/spvtools_opt_size_fuzzer.cpp
100.00% (9/9)
100.00% (2/2)
100.00% (2/2)
src/spirv-tools/test/fuzzers/spvtools_val_fuzzer.cpp
 89.47% (17/19)
100.00% (2/2)
 87.50% (7/8)
Totals
 45.71% (41446/90681)
 52.39% (3006/5738)
 42.63% (26891/63081)