Loading rust/coverage.go +1 −12 Original line number Diff line number Diff line Loading @@ -57,18 +57,7 @@ func (cov *coverage) flags(ctx ModuleContext, flags Flags, deps PathDeps) (Flags flags.RustFlags = append(flags.RustFlags, "-Z instrument-coverage", "-g") flags.LinkFlags = append(flags.LinkFlags, profileInstrFlag, "-g", coverage.OutputFile().Path().String(), "-Wl,--wrap,open", // Upstream LLVM change 6d2d3bd0a6 made // -z,start-stop-gc the default. It drops metadata // sections like __llvm_prf_data unless they are marked // SHF_GNU_RETAIN. https://reviews.llvm.org/D97448 // marks generated sections, including __llvm_prf_data // as SHF_GNU_RETAIN. However this change is not in // the Rust toolchain. Since we link Rust libs with // new lld, we should use nostart-stop-gc until the // Rust toolchain updates past D97448. "-Wl,-z,nostart-stop-gc", ) profileInstrFlag, "-g", coverage.OutputFile().Path().String(), "-Wl,--wrap,open") deps.StaticLibs = append(deps.StaticLibs, coverage.OutputFile().Path()) } Loading Loading
rust/coverage.go +1 −12 Original line number Diff line number Diff line Loading @@ -57,18 +57,7 @@ func (cov *coverage) flags(ctx ModuleContext, flags Flags, deps PathDeps) (Flags flags.RustFlags = append(flags.RustFlags, "-Z instrument-coverage", "-g") flags.LinkFlags = append(flags.LinkFlags, profileInstrFlag, "-g", coverage.OutputFile().Path().String(), "-Wl,--wrap,open", // Upstream LLVM change 6d2d3bd0a6 made // -z,start-stop-gc the default. It drops metadata // sections like __llvm_prf_data unless they are marked // SHF_GNU_RETAIN. https://reviews.llvm.org/D97448 // marks generated sections, including __llvm_prf_data // as SHF_GNU_RETAIN. However this change is not in // the Rust toolchain. Since we link Rust libs with // new lld, we should use nostart-stop-gc until the // Rust toolchain updates past D97448. "-Wl,-z,nostart-stop-gc", ) profileInstrFlag, "-g", coverage.OutputFile().Path().String(), "-Wl,--wrap,open") deps.StaticLibs = append(deps.StaticLibs, coverage.OutputFile().Path()) } Loading