[PATCH] D28609: [lsan] Enable LSan for x86 Linux.

Vitaly Buka via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jan 17 10:34:13 PST 2017


vitalybuka added inline comments.


================
Comment at: lib/lsan/lsan_common.h:29
+#elif SANITIZER_LINUX && !SANITIZER_ANDROID && defined(__i386__)
+#define CAN_SANITIZE_LEAKS 1
 #else
----------------
Can you explain in the comment why?


================
Comment at: lib/sanitizer_common/sanitizer_linux.cc:1185
+  CHECK_EQ(0, (uptr)child_stack % 16);
+  child_stack = (char *)child_stack - 7 * sizeof(unsigned int);
+  ((unsigned int *)child_stack)[0] = (uptr)flags;
----------------
Could this be more readable with
struct Header {
  uptr flags;
  uptr ???;
  uptr fn;
  uptr args;  
  ....
};
Header* header = stattic_cast(Header*)child_stack - 1;
header = {....}
or just 
header.flags = flags
...



Repository:
  rL LLVM

https://reviews.llvm.org/D28609





More information about the llvm-commits mailing list