diff options
| author | Camille Mougey <commial@gmail.com> | 2015-08-10 16:10:55 +0200 |
|---|---|---|
| committer | Camille Mougey <commial@gmail.com> | 2015-08-10 16:10:55 +0200 |
| commit | bd47054b59077cc6b0aa91b3a542bc5bf2c12ff8 (patch) | |
| tree | f75283277ee1ec555a37dd817c41bb695092370f /miasm2/jitter/vm_mngr.c | |
| parent | dcc488ec39d9a96b70c728ccdbcd43e62b25ae99 (diff) | |
| parent | 6c9e46d8d2c2f0b34f025ec2381015bbfa9eb34e (diff) | |
| download | miasm-bd47054b59077cc6b0aa91b3a542bc5bf2c12ff8.tar.gz miasm-bd47054b59077cc6b0aa91b3a542bc5bf2c12ff8.zip | |
Merge pull request #206 from serpilliere/aarch64
Aarch64
Diffstat (limited to 'miasm2/jitter/vm_mngr.c')
| -rw-r--r-- | miasm2/jitter/vm_mngr.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/miasm2/jitter/vm_mngr.c b/miasm2/jitter/vm_mngr.c index 23464bfb..bf1eb7df 100644 --- a/miasm2/jitter/vm_mngr.c +++ b/miasm2/jitter/vm_mngr.c @@ -821,11 +821,11 @@ uint64_t rot_left(uint64_t size, uint64_t a, uint64_t b) } } -unsigned int rot_right(unsigned int size, unsigned int a, unsigned int b) +uint64_t rot_right(uint64_t size, uint64_t a, uint64_t b) { - unsigned int tmp; + uint64_t tmp; - b = b&0x1F; + b = b&0x3F; b %= size; switch(size){ case 8: @@ -837,8 +837,11 @@ unsigned int rot_right(unsigned int size, unsigned int a, unsigned int b) case 32: tmp = ((a&0xFFFFFFFF) >> b) | (a << (size-b)); return tmp&0xffffffff; + case 64: + tmp = ((a&0xFFFFFFFFFFFFFFFF) >> b) | (a << (size-b)); + return tmp&0xFFFFFFFFFFFFFFFF; default: - fprintf(stderr, "inv size in rotleft %d\n", size); + fprintf(stderr, "inv size in rotright %"PRIX64"\n", size); exit(0); } } @@ -1699,3 +1702,5 @@ uint64_t get_exception_flag(vm_mngr_t* vm_mngr) { return vm_mngr->exception_flags; } + + |