| ... | ... | @@ -27,9 +27,8 @@ pub fn buildTsan(comp: *Compilation, prog_node: std.Progress.Node) BuildError!vo |
| 27 | 27 | |
| 28 | 28 | const target = comp.getTarget(); |
| 29 | 29 | const root_name = switch (target.os.tag) { |
| 30 | | // On Apple platforms, we use the same name as LLVM and Apple so that we correctly |
| 31 | | // mark the images as instrumented when traversing them when TSAN dylib is |
| 32 | | // initialized. |
| 30 | // On Apple platforms, we use the same name as LLVM because the |
| 31 | // TSAN library implementation hard-codes a check for these names. |
| 33 | 32 | .macos => "clang_rt.tsan_osx_dynamic", |
| 34 | 33 | .ios => switch (target.abi) { |
| 35 | 34 | .simulator => "clang_rt.tsan_iossim_dynamic", |
| ... | ... | @@ -290,7 +289,7 @@ pub fn buildTsan(comp: *Compilation, prog_node: std.Progress.Node) BuildError!vo |
| 290 | 289 | try std.fmt.allocPrintZ(arena, "@rpath/{s}", .{basename}) |
| 291 | 290 | else |
| 292 | 291 | null; |
| 293 | | // This is temp conditional on resolving https://github.com/llvm/llvm-project/issues/97627 upstream. |
| 292 | // Workaround for https://github.com/llvm/llvm-project/issues/97627 |
| 294 | 293 | const headerpad_size: ?u32 = if (target.isDarwin()) 32 else null; |
| 295 | 294 | const sub_compilation = Compilation.create(comp.gpa, arena, .{ |
| 296 | 295 | .local_cache_directory = comp.global_cache_directory, |