aboutsummaryrefslogtreecommitdiffstats
path: root/lib/tsan/rtl/tsan_interface_inl.h
diff options
context:
space:
mode:
Diffstat (limited to 'lib/tsan/rtl/tsan_interface_inl.h')
-rw-r--r--lib/tsan/rtl/tsan_interface_inl.h10
1 files changed, 9 insertions, 1 deletions
diff --git a/lib/tsan/rtl/tsan_interface_inl.h b/lib/tsan/rtl/tsan_interface_inl.h
index bf4a1658625c..f955ddf99247 100644
--- a/lib/tsan/rtl/tsan_interface_inl.h
+++ b/lib/tsan/rtl/tsan_interface_inl.h
@@ -15,7 +15,7 @@
#define CALLERPC ((uptr)__builtin_return_address(0))
-using namespace __tsan; // NOLINT
+using namespace __tsan;
void __tsan_read1(void *addr) {
MemoryRead(cur_thread(), CALLERPC, (uptr)addr, kSizeLog1);
@@ -122,3 +122,11 @@ void __tsan_read_range(void *addr, uptr size) {
void __tsan_write_range(void *addr, uptr size) {
MemoryAccessRange(cur_thread(), CALLERPC, (uptr)addr, size, true);
}
+
+void __tsan_read_range_pc(void *addr, uptr size, void *pc) {
+ MemoryAccessRange(cur_thread(), (uptr)pc, (uptr)addr, size, false);
+}
+
+void __tsan_write_range_pc(void *addr, uptr size, void *pc) {
+ MemoryAccessRange(cur_thread(), (uptr)pc, (uptr)addr, size, true);
+}