diff options
author | notaz | 2010-11-21 16:49:37 +0200 |
---|---|---|
committer | notaz | 2010-11-21 21:38:21 +0200 |
commit | e80343e2eb43452aa1518f78a5cc62f7ac55b163 (patch) | |
tree | 16898ad10ecaa18f85b746cb9674f2841fd69f24 /libpcsxcore/new_dynarec/assem_arm.c | |
parent | 3d624f890e4350179851e958fe071b2fd7a56bec (diff) | |
download | pcsx_rearmed-e80343e2eb43452aa1518f78a5cc62f7ac55b163.tar.gz pcsx_rearmed-e80343e2eb43452aa1518f78a5cc62f7ac55b163.tar.bz2 pcsx_rearmed-e80343e2eb43452aa1518f78a5cc62f7ac55b163.zip |
make sure all branches link
Diffstat (limited to 'libpcsxcore/new_dynarec/assem_arm.c')
-rw-r--r-- | libpcsxcore/new_dynarec/assem_arm.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/libpcsxcore/new_dynarec/assem_arm.c b/libpcsxcore/new_dynarec/assem_arm.c index 6d0a40d..4af1566 100644 --- a/libpcsxcore/new_dynarec/assem_arm.c +++ b/libpcsxcore/new_dynarec/assem_arm.c @@ -826,7 +826,13 @@ u_int genimm(u_int imm,u_int *encoded) u_int genjmp(u_int addr) { int offset=addr-(int)out-8; - if(offset<-33554432||offset>=33554432) return 0; + if(offset<-33554432||offset>=33554432) { + if (addr>2) { + printf("genjmp: out of range: %08x\n", offset); + exit(1); + } + return 0; + } return ((u_int)offset>>2)&0xffffff; } |