[PATCH] D136385: Add support for MC/DC in LLVM Source-Based Code Coverage

Alan Phipps via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Oct 20 15:15:44 PDT 2022


alanphipps created this revision.
Herald added subscribers: Enna1, wenlei, hiraditya.
Herald added a project: All.
alanphipps requested review of this revision.
Herald added subscribers: llvm-commits, Sanitizers, cfe-commits, jdoerfert, MaskRay.
Herald added projects: clang, Sanitizers, LLVM.

Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D136385

Files:
  clang/include/clang/Basic/CodeGenOptions.def
  clang/include/clang/Driver/Options.td
  clang/lib/CodeGen/CGExprScalar.cpp
  clang/lib/CodeGen/CGStmt.cpp
  clang/lib/CodeGen/CodeGenFunction.cpp
  clang/lib/CodeGen/CodeGenFunction.h
  clang/lib/CodeGen/CodeGenPGO.cpp
  clang/lib/CodeGen/CodeGenPGO.h
  clang/lib/CodeGen/CoverageMappingGen.cpp
  clang/lib/CodeGen/CoverageMappingGen.h
  clang/lib/Driver/ToolChains/Clang.cpp
  clang/lib/Driver/ToolChains/Darwin.cpp
  clang/test/CoverageMapping/branch-constfolded.cpp
  clang/test/CoverageMapping/branch-mincounters.cpp
  clang/test/CoverageMapping/branch-templates.cpp
  clang/test/CoverageMapping/if.cpp
  clang/test/CoverageMapping/logical.cpp
  clang/test/CoverageMapping/mcdc-error-conditions.cpp
  clang/test/CoverageMapping/mcdc-error-nests.cpp
  clang/test/CoverageMapping/mcdc-logical-scalar-ids.cpp
  clang/test/CoverageMapping/mcdc-logical-stmt-ids-all.cpp
  clang/test/CoverageMapping/mcdc-logical-stmt-ids.cpp
  clang/test/Driver/darwin-ld.c
  clang/test/Profile/c-linkage-available_externally.c
  clang/test/Profile/c-mcdc-nested-ternary.c
  clang/test/Profile/c-mcdc.c
  compiler-rt/include/profile/InstrProfData.inc
  compiler-rt/lib/profile/InstrProfiling.c
  compiler-rt/lib/profile/InstrProfiling.h
  compiler-rt/lib/profile/InstrProfilingBuffer.c
  compiler-rt/lib/profile/InstrProfilingFile.c
  compiler-rt/lib/profile/InstrProfilingInternal.h
  compiler-rt/lib/profile/InstrProfilingMerge.c
  compiler-rt/lib/profile/InstrProfilingPlatformDarwin.c
  compiler-rt/lib/profile/InstrProfilingPlatformLinux.c
  compiler-rt/lib/profile/InstrProfilingPlatformOther.c
  compiler-rt/lib/profile/InstrProfilingPlatformWindows.c
  compiler-rt/lib/profile/InstrProfilingWriter.c
  compiler-rt/test/profile/ContinuousSyncMode/image-with-mcdc.c
  compiler-rt/test/profile/instrprof-write-buffer-internal.c
  llvm/include/llvm/IR/IntrinsicInst.h
  llvm/include/llvm/IR/Intrinsics.td
  llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h
  llvm/include/llvm/ProfileData/InstrProf.h
  llvm/include/llvm/ProfileData/InstrProfCorrelator.h
  llvm/include/llvm/ProfileData/InstrProfData.inc
  llvm/include/llvm/ProfileData/InstrProfReader.h
  llvm/include/llvm/Transforms/Instrumentation/InstrProfiling.h
  llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
  llvm/lib/IR/IntrinsicInst.cpp
  llvm/lib/ProfileData/Coverage/CoverageMapping.cpp
  llvm/lib/ProfileData/Coverage/CoverageMappingReader.cpp
  llvm/lib/ProfileData/Coverage/CoverageMappingWriter.cpp
  llvm/lib/ProfileData/InstrProf.cpp
  llvm/lib/ProfileData/InstrProfCorrelator.cpp
  llvm/lib/ProfileData/InstrProfReader.cpp
  llvm/lib/ProfileData/InstrProfWriter.cpp
  llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
  llvm/test/Transforms/PGOProfile/comdat_internal.ll
  llvm/test/tools/llvm-cov/Inputs/binary-formats.canonical.json
  llvm/test/tools/llvm-cov/Inputs/mcdc-const-folding.cpp
  llvm/test/tools/llvm-cov/Inputs/mcdc-const-folding.o32l
  llvm/test/tools/llvm-cov/Inputs/mcdc-const-folding.proftext
  llvm/test/tools/llvm-cov/Inputs/mcdc-const.cpp
  llvm/test/tools/llvm-cov/Inputs/mcdc-const.o32l
  llvm/test/tools/llvm-cov/Inputs/mcdc-const.proftext
  llvm/test/tools/llvm-cov/Inputs/mcdc-general-none.proftext
  llvm/test/tools/llvm-cov/Inputs/mcdc-general.cpp
  llvm/test/tools/llvm-cov/Inputs/mcdc-general.o32l
  llvm/test/tools/llvm-cov/Inputs/mcdc-general.proftext
  llvm/test/tools/llvm-cov/mcdc-const.test
  llvm/test/tools/llvm-cov/mcdc-export-json.test
  llvm/test/tools/llvm-cov/mcdc-general-none.test
  llvm/test/tools/llvm-cov/mcdc-general.test
  llvm/test/tools/llvm-profdata/Inputs/basic.profraw
  llvm/test/tools/llvm-profdata/Inputs/c-general.profraw
  llvm/test/tools/llvm-profdata/Inputs/compressed.profraw
  llvm/test/tools/llvm-profdata/Inputs/mcdc-1.proftext
  llvm/test/tools/llvm-profdata/Inputs/mcdc-2.proftext
  llvm/test/tools/llvm-profdata/Inputs/mcdc-3.proftext
  llvm/test/tools/llvm-profdata/Inputs/mcdc-4.proftext
  llvm/test/tools/llvm-profdata/Inputs/mcdc-err0.proftext
  llvm/test/tools/llvm-profdata/Inputs/mcdc-err1.proftext
  llvm/test/tools/llvm-profdata/binary-ids-padding.test
  llvm/test/tools/llvm-profdata/large-binary-id-size.test
  llvm/test/tools/llvm-profdata/malformed-not-space-for-another-header.test
  llvm/test/tools/llvm-profdata/malformed-num-counters-zero.test
  llvm/test/tools/llvm-profdata/malformed-ptr-to-counter-array.test
  llvm/test/tools/llvm-profdata/mcdc-bitmask.test
  llvm/test/tools/llvm-profdata/raw-32-bits-be.test
  llvm/test/tools/llvm-profdata/raw-32-bits-le.test
  llvm/test/tools/llvm-profdata/raw-64-bits-be.test
  llvm/test/tools/llvm-profdata/raw-64-bits-le.test
  llvm/test/tools/llvm-profdata/raw-two-profiles.test
  llvm/tools/llvm-cov/CodeCoverage.cpp
  llvm/tools/llvm-cov/CoverageExporterJson.cpp
  llvm/tools/llvm-cov/CoverageReport.cpp
  llvm/tools/llvm-cov/CoverageSummaryInfo.cpp
  llvm/tools/llvm-cov/CoverageSummaryInfo.h
  llvm/tools/llvm-cov/CoverageViewOptions.h
  llvm/tools/llvm-cov/SourceCoverageView.cpp
  llvm/tools/llvm-cov/SourceCoverageView.h
  llvm/tools/llvm-cov/SourceCoverageViewHTML.cpp
  llvm/tools/llvm-cov/SourceCoverageViewHTML.h
  llvm/tools/llvm-cov/SourceCoverageViewText.cpp
  llvm/tools/llvm-cov/SourceCoverageViewText.h
  llvm/unittests/ProfileData/CoverageMappingTest.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D136385.469371.patch
Type: text/x-patch
Size: 314010 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20221020/56186cc3/attachment-0001.bin>


More information about the llvm-commits mailing list