Coverage Report

View results by: Directories | Files

Path Line Coverage Function Coverage Region Coverage
src/spirv-tools/build/core_tables_body.inc
 72.82% (300/412)
100.00% (5/5)
 71.79% (285/397)
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
 75.47% (483/640)
 78.38% (29/37)
 73.82% (375/508)
src/spirv-tools/source/operand.cpp
 83.71% (483/577)
 71.05% (27/38)
 84.25% (305/362)
src/spirv-tools/source/opt/aggressive_dead_code_elim_pass.cpp
 78.56% (916/1166)
 92.86% (52/56)
 69.10% (492/712)
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
 86.96% (20/23)
100.00% (2/2)
 81.82% (9/11)
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
 34.08% (91/267)
 33.33% (5/15)
 24.62% (49/199)
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
 81.05% (2015/2486)
 94.92% (112/118)
 51.80% (1423/2747)
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% (659/873)
100.00% (36/36)
 63.12% (356/564)
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.10% (66/725)
 36.11% (13/36)
  7.23% (45/622)
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
 82.12% (528/643)
 92.59% (25/27)
 55.88% (285/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)
 46.77% (29/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.38% (4384/4695)
 98.05% (151/154)
 68.91% (2210/3207)
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
 14.29% (4/28)
 14.29% (2/14)
 20.00% (3/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
 64.67% (595/920)
 68.85% (42/61)
 67.84% (443/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.21% (603/1054)
 58.70% (27/46)
 46.73% (243/520)
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.88% (298/347)
100.00% (4/4)
 91.51% (237/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.72% (418/446)
100.00% (21/21)
 81.45% (202/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.99% (244/249)
100.00% (10/10)
 90.44% (123/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.07% (386/406)
100.00% (30/30)
 88.37% (228/258)
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
 79.11% (655/828)
 93.75% (30/32)
 70.06% (372/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
 15.70% (19/121)
 42.86% (3/7)
 17.07% (14/82)
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
 98.92% (183/185)
100.00% (9/9)
 98.57% (69/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
 31.59% (369/1168)
 78.95% (15/19)
 30.73% (216/703)
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.39% (310/787)
 44.12% (45/102)
 32.67% (380/1163)
src/spirv-tools/source/opt/types.h
 37.43% (67/179)
 36.49% (54/148)
 41.62% (72/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
 89.77% (193/215)
100.00% (9/9)
 88.59% (132/149)
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
 79.11% (125/158)
 87.50% (7/8)
 63.25% (74/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
 79.14% (239/302)
 91.18% (31/34)
 72.89% (121/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.27% (281/322)
 83.33% (10/12)
 90.23% (277/307)
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.34% (368/495)
 92.31% (12/13)
 71.59% (257/359)
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.10% (207/369)
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/4314)
  4.60% (8/174)
  5.45% (102/1871)
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
 55.32% (359/649)
100.00% (1/1)
 64.58% (350/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.37% (752/1960)
 72.55% (37/51)
 41.67% (625/1500)
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.33% (582/3358)
 10.00% (6/60)
 14.79% (438/2962)
src/spirv-tools/source/val/validate_function.cpp
 64.94% (213/328)
 66.67% (4/6)
 71.23% (151/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.99% (1331/2147)
 84.44% (38/45)
 60.88% (971/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
 35.66% (312/875)
 37.50% (6/16)
 46.36% (261/563)
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
 27.33% (785/2872)
 35.56% (16/45)
 31.15% (652/2093)
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
  7.55% (12/159)
 25.00% (1/4)
  6.90% (6/87)
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
 56.77% (713/1256)
 84.38% (27/32)
 54.63% (366/670)
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.42% (58/1312)
 10.53% (2/19)
  0.68% (6/885)
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.17% (454/905)
 61.90% (13/21)
 54.06% (353/653)
src/spirv-tools/source/val/validation_state.cpp
 37.82% (966/2554)
 74.66% (109/146)
 33.61% (730/2172)
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% (42229/92383)
 52.54% (3036/5779)
 42.50% (27275/64178)