You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We only need racefuncentry/exit if the function also contains instrumented memory accesses and/or other calls (racefuncentry/exit are used to restore stack traces, if there is nothing that will require stack traces, then no point in these calls as well).
This was done in LLVM from day one: https://github.com/llvm-mirror/llvm/blob/master/lib/Transforms/Instrumentation/ThreadSanitizer.cpp#L471
and I was under impression that we are doing this in gc too. But it seems that we don't. A good example is internal/bytealg.countGenericString:
We only need
racefuncentry/exit
if the function also contains instrumented memory accesses and/or other calls (racefuncentry/exit
are used to restore stack traces, if there is nothing that will require stack traces, then no point in these calls as well).This was done in LLVM from day one:
https://github.com/llvm-mirror/llvm/blob/master/lib/Transforms/Instrumentation/ThreadSanitizer.cpp#L471
and I was under impression that we are doing this in gc too. But it seems that we don't. A good example is
internal/bytealg.countGenericString
:@mdempsky @josharian
The text was updated successfully, but these errors were encountered: