about summary refs log tree commit diff stats
path: root/arch/x86.py
diff options
context:
space:
mode:
authorTheofilos Augoustis <theofilos.augoustis@gmail.com>2023-10-11 16:21:21 +0200
committerTheofilos Augoustis <theofilos.augoustis@gmail.com>2023-10-11 16:21:21 +0200
commit69c55d68d68c00007afa1af76a1d06f74ee72fe6 (patch)
tree991b92b4a5ba447b9fb5f77db4377bd9d14fbdf9 /arch/x86.py
parentb9c08cadc158b18d7cab14a830a9e11f590ec7bd (diff)
downloadfocaccia-69c55d68d68c00007afa1af76a1d06f74ee72fe6.tar.gz
focaccia-69c55d68d68c00007afa1af76a1d06f74ee72fe6.zip
Refactor file structure
- main.py: focaccia user-interface

- snapshot.py: state trace snapshots handling

- compare.py: snapshot comparison algorithms

- run.py: native execution tracer

- arancini.py: Arancini log handling

- arch/: per-architecture abstractions

Co-authored-by: Theofilos Augoustis <theofilos.augoustis@gmail.com>
Co-authored-by: Nicola Crivellin <nicola.crivellin98@gmail.com>
Diffstat (limited to 'arch/x86.py')
-rw-r--r--arch/x86.py33
1 files changed, 33 insertions, 0 deletions
diff --git a/arch/x86.py b/arch/x86.py
new file mode 100644
index 0000000..0f60457
--- /dev/null
+++ b/arch/x86.py
@@ -0,0 +1,33 @@
+"""Architexture-specific configuration."""
+
+from .arch import Arch
+
+# Names of registers in the architexture
+regnames = ['PC',
+            'RAX',
+            'RBX',
+            'RCX',
+            'RDX',
+            'RSI',
+            'RDI',
+            'RBP',
+            'RSP',
+            'R8',
+            'R9',
+            'R10',
+            'R11',
+            'R12',
+            'R13',
+            'R14',
+            'R15',
+            'RFLAGS',
+            'flag ZF',
+            'flag CF',
+            'flag OF',
+            'flag SF',
+            'flag PF',
+            'flag DF']
+
+class ArchX86(Arch):
+    def __init__(self):
+        super().__init__(regnames)