1; RUN: opt < %s -sancov -sanitizer-coverage-level=1 -sanitizer-coverage-trace-pc-guard -sanitizer-coverage-inline-8bit-counters -S -enable-new-pm=0 | FileCheck %s
2; RUN: opt < %s -passes='module(sancov-module)' -sanitizer-coverage-level=1 -sanitizer-coverage-trace-pc-guard -sanitizer-coverage-inline-8bit-counters -S | FileCheck %s
3
4; Module ctors should have stable names across modules, not something like
5; @sancov.module_ctor.3 that may cause duplicate ctors after linked together.
6
7; CHECK: define internal void @sancov.module_ctor_trace_pc_guard() #[[#]] comdat {
8; CHECK: define internal void @sancov.module_ctor_8bit_counters() #[[#]] comdat {
9
10target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
11target triple = "x86_64-unknown-linux-gnu"
12define void @foo() {
13  ret void
14}
15