1.1 --- a/src/sh4/ia32abi.h Mon Jan 21 11:59:46 2008 +0000
1.2 +++ b/src/sh4/ia32abi.h Tue Jan 29 10:39:56 2008 +0000
1.6 for( i=0; i< sh4_x86.backpatch_posn; i++ ) {
1.7 - *sh4_x86.backpatch_list[i].fixup_addr =
1.8 - xlat_output - ((uint8_t *)sh4_x86.backpatch_list[i].fixup_addr) - 4;
1.9 + uint32_t *fixup_addr = (uint32_t *)&xlat_current_block->code[sh4_x86.backpatch_list[i].fixup_offset];
1.10 + *fixup_addr = xlat_output - (uint8_t *)&xlat_current_block->code[sh4_x86.backpatch_list[i].fixup_offset] - 4;
1.11 if( sh4_x86.backpatch_list[i].exc_code < 0 ) {
1.12 load_imm32( R_EDX, sh4_x86.backpatch_list[i].fixup_icount );
1.13 int stack_adj = -1 - sh4_x86.backpatch_list[i].exc_code;