[HWASAN] Modified __hwasan::Thread::unique_id_ to be u32 instead of u64.
authorKirill Stoimenov <kstoimenov@google.com>
Thu, 1 Dec 2022 00:18:49 +0000 (00:18 +0000)
committerKirill Stoimenov <kstoimenov@google.com>
Thu, 1 Dec 2022 00:44:22 +0000 (00:44 +0000)
This is needed for LSAN integration work. LSAN uses context to store thread_id << 32 + stack_id. In order to fit both we would need thread_id to be 32 bit.

Reviewed By: vitalybuka

Differential Revision: https://reviews.llvm.org/D139060

compiler-rt/lib/hwasan/hwasan_thread.h

index 3db7c1a..296fa8f 100644 (file)
@@ -61,7 +61,7 @@ class Thread {
   void DisableTagging() { tagging_disabled_++; }
   void EnableTagging() { tagging_disabled_--; }
 
-  u64 unique_id() const { return unique_id_; }
+  u32 unique_id() const { return unique_id_; }
   void Announce() {
     if (announced_) return;
     announced_ = true;
@@ -89,7 +89,7 @@ class Thread {
   HeapAllocationsRingBuffer *heap_allocations_;
   StackAllocationsRingBuffer *stack_allocations_;
 
-  u64 unique_id_;  // counting from zero.
+  u32 unique_id_;  // counting from zero.
 
   u32 tagging_disabled_;  // if non-zero, malloc uses zero tag in this thread.