comparison m68k_to_x86.c @ 560:f9431cb3a39c

Fix x86_rrindex_sizedir. Pass the correct scale to mov_rindexr in gen_mem_fun. BlastEm now sort of works on OS X. Runs reliably from lldb, but only intermittently from the shell
author Mike Pavone <pavone@retrodev.com>
date Mon, 23 Jun 2014 11:05:55 -0400
parents 6b248602ab84
children 666adeba5a61
comparison
equal deleted inserted replaced
559:6b248602ab84 560:f9431cb3a39c
4497 dst = add_rr(dst, SCRATCH1, SCRATCH2, SZ_PTR); 4497 dst = add_rr(dst, SCRATCH1, SCRATCH2, SZ_PTR);
4498 dst = pop_r(dst, SCRATCH1); 4498 dst = pop_r(dst, SCRATCH1);
4499 dst = mov_rrind(dst, SCRATCH1, SCRATCH2, tmp_size); 4499 dst = mov_rrind(dst, SCRATCH1, SCRATCH2, tmp_size);
4500 } else { 4500 } else {
4501 dst = mov_ir(dst, (intptr_t)memmap[chunk].buffer, SCRATCH2, SZ_PTR); 4501 dst = mov_ir(dst, (intptr_t)memmap[chunk].buffer, SCRATCH2, SZ_PTR);
4502 dst = mov_rindexr(dst, SCRATCH2, SCRATCH1, 1, SCRATCH1, tmp_size); 4502 dst = mov_rindexr(dst, SCRATCH2, SCRATCH1, 0, SCRATCH1, tmp_size);
4503 } 4503 }
4504 } 4504 }
4505 if (size != tmp_size && !is_write) { 4505 if (size != tmp_size && !is_write) {
4506 if (memmap[chunk].flags & MMAP_ONLY_EVEN) { 4506 if (memmap[chunk].flags & MMAP_ONLY_EVEN) {
4507 dst = shl_ir(dst, 8, SCRATCH1, SZ_W); 4507 dst = shl_ir(dst, 8, SCRATCH1, SZ_W);