Index: syzygy/instrument/transforms/asan_transform.cc |
diff --git a/syzygy/instrument/transforms/asan_transform.cc b/syzygy/instrument/transforms/asan_transform.cc |
index d777afe71ab3361571472b088f67e65e1e259f06..4ea153b1ef0faff70745901f9eb5ad3a32112ab6 100644 |
--- a/syzygy/instrument/transforms/asan_transform.cc |
+++ b/syzygy/instrument/transforms/asan_transform.cc |
@@ -153,8 +153,9 @@ bool IsInstrumentable(const _Operand& op) { |
bool IsSpecialInstruction(uint16_t opcode) { |
switch (opcode) { |
case I_CMPS: |
- case I_STOS: |
+ case I_LODS: |
case I_MOVS: |
+ case I_STOS: |
return true; |
default: |
@@ -632,7 +633,7 @@ bool ImportAsanCheckAccessHooks( |
} |
// Import the hooks for string/prefix memory accesses. |
- const _InstructionType strings[] = { I_CMPS, I_MOVS, I_STOS }; |
+ const _InstructionType strings[] = {I_CMPS, I_LODS, I_MOVS, I_STOS}; |
int strings_length = sizeof(strings)/sizeof(_InstructionType); |
for (int access_size = 1; access_size <= 4; access_size *= 2) { |