Vtx dec: After generating ARM, remember to flush the icache.

Will hopefully fix the random crashes in #4461.
This commit is contained in:
Henrik Rydgård 2013-11-06 16:14:15 +01:00
parent 23ac6ea2fd
commit 51995a3d43

View file

@ -726,10 +726,6 @@ void VertexDecoder::DecodeVerts(u8 *decodedptr, const void *verts, int indexLowe
if (jitted_) { if (jitted_) {
// We've compiled the steps into optimized machine code, so just jump! // We've compiled the steps into optimized machine code, so just jump!
jitted_(ptr_, decoded_, count); jitted_(ptr_, decoded_, count);
// Do we need to update the pointers?
ptr_ += size * count;
decoded_ += stride * count;
} else { } else {
// Interpret the decode steps // Interpret the decode steps
for (; count; count--) { for (; count; count--) {
@ -870,13 +866,12 @@ JittedVertexDecoder VertexDecoderJitCache::Compile(const VertexDecoder &dec) {
EOR(R0, R0, R0); EOR(R0, R0, R0);
POP(6, R4, R5, R6, R7, R8, _PC); POP(6, R4, R5, R6, R7, R8, _PC);
BKPT(0); FlushIcache();
// DisassembleArm(start, GetCodePtr() - start); // DisassembleArm(start, GetCodePtr() - start);
// char temp[1024] = {0};
char temp[1024] = {0}; // dec.ToString(temp);
dec.ToString(temp); // INFO_LOG(HLE, "%s", temp);
INFO_LOG(HLE, "%s", temp);
return (JittedVertexDecoder)start; return (JittedVertexDecoder)start;
} }