Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(35)

Unified Diff: src/IceASanInstrumentation.h

Issue 2183643002: Subzero: Elide checks of known valid accesses of locals (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: Added test Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | src/IceASanInstrumentation.cpp » ('j') | tests_lit/asan_tests/instrumentload.ll » ('J')
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/IceASanInstrumentation.h
diff --git a/src/IceASanInstrumentation.h b/src/IceASanInstrumentation.h
index eb75b207f5f3284518fafd2b6141d5869148e928..ef212f5b6713010c16331db28f6e252f623adc52 100644
--- a/src/IceASanInstrumentation.h
+++ b/src/IceASanInstrumentation.h
@@ -25,6 +25,8 @@
namespace Ice {
+using VarSizeMap = std::unordered_map<Operand *, SizeT>;
+
class ASanInstrumentation : public Instrumentation {
ASanInstrumentation() = delete;
ASanInstrumentation(const ASanInstrumentation &) = delete;
@@ -32,6 +34,7 @@ class ASanInstrumentation : public Instrumentation {
public:
ASanInstrumentation(GlobalContext *Ctx) : Instrumentation(Ctx), RzNum(0) {
+ ICE_TLS_INIT_FIELD(LocalVars);
ICE_TLS_INIT_FIELD(LocalDtors);
}
void instrumentGlobals(VariableDeclarationList &Globals) override;
@@ -48,6 +51,7 @@ private:
Constant *AccessFunc);
void instrumentStart(Cfg *Func) override;
void finishFunc(Cfg *Func) override;
+ ICE_TLS_DECLARE_FIELD(VarSizeMap *, LocalVars);
ICE_TLS_DECLARE_FIELD(std::vector<InstCall *> *, LocalDtors);
std::atomic<uint32_t> RzNum;
bool DidProcessGlobals = false;
« no previous file with comments | « no previous file | src/IceASanInstrumentation.cpp » ('j') | tests_lit/asan_tests/instrumentload.ll » ('J')

Powered by Google App Engine
This is Rietveld 408576698