diff options
| author | Ajax <commial@gmail.com> | 2018-05-18 16:35:15 +0200 |
|---|---|---|
| committer | Ajax <commial@gmail.com> | 2018-05-18 16:35:15 +0200 |
| commit | dfa6a23894f6d6bf37336490db214b557bc5a50c (patch) | |
| tree | e36581da44c8db2f27e8323ce7862d1d9f3b90a1 | |
| parent | f45613e84c4de409342d1b971e7ce0234173ffc4 (diff) | |
| download | miasm-dfa6a23894f6d6bf37336490db214b557bc5a50c.tar.gz miasm-dfa6a23894f6d6bf37336490db214b557bc5a50c.zip | |
LLVM: check all CPU exceptions after instruction execution
| -rw-r--r-- | miasm2/jitter/llvmconvert.py | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/miasm2/jitter/llvmconvert.py b/miasm2/jitter/llvmconvert.py index 2b0f2702..dd3afed6 100644 --- a/miasm2/jitter/llvmconvert.py +++ b/miasm2/jitter/llvmconvert.py @@ -1056,6 +1056,9 @@ class LLVMFunction(): self.builder.call(fc_ptr, [self.local_vars["vmmngr"]]) self.check_memory_exception(next_instr, restricted_exception=False) + if attrib.set_exception: + self.check_cpu_exception(next_instr, restricted_exception=False) + if attrib.mem_read | attrib.mem_write: fc_ptr = self.mod.get_global("reset_memory_access") self.builder.call(fc_ptr, [self.local_vars["vmmngr"]]) |