From 1c3adb42f226f43700f23db9a27f8650149bb736 Mon Sep 17 00:00:00 2001 From: sum2012 Date: Thu, 6 Feb 2014 20:40:18 +0800 Subject: [PATCH 1/2] Fix Diabolik: The Original Sin crash This commit orignal want fix #3326 by @unknownbrackets --- Core/ELF/ElfReader.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Core/ELF/ElfReader.cpp b/Core/ELF/ElfReader.cpp index d82c3adac1..14668e7469 100644 --- a/Core/ELF/ElfReader.cpp +++ b/Core/ELF/ElfReader.cpp @@ -170,8 +170,9 @@ bool ElfReader::LoadRelocations(Elf32_Rel *rels, int numRelocs) case R_MIPS_16: { char temp[256]; + op = (op & 0xFFFF0000) | (((int)(op & 0xFFFF) + (int)relocateTo) & 0xFFFF); MIPSDisAsm(MIPSOpcode(op), 0, temp); - ERROR_LOG_REPORT(LOADER, "WARNING: Unsupported R_MIPS_16 reloc @ %08x : %s", addr, temp); + ERROR_LOG_REPORT(LOADER, "Testing: R_MIPS_16 reloc @ %08x : %s", addr, temp); } break; From 8cd5720b0b99f7e3aa97a9f216bef41469ee94ad Mon Sep 17 00:00:00 2001 From: sum2012 Date: Fri, 7 Feb 2014 04:31:51 +0800 Subject: [PATCH 2/2] Remove report --- Core/ELF/ElfReader.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/Core/ELF/ElfReader.cpp b/Core/ELF/ElfReader.cpp index 14668e7469..ca241af6c7 100644 --- a/Core/ELF/ElfReader.cpp +++ b/Core/ELF/ElfReader.cpp @@ -172,7 +172,6 @@ bool ElfReader::LoadRelocations(Elf32_Rel *rels, int numRelocs) char temp[256]; op = (op & 0xFFFF0000) | (((int)(op & 0xFFFF) + (int)relocateTo) & 0xFFFF); MIPSDisAsm(MIPSOpcode(op), 0, temp); - ERROR_LOG_REPORT(LOADER, "Testing: R_MIPS_16 reloc @ %08x : %s", addr, temp); } break;