mirror of
https://git.FreeBSD.org/src.git
synced 2024-11-28 08:02:54 +00:00
Update compiler-rt to release_38 branch r261369.
This commit is contained in:
commit
ac1ec6334e
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/projects/clang380-import/; revision=295860
@ -1408,12 +1408,12 @@ int OnExit() {
|
||||
__msan_unpoison(ptr, size)
|
||||
#define COMMON_INTERCEPTOR_ENTER(ctx, func, ...) \
|
||||
if (msan_init_is_running) return REAL(func)(__VA_ARGS__); \
|
||||
ENSURE_MSAN_INITED(); \
|
||||
MSanInterceptorContext msan_ctx = {IsInInterceptorScope()}; \
|
||||
ctx = (void *)&msan_ctx; \
|
||||
(void)ctx; \
|
||||
InterceptorScope interceptor_scope; \
|
||||
__msan_unpoison(__errno_location(), sizeof(int)); /* NOLINT */ \
|
||||
ENSURE_MSAN_INITED();
|
||||
__msan_unpoison(__errno_location(), sizeof(int)); /* NOLINT */
|
||||
#define COMMON_INTERCEPTOR_DIR_ACQUIRE(ctx, path) \
|
||||
do { \
|
||||
} while (false)
|
||||
|
@ -222,6 +222,11 @@ uptr ThreadDescriptorSize() {
|
||||
char *end;
|
||||
int minor = internal_simple_strtoll(buf + 8, &end, 10);
|
||||
if (end != buf + 8 && (*end == '\0' || *end == '.')) {
|
||||
int patch = 0;
|
||||
if (*end == '.')
|
||||
// strtoll will return 0 if no valid conversion could be performed
|
||||
patch = internal_simple_strtoll(end + 1, nullptr, 10);
|
||||
|
||||
/* sizeof(struct pthread) values from various glibc versions. */
|
||||
if (SANITIZER_X32)
|
||||
val = 1728; // Assume only one particular version for x32.
|
||||
@ -235,9 +240,9 @@ uptr ThreadDescriptorSize() {
|
||||
val = FIRST_32_SECOND_64(1136, 1712);
|
||||
else if (minor == 10)
|
||||
val = FIRST_32_SECOND_64(1168, 1776);
|
||||
else if (minor <= 12)
|
||||
else if (minor == 11 || (minor == 12 && patch == 1))
|
||||
val = FIRST_32_SECOND_64(1168, 2288);
|
||||
else if (minor == 13)
|
||||
else if (minor <= 13)
|
||||
val = FIRST_32_SECOND_64(1168, 2304);
|
||||
else
|
||||
val = FIRST_32_SECOND_64(1216, 2304);
|
||||
|
@ -159,8 +159,8 @@ void PrintMatchedSuppressions() {
|
||||
Printf("ThreadSanitizer: Matched %d suppressions (pid=%d):\n", hit_count,
|
||||
(int)internal_getpid());
|
||||
for (uptr i = 0; i < matched.size(); i++) {
|
||||
Printf("%d %s:%s\n", matched[i]->hit_count, matched[i]->type,
|
||||
matched[i]->templ);
|
||||
Printf("%d %s:%s\n", atomic_load_relaxed(&matched[i]->hit_count),
|
||||
matched[i]->type, matched[i]->templ);
|
||||
}
|
||||
}
|
||||
} // namespace __tsan
|
||||
|
Loading…
Reference in New Issue
Block a user