/[pcsx2_0.9.7]/trunk/pcsx2/x86/microVU_Branch.inl
ViewVC logotype

Diff of /trunk/pcsx2/x86/microVU_Branch.inl

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

--- trunk/pcsx2/x86/microVU_Branch.inl	2010/12/23 11:48:33	279
+++ trunk/pcsx2/x86/microVU_Branch.inl	2010/12/23 12:02:12	280
@@ -108,9 +108,14 @@
 	mVUsetupBranch(mVU, mFC);
 	mVUbackupRegs(mVU);
 
-	if (isEvilJump) xMOV(gprT2, ptr32[&mVU->evilBranch]);
-	else			xMOV(gprT2, ptr32[&mVU->branch]);
-	xMOV(gprT3, (uptr)&mVUpBlock->pStateEnd);
+	if(!mVUpBlock->jumpCache) { // Create the jump cache for this block
+		mVUpBlock->jumpCache = new microJumpCache[mProgSize/2];
+	}
+
+	if (isEvilJump)		xMOV(gprT2, ptr32[&mVU->evilBranch]);
+	else				xMOV(gprT2, ptr32[&mVU->branch]);
+	if (doJumpCaching)	xMOV(gprT3, (uptr)mVUpBlock);
+	else				xMOV(gprT3, (uptr)&mVUpBlock->pStateEnd);
 
 	if (!mVU->index) xCALL(mVUcompileJIT<0>); //(u32 startPC, uptr pState)
 	else			 xCALL(mVUcompileJIT<1>);

 

  ViewVC Help
Powered by ViewVC 1.1.22