Index: syzygy/agent/asan/memory_interceptors.h |
diff --git a/syzygy/agent/asan/memory_interceptors.h b/syzygy/agent/asan/memory_interceptors.h |
index 51f6bbd141efbf49afee4a14c2d1ebe0ae04660a..f85b59c77d2abf24d69d24c3a806e066ebe512b6 100644 |
--- a/syzygy/agent/asan/memory_interceptors.h |
+++ b/syzygy/agent/asan/memory_interceptors.h |
@@ -98,25 +98,31 @@ extern const size_t kNumMemoryAccessorVariants; |
F(16, write_access, AsanWriteAccess) \ |
F(32, write_access, AsanWriteAccess) |
-#define ASAN_STRING_INTERCEPT_FUNCTIONS(F) \ |
- F(cmps, _repz_, ecx, AsanReadAccess, AsanReadAccess, 4, 1) \ |
- F(cmps, _repz_, ecx, AsanReadAccess, AsanReadAccess, 2, 1) \ |
- F(cmps, _repz_, ecx, AsanReadAccess, AsanReadAccess, 1, 1) \ |
- F(cmps, _, 1, AsanReadAccess, AsanReadAccess, 4, 1) \ |
- F(cmps, _, 1, AsanReadAccess, AsanReadAccess, 2, 1) \ |
- F(cmps, _, 1, AsanReadAccess, AsanReadAccess, 1, 1) \ |
- F(movs, _repz_, ecx, AsanWriteAccess, AsanReadAccess, 4, 0) \ |
- F(movs, _repz_, ecx, AsanWriteAccess, AsanReadAccess, 2, 0) \ |
- F(movs, _repz_, ecx, AsanWriteAccess, AsanReadAccess, 1, 0) \ |
- F(movs, _, 1, AsanWriteAccess, AsanReadAccess, 4, 0) \ |
- F(movs, _, 1, AsanWriteAccess, AsanReadAccess, 2, 0) \ |
- F(movs, _, 1, AsanWriteAccess, AsanReadAccess, 1, 0) \ |
- F(stos, _repz_, ecx, AsanWriteAccess, AsanUnknownAccess, 4, 0) \ |
- F(stos, _repz_, ecx, AsanWriteAccess, AsanUnknownAccess, 2, 0) \ |
- F(stos, _repz_, ecx, AsanWriteAccess, AsanUnknownAccess, 1, 0) \ |
- F(stos, _, 1, AsanWriteAccess, AsanUnknownAccess, 4, 0) \ |
- F(stos, _, 1, AsanWriteAccess, AsanUnknownAccess, 2, 0) \ |
- F(stos, _, 1, AsanWriteAccess, AsanUnknownAccess, 1, 0) |
+#define ASAN_STRING_INTERCEPT_FUNCTIONS(F) \ |
+ F(cmps, _repz_, ecx, AsanReadAccess, AsanReadAccess, 4, 1) \ |
+ F(cmps, _repz_, ecx, AsanReadAccess, AsanReadAccess, 2, 1) \ |
+ F(cmps, _repz_, ecx, AsanReadAccess, AsanReadAccess, 1, 1) \ |
+ F(cmps, _, 1, AsanReadAccess, AsanReadAccess, 4, 1) \ |
+ F(cmps, _, 1, AsanReadAccess, AsanReadAccess, 2, 1) \ |
+ F(cmps, _, 1, AsanReadAccess, AsanReadAccess, 1, 1) \ |
+ F(lods, _repz_, ecx, AsanWriteAccess, AsanReadAccess, 4, 0) \ |
+ F(lods, _repz_, ecx, AsanWriteAccess, AsanReadAccess, 2, 0) \ |
+ F(lods, _repz_, ecx, AsanWriteAccess, AsanReadAccess, 1, 0) \ |
+ F(lods, _, 1, AsanWriteAccess, AsanReadAccess, 4, 0) \ |
+ F(lods, _, 1, AsanWriteAccess, AsanReadAccess, 2, 0) \ |
+ F(lods, _, 1, AsanWriteAccess, AsanReadAccess, 1, 0) \ |
+ F(movs, _repz_, ecx, AsanWriteAccess, AsanReadAccess, 4, 0) \ |
+ F(movs, _repz_, ecx, AsanWriteAccess, AsanReadAccess, 2, 0) \ |
+ F(movs, _repz_, ecx, AsanWriteAccess, AsanReadAccess, 1, 0) \ |
+ F(movs, _, 1, AsanWriteAccess, AsanReadAccess, 4, 0) \ |
+ F(movs, _, 1, AsanWriteAccess, AsanReadAccess, 2, 0) \ |
+ F(movs, _, 1, AsanWriteAccess, AsanReadAccess, 1, 0) \ |
+ F(stos, _repz_, ecx, AsanWriteAccess, AsanUnknownAccess, 4, 0) \ |
+ F(stos, _repz_, ecx, AsanWriteAccess, AsanUnknownAccess, 2, 0) \ |
+ F(stos, _repz_, ecx, AsanWriteAccess, AsanUnknownAccess, 1, 0) \ |
+ F(stos, _, 1, AsanWriteAccess, AsanUnknownAccess, 4, 0) \ |
+ F(stos, _, 1, AsanWriteAccess, AsanUnknownAccess, 2, 0) \ |
+ F(stos, _, 1, AsanWriteAccess, AsanUnknownAccess, 1, 0) |
} // namespace asan |
} // namespace agent |