Skip to content

Commit 35cda47

Browse files
Merge pull request #73587 from thetruestblue/add-sanitizer-coverage-options
Add valid arguments to -sanitize-coverage: pc-table and inline-8bit-counter.
2 parents 8c9d545 + 3789b31 commit 35cda47

File tree

2 files changed

+9
-1
lines changed

2 files changed

+9
-1
lines changed

lib/Option/SanitizerOptions.cpp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,12 @@ llvm::SanitizerCoverageOptions swift::parseSanitizerCoverageArgValue(
9292
} else if (StringRef(A->getValue(i)) == "trace-pc-guard") {
9393
opts.TracePCGuard = true;
9494
continue;
95+
} else if (StringRef(A->getValue(i)) == "inline-8bit-counters") {
96+
opts.Inline8bitCounters = true;
97+
continue;
98+
} else if (StringRef(A->getValue(i)) == "pc-table") {
99+
opts.PCTable = true;
100+
continue;
95101
}
96102

97103
// Argument is not supported.

test/Driver/sanitize_coverage.swift

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
// REQUIRES: asan_runtime
66

77
// Try some options
8-
// RUN: %swiftc_driver -driver-print-jobs -sanitize-coverage=edge,indirect-calls,trace-bb,trace-cmp,8bit-counters -sanitize=address %s | %FileCheck -check-prefix=SANCOV_EDGE_WITH_OPTIONS %s
8+
// RUN: %swiftc_driver -driver-print-jobs -sanitize-coverage=edge,indirect-calls,trace-bb,trace-cmp,8bit-counters,inline-8bit-counters,pc-table -sanitize=address %s | %FileCheck -check-prefix=SANCOV_EDGE_WITH_OPTIONS %s
99

1010
// Invalid command line arguments
1111
// RUN: not %swiftc_driver -driver-print-jobs -sanitize-coverage=func %s 2>&1 | %FileCheck -check-prefix=SANCOV_WITHOUT_XSAN %s
@@ -16,6 +16,8 @@
1616
// RUN: not %swiftc_driver -driver-print-jobs -sanitize=address -sanitize-coverage=trace-bb %s 2>&1 | %FileCheck -check-prefix=SANCOV_MISSING_ARG %s
1717
// RUN: not %swiftc_driver -driver-print-jobs -sanitize=address -sanitize-coverage=trace-cmp %s 2>&1 | %FileCheck -check-prefix=SANCOV_MISSING_ARG %s
1818
// RUN: not %swiftc_driver -driver-print-jobs -sanitize=address -sanitize-coverage=8bit-counters %s 2>&1 | %FileCheck -check-prefix=SANCOV_MISSING_ARG %s
19+
// RUN: not %swiftc_driver -driver-print-jobs -sanitize=address -sanitize-coverage=inline-8bit-counters %s 2>&1 | %FileCheck -check-prefix=SANCOV_MISSING_ARG %s
20+
// RUN: not %swiftc_driver -driver-print-jobs -sanitize=address -sanitize-coverage=pc-table %s 2>&1 | %FileCheck -check-prefix=SANCOV_MISSING_ARG %s
1921

2022
// SANCOV_FUNC: swift
2123
// SANCOV_FUNC-DAG: -sanitize-coverage=func

0 commit comments

Comments
 (0)