[PATCH] D22098: [esan] Add __esan_report for mid-run data
Mike Aizatsky via llvm-commits
llvm-commits at lists.llvm.org
Thu Jul 7 12:57:04 PDT 2016
aizatsky requested changes to this revision.
This revision now requires changes to proceed.
================
Comment at: include/sanitizer/esan_interface.h:26
@@ +25,3 @@
+// data for that point in the run be reported from the tool.
+void __esan_report();
+
----------------
do you want this to be weak so that host program could be compiled without esan as well?
Or do you plan to have ifdefs in the host?
================
Comment at: lib/esan/esan.cpp:236
@@ +235,3 @@
+ } else if (__esan_which_tool == ESAN_WorkingSet) {
+ return reportWorkingSet();
+ }
----------------
Do you think it makes sense to have classes with virtual methods now?
All these functions perform tool-based dispatch.
================
Comment at: lib/esan/working_set.cpp:121
@@ -120,2 +120,3 @@
// This routine will word-align ShadowStart and ShadowEnd prior to scanning.
+// It does *not* clear for BitIdx==TotalWorkingSetBitIdx.
static u32 countAndClearShadowValues(u32 BitIdx, uptr ShadowStart,
----------------
can you explain why is this a desired behavior? It is not clear to me :)
Maybe making it caller's responsibility is better?
countAndClearShadowValues(u32 BitIdx, uptr ShadowStart,
uptr ShadowEnd, bool ClearBits)
http://reviews.llvm.org/D22098
More information about the llvm-commits
mailing list