about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorAjax <commial@gmail.com>2016-12-22 18:17:07 +0100
committerAjax <commial@gmail.com>2017-01-04 17:14:55 +0100
commit424e94a769523f3c3ba4a26ac51e9443fc9e99e3 (patch)
tree42c70772cf46633924720b9d3c24279b9d350145
parent1d3640b367cdd6ef604b78f37f947f266ba7a363 (diff)
downloadmiasm-424e94a769523f3c3ba4a26ac51e9443fc9e99e3.tar.gz
miasm-424e94a769523f3c3ba4a26ac51e9443fc9e99e3.zip
Homogenize x86_bsf/r API with rcl/rcr_rez_op API
-rw-r--r--miasm2/ir/translators/C.py6
-rw-r--r--miasm2/jitter/vm_mngr.c4
2 files changed, 5 insertions, 5 deletions
diff --git a/miasm2/ir/translators/C.py b/miasm2/ir/translators/C.py
index 57859f9c..c7913ea8 100644
--- a/miasm2/ir/translators/C.py
+++ b/miasm2/ir/translators/C.py
@@ -47,9 +47,9 @@ class TranslatorC(Translator):
                 return "parity(%s&0x%x)" % (self.from_expr(expr.args[0]),
                                             size2mask(expr.args[0].size))
             elif expr.op in ['bsr', 'bsf']:
-                return "x86_%s(%s, 0x%x)" % (expr.op,
-                                             self.from_expr(expr.args[0]),
-                                             expr.args[0].size)
+                return "x86_%s(0x%x, %s)" % (expr.op,
+                                             expr.args[0].size,
+                                             self.from_expr(expr.args[0]))
             elif expr.op in ['clz']:
                 return "%s(%s)" % (expr.op,
                                    self.from_expr(expr.args[0]))
diff --git a/miasm2/jitter/vm_mngr.c b/miasm2/jitter/vm_mngr.c
index 5dd844c3..42f91f72 100644
--- a/miasm2/jitter/vm_mngr.c
+++ b/miasm2/jitter/vm_mngr.c
@@ -921,7 +921,7 @@ unsigned int rcr_rez_op(unsigned int size, unsigned int a, unsigned int b, unsig
     return tmp;
 }
 
-unsigned int x86_bsr(uint64_t src, unsigned int size)
+unsigned int x86_bsr(unsigned int size, uint64_t src)
 {
 	int i;
 
@@ -933,7 +933,7 @@ unsigned int x86_bsr(uint64_t src, unsigned int size)
 	exit(0);
 }
 
-unsigned int x86_bsf(uint64_t src, unsigned int size)
+unsigned int x86_bsf(unsigned int size, uint64_t src)
 {
 	int i;