From 4239489b3c68d9e1c02de97b67bf8cc3b3d607ac Mon Sep 17 00:00:00 2001 From: Mike Kruskal Date: Tue, 21 Jan 2025 19:20:08 -0800 Subject: [PATCH] Fix TSAN macro for -std=c99 #test-continuous PiperOrigin-RevId: 718168053 --- upb/port/def.inc | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/upb/port/def.inc b/upb/port/def.inc index 4c547ac002..ad0aea00ad 100644 --- a/upb/port/def.inc +++ b/upb/port/def.inc @@ -374,12 +374,13 @@ void __asan_unpoison_memory_region(void const volatile *addr, size_t size); #define UPB_TSAN_CHECK_PUBLISHED(ptr) \ UPB_ASSERT((ptr)->upb_tsan_safely_published == 0x5AFE) #define UPB_TSAN_PUBLISH 1 -#define UPB_TSAN_CHECK_READ(member) asm volatile("" ::"r"(*(char *)&(member))) +#define UPB_TSAN_CHECK_READ(member) \ + __asm__ volatile("" ::"r"(*(char *)&(member))) #define UPB_TSAN_CHECK_WRITE(member) \ do { \ char *write_upb_tsan_detect_race_ptr = (char *)&(member); \ char write_upb_tsan_detect_race = *write_upb_tsan_detect_race_ptr; \ - asm volatile("" : "+r"(write_upb_tsan_detect_race)); \ + __asm__ volatile("" : "+r"(write_upb_tsan_detect_race)); \ *write_upb_tsan_detect_race_ptr = write_upb_tsan_detect_race; \ } while (false) #else