From 663b481033127583b48a5a45418c4c0d9c02ce7d Mon Sep 17 00:00:00 2001 From: "Unknown W. Brackets" Date: Fri, 15 Mar 2013 00:09:12 -0700 Subject: [PATCH 1/2] armjit: Fix encoding of LDRH/STRH/LDRSH/LDRSB. Fixes fastmem issues recently introduced. --- Common/ArmEmitter.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/Common/ArmEmitter.cpp b/Common/ArmEmitter.cpp index 10d9aa5e48..7cdc3b4045 100644 --- a/Common/ArmEmitter.cpp +++ b/Common/ArmEmitter.cpp @@ -656,7 +656,7 @@ void ARMXEmitter::WriteStoreOp(u32 Op, ARMReg Rt, ARMReg Rn, Operand2 Rm, bool R bool Index = true; bool Add = false; - // Special Encoding + // Special Encoding (misc addressing mode) bool SpecialOp = false; bool Half = false; bool SignedLoad = false; @@ -700,13 +700,17 @@ void ARMXEmitter::WriteStoreOp(u32 Op, ARMReg Rt, ARMReg Rn, Operand2 Rm, bool R } break; case TYPE_REG: + Data = Rm.GetData(); + Add = RegAdd; + break; case TYPE_IMMSREG: if (!SpecialOp) { Data = Rm.GetData(); Add = RegAdd; + break; } - break; + // Intentional fallthrough: TYPE_IMMSREG not supported for misc addressing. default: // RSR not supported for any of these // We already have the warning above @@ -717,7 +721,7 @@ void ARMXEmitter::WriteStoreOp(u32 Op, ARMReg Rt, ARMReg Rn, Operand2 Rm, bool R if (SpecialOp) { // Add SpecialOp things - Data = (0x5 << 4) | (SignedLoad << 6) | (Half << 5) | Data; + Data = (0x9 << 4) | (SignedLoad << 6) | (Half << 5) | Data; } Write32(condition | (op << 20) | (Index << 24) | (Add << 23) | (Rn << 16) | (Rt << 12) | Data); } From 415b13b97977ad14c223c3e50204eeea5340a54b Mon Sep 17 00:00:00 2001 From: "Unknown W. Brackets" Date: Fri, 15 Mar 2013 00:12:44 -0700 Subject: [PATCH 2/2] iOS: don't reset codesign when cmake runs. It's annoying. The default is fine. Also, support spaces in paths. --- CMakeLists.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 0ba3a1bb42..7fc1648fb4 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1002,9 +1002,9 @@ if (IOS) SET_SOURCE_FILES_PROPERTIES(${RSRC_XIB_FILES} PROPERTIES MACOSX_PACKAGE_LOCATION Resources) set(APP_DIR_NAME \${TARGET_BUILD_DIR}/\${FULL_PRODUCT_NAME}) add_custom_command(TARGET PPSSPP POST_BUILD - COMMAND tar -c -C . --exclude .DS_Store --exclude .git -H `find assets` | tar -x -C ${APP_DIR_NAME} + COMMAND tar -c -C . --exclude .DS_Store --exclude .git -H `find assets` | tar -x -C '${APP_DIR_NAME}' ) - set_target_properties(${TargetBin} PROPERTIES MACOSX_BUNDLE_INFO_PLIST "../ios/PPSSPP-Info.plist" XCODE_ATTRIBUTE_CODE_SIGN_IDENTITY "iPhone Developer: My Name") + set_target_properties(${TargetBin} PROPERTIES MACOSX_BUNDLE_INFO_PLIST "../ios/PPSSPP-Info.plist") endif() #include(CPack)