summaryrefslogtreecommitdiff
path: root/Source/Core
diff options
context:
space:
mode:
authorRyan Houdek <Sonicadvance1@gmail.com>2013-12-21 19:24:25 -0600
committerRyan Houdek <ryan.houdek@codethink.co.uk>2014-02-15 20:23:00 -0600
commitd2a90e6eabb8213cf7ecc502895952f59cdba861 (patch)
tree9bdc22cab3c9aa22a9d4998483a8ebc701967cc1 /Source/Core
parentc5b8c65ddcbffe1832248a8027ec9f84f5f71d9a (diff)
If block linking isn't enabled then make sure there isn't a performance hit from getting a block number.
Diffstat (limited to 'Source/Core')
-rw-r--r--Source/Core/Core/PowerPC/Jit64/Jit.cpp4
-rw-r--r--Source/Core/Core/PowerPC/Jit64IL/JitIL.cpp4
-rw-r--r--Source/Core/Core/PowerPC/JitArm32/Jit.cpp4
-rw-r--r--Source/Core/Core/PowerPC/JitArmIL/JitIL.cpp4
4 files changed, 8 insertions, 8 deletions
diff --git a/Source/Core/Core/PowerPC/Jit64/Jit.cpp b/Source/Core/Core/PowerPC/Jit64/Jit.cpp
index 0e66510264..2186bf8784 100644
--- a/Source/Core/Core/PowerPC/Jit64/Jit.cpp
+++ b/Source/Core/Core/PowerPC/Jit64/Jit.cpp
@@ -290,8 +290,8 @@ void Jit64::WriteExit(u32 destination)
linkData.linkStatus = false;
// Link opportunity!
- int block = blocks.GetBlockNumberFromStartAddress(destination);
- if (block >= 0 && jo.enableBlocklink)
+ int block;
+ if (jo.enableBlocklink && (block = blocks.GetBlockNumberFromStartAddress(destination)) >= 0)
{
// It exists! Joy of joy!
JMP(blocks.GetBlock(block)->checkedEntry, true);
diff --git a/Source/Core/Core/PowerPC/Jit64IL/JitIL.cpp b/Source/Core/Core/PowerPC/Jit64IL/JitIL.cpp
index 36ac5a3789..9d17b58f92 100644
--- a/Source/Core/Core/PowerPC/Jit64IL/JitIL.cpp
+++ b/Source/Core/Core/PowerPC/Jit64IL/JitIL.cpp
@@ -397,8 +397,8 @@ void JitIL::WriteExit(u32 destination)
linkData.linkStatus = false;
// Link opportunity!
- int block = blocks.GetBlockNumberFromStartAddress(destination);
- if (block >= 0 && jo.enableBlocklink)
+ int block;
+ if (jo.enableBlocklink && (block = blocks.GetBlockNumberFromStartAddress(destination)) >= 0)
{
// It exists! Joy of joy!
JMP(blocks.GetBlock(block)->checkedEntry, true);
diff --git a/Source/Core/Core/PowerPC/JitArm32/Jit.cpp b/Source/Core/Core/PowerPC/JitArm32/Jit.cpp
index 8d0590d871..e84c8d9f36 100644
--- a/Source/Core/Core/PowerPC/JitArm32/Jit.cpp
+++ b/Source/Core/Core/PowerPC/JitArm32/Jit.cpp
@@ -199,8 +199,8 @@ void JitArm::WriteExit(u32 destination)
linkData.linkStatus = false;
// Link opportunity!
- int block = blocks.GetBlockNumberFromStartAddress(destination);
- if (block >= 0 && jo.enableBlocklink)
+ int block;
+ if (jo.enableBlocklink && (block = blocks.GetBlockNumberFromStartAddress(destination)) >= 0)
{
// It exists! Joy of joy!
B(blocks.GetBlock(block)->checkedEntry);
diff --git a/Source/Core/Core/PowerPC/JitArmIL/JitIL.cpp b/Source/Core/Core/PowerPC/JitArmIL/JitIL.cpp
index 66fa3f009b..0802266bf4 100644
--- a/Source/Core/Core/PowerPC/JitArmIL/JitIL.cpp
+++ b/Source/Core/Core/PowerPC/JitArmIL/JitIL.cpp
@@ -128,8 +128,8 @@ void JitArmIL::WriteExit(u32 destination)
linkData.linkStatus = false;
// Link opportunity!
- int block = blocks.GetBlockNumberFromStartAddress(destination);
- if (block >= 0 && jo.enableBlocklink)
+ int block;
+ if (jo.enableBlocklink && (block = blocks.GetBlockNumberFromStartAddress(destination)) >= 0)
{
// It exists! Joy of joy!
B(blocks.GetBlock(block)->checkedEntry);