- Avoid unnecessary frame & tag push/pops if memory access is ignored
- Rename function and add comment to make it clearer what the code does
- Make helper functions static and move inside #if !SANITIZER_GO
Details
Details
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
Comment Actions
This the follow-up I promised here:
https://reviews.llvm.org/D146264#4202953
there is no space the shadow cells [...] for the uptr-sized tag
Is this still true with the new runtime? @dvyukov
The call that actually models the memory access always uses CALLERPC. Is this how it should be? @kubamracek
MemoryAccess(thr, tsan_caller_pc, (uptr)addr, 1, typ);
Here is the original code before my modifications:
https://reviews.llvm.org/D32360
Comment Actions
Is this still true with the new runtime?
It's even true-er :)
The shadow was shrunk from 8 bytes to 4 bytes.
Comment Actions
The call that actually models the memory access always uses CALLERPC. Is this how it should be?
Answering my own question: there is a test Darwin/external.cpp checking this, so I am assuming yes.