diff options
| author | Theofilos Augoustis <theofilos.augoustis@gmail.com> | 2025-06-20 11:53:29 +0200 |
|---|---|---|
| committer | Theofilos Augoustis <theofilos.augoustis@gmail.com> | 2025-06-20 11:53:29 +0200 |
| commit | 7c101de1dfc53e31cefeb9855b99ff6946633f4a (patch) | |
| tree | fd7c5f2a0f871c2ed48823dbdbf186a8f83de1c5 | |
| parent | 2a15c60712b326b541d42ac48f372f97023547e7 (diff) | |
| download | miasm-ta/x86-adcx.tar.gz miasm-ta/x86-adcx.zip | |
Add support for ADCX and ADOX instructions for x86 ta/x86-adcx
| -rw-r--r-- | miasm/arch/x86/sem.py | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/miasm/arch/x86/sem.py b/miasm/arch/x86/sem.py index 81e45e7e..cc3110a0 100644 --- a/miasm/arch/x86/sem.py +++ b/miasm/arch/x86/sem.py @@ -485,6 +485,23 @@ def xadd(_, instr, dst, src): e.append(m2_expr.ExprAssign(dst, result)) return e, [] +def adcx(_, instr, dst, src): + e = [] + + result = dst + src + + e += update_flag_add_cf(src, dst, result) + e.append(m2_expr.ExprAssign(dst, result)) + return e, [] + +def adox(_, instr, dst, src): + e = [] + + result = dst + src + + e += update_flag_add_of(src, dst, result) + e.append(m2_expr.ExprAssign(dst, result)) + return e, [] def adc(_, instr, dst, src): e = [] @@ -5148,6 +5165,8 @@ mnemo_func = {'mov': mov, 'add': add, 'xadd': xadd, 'adc': adc, + 'adcx': adcx, + 'adox': adox, 'sub': sub, 'sbb': sbb, 'neg': neg, |