authorgravatar for 19855629+SuperAuguste@users.noreply.github.comSuperAuguste <19855629+SuperAuguste@users.noreply.github.com> 2025-04-06 20:45:48-04:00
committergravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2025-04-07 12:06:26+02:00
log60922dbf345d52be26c5981a168c91c8cf7a7fa1
tree7f8b65a67f7861c312c265ae84e58852a718bdf5
parentb2feb0d57582b7a4ae5e760e408268fa575872cb
signaturebadge-check Signed by SSH key SHA256:7B/LJ7bpR1eX8aCXSr4mtd5M45VMPKcx9zY8e95b5QM

Remove overzealous LLVM anti-instrumentation attributes


1 files changed, 4 insertions(+), 2 deletions(-)

src/codegen/llvm.zig+4-2
...@@ -1472,8 +1472,10 @@ pub const Object = struct {...@@ -1472,8 +1472,10 @@ pub const Object = struct {
1472 _ = try attributes.removeFnAttr(.sanitize_thread);1472 _ = try attributes.removeFnAttr(.sanitize_thread);
1473 }1473 }
1474 const is_naked = fn_info.cc == .naked;1474 const is_naked = fn_info.cc == .naked;
1475 if (owner_mod.fuzz and !func_analysis.disable_instrumentation and !is_naked) {1475 if (!func_analysis.disable_instrumentation and !is_naked) {
1476 try attributes.addFnAttr(.optforfuzzing, &o.builder);1476 if (owner_mod.fuzz) {
1477 try attributes.addFnAttr(.optforfuzzing, &o.builder);
1478 }
1477 _ = try attributes.removeFnAttr(.skipprofile);1479 _ = try attributes.removeFnAttr(.skipprofile);
1478 _ = try attributes.removeFnAttr(.nosanitize_coverage);1480 _ = try attributes.removeFnAttr(.nosanitize_coverage);
1479 } else {1481 } else {