mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-02-05 00:40:00 +00:00
activate code reordering for better branch merging... it seems to work :P let me know if this breaks something.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1552 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
parent
3de4df29a3
commit
a4fc0da8cc
@ -288,8 +288,6 @@ void FixUpInternalBranches(CodeOp *code, int begin, int end)
|
|||||||
// IMPORTANT - CURRENTLY ASSUMES THAT A IS A COMPARE
|
// IMPORTANT - CURRENTLY ASSUMES THAT A IS A COMPARE
|
||||||
bool CanSwapAdjacentOps(const CodeOp &a, const CodeOp &b)
|
bool CanSwapAdjacentOps(const CodeOp &a, const CodeOp &b)
|
||||||
{
|
{
|
||||||
return false; // Currently deactivated in SVN.
|
|
||||||
|
|
||||||
const GekkoOPInfo *a_info = GetOpInfo(a.inst);
|
const GekkoOPInfo *a_info = GetOpInfo(a.inst);
|
||||||
const GekkoOPInfo *b_info = GetOpInfo(b.inst);
|
const GekkoOPInfo *b_info = GetOpInfo(b.inst);
|
||||||
int a_flags = a_info->flags;
|
int a_flags = a_info->flags;
|
||||||
@ -315,8 +313,8 @@ bool CanSwapAdjacentOps(const CodeOp &a, const CodeOp &b)
|
|||||||
case OPTYPE_INTEGER:
|
case OPTYPE_INTEGER:
|
||||||
case OPTYPE_LOAD:
|
case OPTYPE_LOAD:
|
||||||
case OPTYPE_STORE:
|
case OPTYPE_STORE:
|
||||||
case OPTYPE_LOADFP:
|
//case OPTYPE_LOADFP:
|
||||||
case OPTYPE_STOREFP:
|
//case OPTYPE_STOREFP:
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
return false;
|
return false;
|
||||||
|
@ -322,12 +322,12 @@ GekkoOPTemplate table31[] =
|
|||||||
{790, Interpreter::lhbrx, Jit64::Default, {"lhbrx", OPTYPE_LOAD, FL_OUT_D | FL_IN_A0 | FL_IN_B}},
|
{790, Interpreter::lhbrx, Jit64::Default, {"lhbrx", OPTYPE_LOAD, FL_OUT_D | FL_IN_A0 | FL_IN_B}},
|
||||||
|
|
||||||
// Conditional load/store (Wii SMP)
|
// Conditional load/store (Wii SMP)
|
||||||
{150, Interpreter::stwcxd, Jit64::Default, {"stwcxd", OPTYPE_STORE, 0}},
|
{150, Interpreter::stwcxd, Jit64::Default, {"stwcxd", OPTYPE_STORE, FL_EVIL}},
|
||||||
{20, Interpreter::lwarx, Jit64::Default, {"lwarx", OPTYPE_LOAD, FL_OUT_D | FL_IN_A0B}},
|
{20, Interpreter::lwarx, Jit64::Default, {"lwarx", OPTYPE_LOAD, FL_EVIL | FL_OUT_D | FL_IN_A0B}},
|
||||||
|
|
||||||
//load string (interpret these)
|
//load string (interpret these)
|
||||||
{533, Interpreter::lswx, Jit64::Default, {"lswx", OPTYPE_LOAD, FL_IN_A | FL_OUT_D}},
|
{533, Interpreter::lswx, Jit64::Default, {"lswx", OPTYPE_LOAD, FL_EVIL | FL_IN_A | FL_OUT_D}},
|
||||||
{597, Interpreter::lswi, Jit64::Default, {"lswi", OPTYPE_LOAD, FL_IN_AB | FL_OUT_D}},
|
{597, Interpreter::lswi, Jit64::Default, {"lswi", OPTYPE_LOAD, FL_EVIL | FL_IN_AB | FL_OUT_D}},
|
||||||
|
|
||||||
//store word
|
//store word
|
||||||
{151, Interpreter::stwx, Jit64::Default, {"stwx", OPTYPE_STORE, FL_IN_A0 | FL_IN_B}},
|
{151, Interpreter::stwx, Jit64::Default, {"stwx", OPTYPE_STORE, FL_IN_A0 | FL_IN_B}},
|
||||||
@ -345,8 +345,8 @@ GekkoOPTemplate table31[] =
|
|||||||
{662, Interpreter::stwbrx, Jit64::Default, {"stwbrx", OPTYPE_STORE, FL_IN_A0 | FL_IN_B}},
|
{662, Interpreter::stwbrx, Jit64::Default, {"stwbrx", OPTYPE_STORE, FL_IN_A0 | FL_IN_B}},
|
||||||
{918, Interpreter::sthbrx, Jit64::Default, {"sthbrx", OPTYPE_STORE, FL_IN_A | FL_IN_B}},
|
{918, Interpreter::sthbrx, Jit64::Default, {"sthbrx", OPTYPE_STORE, FL_IN_A | FL_IN_B}},
|
||||||
|
|
||||||
{661, Interpreter::stswx, Jit64::Default, {"stswx", OPTYPE_STORE, 0}},
|
{661, Interpreter::stswx, Jit64::Default, {"stswx", OPTYPE_STORE, FL_EVIL}},
|
||||||
{725, Interpreter::stswi, Jit64::Default, {"stswi", OPTYPE_STORE, 0}},
|
{725, Interpreter::stswi, Jit64::Default, {"stswi", OPTYPE_STORE, FL_EVIL}},
|
||||||
|
|
||||||
// fp load/store
|
// fp load/store
|
||||||
{535, Interpreter::lfsx, Jit64::lfsx, {"lfsx", OPTYPE_LOADFP, FL_IN_A0 | FL_IN_B}},
|
{535, Interpreter::lfsx, Jit64::lfsx, {"lfsx", OPTYPE_LOADFP, FL_IN_A0 | FL_IN_B}},
|
||||||
|
Loading…
x
Reference in New Issue
Block a user